《TAM》论文笔记(上)

原文链接

[2005.06803] TAM: Temporal Adaptive Module for Video Recognition (arxiv.org)

原文代码

GitHub - liu-zhy/temporal-adaptive-module: TAM: Temporal Adaptive Module for Video Recognition

原文笔记

What:

TAM: Temporal Adaptive Module for Video Recognition

根据视频帧的不同的特征图自适应的生成卷积核:两阶段自适应方案

模型有点:体积小,可插拔,适应性强,效果好

Why:

由于相机运动、速度变化和不同活动等因素,视频数据具有复杂的时间动态。为了有效地捕捉这种多样化的运动模式,本文提出了一种新的时间自适应模块(TAM),根据自己的特征图生成视频特定的时间核。

视频理解的深度学习研究进展相对较慢,部分原因是视频数据的高度复杂性。视频理解的核心技术问题是设计一个有效的时间模块,该模块有望能够以高灵活性捕获复杂的时间结构,同时以低计算量实现对高维视频数据的高效处理

上述所有方法都有一个共同的见解,即它们是视频不变的,而忽略了视频中固有的时间多样性

3D卷积神经网络(3D CNN)[15,34]已被证明是视频建模的主流架构[1,8,36,27]。3D卷积(时间卷积)仅仅通过使用固定数量的固定参数的视频卷积核可能缺乏足够的表示能力来描述运动多样性

3D 卷积是2D卷积的直接扩展,并为视频识别提供了一个可学习的算子。然而,这种简单的扩展缺乏对视频数据中的时间属性的特定考虑,并且也可能导致高计算成本。因此,最近的方法旨在通过将轻量级时间模块与 2D CNN 相结合来提高效率(例如 TSN [40]、TSM [23])或设计一个专用时间模块来更好地捕获时间关系(例如,非本地网络 [41]、ARTNet [38]、STM [17]、TDN [39])。然而,如何设计一个具有高效率和强大灵活性的时间模块仍然是一个未解决的问题。因此,我们的目标是沿着这个方向推进当前的视频架构。

Challenge:

如何设计一个有效的时间模块,

1、该模块有望能够以高灵活性捕获复杂的时间结构

2、同时以低计算量实现对高维视频数据的高效处理

Idea:

对于Challenge1:

作者提出根据视频的特征图生成特定的时间核

为了处理视频中如此复杂的时间变化,我们认为每个视频的自适应时间核是有效的,也是描述运动模式所必需的。

我们提出了一种两级自适应建模方案,将视频特定的时间核分解为

1、位置敏感重要性图(location sensitive importance map)专注于从局部视角增强有区别的时间信息,(本文一直说location sensitive importance map,局部分支的作用就是生成这个包含局部信息的全局map,以逐元素点乘的方式将信息聚合到特征里边,详细说明见(下)篇)

2、位置不变(也是视频自适应)聚合核。(location invariant(also viseo adaptive)aggregation kernel)能够通过输入视频序列的全局视角捕获时间依赖性。(作者通过FC层来学习卷积核,所以卷积核都拥有了全局视野,通过卷积操作把信息融入特征中,作者的的 TANet(TANet是将TAMblock整合到网络模块中的网络的统称)通过简单地堆叠更多的 TAM 来捕获长期依赖关系(本质上就是有更多fc层嘛,自然也就捕获了更多的长期依赖关系),并保持网络的效率。详细说明见(下)篇)

为了保持计算效率,L和G分支都是建立在输入数据压缩的基础上的,详细信息见(下)篇。

《Tam》论文笔记(下)-CSDN博客

原文翻译

Abstract

由于相机运动、速度变化和不同活动等因素,视频数据具有复杂的时间动态。为了有效地捕捉这种多样化的运动模式,本文提出了一种新的时间自适应模块(TAM),根据自己的特征图生成视频特定的时间核。TAM提出了一种独特的两级自适应建模方案,将动态核解耦为位置敏感重要性图和位置不变聚合权重。重要性图是在局部时间窗口中学习的,以捕获短期信息,而聚合权重是从全局视图生成的,重点是长期结构。TAM 是一个模块化块,可以集成到 2D CNN 中,以产生强大的视频架构 (TANet),具有非常小的额外计算成本。在Kinetics-400和Something-Something数据集上的大量实验表明,我们的TAM始终优于其他时间建模方法,并在相似复杂度下实现了最先进的性能。该代码可在以下链接获得GitHub - liu-zhy/temporal-adaptive-module: TAM: Temporal Adaptive Module for Video Recognition

1. Introduction

