Multi-modal Transformer for Video Retrieval (MMT)
基本信息
标题、时间、会议、领域、code、paper 链接
《Multi-modal Transformer for Video Retrieval》 在 CVPR 2020 Video Pentathlon Challenge 获得了第一名 (http://thoth.inrialpes.fr/research/MMT/) 。对应的 code / paper ,论文收入 ECCV 2020 Spotlight paper 。
创新点
概述
这篇论文中是解决了一个新问题,还是用一个新的方法解决了一个传统问题;创新点在哪里,有什么贡献。
简单来说,论文提出了 Multi-Modal Transformer (MMT) 模型,用于将视频的多模态序列 (如外观、运动特征、音频、OCR)进行聚合。从而将聚合的视频多模态特征映射进一个与文本共享的空间中进行检索,其效果在 MSRVTT、ActivityNet 和 LSMDC 取得了 SOTA 的效果。
解决方法
具体如何实现的
整体上的结构可以参考上图,在左侧为一个 text encode (这里就是一个 bert ),右侧是多个 video export 用 mmt 组合而成,而最终的相关性分值,则是采用一个权重相关性的东西。这里比较有意思的设计就是 MMT 和 weight of each similarity ,下边详细进行解释。
MMT
- video expert
通过预训练得到的专家网络,可以很好的完成某一个方面上的工作。这里的专家网络指的是:
1、使用 S3D 提取的运动特征,使用 Kinetics action recognition dataset 进行预训练;
2、使用 VGGish 提取的音频特征,使用 YT8M 数据集进行预训练;
3、使用 DenseNet161 提取的场景特征,使用 Places365 数据集进行预训练;
4、OCR 提取字幕信息;
5、Face 面部特征提取;
6、Speech 使用 Google Cloud Speech to Text API,将视频的声音转化为文本信息;
7、 使用 SENet-154 提取 Appearance 表观信息;
export 得到的 embedding, 长度和维度肯定是不一样的, 首先使用一个 project layer ,将 export embedding 转化为长度相同的向量。然后对序列向量做一个 agg 操作,即 $F{agg}^{n} = maxpool({F{k}^{n}}_{=1}^{K})$ 。
于是得到的 export features 为
也许有人想问,K 的数量是怎么觉得定的呢? 这个可能是为了和 Temporal embeddings 对称用,稍后会看到。
- expert embedding
每种 export 都有一个对应的 embedding,export feature 进行对应,在我看来这个操作很像是 position embedding的感觉,目的是为了让后边的模型知道,这些 feature 都是从同一个 export 来的。
- temporal embedding
提供了一个时序信息,每秒抽取出一个特征来。 D 则为秒数,向上取整。如果视频长度是 7.4s,则 D 应该是 8.0s。
视频特征循环 N 次,每个 export 都有完整的 D 个帧。
这一步也许是这篇论文的精髓所在,每个特征都与视频的帧发生联系。 当然这里是采用直接想加的形式联系在一起,应该有更好的联系方式。
我们举个例子,比如两个视频片段,一个是左下的视频,一个是右下的视频。 在不同视频帧中,摩托车的重要性是不一样的。
通过这样的设计,模型可以感知到摩托车位置和重要性的变化,进而可以更好的分辨出是 走开 还是 走向摩托车。
将上述三个 embedding 相加,送入一个 transformer 结构,得到每个 export agg 编码后得到的结果 agg embedding。
如此,得到了视频在每个特征上的表示向量。
那么,如何得到一个统一的视频表征向量呢?
权重学习
在文本的这一侧,使用 bert 提取出文本的 embedding,将其变形至与 expert agg embedding 一个维度的向量。设置一个专家权重参数,用于衡量 expert embedding 与 text embedding 的关联重要性。
这也是一个很有意思的设计,因为不同的描述可能侧重点是不一样的。 比如 描述「穿红色衣服的男孩」就与声音信息无关,再比如描述 「某个人在唱歌」可能就跟声音信息很相关了。不同的 描述-声音对的侧重点应该是不同的,可以学习得到。
应用场景
论文中工作的意义,可以应用于什么场景。
目前来看,这是一个视频多模态预训练的任务,但因为其需要视频描述,所以可能是主要针对视频检索这个任务来做的。 也许可以用在搜索场景下。
总结
作者总结
作者对自己成果的总结
检索与自然语言查询相关的视频内容的任务在有效处理互联网规模的数据集方面起着关键作用。大多数现有的针对这种字幕到视频检索问题的方法并没有完全利用视频中的跨模式线索。此外,它们聚集了每一帧的视觉特征,但时间信息有限或没有。在本文中,我们提出了一个多模态转化器,对视频中的不同模态进行联合编码,使它们中的每一个都能关注到其他模态。变换器的结构也被用来编码和模拟时间信息。在自然语言方面,我们研究了与多模态变换器一起联合优化语言嵌入的最佳做法。这个新颖的框架使我们能够在三个数据集上建立最先进的视频检索结果。
亮点
专家网络的融合很有意思,最后的权重学习也有点意思。
不足
专家网络都是一些旧的东西,据 https://github.com/papermsucode/mdmmt 这篇论文描述,除了表冠特征,其余特征其实没啥用。花里胡哨的用了一大堆,但给人一种拼凑出来的感觉,不够新颖。
另外一个权重学习,这个不就是加了个映射网络嘛,说的这么高深。
参考
一些参考文献或者链接
Multi-modal Transformer for Video Retrieval (MMT)