基于多模态信息的视频描述算法

2019-07-19 01:30:50
网络安全与数据管理 2019年7期
关键词:解码器语句语义

孙 亮

(中国科学技术大学 信息科学技术学院,安徽 合肥 230026)

0 引言

人工智能大体可分为两个研究方向:感知智能和认知智能。感知智能研究进展讯速,比如图片分类、自然语言翻译,但认知智能发展速度有限,比如看图说话、视觉描述等。将自然语言和计算机视觉结合起来的视频描述算法研究,有利于搭起人类和机器之间沟通的桥梁,促进认知智能的发展。

视频描述不同于视频分类、物体检测等标签式的粗粒度视觉理解任务,而是需要用通顺准确的一句话来描述视频内容。这不仅需要识别出视频中的物体,还需要理解视频中物体之间的相互关系,同时由于视频内容描述风格多样,比如对场景的抽象描述,对各物体之间关系的描述,对视频中物体行为和运动的描述等,这都给视频内容描述研究带来很大的挑战性。传统的视频内容描述算法主要采用基于语言模板的方法或基于检索的方法。基于语言模板的方法,由于受到固定语言模板的限制,只能生成形式单一缺乏灵活性的句子。而基于检索的方法过于依赖检索视频库的大小,当数据库中缺少与待描述视频相似的视频时,生成的描述语句将和视频内容存在较大的偏差。同时这两种方法都需要在前期对视频进行复杂的预处理过程,而对后端的语言序列部分优化不足,从而导致生成的语句质量较差。

针对前期需要对视频进行复杂的预处理过程,本文提出了一个新的基于多模态信息的网络框架对视频描述算法进行相关研究,通过网络直接实现端到端的训练,自动从大量的训练数据中学习到视频到语言的映射关系。针对后端语言序列部分优化不足,引入强化学习算法直接采用优化客观评价指标对模型进一步训练。最后通过实验来证明所提模型在视频描述问题上的有效性。

1 相关工作

视频描述是一个融合计算机视觉和自然语言处理的综合问题,类似于翻译一段视频为一句话。该任务不仅需要利用模型理解视频内容,还需要用自然语言表达它们之间的关系。视频内容描述算法主要分为基于语言模板的方法[1-2]、基于检索的方法[3-4]和基于编码解码器的方法[5-6]。

基于检索的方法,首先需要建立一个数据库,数据库中每个视频都有对应的语句描述标签。输入待描述的视频,然后找到数据库中与之最相似的一些视频,经过归纳和重置,把该相似视频对应的描述语句迁移到待描述的视频。基于检索的方法生成的描述语句更加贴近人类自然语言的表达形式,句子结构更加灵活。但是此方法严重依赖数据库的大小,当数据库中缺少与待描述视频类似的视频时,生成的描述语句将和视频内容存在较大的误差。上述两种方法都严重依赖视觉前期复杂的处理过程,且存在对后期生成句子的语言模型优化不足的问题。对于视频描述问题,这两类方法都难以生成描述准确、表达形式多样的高质量语句。

基于编码解码器的方法,是目前视频描述领域的主流方法。这主要受益于基于深度神经网络的编码解码模型在机器翻译[7-8]领域取得的突破进展。机器翻译的基本思路是:将输入的源语句和目标语句表示在同一向量空间内,首先使用编码器将源语句编码为一个中间向量,然后再通过解码器将中间向量解码为目标语句。视频描述问题也可以看做是一个“翻译”问题,即把视频翻译成自然语言。此方法前期不需要对视频采取复杂的处理过程,能够直接从大量的训练数据中学习视频到描述语言的映射关系,实现端到端的训练,并且能够产生内容更加精确、语法灵活和形式多样的视频描述。

2 基于多模态信息的视频描述算法

2.1 多模态信息编码器

在编码器阶段,从多模态信息出发,采用视频帧、光流帧和视频片段相结合的方法得到视频特征向量,同时检测和生成视频的高级语义属性。为了获得更有效的视觉特征和语义属性,将语义属性标签生成阶段的辅助分类损失和解码器网络损失进行同时优化。编码器的流程如下:

(2)提取语义属性表,对训练集和测试集中句子的单词按照其出现频率排序,移除虚词,然后选择出现概率最高的K个单词作为高层语义属性值。

