Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

腾讯PCG信息平台与服务线 研究员 王占宇作者

腾讯QQ浏览器Lab斩获ICCV2021视频多模态理解VALUE Challenge冠军

10月11日至17日,在2021国际计算机视觉大会International Conference on Computer Vision (ICCV 2021)上,腾讯QQ浏览器实验室团队参加了ICCV 2021视频多模态理解领域的VALUE Challenge,在Video Caption Track获得了冠军,总分遥遥领先其他团队,并且在各个子榜单上,也远远超出现有SOTA。该篇文章作者为腾讯研究员王占宇,内文详细介绍了其所在的QQ浏览器Lab的研发成果和经验分享。

VALUE Challege由 ICCV 2021: the Forth Workshop on Closing the Loop Between Vision and Language 举办,下设Retrieval,VQA,Video Captioning三个赛道,其中,Video Captioning赛道包含三个数据集,即TVC, YC2C和VATEX-EN-C数据集。Video Caption能够连接人类语言与视觉信息,在实际业务中,可以应用到视频生成标题,辅助视频检索等场景。在学术上,video caption有MSRVTT、MSVD,TVC、VATEX等多个不同的开源数据集。

一.Video Caption任务背景

今年初,OpenAI发表了CLIP和DALL-E,在图像-文本的跨模态语义匹配、文本生成图像等领域取得令人震惊的突破,与此同时,预训练技术研发新范式在NLP领域扎根之后正向CV领域全面渗透。如何将多模态预训练技术应用到视频领域,是一个重要技术课题,同时也对业务发展有重要影响。

Video Caption(视频描述)任务是给定一个视频片段,生成一行文字描述该视频。它属于视频-文本跨模态和文本生成领域。相对于image caption任务,视频还需要融合多帧序列中所包含的时序信息,这对生成准确的描述是一项重大挑战。

下图是一个实际例子,图片上侧是一段视频帧,下侧是对于视频的描述“a  cake  is  being  placed  on  a  plate”。

二.VALUE Challenge介绍

众所周知,NLP领域的GLUE榜单集成了多种NLP任务和数据集,极大的推动了NLP预训练模型的发展。VALUE的目标就是希望成为视频-文本跨模态领域的GLUE,推动通用的视频-文本跨模态理解的发展。VALUE全称是Video And Language Understanding Evaluation,是由微软牵头设立的,包含了11个视频与语言任务的benchmark,涵盖了不同的数据集、视频类型以及难易程度和任务类型。

VALUE Challege由 ICCV 2021: the Forth Workshop on Closing the Loop Between Vision and Language 举办,涵盖Retrieval,VQA,Video Captioning三个赛道,其中,Video Captioning赛道包含三个数据集,即TVC, YC2C和VATEX-EN-C数据集。

TVC数据集是一个大型多模态的视频描述数据集,包含26w的视频描述以及10w的短视频段,下图是来自官方的数据集样例:

YC2C数据集是食谱教学数据集,包含了来自YouTube的2000段视频,下图是官方数据集样例:

VATEX-EN-C数据集是VATEX数据集的英文版本,VATEX数据集是大型多语言视频描述数据集,包含41250个视频,每个视频有10个中文描述以及10个英文描述,下图是官方数据集样例:

三.相关算法

早期的video caption采用了基于模板匹配的方法[1,2,3],将预测的单词与预定义的模板对齐。S2VT[4]提出了基于LSTM的视频描述Seq2seq模型,自此以后,采用Encoder-Decoder架构的序列学习方法成为了video caption的主流方法。[5]将image caption中的attention机制引入到video caption中,对视频的帧序列应用attention。RecNet[6]提出用解码器隐状态重建视觉特征,从而强制让解码器保留更多原视觉特征中的信息。[7]通过多任务学习优化视频描述,腾讯QQ浏览器Lab设置的三个训练任务分别是video predication、video captioning、entailment generation。在近年来的研究中,一些研究者也成功地运用vision-language(VL) 预训练进行VL理解,在image caption等下游任务中取得了显著突破[8,9,10]

