当前位置:   article > 正文

论文|Jointly Pre-Training Transformers on Unpaired Images and Text_towards a unified foundation model: jointly pre-tr

towards a unified foundation model: jointly pre-training transformers on unp

最近本专栏都在介绍多模态机器翻译,而近期多模态联合表示的工作很火热,笔者也准备和大家一起学习学习最新期的几篇论文。

今天讲的这篇Google的工作利用知识蒸馏,把BERT和ViT的能力蒸馏到一个新模型上,使得这个新模型能够同时表征文本和图片。

论文消息

论文标题:Towards a Unified Foundation Model: Jointly Pre-Training Transformers on Unpaired Images and Text

作者:Qing Li, Boqing Gong, Yin Cui, Dan Kondratyuk, Xianzhi Du, Ming-Hsuan Yang, Matthew Brown

机构:Google,加州大学洛杉矶分校UCLA

研究目的

构建一个可以把文本和图片统一表示的模型。

方法简介

下面分别介绍作者的模型架构以及其训练方法:

1、模型架构:统一的Transformer(Unified Transformer)

作者参考了多任务学习的思路,希望CV和NLP任务尽可能地共享参数——在作者设计的Unified Transformer中,CV和NLP仅在输入模型阶段使用了不同的'tokenizer'与'embedding'、输出层使用不同的classifier head,其他参数全部共享。

具体地,图片的'tokenizer'与'embedding'和ViT相似,把一张图片拆解成多个小patch;每个小patch经过线性变换后转换为image embedding并加入postition embedding作为位置信息。

ViT把图片拆成小patch,线性变换成image embedding并加入postition embedding作为位置信息

而文本的'tokenizer'与'embedding'与BERT类似,即通过BPE词表,把词拆成子词,并转换为token embedding,再加入position embedding和segment embedding。

图形和文本转换成embedding后,输入给Unified Transformer。Unified Transformer对于输入的原始模态以及具体任务都是无感知的。

最后,作者认为无论是预训练还是下游任务的精调,都可以视为是不同的分类任务。作者给不同的任务使用了不同的MLP+Softmax分类器。下图展示了作者的整体模型:

作者的模型对于两种模态采用了两种tokenize+embeding策略,对于不同的任务采用不同的输出层参数;此外,所有模型参数共享。

2、模型训练:知识蒸馏和梯度掩码

预训练阶段,作者把BERT和ViT作为teacher model,希望把teacher model的logits给知识蒸馏到student model(即作者的模型)。

作者要求模型预测输入的真实lable的同时,还需要尽可能地和teacher model的logits接近,由此提出了损失函数:

损失函数的第一项即是预测真实label的交叉熵,第二项则为teacher model和student model的logits的KL散度。α作为超参数用来调控比例。

处理利用BERT和ViT做知识蒸馏外,作者还提出了梯度掩码策略来防止CV任务和NLP任务之间因为梯度冲突导致的优化困难。具体的做法是引入一个掩码矩阵 

 ,把全局的梯度从CV任务梯度和NLP任务梯度直接相加改进为带掩码的相加:

公式中 

和 分别是NLP任务和CV任务的梯度,掩码矩阵 则在训练过程中会动态更新若干次(作者指出更新的代价相比于训练主网络很小),用以保留NLP任务中最显著的梯度特征(因为是NLP任务的掩码),作者的更新算法参考了ICLR’19最佳论文The Lottery Ticket Hypothesis。

实验效果

作者的预训练使用了ILSVRC-2012 ImageNet的图片分类作为CV预训练任务,BooksCorpus与English Wikipedia 的mask language model作为NLP预训练任务,并给出了若干个CV或者NLP的下游任务作为精调实验。作者把tune的BERT和ViT作为了baseline。这里列一下实验大表:

可见作者的ViT-BERT在精调后取得了有竞争力但还有提升空间的表现:在CV任务上平均值接近ViT、不过在NLP任务上平均值离BERT还有一段差距(作者解释这是因为Recognizing Textual Entailment,即RTE任务得分拖后腿了,因为RTE任务的精调数据不够多)。

同时,两大基线ViT和BERT在另外一个模态任务上的tune效果都不太好,说明了单靠tune是没有办法跨越模态的鸿沟的。

作者还做了一些定性实验,发现在训练一段时间后,底层的网络只对image或者NLP任务中的一种有强响应,而高层网络则对两种模态都有强响应。这也和对神经网络解释性的主流观点相一致:即随着神经网络的深入,特征变得更加抽象,高层的网络不再关注与特定的任务格式,能够处理更抽象的语义信息。

每个子热图代表一个转换块的激活输出,从左到右深度加深、从上到下训练步数变多。(红色)意味着神经元对至少一个图像有很高的反应,(绿色)意味着神经元对至少一个文本有很高的反应,(黄色=红色+绿色)意味着神经元对图像和文本都有很高的反应,(黑色)意味着神经元对图像或文本都没有反应。

笔者简评

这是一篇很有“谷歌味”的论文。方法简单粗暴可以一句话讲清楚:知识蒸馏+多任务学习可以训练出能处理多个模态的强模型。不过在大力出奇迹的同时,谷歌的研究者们也可能给未来AI的研究方向指出路径,即多模态可以尽可能地共享参数作联合表示。

此外,这个模型的性能其实还不够强,在CV和NLP任务上都没有完全打败原有的基线,说明CV和NLP两个模态的联合学习更多地呈现了互相干扰而非互相促进。

新模型对于zero-shot的下游任务则更是有些疲软。考虑到BERT在zero-shot的情况下可以做出许多惊喜的效果,这篇ViT-BERT的方法可以说还远不是多模态联合模态的最终形态,它对两种模态的表征也还有很多能提升的地方。

作者:Minimum

深延科技|

深延科技成立于2018年1月,中关村高新技术企业,是拥有全球领先人工智能技术的企业AI服务专家。以计算机视觉、自然语言处理和数据挖掘核心技术为基础,公司推出四款平台产品——深延智能数据标注平台、深延AI开发平台、深延自动化机器学习平台、深延AI开放平台,为企业提供数据处理、模型构建和训练、隐私计算、行业算法和解决方案等一站式AI平台服务。 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/489043
推荐阅读
相关标签
  

闽ICP备14008679号