《VideoMamba》论文笔记

原文链接:

[2403.06977] VideoMamba: State Space Model for Efficient Video Understanding (arxiv.org)

原文笔记

What:

VideoMamba: State Space Model for Efficient Video Understanding

作者探究Mamba模型能否用于VideoUnderStanding作者引入了 VideoMamba,这是一种基于 SSM 的模型,专为视频理解量身定制。VideoMamba 和谐地融合了 vanilla ViT [15] 风格的卷积和注意力的优势。它为动态时空上下文建模提供了一种线性复杂度的方法,非常适合高分辨率长视频。VideoMamba 具有四个关键能力:

1:视觉领域中的可扩展性

2:短期动作识别的敏感性

3:在长时视频理解上的优势

4:与其他模态的兼容性

总结一句话就是VideoMamba相较于Transformer对长时视频建模在效果保持的情况下效率更高

Why:

为了解决视频理解中的局部冗余全局依赖的双重挑战。

探究Mamba模型能否用于VideoUnderStanding

Challenge:

如何将2D的Vim转换到视频的3D数据当中

Idea:

这项工作创新性地将曼巴应用到了视频领域。

Model:

以下我自己绘图来解释以下它输入的张量是怎样流动过模型的

从原文角度理解就应该是这样了(如有问题请您不吝指正)如果再细节一些就需要看代码了

(在不远的将来将会结合我自己的研究方向跑一下这个代码)

这里的位置编码和时序编码的shape其实应该再经过进一步的处理,但这种程度更方便理解,具体细节请结合以下原文翻译进行理解,这里不多赘述

原文翻译经过机翻手修,应该比较易懂了

原文翻译

Abstract

为了解决视频理解中的局部冗余全局依赖的双重挑战,这项工作创新性地将曼巴应用到了视频领域。提出的VideoMamba克服了现有3D卷积神经网络和VIT的局限性。它的线性复杂度算子实现了高效的长期建模,这对于高分辨率长视频的理解至关重要。广泛的评估揭示了VideoMamba的四个核心能力:(1)由于一种新的自蒸馏技术,无需大量数据集预训练即可在视觉领域具有可扩展性;(2)即使是细粒度的运动差异,对短期动作的识别灵敏度;(3)在长期视频理解方面的优势,与传统的基于特征的模型相比有显著进步;(4)与其他模态的兼容性,在多模态环境中表现出鲁棒性。通过这些独特的优势,VideoMamba为视频理解树立了一个新的标杆,为全面的视频理解提供了一个可扩展和高效的解决方案。所有代码和模型都是公开的。

1 Introduction

视频理解的核心目标是掌握时空表示,这本质上提出了两个艰巨的挑战:短视频剪辑中的大时空冗余以及长上下文之间的复杂时空依赖关系。尽管曾处于主导地位的 3D 卷积神经网络 (CNN) [9,19,76] 和VIT [2,4] 有效地通过利用局部卷积远程注意力解决了提到的挑战之一,但它们未能同时解决两者。UniFormer[44]试图整合这两种方法的优点,但它很难对长视频进行建模,然而对视频进行长时建模是最近关于视频理解[48,72]和生成[5,92]研究的主要趋势。 

NLP 域中 S4 [26]、RWKV [73] 和 RetNet [70] 等低成本算子的出现为视觉模型开辟了新的途径。

Mamba[25]以其选择性状态空间模型(SSM)脱颖而出,在保持线性复杂度和促进长期动态建模之间取得平衡。这一创新促进了它在视觉任务中的采用,如Vision Mamba[91]和VMamba[50]所证明的那样,它利用多方向SSM来增强2D图像处理。这些模型在性能上可与基于注意力的架构相媲美,同时显着减少了内存使用。鉴于视频产生的固有较长序列,一个自然的问题出现了:Mamba 能否很好地适用于视频理解?

