Class Semantics-based Attention for Action Detection CSA论文阅读笔记

论文地址:https://arxiv.org/pdf/2109.02613.pdf

Abstract

虽然一些编码的特性可能对生成行动建议更有用,但之前的行动定位方法不包括任何注意机制,使定位子网络能够更多地关注更重要的特性。在本文中,我们提出了一种新的注意机制,类基于语义的注意(CSA),学习的语义分布动作类在一个输入视频找到编码特性的重要性分数,用于提供关注更有用的编码特性。我们的注意机制优于先前的自注意力模块,如动作检测任务中的squeeze-and-excitation。我们还观察到,我们的注意机制是这种自我注意模块的互补,当两者一起使用时,可以看到性能改善。

Introduction

对于视频理解任务,学习良好的视频表示,学习对视频理解任务有用的相关编码特征是至关重要的。这些丰富的视频表示或编码的特征可以用来执行各种视频理解任务(例如,定位子网络可以使用这些特征来检测动作片段,等等)。之前关于卷积神经网络中的注意力的研究已经表明,关注更重要的特征通道或位置可以加速训练,通常可以提高网络性能。 尽管编码功能的重要性可能因不同的视频而有所不同,现有的动机来自于先前的工作,他们已经证明了通过注意机制改善了ConvNet的表现,此前并没有通过注意力机制来更加关注编码特征的动作定位网络。
将注意纳入编码特征,虽然以前没有被用于动作定位的convnet使用,可以用一些自注意力的方式很容易地实现,它们学习编码特征的相互依赖性,以估计特征的相对重要性。相比之下,我们提出了一种新的注意机制,该机制基于动作识别模型提取的类特定语义丰富的特征,这些特征用于动作定位网络中编码器的输入。我们使用这些特定类的语义丰富特性的基本原理是,编码特性的重要性分布可能取决于视频中包含的哪个动作类(或动作类)。对于动作定位任务,类-语义可以在不同的时间轴上发生变化,因为不同的动作类可以在不同的时间轴上出现。之前的工作是在全弱监督设置下(只有类级别的监督来学习动作的时间边界),使用类语义丰富的分类特征作为输入,并成功地推动了最先进的定位性能。这表明类语义特性包含了进行可靠的动作本地化的有用信息。为了从视频中时间变化的类语义中学习特征的重要性,我们的新注意机制共同从编码器输入特征的信道和时间轴中学习,并沿着编码特征的信道和时间轴提供注意。我们的注意机制是通用的,可以很容易地应用于之前的具有编码器和定位子网络的定位网络。

Technical Approach

我们首先记录了一个通用的动作定位架构的布局,它包括一个预先训练好的动作识别卷积网络,在视频长度上等距分布的时间点(t∈{1,…,T})上提取类语义丰富的特征 R i , t R_{i,t} Ri,t。动作定位ConvNet(由编码器和定位的子网络组成)以R作为输入进行训练,生成动作建议。

在这里插入图片描述


随着卷积网络的训练,编码器子网络学习编码类语义丰富的特征R到另一个更适合后续的动作定位任务的时间顺序特征F(例如生成建议的起始和结束时间点,并使用置信映射对起始和终点进行分组),定位子网络学习使用F来执行这些定位任务。

在这项工作中,我们使用了标准的动作识别、编码器和定位子网络,并且我们只关注F上的注意机制(如上图中粉色虚线所示)。

Class semantics-based attention (CSA)

为了帮助定位子网络更多地关注对定位任务更有用的特征通道和时间位置,需要有一种注意机制,能够根据其对动作定位任务的有用程度或重要性来调整 F i , t F_{i,t} Fi,t,为了缓解先前动作定位网络中缺乏输入自适应通道/时间注意机制的问题,我们提出了一个注意模块,该模块独立估计每个通道和时刻点的注意权值,并将它们独立应用于定位编码器子网络输出F.现在我们将详细讨论我们的注意力模块的设计:它的输入,它的联合学习框架,以及这个设计选择背后的基本原理,包括输入的选择和学习框架。
注意模块的输入:基于之前关于注意的工作,将注意应用于F的更直接的方法是使用F本身,类似于自注意框架,如SE块。F特征可能更有效地识别前景中的背景(已经接受过动作局部化训练),而R特征可能更有效地识别视频属于哪个动作类别/类别(已经接受过动作识别训练)。假设我们的通道/时间注意机制更依赖于动作类信息丰富的R特征,而不是前景/背景类信息丰富的F特征,R很可能是注意模块更好的输入选择。
从类语义和时间上下文中进行联合学习: 与以图像为输入的图像分类任务相比,动作定位任务的视频输入不仅具有不同时间点的类语义信息,而且这些类语义在时间轴上也存在变化。例如,视频中的“喝咖啡”动作片段之前可以是“烹饪”动作,然后是“洗碗”动作。因此,对R的局部时间理解可以提供关于哪个类语义在一个时间点上更占优势的指示。此外,由于边界检测是动作定位网络的一项重要任务,对这些类语义的变化的时间理解可以表明哪些时间位置对边界点更重要。
**注意力权重的计算:**注意权值由两个独立的注意模块计算,每个模块都有类语义丰富的R特征作为输入。每个注意模块(一个估计每个通道的注意权重,另一个估计持续时间点的注意权重)从R的局部时间变化中学习,以计算每个通道和每个时间点的注意权重。然后,我们将我们的通道和时间注意应用于F(或使定位子网络关注更重要的特征通道和时间位置,分别得到 F A C F_{AC} FAC F A T F_{AT} FAT)。最后,我们将 F A C F_{AC} FAC F A T F_{AT} FAT聚合,得到我们最终注意修改的编码器输出FA。接下来,我们将介绍注意模块的技术描述。