(3)训练语义属性检测网络,本质上为一个多标签分类任务,输入不同的特征{vf,vo,vc},得到语义属性向量{sf,so,sc}。假设数据集有N条语句,yi=[yi1,yi2,…,yil,…,yiK] 是第i个视频的标签向量。其中如果视频i对应的描述语句中包含属性单词l,则yil=1;否则yil=0。令vi∈{vf,vo,vc}表示视频i从编码器学习到的特征向量,此时的训练数据为{vi,yi}。采用多层感知机网络来学习函数f(·):Rm→RK,其中m为输入特征向量的维度,K为输出向量的维度,这个维度和上述提取的语义属性值的个数相等,多层感知机输出向量si=[si1,…,siK]为视频i的预测标签向量,网络的多标签分类损失(loss1)定义如下:

端锚聚合酶抑制剂XAV939抑制人骨肉瘤SOSP-9607细胞增殖及作用机制研究 ………………………… 董永红等(14):1917

(1)

其中,si=α(f(vi))为学习到的K维向量,α(·)表示sigmoid函数,f(·)由多层感知机实现。

2.2 LSTM解码器

在解码阶段,本文提出一个结合视觉特征和语义特征的注意力LSTM模型[9]来生成描述语句。对于视频内容描述,输入一个视频,输出一条包含Ns个单词的文本句子Y,其中Y={w1,w2,…,wNs}。视频描述语句的生成问题可以公式化地定义为最小化损失函数(loss2):

图1 基于多模态信息的编码解码网络

loss2=-logP(Y|v,sf,sc,so)=-∑logP(wt|w0~t-1)

(2)

这是给定视频特征向量v和检测到的多模态语义属性sf,so,sc来生成正确文本句子的负对数概率的表达式,其中P(wt|w0~t-1)由wt~softmax(st)中的模型参数所指定。在训练阶段,鉴于视频特征及其学习到的多模态语义属性,通过对总的损失函数(loss1+loss2)同时进行优化,可以保证句子中的上下文关系。

当输出是一个句子时,非常自然地想到使用循环神经网络(Recurrent Neural Networks,RNN)作为解码器。由于长短期记忆(LSTM[9])单元的RNN能够捕获句子长期依赖性,在本文的网络结构中使用LSTM单元的变体作为解码器。如图1中Concatenation模块,将vf,vo,vc级联作为解码器初始时刻输入向量。假设输入单词为wt,LSTM上一时刻隐藏状态为ht-1,上一时刻细胞的记忆状态为ct,则LSTM在t时刻的更新规则如下:

it=σ(Wiwt+Uhiht-1+z)

(3)

ft=σ(Wfwt+Uhfht-1+z)

(4)

ot=σ(Wowt+Uhoht-1+z)

(5)

(6)

(7)

ht=ot⊙tanh(ct)

(8)

z=1(t=1)·Cv

(9)

为了更好地利用来自多个模态语义属性的辅助信息,本文提出结合语义属性的注意力机制来计算权重矩阵W*和Uh*,将传统LSTM的每个权重矩阵扩展为与K个属性相关权重矩阵的集合。即用W*(St)/Uh*(St)替换初始权重矩阵W*/Uh*,其中St∈RK是一个多模态的语义属性向量,随时间动态变化。特别地,定义两个权重矩阵Wτ∈Rnh×nx×K和Uτ∈Rnh×nh×K,其中nh是隐藏单元数目,nx是词嵌入向量的维数,则W*(St)/Uh*(St)的表达式如下:

(10)

(11)

其中,Wτ[k]和Uτ[k]分别表示权重矩阵Wτ和Uτ的第k个2D切片,其与概率值St[k]相关联,St[k]是多模态的语义属性向量St的第k个元素。

计算St,公式如下:

(12)

(13)

eti=wTtanh(Waht-1+Uasi)

(14)

其中,l=3表示学习到的三个语义属性向量{sf,so,sc},注意力权重ati反映了生成当前时刻视频中第i个语义属性的重要性程度。可以看出,对于不同的时间步长t,语义属性St是不同的,这使得模型在每次产生单词时有选择性地关注视频中的不同语义属性部分。训练这样一个模型等同于联合训练K个LSTM,网络的参数量和K值成正比,当K值很大时,网络几乎不能完成训练,采取以下的分解方法:

W*(St)=Wa·diag(WbSt)·Wc

(15)

Uh*(St)=Ua·diag(UbSt)·Uc

(16)

其中,矩阵维数Wa∈Rnh×nf,Wb∈Rnf×K,Wc∈Rnf×nx,Ua∈Rnh×nf,Ub∈Rnf×K,Uc∈Rnf×nh。把上述更新规则分解为:

