视觉识别和描述的长期递归卷积网络
摘要:基于深度卷积网络的模型主导了最近的图像解释任务。我们调查了也经常使用的模型是否对涉及序列,视觉和其他方面的任务有效。我们描述了一类递归卷积体系结构,它是端到端可训练的并且适合于大规模的视觉理解任务,并展示了这些模型对于活动识别,图像字幕和视频描述的价值。与先前的模型假定固定的视觉表示或对顺序处理执行简单的时间平均相比,循环卷积模型“加倍深入”,因为它们学习时空的构图表示。当非线性被合并到网络状态更新中时,学习长期依赖性是可能的。可区分的递归模型之所以吸引人,是因为它们可以将可变长度的输入(例如视频)直接映射到可变长度的输出(例如自然语言文本),并且可以对复杂的时间动态建模。但是可以通过反向传播对其进行优化。我们的循环序列模型直接连接到现代视觉卷积网络模型,可以共同训练以学习时间动态和卷积感知表示。我们的结果表明,与分别定义或优化的识别或生成的最新模型相比,此类模型具有明显的优势。
1 引言
图像和视频的识别和描述是计算机视觉的基本挑战。监督卷积神经网络(CNN)模型在图像识别任务上已经取得了令人瞩目的进展,最近还提出了许多扩展的视频处理方法。理想情况下,视频模型应允许处理可变长度的输入序列,并且还应提供可变长度的输出,包括生成超出传统的“对所有”预测任务的全长句子描述。在本文中,我们提出了长期递归卷积网络(LRCN),这是一类用于视觉识别和描述的体系结构,该体系结构将卷积层和远程时间递归相结合,并且是端到端可训练的(图1)。我们针对特定的视频活动识别,图像标题生成和视频描述任务实例化我们的体系结构,如下所述。
对用于视频处理的CNN模型的研究已经考虑了在原始序列数据上学习3D时空滤波器[1],[2],并学习了包含瞬时光流或基于轨迹的模型的帧到帧表示。 固定窗口或视频片段[3],[4]。 这样的模型探索了感知时间序列表示学习的两个极端:要么学习完全通用的时变加权,要么应用简单的时间池。 遵循激发当前深度卷积模型的相同灵感,我们提倡视频识别和描述模型,这些模型也涉及时间维度。 即具有潜在变量的时间重复性。 递归神经网络(RNN)模型是“深度时间”的-展开时明确如此-并在时域中形成隐式组成表示。 这种“深度”模型早于文献[5],[6]中的深度空间卷积模型。
在感知应用中使用RNN已有数十年的历史了,结果不尽相同。 随时间严格整合状态信息的简单RNN模型的显着局限性就是所谓的“消失梯度”效应:在实践中,越来越难以通过长期的时间间隔反向传播误差信号。 [7]中首先提出的长短期记忆(LSTM)单元是可进行远程学习的循环模块。 LSTM单元具有隐藏的状态,并通过非线性机制进行了增强,以允许状态使用简单的学习门控功能而无需修改,更新或重置即可传播。 LSTM最近被证明能够大规模学习语音识别[8]和语言翻译模型[9],[10]。
我们在这里展示了具有递归单元的卷积网络通常适用于视觉时间序列建模,并认为在先前已使用静态或平坦时间模型的视觉任务中,当有足够的训练数据时,LSTM样式的RNN可以提供显着的改进可用于学习或改进表示形式。具体而言,我们表明LSTM类型模型可提高对常规视频活动挑战的识别能力,并实现从图像像素到句子级自然语言描述的新型端到端可优化映射。我们还表明,这些模型可以提高从常规视觉模型派生的中间视觉表示的描述生成。
我们在三个实验环境中实例化我们提出的体系结构(图3)。首先,我们证明了将视觉卷积模型直接连接到深度LSTM网络,我们能够训练捕获时间状态相关性的视频识别模型(图3左;第4节)。尽管现有的带有标签的视频活动数据集可能没有具有特别复杂的时间动态的动作或活动,但是我们仍然观察到传统基准的显着改进。
在本章中,我们探索了端到端的可训练图像到情感映射。最近已经报道了机器翻译任务的强结果[9],[10];这样的模型是基于LSTM网络的编码器/解码器对。我们提出了该模型的多模式类似物,并描述了一种架构,该架构使用视觉卷积网络对深状态向量进行编码,并使用LSTM将向量解码为自然语言字符串(图3中间;第5节)。可以在大型图像和文本数据集上端对端地训练生成的模型,并且与现有方法相比,即使进行适度的训练也可以提供有竞争力的生成结果。
最后,我们证明了LSTM解码器可以直接由传统的计算机视觉方法驱动,这些方法可以预测更高级别的区分性标签,例如[11]中的语义视频角色元组预测器(图3,右;第6节)。尽管这些模型不是端到端可训练的,但与以前的基于统计机器翻译的方法相比,它们在体系结构和性能方面具有优势。
我们已经在广泛采用的深度学习框架Caffe [12]中实现了用于递归模型的通用框架,其中包括RNN和LSTM单元的即用型实现。 (请参阅http://jeffdonahue.com/lrcn/。)
2 背景:递归网络
传统的递归神经网络(RNN,图2,左)通过将输入序列映射到
隐藏状态,并通过以下方式将隐藏状态输出到输出
递归方程(图2,左):
其中g是元素方式的非线性,例如S型或双曲线正切,xt是输入,ht∈RN是具有N个隐藏单元的隐藏状态,zt是在时间t的输出。 对于长度为T的输入序列?x1,x2,…,xT above,以上更新顺序按h1(令h0 = 0),z1,h2,z2,…,hT,zT依次计算。
尽管已证明RNN在诸如语音识别[15]和文本生成[16]等任务上是成功的,但可能难以训练他们学习长期动态,这可能部分是由于梯度消失和爆炸问题[7]所致。可能是由于通过递归网络的许多层向下传播梯度而产生的,每个层对应于特定的时间步长。 LSTM通过合并存储单元提供了一种解决方案,该存储单元明确允许网络学习何时“忘记”先前的隐藏状态以及何时在给定新信息的情况下更新隐藏状态。随着对LSTM的研究的发展,已经提出了在存储单元内具有不同连接的隐藏单元。我们使用[13]中描述的LSTM单元(图2,右),对[8]中描述的LSTM单元进行了略微的简化,它源自[7]中提出的原始LSTM单元。令σ(x)=(1 + e?x)?1为S形非线性,它将实值输入压缩到[0,1]范围,并让tanh(x)= ex-e?x =2σ (2x)-1是双曲正切非线性,类似地将其输入压缩到[-1,1]范围,给定输入xt,ht-1和ct-1,LSTM在时间步长t上进行更新:
x y表示向量x和y的逐元素乘积。
除了隐藏单元ht∈RN之外,LSTM还包括输入门it∈RN,忘记门ft∈RN,输出门ot∈RN,输入调制门gt∈RN和存储单元ct∈RN。存储器单元单元ct是两个项的和:由ft调制的先前的存储器单元单元ct-1,以及由输入栅极对其调制的当前输入和先前的隐藏状态的函数gt。因为它和ft是S形的,所以它们的值在[0,1]范围内,并且可以将它和ft视为LSTM学习选择性地忘记其先前的内存或考虑其当前输入的旋钮。同样,输出门ot了解要转移到隐藏状态的存储单元数量。这些额外的单元格似乎使LSTM能够为各种序列学习和预测任务学习复杂的长期时间动态。通过将LSTM在层-1-1中的隐藏状态h(?-1)用作在L层中LSTM的输入,可以将它们堆叠在一起,从而增加LSTM的深度。
最近,LSTM在诸如语音识别[8]和机器翻译[9],[10]等语言任务上取得了令人印象深刻的结果。与CNN相似,LSTM具有吸引力,因为它们允许端到端的微调。例如,[8]通过训练将频谱图输入映射到文本的深度双向LSTM,消除了语音识别中对复杂的多步流水线的需求。即使没有语言模型或发音词典,该模型也会产生令人信服的文本翻译。 [9]和[10]使用多层LSTM编码器和解码器将句子从英语翻译为法语。使用编码LSTM将源语言中的句子映射到隐藏状态,然后通过解码LSTM将隐藏状态映射到目标语言中的序列。这种编码器-解码器方案允许将任意长度的输入序列映射到不同长度的输出序列。机器翻译的序列到序列体系结构避免了对语言模型的需求。
LSTM在视觉问题中对顺序数据进行建模的优点是双重的。首先,当与当前的视觉系统集成时,LSTM模型可以轻松地端到端微调。其次,LSTM不仅限于固定长度的输入或输出,而是允许对长度可变的顺序数据(例如文本或视频)进行简单建模。接下来,我们描述一个统一的框架,以将诸如LSTM的递归模型与深度卷积网络相结合,以形成能够执行复杂的视觉和序列预测任务的端到端可训练网络。
3 长期递归卷积网络(LRCN)模型
这项工作提出了一个长期递归卷积网络(LRCN)模型,该模型将深层次的可视化特征提取器(例如CNN)与可以学习识别和合成涉及顺序数据(输入或输出)的任务的时间动态的模型相结合 ),视觉,语言或其他方式。 图1描绘了我们方法的核心。 LRCN的工作方式是,将每个视觉输入xt(独立的图像或视频中的一帧)通过带有参数V(通常是CNN)的特征变换φV(。),以生成固定长度的矢量表示φV(xt)。 然后将φV的输出传递到递归序列学习模块。
在其最一般的形式中,递归模型具有参数W,并将输入xt和先前的时间步隐藏状态ht-1映射到输出zt和更新的隐藏状态ht。 因此,必须按以下顺序计算,依次进行推理(即,从上到下,在图1的“序列学习”框中):h1 = fW(x1,h0)= fW(x1,0),然后h2 = fW (x2,h1)等,直到hT。 我们的某些模型如第2节所述,将多个LSTM彼此叠放。
为了在时间步t预测结果yt∈C(其中C是离散的有限结果集)上的分布P(yt),顺序模型的输出zt∈Rdz通过线性预测层y?t = Wzzt + bz,其中Wz∈R | C |×dz和bz∈R | C | 是学习的参数。 最后,通过采用y?t的softmax来计算预测分布P(yt):P(yt = c)= softmax(y?t)=?exp(y?t,c)。
最近用于对象识别的深层模型的成功[17],[18],[19]表明,战略性地组合非线性函数的许多“层”可以为感知问题提供强大的模型。对于较大的T,上述递归表明来自具有T个时间步长的递归网络的最后几个预测是通过非常“深”的(T层)非线性函数计算的,这表明所得的递归模型可能具有与T层深度网络。但是,至关重要的是,序列模型的权重W在每个时间步都被重用,从而迫使模型学习通用的时间步长到时间步长的动态特性(与以t为条件的动态特性相对,序列索引相反),并防止参数大小增长与最大序列长度成比例。
在我们的大多数实验中,视觉特征转换φ对应于深层CNN某些层中的激活。使用不随时间变化且在每个时间步均独立的可视变换φV(。)具有以下重要优点:使昂贵的卷积推理和训练可在输入的所有时间步上并行化,从而便于使用高效的当代CNN实现依赖于独立的批处理,以及视觉和顺序模型参数V和W的端到端优化。
我们考虑了三个视觉问题(活动识别,图像描述和视频描述),每个问题都实例化了以下广泛的顺序学习任务之一:
1)顺序输入,静态输出(图3,左):?x1,x2,…,xT?→y。视觉活动识别问题可能属于这种情况,以任意长度T的视频作为输入,但目标是预测单个标签,例如从固定词汇中提取的奔跑或跳跃。
2)静态输入,顺序输出(图3,中间):x?→y1,y2,…,yT?。图像字幕问题适合此类,输入静态(非时变)图像,但更大,更丰富的标签空间由任意长度的句子组成。
3)顺序输入和输出(图3,右):x1,x2,…,xT?→y1,y2,…,yT?。在诸如视频描述之类的任务中,视觉输入和输出都是随时间变化的,并且通常输入和输出时间步长的数量可能不同(即,我们可能有T?= T?)。例如,在视频描述中,视频中的帧数不应限制自然语言描述的长度(其中的单词数)。
在前面描述的递归模型的通用表述中,每个实例具有T个输入?x1,x2,…,xT?和T个输出?y1,y2,…,yT?。请注意,此公式与上述三个问题类别中的任何一个都不完全吻合–在前两个类别中,输入或输出是静态的,在第三个类别中,输入长度T不必与输出长度T match匹配。因此,我们描述了如何在我们的混合模型中将此公式适应上述三个问题设置中的每一个。
对于顺序输入和静态输出(第1类),我们采用后融合方法将每个时间步长预测y1,y2,…,yT合并为整个序列的单个预测y。对于静态输入x和顺序输出(类2),我们只需在所有T个时间步长上复制输入x:?t∈{1,2,…,T}:xt:= x。最后,对于(通常)具有不同输入和输出长度(3类)的序列间问题,我们采用“编码器-解码器”方法,如[9],[20]提出的机器翻译方法。在这种方法中,一个序列模型(编码器)将输入序列映射到固定长度的向量,而另一个序列模型(解码器)将此向量展开到任意长度的顺序输出。在这种类型的模型下,整个系统在一个实例上以T + T steps -1时间步长运行。对于前T个时间步长,编码器处理输入x1,x2,…,xT,并且解码器在时间步长T之前是不活动的,直到时间步长T为止,此时编码器的输出将传递到解码器,进而预测第一个输出y1 。对于后面的T -1个时间步长,解码器会在编码器未激活的情况下预测输出y2,y3,…,yT的剩余部分。应用于视频描述任务的这种编码器/解码器方法在第6节,图5(左)中进行了描述。
在提出的系统下,可以通过最大化每个时间步长t的地面实况输出yt的可能性(取决于输入数据和标签)来共同优化模型的视觉和顺序成分的参数(V,W)。 该点(x1:t,y1:t?1)。 特别是,对于标记序列(xt,yt)tT = 1∈D的训练集D,我们优化参数(V,W)以最小化训练集
所描述系统的最吸引人的方面之一是能够学习“端到端”参数,从而使视觉特征提取器的参数V能够学会选择与视觉输入相关的方面 顺序分类问题。 我们使用随机梯度下降训练LRCN模型,并使用反向传播来计算物镜L相对于小批D到D上所有参数(V,W)的梯度?V,WL(V,W,?)。 从训练数据集D中采样。
接下来,我们将通过探索三种应用来证明端到端可训练混合卷积和循环网络的功能:活动识别,图像字幕和视频描述。
4 活动识别
活动识别是上述第一类顺序学习任务的一个实例:长度为T的序列中的每个帧都是单个卷积网络的输入(即卷积权重随时间变化)。我们将RGB和流都视为我们识别系统的输入。用[21]计算流量,并通过将x和y流量值缩放并移动到[-128,+128]范围将其转换为“流量图像”。通过计算流量大小创建流量图像的第三通道。
在训练过程中,视频大小调整为240×320,我们通过使用227×227作物和镜像来增强数据。此外,即使UCF101视频通常更长(当以30 FPS提取帧时,大约100帧),我们也会使用16帧的视频剪辑训练LRCN网络。在较短的视频剪辑上的训练可以看作是在图像裁剪上的训练,这是一种有用的数据增强方法。 LRCN受过训练,可以预测每个时间段视频的活动类别。为了对整个视频剪辑产生单个标签预测,我们将所有帧的标签概率(网络的softmax层的输出)取平均值,然后选择最可能的标签。在测试时,我们从每个视频中提取8帧跨步的16帧剪辑,然后对单个视频的所有剪辑取平均值。
在我们的活动识别实验中,LRCN的CNN基础是CaffeNet [12]参考模型(AlexNet的次要变体[17])和Zeiler&Fergus [22]使用的网络的混合体。 该网络在ImageNet [24]数据集的1.2M图像ILSVRC-2012 [23]分类训练子集上进行了预训练,从而为网络提供了强大的初始化功能,以便于更快地进行训练并避免过度拟合相对较小的视频活动识别数据集。 对中心作物进行分类时,混合模型和CaffeNet参考模型的前1级分类精度分别为60.2%和57.4%。
我们将LRCN与单帧基线模型进行比较。 在我们的基准模型中,T视频帧由CNN单独分类。 与LSTM模型一样,整个视频分类是通过平均所有视频帧的得分来完成的。
4.1 评估
我们在UCF101数据集[25]上评估了我们的体系结构,该数据集包含分类为101种人类行为类别的12,000多个视频。 数据集分为三部分,每个部分的训练集中有不到8,000个视频。
我们探索了LRCN活动识别架构的各种超参数。为了探索不同的变体,我们将UCF101的第一个训练部分划分为一个较小的训练集(约6,000个视频)和一个验证集(约3,000个视频)。我们发现,最具影响力的超参数包括LSTM中隐藏单元的数量,以及fc6或fc7功能是否用作LSTM的输入。我们比较了具有256、512和1024个LSTM隐藏单元的网络。当使用流作为输入时,与我们的验证集中具有256个隐藏单元的网络相比,更多的隐藏单元会带来更好的性能,其中1024个隐藏单元的准确性提高了1.7%。相反,对于具有RGB输入的网络,隐藏单元的数量对模型的性能影响很小。因此,我们将1024个隐藏单位用于流输入,将256个隐藏单位用于RGB输入。我们发现,使用fc6而不是fc7功能可将流用作验证集的输入时将准确性提高1%。当使用RGB图像作为输入时,使用fc6或fc7功能之间的差异很小。使用fc6功能只会使准确性提高0.2%。由于两个模型在fc6功能上的性能都更好,因此我们使用fc6功能(以LRCN-fc6表示)来训练最终模型。我们还考虑了对输入LSTM的帧进行二次采样,但是发现与使用所有帧相比,这会损害性能。此外,在端到端训练LRCN网络时,我们发现需要积极的辍学(0.9)来避免过度拟合。
表1报告了UCF101的三个标准测试组之间的平均准确度。 第2-3列将RGB和流输入的LRCN视频分类与基准单帧体系结构进行了比较。 LRCN对于RGB和流量都产生最佳结果,并且在基准网络上分别提高了0.83%和2.91%。 RGB和流网络可以通过计算网络得分的加权平均值进行组合,如[4]中所述。 像[4],我们在表1(右)中报告了来自RGB和流量网络的预测的两个加权平均值。 由于流网络的性能优于RGB网络,因此,对流网络加权更高就不足为奇了,这会导致精度更高。 在这种情况下,LRCN优于基准单帧模型3.40%。
表2将UCCN101拆分1上各个类别的LRCN精度与单帧基线模型进行了比较。 对于大多数类别,LRCN都比单帧模型提高了性能。 尽管LRCN在某些类别(包括针织和混纺)上的表现较差,但通常在LRCN表现较差的情况下,其准确性的损失不如Box-ingPunchingBag和HighJump等类别的准确性有所提高。 因此,总体上精度更高。
表3比较了UCF101拆分1上各个类的LRCN流和LRCN RGB模型的精度。请注意,对于某些类别,LRCN流模型优于LRCN RGB模型,反之亦然。一种解释是,由LRCN RGB模型更好分类的活动最好由场景中存在哪些对象确定,而由LRCN流模型更好分类的活动最好根据场景中的运动种类进行分类。例如,诸如“打字”之类的活动类与某些对象(例如键盘)的存在高度相关,因此可以通过LRCN RGB模型来最好地学习。其他活动(例如SoccerJuggling)包括更常见的对象,这些对象在其他活动中经常见到(足球,人),因此可以从特定于类的动作提示中最好地识别出来。由于RGB和流量信号是互补的,因此最好的模型将两者都考虑在内。
LRCN在基线单帧系统上显示出明显的改进,可与其他深度模型实现的精度相媲美。 [4]通过计算流和RGB网络之间的加权平均值报告了UCF101的结果,达到了87.6%。 [3]报告UCF101的准确度为65.4%,大大低于LRCN。
5 图像字幕
与活动识别相反,由于输入包含单个图像,因此静态图像字幕任务仅需要对卷积网络进行一次调用。 在每个时间步,图像特征和前一个单词都作为序列模型的输入提供,在这种情况下,这是一堆LSTM(每个都有1000个隐藏单元),用于学习时变输出的动态 顺序,自然语言。
在时间步t,最底层LSTM的输入是来自先前时间步yt-1的嵌入字。 输入词被编码为“单热”向量:向量y∈RK,其中单个y分量为y = 1,表示词汇中的第i个单词,其中K是词汇中的单词数,外加一个用于 (序列开始)标记,始终为y0,即第一时间步(t = 1)的“先前单词”。 然后,通过将Weyt与学习的参数矩阵We∈Rde×K相乘,将这些一热点向量投影到维数为de的嵌入空间中。 矩阵向量与一热点向量相乘的结果是对应于一热点向量的单个非零分量的索引的矩阵列。 因此,我们可以将其视为“查找表”,将词汇表中的K个单词中的每一个映射到三维矢量。
图像x的视觉特征表示φV(x)可以输入到序列模型-L LSTM的堆栈,方法是在每个时间步将其与(1)嵌入的先前单词Weyt-1进行级联,然后馈入第一个LSTM (2)从LSTM STM ? 1输出并馈入LSTM?的隐藏状态h(??1),对于某些?∈2,…,L。这些选择如图4所示。将后一种选择称为“因式分解”,因为它通过“盲化”前?? 1个LSTM并迫使它们在时间步t的所有隐藏状态的容量仅表示部分标题y1来强制进行某种责任分离。 :t-1与视觉输入无关,而从starting开始的LSTM负责将部分标题给出的下层隐藏状态与视觉特征表示融合
φV(x)产生联合隐藏状态表示h(?)
视觉和语言输入中的t到时间步t为止,从中可以预测下一个单词yt。在分解的情况下,较低层的隐藏状态ht是有条件的
给定部分标题y1:t-1的x图像。
堆栈中最终LSTM的输出是学习到的线性预测层的输入,该层具有softmax,在模型词汇表中的单词yt上产生分布P(yt | y1:t-1,φV(x)),包括< EOS>令牌表示字幕的结尾,从而允许模型预测长度可变的字幕。用于我们的图像字幕实验的视觉模型φV是为ILSVRC-2012 [23]分类预先训练的CaffeNet [12]现代且计算量大的VGGNet [18]模型。
所描述的LRCN系统无需在生成的字幕的结构上施加任何明确的语言建模或拼写,就可以学习从作为像素强度值输入的图像到自然语言描述的映射,这些映射通常在语义上是描述性的并且在语法上是正确的。
在训练时,在时间步长t处的前一个单词输入y1:t-1来自地面真相字幕。为了推断新颖图像x上的字幕,输入的是来自上一时间步长的模型预测分布的样本y?t?P(yt | y?1:t-1,φV(x)),并继续生成直到生成(序列结束)令牌。
5.1 评估
我们评估用于检索和生成任务的图像描述模型。 我们首先通过对[26]提出并在[27],[28],[29],[30],[31]中看到的图像和字幕检索任务进行定量评估,来证明模型的有效性。 我们报告Flickr30k [32]和COCO 2014 [33]数据集的结果,每个数据集都带有五个标题。
5.1.1检索
Flickr30k [32]数据集的检索结果记录在表4中。我们报告了第一个检索到的地面真实图像或标题和Recall @ K的中位数排名Medr,即正确的标题或图像所对应的图像或标题的数量。 在前K个结果中检索。 如表4所示,我们的模型始终优于最近的工作[27],[28],[29],[30],[31]的强基准。这里,我们注意到[31]中的VGGNet模型( 在他们的工作中称为OxfordNet)在检索任务方面优于我们的模型。 但是,VGGNet是一个比用于此任务的结果更强大的卷积网络[18]。 可以根据ConvNet [31]的结果更直接地衡量我们的序列模型(以及序列和视觉模型的集成)的强度,该结果使用了非常相似的基础CNN架构(AlexNet [17],我们使用CaffeNet)进行了预训练。 相同的数据。
我们还从COCO 2014 [33]验证集中随机选择了1000个图像(和5000个字幕)的子集,以提高模型的检索性能。 结果记录在表5中。每个任务的第一组结果检查了LSTM与“香草” RNN的有效性,如第2节所述。这些结果表明,与更简单的RNN架构相比,LSTM单元的使用 这是模型执行此任务的性能的重要组成部分,证明了其附加的复杂性,并暗示了允许“长期”存储的LSTM门控机制可能非常有用,即使对于相对简单的序列也是如此。
在第二个和第三个结果组中,我们比较了图4所示的三个序列模型体系结构变体之间的性能。对于任务和所有指标,两层非因数变体(LRCN2u)的性能都比其他两个差。 LRCN1u优于LRCN2u的事实表明,仅堆叠其他LSTM层对于此任务无益。其他两个变体(LRCN2f和LRCN1u)在整个方面的性能类似,在大多数指标下,LRCN2f在图像到字幕的任务中似乎都略有优势,但对于图像检索的字幕则相反。
毫不奇怪,对CNN进行微调(由表5中的“ FT?”列表示)并使用功能更强大的CNN(VGGNet [18]而不是CaffeNet)可以显着改善整个结果。微调可使CaffeNet的R @ k指标提高3-5%,对于VGGNet则提高5-8%。从CaffeNet切换到VGGNet可以使字幕到图像任务的结果提高大约8-12%,对于图像到字幕任务则可以将结果提高大约11-17%。
5.1.2 生成
我们使用评估COCO图像字幕提交的官方指标,在COCO2014 [33]数据集上评估LRCN的字幕生成性能。 BLEU [34]和METEOR [36]度量标准旨在自动评估机器翻译方法。 ROUGE-L [37]设计用于评估汇总性能。 CIDEr-D [35]是专门为评估图像字幕任务而设计的。
在表6中,我们沿着与表5中的检索任务相同的轴评估模型的变体。在三组结果的最后,我们另外探索和评估了可用于给定网络的各种字幕生成策略 。 最简单的策略是我们贪婪地生成字幕,这是我们大多数人在先前的工作中使用的一种策略[43]。 即只需在每个时间步选择最可能的单词。 根据模型,这等效于波束宽度为1的波束搜索(在表6中用表示。)通常,波束宽度为N的波束搜索通过仅保留和扩展N个当前最可能的局部字幕来近似最可能的字幕。 。 我们发现,在波束搜索策略中,波束宽度为3-5可以提供最佳的生成次数-对于较大的波束宽度(例如10),性能会很快达到饱和甚至下降。
另一种不确定的生成策略是从模型的分布中随机抽取N个字幕,并从中选择最可能的字幕。 在这种策略下,我们还研究了将标量因子T(“温度”的倒数)T的各种选择应用于输入到生成分布的softmax的实值预测中的效果。 对于较大的T值,样本更贪心且变化较小,其中T =∞等效于波束宽度为1的波束搜索。较大的N值建议使用较小的T值,反之亦然–例如,对于较大的N和较大的值 T,大多数O(N)计算被浪费了,因为许多样本将是多余的。 随着样本数量N的增加,我们评估了饱和度,发现N = 25时,N = 100的样本比N = 25时的改善很小。我们还在1、1.5和2的值之间改变了温度T(所有N = 100) 并发现T = 1.5表现最佳。
我们采用表6中最底层的结果(T = 1.5,N = 100的采样)中表现最好的生成策略作为表中结果的策略,这消除了LRCN体系结构。我们还使用早期工作中使用的更简单的生成策略[43]记录了所有体系结构的生成性能(表6,结果的顶部),以便于与本工作和未来的研究人员进行比较。在本讨论的其余部分中,我们将专注于中间结果集,尤其是CIDEr-D [35](C)度量标准,因为它是专门为图像字幕系统的自动评估而设计的。我们再次看到,LSTM单元在生成方面优于RNN单元,尽管不如检索那么重要。在层数L的序列模型体系结构选择(如图4所示)和是否考虑因素之间,我们看到在这种情况下,两层模型(LRCN2f和LRCN2u)的性能类似,胜过了单层模型(LRCN1u) 。有趣的是,在这三个变体中,LRCN2f是唯一在检索和生成方面均表现最佳的变体。
我们再次看到,微调(FT)视觉表示并使用更强的视觉模型(VGGNet [18])可以显着改善结果。 对于CaffeNet,微调可将CIDEr-D改进约0.04点,对于VGGNet,微调可使CIDEr-D改进约0.07点。 从微调的CaffeNet到VGGNet的转换将CIDEr-D改进了0.13点。
在表7中,我们根据上述验证集的结果(根据CIDEr-D指标),使用最佳表现方法(根据CIDEr-D指标),将发电性能与同期和最近提交给2015 COCO字幕挑战的工作进行了比较-为 通过使用LRCN模型(将经过微调的VGGNet与我们的LRCN2f(两层分解)序列模型架构配对),将N = 100个样本中的最佳样本(标量因子为T = 1.5)应用于softmax输入,以生成单个图像。 我们的结果与当代作品相比具有竞争优势,在CIDEr-D中排名第四(0.934,而[38]中为0.946的最佳结果),在流星中排名第三(0.335,[38]中的0.346相比)。
除了标准的定量评估外,我们还聘用Amazon Mechnical Turk工作人员(“ Turkers”)评估生成的句子。给定一张来自不同模型的图像和一组描述,我们请图尔克斯根据正确性,语法和相关性对句子进行排名。我们将模型中的句子与[31]公开提供的句子进行了比较。如表8所示,我们的微调(FT)LRCN模型在正确性和相关性上以及在语法上都与最近邻(NN)相当。
我们在图6中显示了示例字幕。我们还注意到了我们的模型生成的字幕的一些属性。当使用VGG模型在验证集中生成句子时,我们发现生成的设置的33.7%与训练集中的句子完全匹配。此外,我们发现,当使用1的波束大小时,当在验证集中描述图像时,我们的模型生成人类注释者使用的词汇的42%。有些单词(例如“ lady”和“ guy”)不是由我们的模型生成的,而是人类注释者常用的,但是同义词(例如“ woman”和“ man”)是我们模型生成的两个最常见的单词。
6 视频说明
在视频描述中,LSTM框架允许我们将视频建模为可变长度的输入流。但是,由于可用的视频描述数据集的限制,我们依靠更多的“传统”活动和视频识别处理来进行输入,并使用LSTM生成句子。我们首先区分以下用于视频描述的架构(请参见图5)。对于每种体系结构,我们假设我们根据完整的视频输入对CRF中的视频中存在的活动,工具,对象和位置进行了预测。这样,我们可以在每个时间步长观察整个视频,而不是逐帧递增地观察。
(a)具有CRF最大值的LSTM编码器和解码器。 (图5(a))[11]中介绍的视频描述方法推动了这种体系结构。他们首先使用视频特征为一元的CRF的最大后验(MAP)估计来识别视频的语义表示。这种表示形式(例如“刀,切,胡萝卜,切菜板”)被连接到一个输入序列(切菜胡萝卜切菜板)中,该输入序列使用统计机器翻译成自然语言句子(一个人在板上切胡萝卜)。翻译(SMT)[47]。我们用编码器-解码器LSTM代替SMT,后者在解码为句子之前将输入序列编码为固定长度的向量。
(b)最大CRF的LSTM解码器。 (图5(b))在此变体中,我们在LSTM的每个时间步上都提供了完整的视觉输入表示,类似于在图像说明中如何将图像作为LSTM的输入提供。
(c)具有CRF概率的LSTM解码器。 (图5(c))与基于短语的SMT相比,使用LSTM进行机器翻译的好处是,它可以在训练和测试期间自然地纳入概率向量,这使LSTM可以学习视觉生成中的不确定性,而不必依赖 根据MAP估算值。 该体系结构与(b)中的相同,但是我们用概率分布代替了最大预测。
6.1评估
我们在TACoS多级[48]数据集上评估了我们的方法,该数据集具有44,762个视频/句子对(约40,000个用于训练/验证)。 我们将[11]与使用最大预测以及[48]中提出的变体进行比较,该变体在测试时采用CRF概率,并使用词格来找到最佳的句子预测。 由于我们使用最大预测以及[48]提供的概率分数,因此我们具有相同的视觉表示。 [48]使用密集轨迹[49]和SIFT特征以及在CRF中建模的时间上下文推理。 在这组实验中,我们使用LRCN的两层未分解版本,如图像描述中所述。
表9显示了BLEU-4得分。 结果表明:(1)LSTM优于基于SMT的视频描述方法; (2)比(a)更简单的解码器体系结构(b)和(c)可以获得更好的性能,这可能是因为不需要存储输入。 (3)我们的方法达到了28.8%,明显优于TACoS多层次上26.9%的最佳报道数[48]。
从更广泛的角度来看,这些结果表明我们的体系结构不仅限于来自深层网络的输入,而且可以与其他视觉系统的固定长度或可变长度的输入完全集成。
7 相关工作
我们提出了与这项工作中讨论的三个任务有关的先前文献。 此外,我们讨论了将卷积网络和循环网络结合在一起的后续扩展,以在活动识别,图像字幕和视频描述以及相关的新任务(例如视觉问题解答)上获得改进的结果。
7.1 先前的工作
活动识别。最新的浅层模型结合了沿密集轨迹的时空特征[50],并将特征编码为单词袋或Fisher向量袋进行分类。这样的浅层特征跟踪低层特征如何随时间变化,但不能跟踪高层特征。此外,通过将特征编码为单词袋或Fisher向量包,会丢失时间关系。
为活动识别提出的许多深度架构都将固定数量的视频帧堆叠起来,以输入到深度网络。 [3]提出了一种融合卷积网络,该融合卷积网络在深层网络的各个级别上融合与不同输入帧相对应的层。 [4]提出了一种两流CNN,它结合了一个在RGB帧上训练的CNN和一个在10个流帧的堆栈上训练的CNN。当通过平均softmax得分将RGB和流结合起来时,结果与UCF101 [25]和HMDB51 [51]上的最新浅模型相当。通过使用SVM融合RGB和流量,与简单平均分数相反,结果得到了进一步改善。另外,[1]和[2]提出了利用3D卷积神经网络来学习深度的时空特征。 [2],[52]提出了提取视觉和运动特征并用递归网络对时间依赖性进行建模。尽管它在两个关键方面有所不同,但该体系结构最类似于我们为活动性分类提议的体系结构。首先,我们集成了可以在大型图像数据集上进行预训练的2D CNN。其次,我们将CNN和LSTM合并为一个模型,以实现端到端的微调。
图片字幕。关于图像字幕的一些早期著作[53],[54],[55],[56]将对象和场景识别与基于模板或树的方法相结合来生成字幕。这样的句子通常很简单,很容易与更流畅的人为描述区别开来。 [46],[57]通过从现有字幕片段组成新句子来解决此问题,尽管这些片段更像人类,但不一定准确或正确。
最近,已经提出了用于图像和字幕检索以及字幕生成的各种深度和多模式模型[27],[29],[30],[58]。尽管其中一些模型依赖于深度卷积网络来进行图像特征提取[30],[58],但最近的研究人员已经意识到,还必须包括时间上的深度网络来对文本进行建模。 [29]提出了一种RNN将句子映射到多模式嵌入空间中。通过将图像和语言映射到相同的嵌入空间,它们能够比较图像和描述以进行图像和注释检索任务。 [27]提出了一种用于字幕生成的模型,该模型与这项工作中提出的模型更相似:下一个单词的预测基于句子中的前一个单词和图像特征。 [58]提出了一种用于图像字幕检索的编码器-解码器模型,该模型依赖于CNN和LSTM编码器来学习图像字幕对的嵌入。他们的模型使用神经语言解码器来启用句子生成。正如图像字幕的快速增长所证明的那样,像LRCN这样的视觉序列模型对于使用自然语言描述视觉世界越来越重要。
视频说明。 用自然语言描述视频的最新方法已经使用了模板,检索或语言模型[11],[59],[60],[60],[61],[62],[63],[64] 。 据我们所知,我们将深度模型首次应用于视频描述任务。 与我们的工作最相似的是[11],它使用基于短语的SMT [47]生成句子。 在第6节中,我们展示了基于短语的SMT可以用LSTM代替视频描述,如先前针对语言翻译所展示的[9],[65]。
7.2 同期及后续工作
活动识别和视觉描述方面的类似工作与我们的工作同时进行,并且许多后续工作将卷积和递归网络相结合,以改善我们的结果并在其他顺序的视觉任务上取得令人兴奋的结果。
活动识别。 与我们的工作同步[66]训练了一个结合了CNN和LSTM进行活动识别的网络。 由于活动识别数据集(如UCF101)与图像识别数据集相比相对较小,因此[66]使用Sports-1M [3]数据集对其网络进行了预训练,其中包括从YouTube提取的超过一百万个视频。 通过训练更大的网络(四个堆叠的LSTM)并在大型视频数据集上进行预训练,[66]在UCF101数据集上达到88.6%。
[67]也结合了卷积网络和LSTM来预测每帧的多个活动。 与LRCN不同,[67]重点关注帧级别(而非视频级别)的预测,这使它们的系统可以标记在视频剪辑的不同时间位置发生的多种活动。 就像我们为活动识别所显示的那样,[67]证明了在单帧基线上包含时间信息会有所改善。 另外,[67]采用注意力机制来进一步改善结果。
图片字幕。 [45]和[38]还提出了将CNN与递归网络相结合以进行图像字幕的模型。 尽管与LRCN类似,但在[45]和[38]中提出的体系结构在将图像特征输入到序列模型的方式有所不同。 与我们在每个时间步输入图像特征的系统相反,[45]和[38]仅在第一时间步输入图像特征。 此外,他们没有探讨“因式”表示(图4)。 随后的工作[44]提出了注意力集中在序列生成过程中观察到图像的哪个部分上的注意。 通过吸引注意力,[44]旨在从视觉上关注模型生成的当前单词。 其他工作旨在解决基于卷积和循环体系结构相结合的字幕模型的特定限制。 例如,已经提出了将新词汇与有限的[40]或没有[68]图像和相应字幕示例结合在一起的方法。
视频说明。在这项工作中,我们依靠中间的功能来进行视频描述,但是自那以后,人们就提出了端到端可训练的视觉字幕模型。 [69]提出通过跨帧合并高级CNN功能来创建视频功能。然后,将视频功能用于生成描述,就像使用图像在LRCN中生成描述一样。尽管获得了良好的结果,但是通过合并CNN功能,视频中的时间信息会丢失。因此,[70]提出了一种LSTM,用于在使用LSTM生成句子之前将视频帧编码为固定长度的向量。使用可以利用视频中时间结构的端到端可训练的“序列到序列”模型,[70]改进了视频描述的结果。 [71]提出了一个类似的模型,增加了一个时间关注机制,当生成句子中的每个单词时,该机制对视频帧的加权不同。
视觉接地。 [72]将CNN与LSTM结合使用以实现可视化。该模型首先使用LSTM对描述图像一部分的短语进行编码,然后学习注意图像中的适当位置以准确地重建该短语。为了重建短语,模型必须学习将输入的短语在视觉上接地到图像中的适当位置。
自然语言对象检索。 在这项工作中,我们提出了基于自然语言描述的图像检索方法。 相反,[73]使用基于LRCN的模型进行对象检索,该模型返回围绕给定对象而不是整个图像的边界框。 为了使LRCN适应对象检索的任务,[73]除了全局图像特征外,还包括从对象建议中提取的局部卷积特征和对象建议的空间配置。 通过包含局部特征,[73]有效地使LRCN适用于对象检索。
8 结论
我们介绍了LRCN,这是一类模型,在空间和时间上都具有深度,并且足够灵活,可以应用于涉及顺序输入和输出的各种视觉任务。我们的结果一致表明,通过使用深度序列模型学习顺序动力学,我们可以改进以前仅在视觉域学习参数层次深层方法的方法,以及对采用固定视觉表示输入并仅学习输入法的方法的改进。输出序列的动态。
随着计算机视觉领域的发展超出静态输入和预测任务的范围,诸如LRCN之类的深层序列建模工具对于具有顺序结构问题的视觉系统越来越重要。这些工具可以轻松地集成到现有的视觉识别管道中,使其成为时变视觉输入或顺序输出的直观问题的自然选择,这些方法只需很少的输入预处理即可轻松处理。设计的功能。