BEIT-3【多模态统一建模】(未完待续……)

题目:Image as a Foreign Language: BEIT Pretraining for All Vision and Vision-Language Tasks

时间:(CVPR 2023)

总结:
1、作者从三个方面实现了大一统:
(1)模型架构 (VLMo[1] 中使用的 Mixture-of-Modality-Experts, MoME,即 Multiway Transformer)、
(2)预训练任务 (Mask Data Modeling) :文本,图像,图文对
(3)模型缩放 (把模型放大)

回顾:视觉:BEIT,多模态:VLMo,CoCa模型

博文参考:
多模态超详细解读 (十):BEIT-3:一个模型架构和一个训练任务,多模态领域的集大成者
如何评价微软提出的BEIT-3:通过多路Transformer实现多模态统一建模?



背景

BEIT-3 的背景来自于 Transformer 这个架构和 Masked Data Modeling 的这个训练策略已经在视觉 (代表作 BEIT[2], BEIT v2[3]),文本 (代表作 GPT[4], BERT[5]),多模态 (代表作 VLMo[6], CLIP[7], CoCa[8]) 领域取得了成功,通过对海量数据进行大规模预训练,可以很容易地将这些得到的预训练模型转移到各种下游任务中。如果能训练一个能够直接处理多种数据类型的通用基础模型,将会是一件很有吸引力的事情。

1、模型架构

在以往多模态的一些工作里,Transformer 模型在应用的时候有多种方法,但是,参数通常不能有效地跨模式共享。
BEIT-3 里采用的是 VLMo[1] 中使用的 Mixture-of-Modality-Experts, MoME,这里改了个名字叫 Multiway Transformer。

主流模型:双塔结构 (Dual Encoder):做多模态检索任务;单塔结构 (Fusion Encoder),主要用来做多模态分类任务。
VLMo 相当于是一个混合专家 Transformer 模型,预训练完成后,使用时既可以是双塔结构实现高效的图像文本检索,又可以是单塔结构成为分类任务的多模态编码器。换句话讲,VLMo 这个工作的一个很重要的贡献是对多模态领域的单塔,双塔结构进行了统一,用一个混合专家模型既可以实现视觉特征和文本特征的融合,又可以实现分别对两种模态的特征进行高效的编码,来做检索任务。VLMo 这个架构里面:FFN 分为3块,分别是 Vision FFN,Language FFN 和 Vision-Language FFN (作者把每个 FFN 命名为 Expert)。Self-Attention 部分三种模态共享参数。
BEIT-3架构
输入的数据根据其模态的不同选择不同的 Expert,比如图片数据就使用 Vision FFN,文本数据就使用 Language FFN。模型前面的一些层是只有 Vision FFN 和 Language FFN,到了最后3层会再有 Vision-Language FFN,为了特征融合。下

图 3(a) 所示是 BEIT-3 模型转换为视觉编码器,适配任务:图像分类,目标检测,语义分割 (ImageNet-1K, COCO, ADE20K)

图 3(b) 所示是 BEIT-3 模型转换为文本编码器。

图 3© 所示是单塔结构,联合编码图像-文本对以进行深度交互的融合编码器,适配任务:多模态理解任务 (VQA, NLVR2)。

图 3(d) 所示是双塔结构,对每个模态进行单独编码以求高效的图文检索,适配任务:图文检索任务 (Flickr30k, COCO)。

图 3(e) 所示是单塔结构,用于图像到文本生成任务,适配任务:多模态生成任务 (COCO)。

图3

2、预训练任务

Mask Data Modeling 这个预训练的范式已经在文本 (以 BERT 为代表的 Mask Language Modeling) 和视觉 (以 BEIT 为代表的 Mask Image Modeling) 这两个领域都取得了成功。

BEIT-3 这个工作将 Mask Data Modeling 的训练范式扩展到了多模态领域,将图片 Image 视为一种外语 Imglish,和文本 English 一起采用 Mask Data Modeling 的做法进行训练。

这种大一统的 mask-then-predict 任务不仅学习表征,而且学习不同模态之间的对齐。具体而言,文本数据是由 SentencePiece tokenizer 进行标记。图像数据由 BEIT v2 的 tokenizer 进行标记,以获得离散视觉标记作为重建的目标。作者从单模态文本中随机 mask 掉 15% 的文本,从图片-文本对中随机 mask 掉 50% 的文本。在 mask 图像时采用 BEIT 的做法 mask 掉 40%。

3、 预训练架构放大

扩大模型大小和数据大小普遍提高了基础模型的泛化质量,这样我们就可以将它们转移到各种下游任务中。BEIT-3 也采用了类似的做法。在预训练期间,作者随机屏蔽了一定比例的 text token 或者 image token。自监督学习目标是在给定损坏的输入的情况下恢复原始 token,因此 BEIT-3 模型的 Masked Data Modeling 方法是通用的,不局限于输入是 text 还是 image。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值