借助机器翻译来生成伪视觉-目标语言对进行跨语言迁移

描述

虽然目前传统的跨模态检索工作已取得了巨大的进展,但由于缺少低资源语言的标注数据,这些工作通常关注于高资源语言(比如英语),因此极大地限制了低资源语言在该领域的发展。

为了解决这一问题,作者针对跨语言跨模态检索任务(CCR)展开了研究,该任务旨在仅使用人工标注的视觉-源语言(如英语)语料库对模型进行训练,使其可以适用于其他目标语言(非英语)进行评估【如下图所示】。

C语言

传统跨模态检索&跨语言跨模态检索(CCR)

在这篇论文中,作者旨在借助机器翻译来生成伪视觉-目标语言对进行跨语言迁移,来缓解人工标注多语言视觉-语言语料库困难的问题。虽然机器翻译可以快速的处理大量的文本语言转换,但是其准确性并不能得到保证,因此在翻译过程中将会引入大量的噪声,导致翻译的目标语言句子并不能准确的描述其对应的视觉内容【如下图所示】。

C语言

然而之前的基于机器翻译的CCR工作大多忽略了这个问题,它们通常使用大规模的预训练模型在通过机器翻译得到的大规模多语言视觉-语言语料库上进行大规模预训练,并且只关注于视觉-目标语言数据对之间的对齐。然而直接在这种噪声数据对上应用跨模态匹配将会严重影响检索性能,神经网络模型有很强的能力来拟合这种给定的(噪声)数据。

为了解决这个问题,作者提出了一个噪声鲁棒学习方法来缓解机器翻译中所引入的噪声问题,该论文是首个关注于CCR任务中由机器翻译所引入噪声问题的工作。

方法

C语言

模型框架图

作者首先先引入了其「基线模型」

基线模型

视觉编码器:给定一个视频,使用预训练的2D CNN来提取视频特征序列,然后输入到Transformer块中,来增强帧间交互,最终得到一个视频特征向量

C语言


文本编码器:作者设计了一个双分支编码器,分别又一个源语言分支和一个目标语言分支组成。每个语言分支都包含一个Transformer block 和一个预训练的mBERT backbone,将源语言和目标语言分别输入到对应的分支中,得到对应的源语言句子特征和目标语言句子特征

C语言


将以上三个特征分别映射到多语言多模态空间中

C语言


作者使用了传统的跨模态检索任务中常用的triplet ranking loss进行约束:

C语言


噪声鲁棒的特征学习

基线模型只是简单的进行了跨语言跨模态对齐,并没有对噪声进行处理,接下来作者提出了多视图自蒸馏来生成pseudo-tagets以监督目标语言分支的学习

作者首先借助于cross-attention来生成一个相对干净的中间目标语言句子特征,通过将源语言token序列作为query,利用cross-attenion固有的性质,对目标语言token序列进行过滤。

C语言

cross-attention权重示例图

如图3所示,错误的单词(用红色标记)和源语言单词之间的注意权重被分配了低值。其过程表示如下:

C语言


多视角自蒸馏

作者引入了基于相似度视角和基于特征视角的自蒸馏损失

基于相似度视角的自蒸馏(Similarity-based view):

给定(V, S, T),默认其两两之间互为匹配对,忽视翻译得到的目标语言句子T中所包含噪声的事实。对此,作者将cross-attention所生成的特征作为teacher,使用特征和视觉特征计算计算得到一个soft pseudo-targets作为目标语言分支的监督

C语言

soft pseudo-targets示例图

C语言C语言


基于特征视角的自蒸馏(Feature-based view):

通过l1范式实现特征蒸馏
 

C语言


循环语义一致性

受无监督机器翻译的启发,作者引入了循环语义一致性模块,提高源语言分支从噪声中提高原始语义信息的能力。增加源语言分支的鲁棒性。

C语言C语言


语言无关特征学习

考虑到特定语言特征缺少跨语言迁移能力,作者通过对抗学习的方式来训练模型学习语言无关特征。构建一个分类器F作为判别器来分辨输入特征是源语言还是目标语言,判别器和特征编码器相互博弈:

C语言

训练和测试

最终的目标函数为:

C语言

测试时作者采用了目标语言和翻译的源语言(由于测试时只使用目标语言)加权和的方式:

C语言

实验

作者在三个跨语言跨模态数据集上进行了实验对比,其中为两个多语言视频文本检索数据集(VATEX和MSRVTT-CN),一个多语言图像文本检索(Multi30K);其中MSRVTT-CN是作者对MSRVTT进行中文扩展得到的多语言数据集

C语言

在VATEX数据集上进行SOTA对比实验

C语言

MSRVTT-CN上性能对比


C语言

Multi30K上进行性能对比实验

鲁棒分析实验

为了进一步证明模型对抗翻译噪声的鲁棒能力,作者通过增加翻译次数以进一步增加训练数据的噪声程度,如图所示,在经过多次翻译后,基线模型的性能明显下降,而本文所提出的模型性能更加的稳定,验证了噪声鲁棒特征学习的有效性

C语言

将目标语言句子根据句子长度进行分组,作者假设越长的句子,翻译越困难,因此包含的噪声可能更多。结果表明,本文所提出的模型和基线模型的性能差距随着句子长度的增加而增加。

C语言

t-SNE可视化实验

作者随机从VATEX的中文测试集中随机选择20个样本,其中每个样本包含10个对应的英语翻译句子和一个对应的视频。如图所示,NRCCR的类内特征更加的紧凑,表明了模型更好的学习到了跨语言跨模态对齐。

C语言

消融实验

结果表明,使用两个视角,性能得到了提升,表明基于相似度视角和基于特征视角彼此互补。引入循环语义一致性后,实现了额外的性能收益。此外,还表明了语言无关特征学习的重要性

C语言




审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分