受此启发,我们引入了 VideoMamba,这是一种基于 SSM 的模型,专为视频理解量身定制。VideoMamba 和谐地融合了 vanilla ViT [15] 风格的卷积和注意力的优势。它为动态时空上下文建模提供了一种线性复杂度的方法,非常适合高分辨率长视频。相关评估侧重于 VideoMamba 的四个关键能力:

(1)视觉域中的可扩展性:我们检查 VideoMamba 的可扩展性并发现,虽然纯 Mamba 模型随着规模的增加而趋于过拟合,但我们引入了一种简单而有效的自蒸馏策略,允许 VideoMamba 随着模型和输入大小的增加而实现显着的性能改进,而无需大规模数据集预训练。

(2) 短期动作识别的敏感性:我们的分析扩展到评估 VideoMamba 准确区分短期动作的能力,尤其是那些具有细粒度运动差异的动作,例如打开和关闭。研究结果表明,VideoMamba 优于现有的基于注意力的模型 [2,4,52]。更重要的是,它也适用于掩码建模,进一步增强了其时间敏感性。

(3) 长期视频理解的优越性:然后我们评估 VideoMamba 在解释长视频方面的贡献。它通过端到端训练展示了优于传统基于特征的方法[35,47]的显著优势。值得注意的是,VideoMamba比TimeSformer[4]快6倍,64帧视频的GPU内存减少了40倍(见图1)

(4)与其他模态的兼容性:最后,我们评估了VideoMamba与其他模态的适应性。视频文本检索的结果显示了它相较于ViT的性能提升,特别是在具有复杂场景的长视频中。这强调了它的鲁棒性和多模态集成能力。

总之,我们的深入分析揭示了VideoMamba在理解短期(K400[36]和SthSthV2[24])和长期(Breakfast[37]、COIN[71]和LVU[84])视频内容方面的巨大潜力。鉴于VideoMamba的效率和有效  性,有望成为长视频理解领域的基石。所有代码和模型都是开源的以促进未来的研究努力。

2 Related Works

2.1 State Space Models

最近,状态空间模型 (SSM) 在捕获语言序列的动态和依赖性方面显示出状态空间转换的显着有效性。[26]引入了一个结构化的状态空间模型(S4),专门设计用于对远程依赖进行建模,具有线性复杂度的优势。在此基础上,开发了各种模型(如S5[66]、H3[20]和GSS[56]),Mamba[25]通过引入依赖于数据的SSM层和使用并行扫描的选择机制(S6)展现了自身的特殊性。与基于二次复杂度注意的Transformer[6,54]相比,Mamba擅长处理以线性复杂度的长序列。

在视觉领域,[26]首先在像素级图像分类中应用SSM,[35]使用S4处理视频片段分类的长程时间依赖性。此外,Mamba 的巨大潜力激发了一系列工作 [28,30,46,50,78,87,91],这表明 Mamba 在对象检测和语义分割等视觉下游任务上比 Transformer 具有更好的性能更高的 GPU 效率。与之前的工作不同,我们的VideoMamba是一个基于SSM的纯视频模型,在短期和长期视频理解方面都表现出了高效率和有效性。

2.2 Video Understanding

视频理解是计算机视觉领域的基石,随着短视频平台的快速增长,其意义进一步扩大。为了支持该领域,已经开发了许多配备广泛数据和细致人工注释的数据集,旨在提高人类动作识别能力。值得注意的例子包括 UCF101 [67] 和 Kinetics 数据集 [7, 8, 36],它们在基准测试进度中发挥了关键作用。此外,其他数据集 [22, 27, 31, 34, 49, 62] 提供了为动作定位量身定制的注释活动视频,促进了对人类活动的更深入研究。除了动作识别之外,大规模视频文本数据集 [10, 12, 57, 82, 86, 88] 的出现将视频理解的效用扩展到多模态任务领域,例如视频字幕、检索和问答,从而扩大了应用范围。(说的是数据集的事)

