摘要:针对视频中的动作识别任务,我们提出了一种基于软注意力的模型。 我们使用具有长短期记忆(LSTM)单元的时空深度多层递归神经网络(RNN)。我们的模型学会了选择性地关注视频帧的各个部分,并在输入后对视频进行了分类。 该模型从本质上解释框架中的哪些部分与任务高度相关,并对其赋予更高的权重。我们在UCF-11(YouTube动作),HMDB-51和Hollywood2数据集上评估该模型,并分析该模型如何根据场景和所执行的动作来改变注意力。
1介绍
在视觉认知文献中已经指出,人类不会立即将注意力集中在整个场景上(Rensink,2000)。相反,他们顺序关注场景的不同部分以提取相关信息。 大多数传统的计算机视觉算法不采用注意力机制,并且对图像/视频的各个部分处理相同。随着近来对深度神经网络的兴趣激增,基于注意力的模型已在一些具有挑战性的任务上取得了可喜的结果,包括字幕生成(Xu等人,2015),机器翻译(Bahdanau等人,2015),游戏和跟踪(Mnih等,2014),以及图像识别(例如街景房数数据集(Ba等,2015b))。这些模型许多已经采用了基于LSTM(Hochreiter&Schmidhuber,1997)的RNN,并且在学习序列中显示出良好的结果。
注意力模型可以分为软注意和硬注意。软注意力模型是确定性的,可以使用反向传播进行训练,而硬注意力模型是随机的,可以通过REINFORCE算法进行训练(Williams,1992; Mnih等人,2014)。学习硬注意力模型会产生大量计算量,因为它需要采样。 另一方面,软注意力方法中,可以使用从所有位置输出到下一个输入的可微分映射。 基于注意力的模型还可以通过仅关注每个帧中的相关位置来潜在地推断视频中发生的动作。例如,图1a显示了来自UCF-11视频序列的属于“高尔夫挥杆”类别的四个帧。该模型倾向于关注球,球杆和人,这使模型可以正确地将活动识别为“高尔夫挥杆”。在图1b中,我们的模型关注蹦床,同时正确地将活动标识为“蹦床跳跃”。
在本文中,我们提出了一种基于软注意力的动作识别递归模型。 我们描述了我们的模型如何动态地融合卷积特征,并表明与许多现有模型所使用的平均或最大融合(Zha等人,2015)相比,使用这些特征进行动作识别可获得更好的结果。 我们进一步证明,我们的模型倾向于根据其检测到的活动来识别视频帧中的重要元素。
2相关工作
卷积神经网络(CNN)在图像分类和目标识别任务中非常成功(Ren等人,2015; Wu等人,2015)。分类视频在图像问题上增加了时间维度。 学习时间动作是一个困难的问题,早期的方法已经使用光流,HOG和手工制作的特征来生成具有外观和动态信息编码的描述符。最近显示LSTM在语音识别(Graves等,2013),机器翻译(Sutskever等,2014),图像描述(Xu等,2015; Vinyals等,2015)和视频描述(Yao等,2015; Venugopalan等,2014)等领域表现良好。 他们也开始应用在动作识别(Srivastava等,2015; Ng等,2015)。
大多数现有方法还倾向于将LSTMs作为CNN并直接对序列进行分类或者在分类之前对特征进行时间合并(Donahue等,2015;Ng等,2015)。通过在编码器-解码器框架中使用LSTM,还可以使用LSTM来学习非监督设置下的视频的表示(Srivastava等,2015)。最近,Yao等人(2015年)已提出在编码器-解码器框架中使用3-D CNN功能和LSTM解码器来生成视频描述。他们的模型通过定义用于生成单个单词的帧的概率分布,将注意力集中在视频级别。但是,他们没有在帧级别上使用注意力机制。
通常,很难解释由深度神经网络学到的内部表示。注意模型通过捕获执行特定任务时模型将注意力集中在何处来增加可解释性的维度。Karpathy等(2014年)使用了多分辨率CNN架构来执行视频中的动作识别。他们提到了中央凹的概念,但他们将注意力集中在框架的中央。Xu等人(2015)使用软注意力和硬注意力机制来生成图像描述。他们的模型在生成描述时实际上会查看相应的对象。我们的工作直接建立在这项工作之上。然而,徐等(2015)主要研究静态图像中的字幕生成,在本文中,我们着重于使用软注意力机制对视频中的活动进行识别。最近,Jaderberg等人(2015年)提出了一种称为空间转换模块的软注意力机制,将其添加到CNN的各层之间。他们没有使用我们做的softmax层来加权位置,而是将仿射变换应用于其CNN的多个层以处理相关部分并在街景房数数据集(Netzer等人,2011年)上获得最新结果。Yeung等(2015年)在输入输出中使用基于时间注意模型进行密集动作标签,并报告了较高的准确性和对动作视频中时间关系的更好理解。
3模型和注意机制
3.1卷积特征
我们提取将视频帧通过在ImageNet数据集(Deng等,2009)上训练的GoogLeNet模型(Szegedy等,2015)而获得的最后一个卷积层激活。最后一个卷积层具有D个卷积图,并且形状为K×K×D(在我们的实验中为7×7×1024)的特征立方体。因此,在每个时间步长t,我们提取K*K个D维向量。 我们将这些向量称为特征多维数据集中的特征切片:
这些KK垂直特征切片中的每一个都映射到输入空间中的不同重叠区域,我们的模型选择将注意力集中在这些KK区域上。
3.2:LSTM和注意机制
我们使用Zaremba等(2014)和Xu等(2015年)讨论的LSTM实现:
其中,it是输入门,ft是忘门,ot是输出门,gt如等式1所示计算。ct是单元状态,ht是隐藏状态,xt(参见等式4、5)表示在时间步t处LSTM的输入.M:Ra→Rb是一个仿射变换,由具有a = d + D和b = 4d的可训练参数组成,其中d是所有参数的维数,即ft,ot,gt,ct和ht。
在每个时间步长t,我们的模型都预测lt + 1(K×K位置上的softmax)和yt(标签类别上的softmax)以及带有tanh激活的附加隐藏层(见图2b)。 位置softmax定义如下:
其中Wi是映射到位置softmax的第i个元素的权重,而Lt是可以采用K*K值之一的随机变量。 这个softmax可以认为是我们的模型认为输入帧中相应区域重要的概率。在计算了这些概率之后,软注意力机制(Bahdanau等人,2015)通过对不同区域的特征切片进行期望,计算出下一时间步长xt的输入期望值(见图2a):
其中Xt是多维特征数据集,而Xti是在时间步t处多维特征数据集的第i个切片。在基于硬注意力的模型中,我们将从等式4的softmax分布中采样Lt。然后,输入xt将是采样位置处的特征切片,而不是对所有切片的预测。因此,基于硬注意力的模型是不可区分的,必须使用某种形式的抽样。
对于LSTM的单元状态和隐藏状态,我们使用以下初始化策略(参见Xu等人(2015))以加快收敛速度:
其中,finit,c和finit,h是两个多层感知器,T是模型中的时间步数。这些值用于计算确定初始输入x1的第一位置softmax l1。在我们的实验中,我们使用多层深LSTM,如图2b所示。
3.3损失函数和注意力机制
我们使用Xu等人(2015)引交叉熵损失和入的双重随机惩罚。我们对位置softmax施加了附加约束,这是注意力正则化,其迫使模型在某个时间点查看帧的每个区域。 损失函数定义如下:
其中yt是一个标签向量,yˆt是时间步长t上类别概率的向量,T是时间步长的总数,C是输出类别的数量,λ是注意力惩罚系数,γ是权重衰减系数,θ代表所有模型参数。有关体系结构和超参数的详细信息,请参见第4.2节。
4实验
4.1数据集
我们在实验中使用了UCF-11,HMDB-51和Hollywood2数据集。UCF-11是YouTube动作数据集,包含1600个视频和11个动作-篮球投篮,骑自行车,潜水,高尔夫挥杆,骑马,足球杂耍,挥杆,网球挥杆,蹦床跳跃,排球扣球和溜狗。剪辑的帧速率为29.97 fps,每个视频只有一个动作。 我们使用975个视频进行培训,使用625个视频进行测试。
HMDB-51人体运动数据库数据集提供三个训练测试拆分,每个拆分由5100个视频组成。 这些剪辑带有51类人类动作的标签,例如拍手,喝酒,拥抱,跳跃,翻筋斗,投掷等。 每个视频只有一个相关的动作。 每个分组的训练集包含3570个视频(每个类别70个),测试集包含1530个视频(每个类别30个)。剪辑的帧速率为30 fps。
Hollywood2人类行为数据集包含从电影中收集的1707个视频剪辑。这些剪辑带有12类动作标签-打电话,开车,吃,打架,从车里出来,握手,拥抱,接吻,跑步,直立,坐下和站起来。 某些视频具有多个与之相关的动作。训练集有823个视频,测试集有884个视频。
数据集中的所有视频调整为224×224分辨率,然后输入到在ImageNet数据集上训练的GoogLeNet模型。 最后一个卷积层的大小为7×7×1024,用作我们模型的输入。
4.2训练细节和评估
在我们所有的实验中,使用交叉验证来设置模型体系结构和其他各种超参数。特别是,对于所有数据集,我们训练了3层LSTM模型,其中LSTM隐藏状态,单元状态和隐藏层的维数对于UCF-11和Hollywood2都设置为512,对于HMDB-51则设置为1024。 我们还对具有1个LSTM层到5个LSTM层的模型进行了实验,但是没有观察到模型性能的任何显着改善。 对于注意力惩罚系数,我们使用值0、1、10进行了实验。在报告结果时,我们已将权重衰减惩罚设置为10−5并在所有非循环丽连接使用了0.5随机失活。所有模型都使用Adam优化算法(Kingma&Ba,2015)在整个数据集中训练了15epoch。但是,我们发现Adam通常会在3个epochs后收敛。 我们的实现基于Theano(Bastien等人,2012)处理梯度的计算,代码如下:https://github.com/kracwarlock/action-recognition-visual-attention。
对于训练和测试,我们的模型以固定的fps速率一次采样30帧。从第一帧开始,我们将每个视频分成30帧的组,fps速率选择30帧,然后以1的步幅向前移动。因此,每个视频都分为多个30个长度的样本。在测试时,我们计算每个时间步的类别预测,然后平均30帧内的预测。为了获得整个视频片段的预测,我们对视频中所有30个帧块的预测取平均。
4.2.1基线
softmax回归模型使用完整的7×7×1024特征作为输入,在每个时间步t预测标签,而所有其他模型仅使用1024维特征切片作为输入。平均合并和最大合并LSTM模型使用与我们的模型相同的体系结构,除了它们没有任何注意力机制,因此不会产生位置softmax。这些模型在每个时间步的输入是通过对7×7×1024多维数据集进行平均或最大合并以获取1024维切片而获得的,而我们的软注意力模型将通过位置softmax对加权切片进行动态加权(参见方程5)。
4.3量化分析
表1报告了UCF-11和HMDB-51数据集的准确性以及Hollywood2的平均精度(mAP)。虽然softmax基线将7×7×1024多维数据集作为其输入,对于三个数据集,它的表现都比我们的模型差,并且比所有HMDB-51和Hollywood2模型都差。表1的结果表明,我们的注意力模型的表现优于平均和最大合并LSTM。
接下来,我们对双随机惩罚项λ进行了实验(请参见等式7)。 图3a显示,在没有注意正则化项λ= 0的情况下,模型倾向于减少其注意。设置λ= 1会鼓励模型进一步探索不同的关注位置。λ= 10的模型关注所有位置(见图3c),在这种情况下,其行为趋于变得与平均池化情况相似。这些之间的值对应于切片的动态加权平均。λ= 0和λ= 1的模型比λ= 10的模型表现更好。
在表2中,我们将模型的性能与其他最新的动作识别模型进行了比较。 由于缺少标准的训练测试拆分,我们在此处不包括UCF-11。我们将表格分为三个部分。第一部分中的模型仅使用RGB数据,而第二部分中的模型同时使用RGB和光流数据。第三部分中的模型同时使用RGB,光流以及某些ImageNet类别上视频的对象响应。我们的模型与同类的深度学习模型(仅使用RGB特征的模型)相比具有优势,同时提供了有关神经网络的一些剖析。
4.4量化分析
图4显示了我们的模型在UCF-11数据集上所关注位置的一些测试示例。 在图4a中,我们看到该模型能够专注于圆周的各个部分,同时正确地将活动识别为骑车。类似地,在图4b中,模型关注狗并将行为分类为“遛狗”。
我们还可以使用注意力机制更好地了解模型的错误。例如,图5a显示该模型主要关注背景,例如法院的浅蓝色地板。模型将示例错误地分类为“潜水”。但是,如图5b所示,使用不同的指定的关注位置,模型将相同的示例归类为“排球扣球”。有趣的是,我们可以通过可视化它的关注位置来更好地理解这种深度关注模型的成功和失败案例。
该模型并不总是需要注意主体。在许多情况下,相机距离很远,可能很难分辨出人在做什么或画面中的物体是什么。在这些情况下,模型倾向于查看背景并尝试从背景信息中推断活动。例如,该模型可以查看背景中的篮球场并预测正在执行的动作。因此,取决于视频,前景和背景都可能对活动识别很重要。 图6中显示了一些示例,其中模型关注图像所有位置。
有趣的是,在某些情况下,该模型能够关注视频帧中的重要对象,并尝试在一定程度上跟踪它们,以便正确识别执行的动作。在图7b中,视频以30fps采样,后续帧几乎相同。 在这种情况下,模型始终专注于高尔夫球,球杆和人。 但是,当我们将采样率更改为6fps时,如图7a所示,我们发现视频帧变化很快。 现在,模型在消失之前仍专注于球。 当人击球后,我们看到模型试图去看其他地方,可能是跟踪球和高尔夫球杆。
接下来,我们在HMDB-51数据集上测试了该模型的性能。在图8a中,该模型试图关注执行俯卧撑的人来识别“俯卧撑”活动。在图8c中,尽管关注动作发生的位置,该模型仍将“踢球”错误地分类为“突击”。但是,在某些情况下,模型甚至无法关注相关位置(请参见图8d)。对于Hollywood2,图8b显示了属于“亲吻”动作的短片示例。看起来该模型正确地预料到将会发生接吻,并试图将注意力集中在男人和女人之间的区域上。
在最后一组实验中,我们尝试检查注意力机制的一些失败案例。作为示例,图9显示了“足球杂耍”的测试视频剪辑(上排)。我们的模型着眼于场景(第二行)的白色边界,同时错误地将活动识别为“网球挥拍”。为了查看是否可以通过强迫模型关注相关位置来纠正模型的错误,我们采用了经过训练的模型,并将位置softmax权重初始化为原始模型中最大值和最小值之间的统一随机数。在这种情况下,模型的关注效果如图9的第三行所示。接下来,对于“足球杂耍”的特定示例,我们仅对softmax权重或位置变量进行优化,找到模型可以对其进行预测的注意效果。所有其他模型参数保持固定。这仅会更改关注顺序或模型所处的位置,而不会更改模型本身。有趣的是,为了正确地对该视频片段进行分类,模型学习到的关注(图9的第四行)倾向于集中在足球运动员的腿上。
5结论
在本文中,我们开发了基于循环网络的软注意力动作识别模型,并分析了他们将注意力集中在哪里。我们提出的模型倾向于根据正在执行的动作来识别视频帧中的重要部分。我们还表明,我们的模型比不使用任何注意力机制的基线表现更好。软注意力模型虽然令人印象深刻,但在计算上仍然昂贵,因为它们仍然需要所有特征来执行动态池化。 将来,我们计划探索硬注意力模型以及软硬混合注意力方法,这些方法可以降低模型的计算成本,因此我们可以潜在地扩展到更大的数据集,例如UCF-101和Sports-1M数据集。 这些模型还可以扩展到多分辨率设置,在这种设置中,注意机制还可以选择关注早期的卷积层,以便关注视频帧中的较低层特征。