本次腾讯QQ浏览器Lab在VALUE Challenge中的解决方案主要基于CVPR 2020的image caption模型X-LAN[11]和X-Transformer,它们都是经典的Encoder-Decoder架构,分别使用LSTM和Transformer序列模型,这篇paper最主要的改进点是引入了X-Linear Attention替代经典的Attention结构。不过在实验中,这个attention网络的影响并不大,在模型中充分而合理的利用预训练模型CLIP feature带来了显著的指标增长。

四.模型训练

下图是方案的框架图,QQ浏览器Lab使用两阶段方式训练模型。

第一阶段:训练原始的X-LAN或者X-Transformer网络。视频特征经过双模态融合之后,利用X-Linear attention block对视频帧特征序列进行编码,使得帧特征序列之间具有更高阶的信息交互,得到增强的视频特征序列。根据增强的视频特征,在解码器中进一步使用x-Linear attention block挖掘不同模态之间的交互信息,并解码为最终输出的句子。

在第二阶段:使用self-critical sequence training(SCST)继续训练(continue training)。Caption模型在训练阶段使用“Teacher-Forcing”的方式训练,每个时刻中输入的单词是来自ground-truth的单词,测试的时候依赖的是自己生成的单词,测试阶段生成的不好会导致误差累积;另外,模型训练使用cross entropy loss,evaluation使用的却是BLEU、ROUGE、METEOR、CIDEr等指标,模型的优化方向与评价指标之间存在不一致。SCST利用policy gradient,使用训练阶段生成的caption的CIDEr作为reward,使用当前模型在测试阶段的reward作为reward的baseline,可以使模型直接优化CIDEr并鼓励模型在训练、测试阶段表现一致。第二阶段的训练使用第一阶段最好模型初始化,在第二阶段中模型CIDEr指标取得了显著提升。

五.主要改进措施

1.使用CLIP feature替代传统的图像特征

CLIP[12]是经过4亿个图像-文本对预训练的图文跨模态模型。CLIP4Clip[14]证明了CLIP feature对video retrieval任务有巨大的效果提升(接近翻倍),这是因为CLIP通过预训练,在image层面已经将vision和language两个模态的向量空间对齐,多帧image融合成的video,也同样容易与language的向量对齐。一个自然而然的想法是在video caption任务中同样引入CLIP feature,QQ浏览器Lab在[20]中初步证明了CLIP feature对video caption的有效性,获得ACM MM Video Caption Track的第二名。具体做法是借鉴CLIP4Clip先用video retrieval模型finetune CLIP模型,然后每帧图像计算CLIP feature。我们使用了CLIP公开的3个预训练模型:CLIP(RN50x16),CLIP(ViT-B/32)和CLIP(ViT-B/16)。

在image caption领域,主要使用检测模型得到的local feature,这种local feature某种程度上含有语义信息,因为检测目标是有语义label的。在video caption中,local feature也经常使用,譬如VATEX Challenge 2020的冠亚军方案介绍[17,18]。QQ浏览器Lab废弃了local feature,一个原因是检测模型非常耗资源,另外,过程中发现实验发现影响不大,这可能是因为Lab引入的CLIP feature本身已经有很强的语义信息。

2.引入TSN[15]的抽帧方式

TSN是经典的视频动作分类模型,它的主要贡献之一是提出了一种稀疏采样训练方式:在训练阶段,将视频平均切分为K段,并在每段中随机采样一帧,这样每两个epoch输入的帧是不同的,取得了数据增强的效果。同时,一个视频只采样K帧,K的数值通常在10左右,计算量较小,速度很快。CVPR 2021的Best Student Paper: ClipBERT[16]更进一步指出,稀疏采样的端到端训练,相比于比稠密抽帧的离线特征,效果更好。

QQ浏览器Lab之前在腾讯信息流的视频分类模型中,也尝试了TSN抽样 + NeXtVLAD特征融合的方式训练[19],同样证明了这种抽帧方式对视频模型的有效性。在此次Video Caption任务中,团队同样采用TSN抽样方式,选取K=7,在训练阶段,每个视频均分为K段,每段中随机抽取一帧,最终输入7帧图像特征。

3.引入滑动窗口的SlowFast feature

CLIP feature毕竟只是单帧图像的2D feature,而为了刻画多帧时序间的运动特征,有必要引入3D feature。SlowFast[13] 是常见的视频3D模型,它通过慢通道(Slow pathway)捕捉低帧率、高分辨率下的视频静态内容,以及快通道(Fast pathway)捕捉高帧率、低分辨率下的视频动态语义。