至于架构,它已经从使用从视频帧中提取特征的 CNN 发展到更高级的技术。最初,3D CNN[9,17,76,77]扩展了传统的2D CNN架构来捕获视频的时空信息。双流[65]结合了空间和时间流TSN[80],提出了稀疏采样和SlowFast[19],它使用并行网络来捕获语义和快速运动,进一步增强动作识别能力。基于注意力的模型[2,4,59,63,89]的引入,如TimeSformer[4]和ViViT[2],通过有效地捕获视频序列中的远程依赖关系,增强了时间关系的理解,取得了显著的进展。最近的发展[42,44,52,83]集中在准确的videotransformer上,视频Swin的窗口注意[52]和UniFormer对卷积和自我注意机制[44]的集成等创新,旨在平衡计算效率和性能。尽管这些模型在各种任务上取得了成就,但它们通常对长序列具有很高的计算成本。相比之下,我们的 VideoMamba 引入了一个线性复杂度算子来有效地进行长期建模,其性能优于现有方法,速度更快,GPU 消耗更低。(说的是模型架构的事)

3 Method

3.1 Preliminaries

一维序列的SSM。状态空间模型(SSMs)是基于连续系统概念化的,该系统通过隐藏状态h(t)∈RN映射一维函数或序列x(t)∈RL→y(t)∈RL。形式上,SSM 采用以下常微分方程 (ODE) 对输入数据进行建模:

其中 A ∈ RN ×N 表示系统的演化矩阵,B ∈ RN ×1, C ∈RN ×1 是投影矩阵。这种连续的 ODE 在现代 SSM 中是通过离散化来逼近的。Mamba [25] 是连续系统的离散版本之一,它包括时间尺度参数 Δ 将连续参数 A、B 转换为其离散参数 A拔、B拔。变换通常采用零阶保持 (ZOH) 方法,定义为:

与主要依赖线性时不变SSM的传统模型相反,Mamba的特点是将选择性扫描机制(S6)作为其核心SSM算子。在S6中,参数B∈R B×L×N, C∈R B×L×N,∆∈RB×L×D直接推导自输入数据x∈RB×L×D,表明具有上下文敏感性和自适应权重调制的内在能力。图2a显示了Mamba区块的详细信息。

双向SSM视觉。最初的曼巴块是为一维序列设计的,不适合需要空间意识的视觉任务。在此基础上,Vision Mamba在图2b中引入了双向Mamba (B-Mamba)块,该块适用于特定于视觉的应用程序的双向序列建模。该块通过同时向前和向后ssm处理平坦的视觉序列,增强了其空间感知处理能力。在这项工作中,我们扩展了B-Mamba块用于3D视频理解。

3.2 VideoMamba

概述。图3展示了VideoMamba的总体框架。具体来说,我们首先使用3D卷积(即1×16×16)将输入的videos X^v∈R^3×T×H×W(通道数*时间*高*宽)投影到L个不重叠的时空patch中Xp∈R^L×C中,其中L=t×h×w (t=T,h=H/16,w=W/16)。输入到以下VideoMamba编码器的令牌序列是

X = [Xcls, X] + ps + pt,(7),

其中Xcls是一个可学习的分类token,它被添加到序列的开始。根据之前的工作[2,4,15],我们增加了一个可学习的空间位置嵌入ps∈R^(hw+1)×C,以及额外的时间位置嵌入pt∈R^t×C来保留时空位置信息,这样做的原因是SSM模型对token的位置很敏感

token X之后被传入由L个堆叠的B-Mamba块,最后一层的[cls]token在经过归一化层和线性层的处理进行分类。

时空扫描。为了将B-Mamba层应用于时空输入,我们将原始的2D扫描扩展为不同的双向3D扫描,如图4所示:(a) spatial - first,按位置组织空间标记,然后逐帧堆叠;(b)时间优先,根据框架安排时间标记,然后沿着空间维度堆叠;(c) Spatiotemporal,是SpatialFirst和Temporal-First的混合,v1执行一半,v2执行全部(2倍计算)。此外,我们在图7a中的实验表明,空间优先的双向扫描是最有效且最简单的。由于曼巴的线性复杂性,我们的VideoMamba能够有效地处理高分辨率的长视频。