深度学习在图像分类[21,12]、目标检测[28]和实例分割[11]等图像识别任务中取得了很大的进展。这些成功的关键是设计灵活高效的架构,能够从大规模图像数据集[4]中学习强大的视觉表示。然而,视频理解的深度学习研究进展相对较慢,部分原因是视频数据的高度复杂性。视频理解的核心技术问题是设计一个有效的时间模块,该模块有望能够以高灵活性捕获复杂的时间结构,同时以低计算量实现对高维视频数据的高效处理。

3D卷积神经网络(3D CNN)[15,34]已被证明是视频建模的主流架构[1,8,36,27]。3D 卷积是其 2D 对应物的直接扩展,并为视频识别提供了一个可学习的算子。然而,这种简单的扩展缺乏对视频数据中的时间属性的特定考虑,并且也可能导致高计算成本。因此,最近的方法旨在通过将轻量级时间模块与 2D CNN 相结合来提高效率(例如 TSN [40]、TSM [23])或设计一个专用时间模块来更好地捕获时间关系(例如,非本地网络 [41]、ARTNet [38]、STM [17]、TDN [39])。然而,如何设计一个具有高效率和强大灵活性的时间模块仍然是一个未解决的问题。因此,我们的目标是沿着这个方向推进当前的视频架构。

在本文中,我们专注于设计一个自适应模块以更灵活的方式捕获时间信息。有趣的是,我们观察到视频数据由于相机运动和各种速度等因素,沿时间维度具有极其复杂的动态因此,3D卷积(时间卷积)仅仅通过使用固定数量的固定参数的视频卷积核可能缺乏足够的表示能力来描述运动多样性,为了处理视频中如此复杂的时间变化,我们认为每个视频的自适应时间核是有效的,也是描述运动模式所必需的。为此,如图1所示,我们提出了一种两级自适应建模方案,将视频特定的时间核分解为位置敏感重要性图(location sensitive importance map)和位置不变(也是视频自适应)聚合核。(location invariant(also viseo adaptive)aggregation kernel)这种独特的设计允许位置敏感的重要性图专注于从局部视角增强有区别的时间信息,并使视频自适应聚合能够通过输入视频序列的全局视角捕获时间依赖性。

具体来说,时间自适应模块的设计(TAM)严格地遵循两个原则:高效率和强大的灵活性。为了确保我们的 TAM 计算成本低,我们首先通过使用全局空间池化压缩特征图,然后以通道方式建立我们的 TAM 以保持效率。我们的 TAM 由两个分支组成:局部分支 (L) 和全局分支 (G)。如图 2 所示,TAM 以有效的方式实现。局部分支采用时间卷积生成位置敏感重要性图增强局部特征,而全局分支使用全连接层生成位置不变核进行时间聚合。局部时间窗口生成的重要性图侧重于短期运动建模,使用全局视图的聚合内核更关注长期时间信息。此外,我们的 TAM 可以灵活地插入到现有的 2D CNN 中,以产生高效的视频识别架构,称为 TANet。

我们在视频中动作分类任务验证了所提出的 TANet。特别是,我们首先研究了 TANet 在 Kinetics-400 数据集上的性能,并证明我们的 TAM 在捕获时间信息方面比其他几个对应物更好,例如时间池化、时间卷积、TSM [23]、TEINet [24] 和Non-local block [41]。我们的 TANet 能够产生以类似于 2D CNN 的 FLOPs 产生非常有竞争力的准确性。我们进一步在Something-Something的运动主导数据集上测试我们的TANet,我们的模型在这个数据集上实现了最先进的性能。

2 Related Work

视频理解是计算机视觉领域的核心课题。在早期阶段,许多传统的方法[22, 20, 29, 43]设计了不同的手工特征去编码视频数据,但这些方法在推广到其他视频任务时过于不灵活。最近,由于视频理解的快速发展很大程度上得益于深度学习方法[21,32,12],特别是在视频识别中,人们提出了一系列基于cnn的方法来学习时空表示,我们的方法的差异将在后面澄清。此外,我们的工作还涉及 CNN 中的动态卷积和注意力。

CNNs-based methods for action recognition.由于深度学习方法已广泛用于图像任务,因此有许多尝试 [18, 31, 40, 46, 10, 23, 39] 基于2D CNN 专门用于建模视频片段的 。特别是,[40]使用从整个视频稀疏采样的帧,通过聚合最后一个全连接层之后的分数来学习长范围的信息。[23] 以有效的方式沿时间维度移动通道,与 2D CNN 产生了良好的性能。通过对空间域到时空域的简单扩展,提出了三维卷积[15,34]来捕获视频片段中编码的运动信息。由于大规模动力学数据集[19]的释放,3D CNN[1]被广泛应用于动作识别中。它的变体[27,36,44]将三维卷积分解为空间二维卷积和时间一维卷积来学习时空特征。[8]设计了一个具有双路径的网络来学习时空特征,并在视频理解中取得了有希望的准确性。

