祁 冰
(海南工商职业学院 海南 海口 570228)
随着科技数码产品的普及和网络信息时代的发展,人们可以利用数码产品轻松拍摄、制作视频,分享到网络上,使得网络视频呈爆炸式的增长。在数量庞大的视频内容面前,人们需要从中挑选自己感兴趣的视频内容,就像搜索文本信息一样,搜索视频资源的需求与日俱增,视频检索技术也随之发展。以往的视频检索工作主要集中在输入一个视频,返回与输入视频相似的视频结果,即输入视频,返回视频。然而,按照人们日常的信息检索习惯应当是在搜索框输入描述性的文字,返回视频结果,这种跨模态的检索方式才更加便捷实用。视频检索的关键问题应当是如何为视频提供准确的文字描述,便于人们能像检索文字一样来检索视频。随着深度学习的发展,视频描述技术已经有了显著提高[1],本文主要围绕视频描述技术的发展及其关键技术来探究视频描述的发展前景。
视频描述技术涉及视频和文本两个模态的转换,得益于计算机视觉和自然语言处理技术的发展,其大体经历了4个发展阶。第1阶段是传统的人工方法,在观看完视频内容后,人为视频添加文字描述,这种方法虽然简单,但是低效,很难适应大数据时代的视频描述需求。第2阶段是基于模板的方法,即利用目标检测技术检测出视频的主体、动作、对象等信息,套用主语、谓语、宾语之类的语法模板来生成文字描述,虽然基于模板的方法可以自动为视频添加描述,然而它不能很好地描述有复杂内容及有较大时间长度的视频,而且受语法模板的限制,生成的文字描述种类单一,缺乏多样性。第3阶段是基于统计的方法,基于统计的方法先用最大后验概率求出视频中的中间语义标签,而后用统计机器翻译将中间语义标签转换为人类能理解的文字描述,这为后期基于深度学习的方法奠定了基础,基于深度学习的方法基本沿用了基于统计的方法的技术框架,但由于提取标签和机器翻译分步工作且联系不紧密,导致最终生成的文字描述准确度不高。第4阶段是基于深度学习的视频描述方法,基于深度学习的方法架构也主要分为两部分,即视觉模型和语言模型,视觉模型对视频进行编码,将学习到的视频内容转换成特征向量,语言模型将这些特征向量与词语结合来生成描述性文字。基于深度学习的方法面临的最大挑战是理解视频的主体对象、对象之间的交互活动以及活动的细节,并能按照时空顺序准确地用与内容匹配的自然语言描述出来。
基于深度学习的视频描述方法主要分为3种[2]:基于视觉的方法、基于对齐的方法和基于语言的方法。大多数的研究采用基于视觉的方法。该方法主要采用端到端的编码解码器结构将视觉信息转化为文本信息,框架见图1,即包含两个阶段的工作:先编码,后解码。编码就是把视频的视觉特征提取出来转换成向量,这些向量可以是固定长度的,也可以是动态的;解码就是将这些向量转换成描述文字。目前分别采用CNN(Convolutional Neural Networks,卷积神经网络)、RNN(Recurrent Neural Network,循环神经网络)、LSTM(Long-Short Term Memory RNN,长短时记忆循环神经网络)、GRU(Gated Recurrent Unit,门循环单元)及深度强化网络等网络模型的组合来负责这两部分的工作,不同模型的组合方式主要分为下面3类[3]。
图1 端到端的视频描述框架
(1)CNN+RNN组合,其中CNN负责编码,RNN或RNN的变种LSTM、GRU负责解码,这是当前应用最为广泛的框架。
(2)RNN+RNN组合,用RNN来进行编码解码工作。
(3)深度强化网络,这是在视频描述方面最新引入的方法,LSTM负责编码,HRL(Hierarchical Reinforcement Learning,分层式强化学习)负责解码。
下面将分别从编码和解码两个部分采用的不同架构来分析基于深度学习的视频描述生成过程。
3D-CNN模型(3D Convolutional Neural Network,三维卷积模型):视频与图像在视觉特征提取时最大的区别在于视频具有时序信息,为了结合视频的时序特征,可以选择3D-CNN作为编码器,在视频片段中提取多个帧来生成视频特征。
CNN分类器模型:为了得到更丰富的视觉特征,有研究者研究出3个单类标、多类标和多种属性的卷积分类器,将这3类分类器提取到的信息结合在一起,从而得到了更为丰富的图像特征。
MeanPool模型:当遇到训练数据集大小受限和模型缺少捕获视频和文本间关系的问题时,有研究者使用图像描述集预训练模型,在视频描述集上调试模型参数,采用平均值特征的方式来提取视频特征。在提取视频特征时,每隔10帧随机选取1帧输入到CNN中,提取该帧的图像特征,之后将这些特征加在一起求平均值作为视频的整体特征,取得了较好的效果。
多维度CNN架构:对每个视频帧提取不同比例大小的区域,输入到CNN网络中提取特征,最后通过最大池化层提取视频特征。
LSTM模型:每个时刻输入视频帧的图像特征表示,即用 LSTM网络提取视频的时序特征。
加入注意力机制的3D-CNN:考虑到了时序上的局部和全局特征信息。先通过3D-CNN模型提取短时序上的信息,再加权提取全局时序的视频特征,作为注意力信息加入到LSTM解码器中生成描述句。
LSTM模型:为了让生成的句子前后关联,将编码器生成的图像特征输入到LSTM的第一个单元中,生成一个输出词,之后每个时刻都输入上一个时刻的输出词,输出当前时刻的输出词,最后连成句子。这种方法将前一时刻的输出与当前时刻的输出相关联,达到效果更好。
Bi-LSTM模型:Bi-LSTM模型与LSTM模型的不同之处在于,它能完整地学到每个输入序列的过去及未来信息,其输出的文本信息更全面更丰富。
G-LSTM架构:在每个时刻输入融合图文的注意力信息预测描述词,采用典范对应分析方法CCA得到图像和文本的嵌套表示作为注意力信息[2]。
H-RNN架构:由句子生成器和段落生成器组成的层次结构框架,它在时间和空间两个方面加入注意力机制。先用一个GRU层将输入的视频特征生成一个短句。另一个循环层使用上下文和从句子生成器获得的句子向量生成段落。因此,段落生成器捕获句子之间的依赖关系,并生成相关句子的段落。
深度学习的发展离不开数据集,视频描述数据集的发展是推动该领域发展的原动力。当下流行的视频描述数据集主要有以下3种。
MSVD数据集:发布于2011年,包含不同的人、动物、场景等,包含1970条YouTube视频片段,其中1200条视频用于训练,100条用于验证,670用于测试。每段视频长约10 s,每段视频被标注了约40条英文句子,数据集见图2。
图2 MSVD数据集
MSR-VTT数据集:发布于2016年,包含体育、音乐、游戏等20个不同类别,包含1万个网络视频片段,其中6513条视频用于训练,497条用于验证,2990条用于测试。每个视频片段都被标注了大概20条英文句子。
VaTEX数据集:发布于2019年,覆盖了600种人类活动和不同的视频内容,包含超过 41250个视频片段,其中25991条视频用于训练,3000条用于验证,6000条用于公开测试,6278条用于神秘测试。每段视频有10个英文描述和10个中文描述,其中测试视频不提供标注。
为了测量生成的文字描述与原视频之间的对应关系和描述准确率,主要有4种评价指标来衡量它们[4]。最常用的第1种是BLEU(Bilingual Evaluation Understudy,双语评估替补),其主要应用于机器翻译领域,它可以匹配生成的句子和自然句子,匹配程度越高,BLEU值越高。第2种是ROUGE(Recall-Oriented Understudy of Gisting Evaluation,基于召回率的摘要评估),是基于召回率的自动摘要评价方法,跟BLEU较为相似,不同之处是它将模型生成的摘要与参考摘要的n元组贡献统计量作为评判依据,有4个版本,其中ROUGE-N和ROUGE-L更多用于视频描述中。第3种是METEOR(Metric for Evaluation of Translation with Explicit Ordering,带显式顺序的翻译评估指标),它基于单精度的加权调和平均数和单字召回率,相较于单纯基于精度的BLEU,它的准确率更高。第4种是CIDEr(Consensus-based Image Description Evaluation,基于一致性的图像描述评价),它也是对BLEU方法的改进,用为句子中的非关键信息降权的方法来提升准确率。
尽管视频描述技术已经取得了巨大的进步,但其生成结果与人工生成的结果仍旧存在较大差距,具体原因如下。
(1)机器提取到的视频的视觉特征往往是低层次,对一些如对象、动作等高层次的语义特征的提取还有所欠缺。
(2)在语句生成部分,大多数技术还依赖一些设定好的符合语法规则的语言模板,而人类的语言却是灵活多变的。
(3)大多数视频描述技术依旧缺乏处理视频时间维度的能力,处理长视频时性能低下。
(4)还缺乏视频描述专有的评价指标,现有的评价指标都是从机器翻译及图像描述领域借用的。
本文从跨模态的视频检索需求出发,主要研究了基于深度学习的视频描述方法,理清了视频描述方法发展的过程,概述了目前视频描述技术取得的成就,简要介绍了用于视频描述训练的不同数据集和几种用于衡量不同视频描述模型性能的评价指标,最后探讨了现有视频描述技术存在的问题,为今后的研究工作指明方向。