与Vim[91]和vamba[50]的比较。我们的VideoMamba基于Vim构建,但通过省略中间[CLS]令牌和旋转位置嵌入(RoPE[68])等功能来简化其架构,从而在ImageNet-1K上获得卓越的性能,Vim- ti和Vim- s分别获得+0.8%和+0.7%的收益。与vamba不同,它包含了额外的深度卷积,VideoMamba严格遵循ViT设计,没有下采样层。为了解决在vomamba中观察到的过拟合问题,我们在3.3节中介绍了一种有效的自蒸馏技术,演示了各向同性VideoMamba在图像和视频任务方面的巨大可扩展性。

与TimeSformer[4]和ViViT[2]的比较。传统的基于注意力的模型(如TimeSformer和ViViT)通过采用分割的时空注意力来解决自注意机制的二次复杂度问题。尽管效率更高,但与联合注意相比,它引入了额外的参数,表现不佳,特别是在涉及屏蔽预训练的场景中[43,74]。相比之下,VideoMamba处理具有线性复杂性的时空标记,在kinect -400上优于TimeSformer +2.6%,在SthSthV2上取得了显著进步,提高了+5.9%(见表3和表4)。此外,VideoMamba在处理长视频时实现了6倍的处理速度提高,并且需要的GPU内存减少了40倍,如图1所示,显示了其在处理长视频任务方面的效率和有效性。

3.3 Architecture

对于B-Mamba层的SSM,我们采用Mamba中的默认超参数[25]。设置状态维度为16,扩展比例为2。根据ViT[15],我们调整深度和嵌入维度,创建表1中可比较大小的模型,包括VideoMamba-Ti、VideoMamba-S和VideoMamba-M。然而,我们观察到,在我们的实验中,较大的VideoMamba倾向于过拟合,导致次优性能,如图6a所示。这种过拟合问题不仅存在于我们的模型中,也存在于VMamba[50]中,其中vamba - b在总训练周期的四分之三时达到了最佳性能。为了抵消较大的曼巴模型中的过拟合,我们引入了一种有效的自蒸馏策略,该策略使用一个较小且训练良好的模型作为“老师”来指导较大的“学生”模型的训练。结果如图6a所示,表明该策略可以获得预期的更好的收敛性。

3.4 Masked Modeling

最近,VideoMAE和ST-MAE[18,74]已经展示了掩模建模在增强模型细粒度时间理解能力方面的显著优势。UMT[43]进一步引入了一种有效的屏蔽对齐技术,该技术可以在单模式和多模式视频任务中产生稳健的结果。为了增强VideoMamba的时间敏感性并验证其对文本模态的适应性,我们采用了一种受UMT启发的屏蔽对齐方法。首先,VideoMamba从头开始对视频数据进行训练,将未屏蔽的令牌与来自CLIP-ViT的令牌对齐。随后,它与文本编码器和跨模态解码器(即BERT[14])集成,用于图像文本和视频文本数据集的预训练。

重要的是要注意它与UMT的区别,UMT在学生和教师模型之间采用多层对齐。相比之下,由于VideoMamba的独特架构(SSM vs. Transformer),我们只对齐最终输出。关于我们的掩蔽策略,我们提出了不同的行掩蔽技术,如图5所示,根据B-Mamba块对连续令牌的偏好量身定制。此外,我们探索了注意力掩蔽,以保持令牌之间有意义的邻接关系,利用B-Mamba块内1D卷积的固有优势来提高性能。

4 Experiments

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/779463.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

穿透业务报表和回报方案,看见广汽集团的长期价值

在大多数内卷的领域,企业总是有各种各样的理由延缓或者停止回馈资本市场。所以,当我们在竞争激烈的汽车市场,发现这样一家始终将投资者回报放在重要位置的老牌车企时,会觉得有些惊讶。因为伴随着经营和分红上的高确定性&#xff0…