上述所有方法都有一个共同的见解,即它们是视频不变的,而忽略了视频中固有的时间多样性。与这些方法相比,我们设计了一种两级自适应建模方案,将视频特定操作分解为位置敏感激励为每个视频片段设计的具有自适应核的位置不变卷积。(这段有点吓胡诌了,我说的是作者不是我)

Attention in action recognition.TAM 中的本地分支主要与 SENet [13] 有关。但是SENet为特征图的每个通道学习调制权重。几种方法 [24, 5] 也诉诸注意力来学习视频中更具辨别力的特征。与这些方法不同的是,我们提出的local branch的局部分支在保留时间信息的同时来学习位置敏感的重要性。[41]设计了一个非局部块,可以看作是自我注意来捕获长期依赖关系。我们的 TANet 通过简单地堆叠更多的 TAM 来捕获长期依赖关系,并保持网络的效率。

Dynamic convolutions.[16]首先提出了视频和立体预测任务的动态滤波器,设计了一种卷积编码器-解码器作为滤波-生成网络。图像任务中的几项工作 [45, 3] 试图为一组卷积核生成聚合权重,然后生成一个动态内核。我们的动机与这些方法不同。我们的目标是使用这个时间自适应模块来处理视频中的时间变化。具体来说,我们设计了一种基于输入特征图的有效形式实现这种时间动态内核,这对于理解视频内容至关重要。

3 Method(见下篇)

《Tam》论文笔记(下)-CSDN博客

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

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

相关文章

JAVA系列:IO流