针对CLIP feature,QQ浏览器Lab在训练时采用的是每秒10帧,并最终通过TSN采样方式抽取总共7帧特征。SlowFast feature需要在时间上与CLIP feature对齐,但是SlowFast本身需要较长时间的视频片段来计算feature,所以,团队设置了一个滑动时间窗提取视频片段,时间窗的长度为1.5秒,每次移动的步长为0.3秒。

4.双模态信息融合

如图所示,QQ浏览器Lab还利用了视频字幕生成双模态的video embedding。对于视频特征与视频字幕,团队分别使用了一个全连接层生成video embedding与text embedding,并将两种embedding拼接作为X-LAN的输入。为了区分视频与文本,将视频与文本分别表示为0、1并映射为type embedding,embedding与拼接后的视频文本embedding求和得到bimodal video embedding。

5.模型集成

QQ浏览器Lab应用了两种集成策略,分别从单词级别以及句子级别对多模型的预测结果进行集成:

1.Word-level ensemble:对decoder的每个步骤的softmax输出进行ensemble。在decoder阶段,模型根据每个step中模型softmax输出预测该步骤的单词,并将该单词作为下一步输入。团队在平均多模型的softmax输出,选择具有更高概率的单词,考虑多个模型的预测结果有更高概率选择正确的单词,从而减少错误结果对后续步骤的影响。

2.Sentence-level ensemble:对多个模型预测的描述句子进行ensemble。word-level ensemble策略可以有效的提升模型预测性能,其缺点是操作复杂,且由于需要同时加载多个模型到内存,使ensemble模型的数量受到限制。针对这个问题,团队设计了一种针对生成任务的sentence-level ensemble策略:使用CIDEr作为句子重要性的评价指标,对于T个模型预测的n*T个句子(n为样本数量),针对某一样本,各模型的预测结果质量可通过将该模型预测句子作为“candidate”, 其余模型预测句子作为“ground-truth”所计算的CIDEr分数得到,以及选择具有最高分数的n个句子作为sentence-level的ensemble结果。为了增加结果的多样性并让好的句子拥有更高的权重,团队将Word-level ensemble的结果加入到多个模型各自预测的结果当中,进行Sentence-level ensemble。

六.比赛结果

下图展示了QQ浏览器Lab各项改进措施产生的效能提升(所有gain都是相对于CLIP(ViT-B/32)+SlowFast(8×8)计算得到),CLIP feature远超在ImageNet上预训练的Resnet feature。

QQ浏览器Lab最终在VALUE Challenge的Video Caption Track获得了冠军,并超出第二名13.85分。并且在各个子榜单上,也远远超出现有SOTA。具体结果如下图所示:

VATEX private test

TVC test

ICCV,全称IEEE International Conference on Computer Vision(国际计算机视觉大会)由IEEE主办,在世界范围内每两年召开一次。其与计算机视觉模式识别会议(CVPR)和欧洲计算机视觉会议(ECCV)并称计算机视觉方向的三大顶级会议。

QQ浏览器内容算法研发团队是一支以信息流推荐为主战场,专注内容理解领域技术研发工作的技术团队,致力于通过精准的内容理解提升用户获取信息的效率,为用户创造价值。同时,团队成员总结抽象实践中遇到的技术问题,以论文或者技术分享的方式反哺学术界和相关行业,形成了较好的产研结合的发展路径,积极践行“学术有影响,工业有产出”。团队的多项工作,如荔枝/神舟预训练、篇章理解、人脸识别等能力均为腾讯PCG技术中台的核心技术,直接支持公司多个产品,如腾讯视频、微信公众号、浏览器搜索等,并且在顶会上发表多篇论文。

参考文献

[1]Guadarrama S, Krishnamoorthy N, Malkarnenkar G, et al. Youtube2text: Recognizing and describing arbitrary activities using semantic hierarchies and zero-shot recognition[C]//Proceedings of the IEEE international conference on computer vision. 2013: 2712-2719.

[2]Rohrbach M, Qiu W, Titov I, et al. Translating video content to natural language descriptions[C]//Proceedings of the IEEE international conference on computer vision. 2013: 433-440.