Ubuntu20.04下PCL安装,查看,卸载等操作

Ubuntu20.04下PCL安装,查看,卸载等操作 项目来源 https://github.com/PointCloudLibrary/pclhttps://pointclouds.org/documentation/modules.htmlhttps://pcl.readthedocs.io/projects/tutorials/en/master/ 点云学习: https://github.c…

性能测试的几个重要指标的说明!

在做性能测试过程中有一件很重要的事情需要去完成,那就是分析性能指标数据,可以这样说做性能测试的整个过程都跟指标数据息息相关,下面来说一下常见的一些性能指标数据: 1.吞吐量 2.并发数 3.思考时间 4.响应时间 5.点击数 …

信息安全之网络安全防护

先来看看计算机网络通信面临的威胁: 截获——从网络上窃听他人的通信内容中断——有意中断他人在网络上的通信篡改——故意篡改网络上传送的报文伪造——伪造信息在网络上传送 截获信息的攻击称为被动攻击,而更改信息和拒绝用户使用资源的攻击称为主动…

开始时间大于结束时间

1.dom中代码&#xff0c;监听所选日期值的变化&#xff0c;并把需要比较的时间字段作为参数传到监听方法中&#xff0c; <el-form-item label"起始日期" prop"startTime"><el-date-picker clearable size"small":disabled"isDisa…

智能未来:一站式AI技术探索平台(一键收藏)

KKAI&#xff0c;&#xff08;kk.zlrxjh.top&#xff09; 一个融合了星火大模型和文心大模型技术的先进知识增强型大语言模型&#xff0c;致力于自然语言处理&#xff08;NLP&#xff09;技术的深入研究与开发。此模型展现了卓越的语义理解与内容生成技能&#xff0c;轻松应对…

千川素材投放效果追踪与精准识别

一、投放效果深度追踪&#xff1a;从数据表面到策略内核在数字广告时代&#xff0c;单纯的曝光量已不再是评估广告效果的唯一标准。投放效果的深度追踪要求我们深入挖掘每一个数据背后的意义&#xff0c;洞察广告策略的实际效果。这不仅涉及到广告的点击率、转化率等显性指标&a…

Java毕业设计 基于SSM新闻管理系统

Java毕业设计 基于SSM新闻管理系统 SSM jsp 新闻管理系统 功能介绍 用户&#xff1a;首页 图片轮播 查询 登录 注册 新闻正文 评论 广告 社会新闻 天下新闻 娱乐新闻 个人中心 个人收藏 管理员&#xff1a;登录 用户管理 新闻管理 新闻类型管理 角色&#xff1a;用户 管理员…

FMEA与智能机器人:提升机器人可靠性与安全性的关键

随着科技的飞速发展&#xff0c;智能机器人已经深入到我们生活的方方面面&#xff0c;从工业生产到家庭服务&#xff0c;从深海探险到太空探索&#xff0c;处处都有它们的身影。然而&#xff0c;随着应用的日益广泛&#xff0c;机器人系统的复杂性和不确定性也在增加&#xff0…

Paper Digest|基于在线聚类的自监督自蒸馏序列推荐模型

论文标题&#xff1a; Leave No One Behind: Online Self-Supervised Self-Distillation for Sequential Recommendation 作者姓名&#xff1a; 韦绍玮、吴郑伟、李欣、吴沁桐、张志强、周俊、顾立宏、顾进杰 组织单位&#xff1a; 蚂蚁集团 录用会议&#xff1a; WWW 2024 …

书生浦语训练营2期-第一节课笔记

笔记总结: 了解大模型的发展方向、本质、以及新一代数据清洗过滤技术、从模型到应用的典型流程、获取数据集的网站、不同微调方式的使用场景和训练数据是什么&#xff0c;以及预训练和微调在训练优势、通信/计算调度、显存管理上的区别。 收获&#xff1a; 理清了预训练和微调…