(17)

(18)

(19)

其中⊙表示逐元素乘法运算符,对于St中的每个元素值,参数矩阵Wa和Ua是共享的,这可以有效地捕获视频中共有的语言模式,而对角线矩阵diag(WbSt)和diag(UbSt)考虑了不同视频中的特定语义属性部分。同理可证,ft,ot,ct的表达式和上面公式相似。网络充分训练之后,既可以有效地捕获视频中共有的语言模式部分,又可以关注于视频中特定语义属性部分,同时由于采用因式分解,网络的参数量大大减少,规避了原始网络的参数量和K值成正比的难题。

下面对网络参数量进行分析。采用因式分解网络的参数量大大减少。未分解之前总的参数量为K·nh·(nx+nh),可以认为参数量和K成正比。在分解St之后,式(15)W*(St)表达式参数量为nf·(nh+K+nx),式(16)Uh*(St)表达式参数量为nf·(2nh+K),二者的参数量之和为nf·(3nh+2K+nx)。当指定nf=nh时,对于较大的K值,nf·(3nh+2K+nx)要远远小于K·nh·(nx+nh)。

2.3 强化学习训练

上述提出了一个新的编码-解码器模型MIVC (Multimodal Information Algorithms for Video Captioning) 来生成视频内容描述,其本质上将每个单词生成过程看做是一个分类问题。该模型对p(S|V)进行建模,S是描述句子,V是视频,训练目标是最大化对数似然概率,利用交叉熵损失函数来优化模型。然而使用最大似然训练存在两个明显的问题:(1)训练损失和评价准则不统一。模型训练阶段采用最大化后验概率,模型评估阶段采用客观评价指标BLEU[10]、METEOR[11]、CIDER[12]等,而最大化对数似然可以认为对生成的每个单词给予一样的权重,实际上句子中的某些单词可能更重要一些,这种不一致导致模型无法对视频内容描述生成的评价指标充分优化。(2)曝光偏差的问题。模型训练的时候,解码器每个时刻的输入来自训练集中真实词,而模型测试的时候,每个时刻输入来自上一时刻生成的输出词。输出词一般采用贪婪搜索或者束搜索的方式获得,如果其中某一个单词预测不够准确,错误可能会接着传递,误差积累导致后面生成单词越来越差。

为了解决上述两个问题,很明显的想法就是使模型训练和评估时的情形尽可能一致,也就是在网络训练的时候不直接优化对数似然,而是直接最大化评价指标CIDER (或者BLEU、METEOR)。并且使模型训练和测试阶段的输入一致,均使用前一时刻的输出作为下一时刻的输入。本节将用强化学习的技术来解决上述提到的这些问题,主要采用RENNIE S J等提出的SCST[13]算法对本文所提出的MIVC模型进行改进,将模型通过贪婪搜索或者束搜索得到的句子得分作为公式的基线函数,于是可以得到以下改进的公式:

(20)

图2 基于强化学习的解码器训练算法

3 实验分析

本节通过具体实验来评估本文提出的MIVC模型在视频内容描述数据集MSVD[14]的性能。在训练阶段,MIVC中的所有权重矩阵采用[-0.05,0.05]均匀分布初始化,偏置项置为0。将LSTM隐藏单元的数量和因子nf的大小设置为512,使用公开的word2vec向量来初始化词嵌入。两个数据集的最大epochs数设为35,如果参数向量的范数超过5则剪切梯度,采用学习率为1×10-4的Adam算法用于优化网络模型。在测试阶段,采用参数为5的束搜索策略生成视频描述,使用BLEU@N、METEOR和CIDER三个常用指标对提出模型进行定量评估。

3.1 不同语义属性实验结果对比

首先,为了评估视频不同语义特征和它们不同组合之间的有效性,在模型MIVC中采用6种不同的语义属性组合,同时串接vf,vc,vo作为视频最终的特征向量v输入到解码器中。其中“MIVCf”表示仅仅使用语义属性sf,“MIVCf+o”表示使用两个语义属性sf和so,其他四种模型遵守相同的标记,f,o,c分别表示sf,so和sc。表1展示了本文提出各种模型与目前流行方法在MSVD数据上的性能比较。可以看出:(1)本文所提出的模型“MIVCf+o+c”在6个评价指标上均取得了最好的实验结果。特别地,该模型在METEOR和CIDER指标上分别为35.3% 和 79.6%,是对比方法中效果最好的模型。(2)对于MIVC模型的六种变体,比如“MIVCf”、“MIVCf+o”和“MIVCf+o+c”,六个评价准则的分数值逐渐增大。这表明随着多模态语义属性的加入,模型的视觉表达能力变强,更加有利于视频描述语句的生成。也就是说MIVCf+o+c的性能优于MIVCf和MIVCf+o,这证明了学习到的多模式语义属性能够增强视频描述的性能。(3)即使只使用一种语义属性sf,“MIVCf”模型在METEOR和CIDER指标上也接近甚至优于LSTM-TSA[17],证明所提出MIVC基本框架的有效性。