Technical description of the CSA

我们使用一个由一维卷积(核大小的k)组成的简单注意块,它简洁地从R的时间轴和通道轴共同学习。在时间轴上,这个一维卷积有一个大小为k的接受域,在通道轴上,它有一个大小为 C i n C_{in} Cin的接受域(或整个特征通道的长度)。因此,它可以同时从全局通道上下文和局部时间上下文中捕获可用的信息。请注意,我们的CSA注意力有两个注意模块:一个计算每个通道的注意,另一个计算永久时间点的注意。为了实现这一点,我们并行计算一个通道注意向量和一个时间注意向量,并为特定的通道时间输入位置分配权重。然后,我们通过一个简单的连接操作来执行后期融合。我们使用一个简单的投影层来缩小合成通道的输出数到类特征F的输出数,然后由定位子网络进行处理。
我们的时间注意块的输入是 R C i n × T R^{Cin×T} RCin×T,其中Cin和T分别对应于输入通道数和时间点数。同样,让Cout表示输出通道的数量,F表示我们的注意机制会修改的编码器特征。我们的时间注意力的计算方法为:

在这里插入图片描述


y T y_T yT之上有一个完全连接的层(用 f C T f_{CT} fCT表示)的s型映射,可以产生T维注意向量 A T A_T AT。最后,利用编码器特征F的操作得到 F A T F_{AT} FAT、时间注意修正的编码器特征。另一种执行融合的方法是将时间和通道参与的特征添加在一起。然而,这导致了一种平均效应,减少了每个注意模块的贡献。

在这里插入图片描述


其中“;”表示连接操作符,FACout×T表示最终的编码器输出,由时间和通道注意机制调制。本地化子网使用此输出,并执行定位视频中所有单个动作所需的后续步骤。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


学习编程是顺着互联网的发展潮流,是一件好事。新手如何学习编程?其实不难,不过在学习编程之前你得先了解你的目的是什么?这个很重要,因为目的决定你的发展方向、决定你的发展速度。
IT行业是什么工作做什么?IT行业的工作有:产品策划类、页面设计类、前端与移动、开发与测试、营销推广类、数据运营类、运营维护类、游戏相关类等,根据不同的分类下面有细分了不同的岗位。
女生学Java好就业吗?女生适合学Java编程吗?目前有不少女生学习Java开发,但要结合自身的情况,先了解自己适不适合去学习Java,不要盲目的选择不适合自己的Java培训班进行学习。只要肯下功夫钻研,多看、多想、多练
Can’t connect to local MySQL server through socket \'/var/lib/mysql/mysql.sock问题 1.进入mysql路径
oracle基本命令 一、登录操作 1.管理员登录 # 管理员登录 sqlplus / as sysdba 2.普通用户登录
一、背景 因为项目中需要通北京网络,所以需要连vpn,但是服务器有时候会断掉,所以写个shell脚本每五分钟去判断是否连接,于是就有下面的shell脚本。
BETWEEN 操作符选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期。
假如你已经使用过苹果开发者中心上架app,你肯定知道在苹果开发者中心的web界面,无法直接提交ipa文件,而是需要使用第三方工具,将ipa文件上传到构建版本,开...
下面的 SQL 语句指定了两个别名,一个是 name 列的别名,一个是 country 列的别名。**提示:**如果列名称包含空格,要求使用双引号或方括号:
在使用H5混合开发的app打包后,需要将ipa文件上传到appstore进行发布,就需要去苹果开发者中心进行发布。​
+----+--------------+---------------------------+-------+---------+
数组的声明并不是声明一个个单独的变量,比如 number0、number1、...、number99,而是声明一个数组变量,比如 numbers,然后使用 nu...
第一步:到appuploader官网下载辅助工具和iCloud驱动,使用前面创建的AppID登录。
如需删除表中的列,请使用下面的语法(请注意,某些数据库系统不允许这种在数据库表中删除列的方式):
前不久在制作win11pe,制作了一版,1.26GB,太大了,不满意,想再裁剪下,发现这次dism mount正常,commit或discard巨慢,以前都很快...
赛门铁克各个版本概览:https://knowledge.broadcom.com/external/article?legacyId=tech163829
实测Python 3.6.6用pip 21.3.1,再高就报错了,Python 3.10.7用pip 22.3.1是可以的
Broadcom Corporation (博通公司,股票代号AVGO)是全球领先的有线和无线通信半导体公司。其产品实现向家庭、 办公室和移动环境以及在这些环境...
发现个问题,server2016上安装了c4d这些版本,低版本的正常显示窗格,但红色圈出的高版本c4d打开后不显示窗格,
TAT:https://cloud.tencent.com/document/product/1340