第十三届蓝桥杯省赛真题 Java 研究生 组【原卷】

文章目录 发现宝藏【考生须知】试题 A: 排列字母试题 B: 灭鼠先锋试题 C: 质因数个数试题 D: 数位排序试题 E: 蜂巢试题 F : \mathrm{F}: F: 爬树的甲壳虫试题 G: 重新排序试题 H \mathrm{H} H : 技能升级试题 I: 最优清零方案试题 J : \mathrm{J}: J: 推导部分和 发现宝藏 …

Java基础之算数运算符的初级用法

运算符 运算符: 对字面量或者变量进行操作的符号 表达式: 用运算符把字面量或者变量连接起来,符合java语法的式子就可以称为表达式 不同运算符连接的表达式体现的是不同类型的表达式 一 .算数运算符 实践一下 加 减 乘 运行结果: 除 取模 运行结果 练习: 数值拆分 需求…

Nginx_简介 + Linux系统下详细安装教程指路

安装教程指路 可参看该视频【尚硅谷Nginx教程&#xff08;亿级流量nginx架构设计&#xff09;】 https://www.bilibili.com/video/BV1yS4y1N76R/?p2&share_sourcecopy_web&vd_source4c2f33f3ba1a0dd45bfdf574befd0069 的p2-p7。从安装centos虚拟机到在虚拟机上安装ng…

Golang-Gorm-快速上手

Gorm文档 GORM文档地址 安装依赖 go get -u "gorm.io/driver/mysql"go get -u "gorm.io/gorm"连接数据库 默认连接方式 func main() {// 参考 https://github.com/go-sql-driver/mysql#dsn-data-source-name 获取详情dsn : "user:passtcp(127.0.0…

Multisim14.0破解安装教程

Multisim14.0中文破解版是一款相当优秀的专业化SPICE仿真标准环境&#xff0c;Multisim14.0中文版功能强悍&#xff0c;为用户提供了所见即所得的设计环境、互动式的仿真界面、动态显示元件、具有3D效果的仿真电路、虚拟仪表、分析功能与图形显示窗口等等。Multisim破解版操作简…

Docker命令及部署Java项目

文章目录 简介Docker镜像镜像列表查找镜像拉取镜像删除镜像镜像标签 Docker容器容器启动容器查看容器停止和重启后台模式和进入强制停止容器清理停止的容器容器错误日志容器别名及操作 Docker部署Java项目 简介 Docker是一种容器化技术&#xff0c;可以帮助开发者轻松打包应用…

【数据分析案列】--- 北京某平台二手房可视化数据分析

一、引言 本案列基于北京某平台的二手房数据&#xff0c;通过数据可视化的方式对二手房市场进行分析。通过对获取的数据进行清冼&#xff08;至关重要&#xff09;&#xff0c;对房屋价格、面积、有无电梯等因素的可视化展示&#xff0c;我们可以深入了解北京二手房市场的特点…

vue3+threejs新手从零开发卡牌游戏(十四):调整卡组位置,添加玩家生命值HP和法力值Mana信息

由于之前的卡组位置占了玩家信息的位置&#xff0c;所以这里将它调整到site区域&#xff1a; 修改game/site/p1.vue&#xff0c;在site右下角添加一个卡组区域&#xff1a; // 初始化己方战域 const init () > {let sitePlane scene.getObjectByName("己方战域Plan…

CCSDS CONVOLUTIONAL CODING 卷积码 规范

文章目录 3 CONVOLUTIONAL CODING3.1 overview3.2 general3.2.1 ATTACHED SYNC MARKER3.2.2 DATA RANDOMIZATION3.2.3 FRAME VALIDATION3.2.4 QUANTIZATION 3.3 BASIC CONVOLUTIONAL CODE SPECIFICATION3.4 PUNCTURED CONVOLUTIONAL CODES matlab中的 comm.ConvolutionalEncode…