表1 MIVC模型和其他流行的方法在MSVD数据集上的指标对比 (%)

3.2 不同的属性融合策略结果对比

为了比较不同语义属性融合策略,通过实验分析本文所提出的基础模型MIVC和其他三种模型的性能比较,这三种模型都采用了高层语义属性,但是语义属性融合的策略不一样,实验结果如表2所示。为了公平地比较各种框架融合策略的差异,表中四种模型均使用单一的语义属性sf和同样的视频特征向量v。其中“LSTM-v/LSTM-vf”模型,v表示视频特征向量,f表示从视频RGB帧学习到的高层语义属性向量sf,vf表示将v和sf串联送到网络中,这些向量值都只在初始时刻输入到标准的LSTM解码器。实际上,LSTM-v是一个标准的编码-解码器模型,网络中没有使用高层语义属性,可以作为一个基准框架。LSTM-vf模型使用v和sf的串接作为LSTM解码器初始时刻的输入。在模型LSTM-vf中,视频特征向量v作为LSTM解码器初始时刻的输入,同时语义属性sf在解码器的每一时刻均输入到网络中,而MIVCf是本文提出的网络模型。从表2可以看出,与其他三种方法相比,MIVCf取得了最好的实验效果,证明了本文所提出的语义融合策略的有效性。尤其是MIVCf的效果远远好于基准模型LSTM-v,这表明了高层语义属性对于研究视频描述问题的重要性。

表2 使用单一语义属性的MIVCf和其他三种模型在数据集MSVD上的实验结果

3.3 强化学习训练结果

表3展示了用三种不同的训练方式对本文提出的MIVCf模型进行改进的测试结果。其中MIVCf(Greedy)和MIVCf(Beam)表示使用交叉熵损失函数对提出的基准模型进行训练,Greedy表示使用贪婪搜索解码,Beam表示束搜索解码;MIVCf(CIDER)表示将MIVCf(Greedy)作为预训练模型,然后利用基于强化学习训练算法来直接优化评价指标CIDER,对模型进一步优化训练得到的结果。从表中实验数据可以看出,MIVCf(CIDER)模型的评价指标得分均高于MIVCf(Greedy)和MIVCf(Beam),证明采用基于自判别序列训练的强化学习算法训练得到句子的质量效果好于贪婪搜索句子的质量。从表中可以看出,虽然模型直接优化的是CIDER指标,但是METEOR和BLEU@4都得到了相应提高。说明直接优化评价指标CIDER的策略梯度算法能够进一步对模型优化,提高视频描述生成句子的质量。

表3 基于交叉熵损失和基于强化学习训练模型在MSVD数据集上的性能对比

4 结束语

本文主要研究了视频的多模态信息,从视频多模态信息出发,采用视频帧、光流帧和视频片段相结合的方法对视频特征进行编码,同时在生成描述语句的每一时刻关注于不同的高层语义属性。通过实验与其他主流方法进行对比,表明所提出的基于多模态信息的视频内容描述算法能够提高视频描述生成精度。同时本文对解码器端语言生成部分优化不足的问题进行了分析与研究,引入强化学习算法对提出的新模型进行改进,采用直接优化客观评价指标对模型进行进一步训练,能够使生成的描述句子的质量进一步提升,表明强化学习算法能够有效避免采用最大似然对语言进行建模带来的曝光偏差和训练指标与评价准则不统一的问题。

猜你喜欢
解码器语句语义
科学解码器(一)
科学解码器(二)
科学解码器(三)
重点:语句衔接
语言与语义
线圣AudioQuest 发布第三代Dragonfly Cobalt蓝蜻蜓解码器
精彩语句
“上”与“下”语义的不对称性及其认知阐释
现代语文(2016年21期)2016-05-25 13:13:44
认知范畴模糊与语义模糊
如何搞定语句衔接题
语文知识(2014年4期)2014-02-28 21:59:52