[3]Xu R, Xiong C, Chen W, et al. Jointly modeling deep video and compositional text to bridge vision and language in a unified framework[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2015, 29(1).

[4]Venugopalan S, Rohrbach M, Donahue J, et al. Sequence to sequence-video to text[C]//Proceedings of the IEEE international conference on computer vision. 2015: 4534-4542.

[5]Yao L, Torabi A, Cho K, et al. Describing videos by exploiting temporal structure[C]//Proceedings of the IEEE international conference on computer vision. 2015: 4507-4515.

[6]Yu H, Wang J, Huang Z, et al. Video paragraph captioning using hierarchical recurrent neural networks[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 4584-4593.

[7]Pasunuru R, Bansal M. Multi-task video captioning with video and entailment generation[J]. arXiv preprint arXiv:1704.07489, 2017.

[8]Li X, Yin X, Li C, et al. Oscar: Object-semantics aligned pre-training for vision-language tasks[C]//European Conference on Computer Vision. Springer, Cham, 2020: 121-137.

[9]Zhou L, Palangi H, Zhang L, et al. Unified vision-language pre-training for image captioning and vqa[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2020, 34(07): 13041-13049.

[10]Li Y, Pan Y, Yao T, et al. Scheduled Sampling in Vision-Language Pretraining with Decoupled Encoder-Decoder Network[J]. arXiv preprint arXiv:2101.11562, 2021.

[11]Pan Y, Yao T, Li Y, et al. X-linear attention networks for image captioning[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 10971-10980.

[12]Radford A, Kim J W, Hallacy C, et al. Learning transferable visual models from natural language supervision[J]. arXiv preprint arXiv:2103.00020, 2021.

[13]Feichtenhofer C, Fan H, Malik J, et al. Slowfast networks for video recognition[C]//Proceedings of the IEEE/CVF international conference on computer vision. 2019: 6202-6211.



产业多任务学习腾讯计算机视觉
相关数据
权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

人脸识别技术

广义的人脸识别实际包括构建人脸识别系统的一系列相关技术,包括人脸图像采集、人脸定位、人脸识别预处理、身份确认以及身份查找等;而狭义的人脸识别特指通过人脸进行身份确认或者身份查找的技术或系统。 人脸识别是一项热门的计算机技术研究领域,它属于生物特征识别技术,是对生物体(一般特指人)本身的生物特征来区分生物体个体。

模式识别技术

模式识别(英语:Pattern recognition),就是通过计算机用数学技术方法来研究模式的自动处理和判读。 我们把环境与客体统称为“模式”。 随着计算机技术的发展,人类有可能研究复杂的信息处理过程。 信息处理过程的一个重要形式是生命体对环境及客体的识别。其概念与数据挖掘、机器学习类似。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

腾讯机构

腾讯,1998年11月诞生于中国深圳,是一家以互联网为基础的科技与文化公司。我们的使命是“通过互联网服务提升人类生活品质”。腾讯秉承着 “一切以用户价值为依归”的经营理念,为亿万网民提供优质的互联网综合服务。 腾讯的战略目标是“连接一切”,我们长期致力于社交平台与数字内容两大核心业务:一方面通过微信与QQ等社交平台,实现人与人、服务及设备的智慧连接;另一方面为数以亿计的用户提供优质的新闻、视频、游戏、音乐、文学、动漫、影业等数字内容产品及相关服务。我们还积极推动金融科技的发展,通过普及移动支付等技术能力,为智慧交通、智慧零售、智慧城市等领域提供有力支持。

http://www.tencent.com/
相关技术
文本生成技术

文本生成是生成文本的任务,其目的是使人类书写文本难以区分。

多任务学习技术

多任务学习是机器学习的一个子领域,在该子领域中,可以同时解决多个学习任务,同时可以利用任务之间的共同点和不同点。与单独训练模型相比,这可以提高特定于任务的模型的学习效率和预测准确性。

视频生成技术

视频生成是指利用深度学习等技术生成视频的任务。

视频检索技术

视频检索的目的是给定一个文本查询和一个候选视频池,选择与文本查询相对应的视频。

视频分类技术

视频分类指基于根据视频片段的语义内容(如人的动作或更复杂的活动)对视频片段进行自动标记。

暂无评论
暂无评论~