JAVA IO流 IO流图解 一、什么是IO流 I/O流是Java中用于执行输入和输出操作的抽象。它们被设计成类似于流水,可以在程序和外部源(如文件、网络套接字、键盘、显示器等)之间传输数据。按处理数据单位分为: 1字符 2字节 、 1字节(…

阿里发布通义千问2.5:一文带你读懂通义千问!

大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“外挂”,所以创建了“AI信息Gap”这个公众号,专注于分享AI全维度知识…

【Linux系统编程】31.pthread_detach、线程属性

目录 pthread_detach 参数pthread 返回值 测试代码1 测试结果 pthread_attr_init 参数attr 返回值 pthread_attr_destroy 参数attr 返回值 pthread_attr_setdetachstate 参数attr 参数detachstate 返回值 测试代码2 测试结果 线程使用注意事项 pthread_deta…

AI智能分析高精度烟火算法EasyCVR视频方案助力打造森林防火建设

一、背景 随着夏季的来临,高温、干燥的天气条件使得火灾隐患显著增加,特别是对于广袤的森林地区来说,一旦发生火灾,后果将不堪设想。在这样的背景下,视频汇聚系统EasyCVR视频融合云平台AI智能分析在森林防火中发挥着至…

GeoServer 任意文件上传漏洞分析研究 CVE-2023-51444

目录 前言 漏洞信息 代码审计 漏洞复现 前言 时隔半月,我又再一次地审起了这个漏洞。第一次看到这个漏洞信息时,尝试复现了一下,结果却很不近人意。从官方公布的漏洞信息来看细节还是太少,poc不是一次就能利用成功的。也是当时…

AXI4读时序在AXI Block RAM (BRAM) IP核中的应用

在本文中将展示描述了AXI从设备(slave)AXI BRAM Controller IP核与Xilinx AXI Interconnect之间的读时序关系。 1 Single Read 图1展示了一个从32位BRAM(Block RAM)进行AXI单次读取操作的时序示例。 图1 AXI 单次读时序图 在该…

书生浦语训练营第三次课笔记:XTuner 微调 LLM:1.8B、多模态、Agent

Finetune 简介 两种Finetune范式:增量预训练微调、指令跟随微调 微调数据集 上述是我们所期待模型回答的内容,在训练时损失的计算也是基于这个。 训练数据集看起来是这样,但是真正喂给模型的,是经过对话模板组装后的 下图中&…

信息系统项目管理师0097:价值交付系统(6项目管理概论—6.4价值驱动的项目管理知识体系—6.4.6价值交付系统)

点击查看专栏目录 文章目录 6.4.6价值交付系统1.创造价值2.价值交付组件3.信息流6.4.6价值交付系统 价值交付系统描述了项目如何在系统内运作,为组织及其干系人创造价值。价值交付系统包括项目如何创造价值、价值交付组件和信息流。 1.创造价值 项目存在于组织中,包括政府机构…

ICode国际青少年编程竞赛- Python-2级训练场-数独

ICode国际青少年编程竞赛- Python-2级训练场-数独 1、 Spaceship.step(3)2、 Spaceship.step(3)3、 Spaceship.step(1) Spaceship.turnLeft() Spaceship.step(1)4、 Spaceship.step(3) Spaceship.turnRight() Spaceship.step(1)5、 Spaceship.step(4) for i in range(3):Spaces…

(二十一)springboot实战——Spring AI劲爆来袭

前言 本节内容是关于Spring生态新发布的Spring AI的介绍,Spring AI 是一个面向人工智能工程的应用框架。其目标是将 Spring 生态系统的设计原则,如可移植性和模块化设计,应用到人工智能领域,并推广使用普通的Java对象&#xff08…

【Linux】项目自动化构建工具make/makefile

🎉博主首页: 有趣的中国人 🎉专栏首页: Linux 🎉其它专栏: C初阶 | C进阶 | 初阶数据结构 小伙伴们大家好,本片文章将会讲解Linux中项目自动化构建工具make/makefile的相关内容。 如果看到最后…

2024年自动驾驶、车辆工程与智能交通国际会议(ICADVEIT2024)

2024年自动驾驶、车辆工程与智能交通国际会议(ICADVEIT2024) 会议简介 2024年自动驾驶、车辆工程和智能交通国际会议(ICADVEIT 2024)将在中国深圳举行。会议主要聚焦自动驾驶、车辆工程和智能交通等研究领域,旨在为从…

盲盒一番赏小程序:探索未知,开启神秘宝藏之旅

开启神秘之门,探索未知的乐趣 在繁忙的生活中,我们渴望一丝丝未知带来的惊喜与乐趣。盲盒一番赏小程序,正是为了满足您这种探索未知的欲望而诞生。它不仅仅是一个购物平台,更是一个充满神秘与惊喜的宝藏世界。 精选好物&#xf…

Electron学习笔记(一)

文章目录 相关笔记笔记说明 一、轻松入门 1、搭建开发环境2、创建窗口界面3、调试主进程 二、主进程和渲染进程1、进程互访2、渲染进程访问主进程类型3、渲染进程访问主进程自定义内容4、渲染进程向主进程发送消息5、主进程向渲染进程发送消息6、多个窗口的渲染进程接收主进程发…

Linux:进程信号

生活角度的信号 a.信号在生活中,随时可以产生(信号的产生和我是异步的) b.你能认识这个信号 c.我们知道信号产生了,我能识别这个信号,信号该怎么处理 d.我们可能正在做着更重要的事情,把到来的信号暂不处理(1.我记得这个事 2.…

YOLOv9中模块总结补充|RepNCSPELAN4详图

专栏地址:目前售价售价69.9,改进点70 专栏介绍:YOLOv9改进系列 | 包含深度学习最新创新,助力高效涨点!!! 1. RepNCSPELAN4详图 RepNCSPELAN4是YOLOv9中的特征提取-融合模块,类似前几…

phpstudy(MySQL启动又立马停止)问题的解决办法

方法一:查看本地安装的MySQL有没有启动 1.鼠标右击开始按钮选择计算机管理 2.点击服务和应用程序 3.找到服务双击 4.找到MySQL服务 5.双击查看是否启动,如启动则停止他,然后确定,重新打开phpstudy,启动Mysql. 方法二&#xff…

Python从0到POC编写--实用小脚本02

爆破脚本: 爆破脚本也是我们经常使用的东西 这里就简单讲讲后台爆破脚本的编写吧 在编写之前,我们先通过访问网站去看看情况 首先我们可以先登录看看 输入账号 admin ,密码 12345 后 登录失败,提示 用户名或密码错误 在输入…

苹果新品发布会速览:iPad革新遇市场挑战 | 百能云芯

北京时间5月7日晚,苹果以“放飞吧”为主题,举办了一场不到40分钟的线上新品发布会。在这场发布会上,iPad产品线成为了焦点,M4芯片和OLED技术的融入更是引起了广泛关注。 iPad新篇章:技术革新与市场竞争 时隔18个月&…

WebSocket 多屏同显和异显

介绍 多屏同显:通过在一个应用上进行操作之后,另一个应用也能跟着一起发生改变,例如app1播放了晴天这首音乐,那么app2也要同步播放这首音乐,确保所有屏幕显示的内容完全相同。多屏异显:每个屏幕可以显示不同的内容,或者在内容更新时存在一定的延迟,而不需要严格保持同步…