论文笔记 - Multimodal Masked AutoencodersLearn Transferable Representations

前言

现有基于图像-文本对数据的对比学习训练方法(CLIP等)大多构建2个独立的encoder,无法使用不成对的弱监督数据,且对比学习的采样策略会带来一定的bias,为此,本文提出了一种图像-文本数据统一的encoder,通过预测mask token来训练。在大规模的图像-文本数据集上进行实验表明,预训练的模型在下游任务上有很好的表现,且与bert相比,M3AE可以使用更高的文本mask ratio。除此之外,该模型可以在图像-文本对或图像数据上使用

论文:Multimodal Masked AutoencodersLearn Transferable Representations

代码:M3AE

背景

Mask Token Prediction方法在NLP领域(Bert, GPT)及CV领域(MAE)都有了成功应用,大规模图像-文本对等多模态数据的出现,也让该方法在多模态领域有了成功的应用,如CLIP和ALIGN等。但是使用对比学习的预训练算法也有局限性,即只能使用成对的数据,且需要对图片-文本使用不同的encoder。为此,本文提出了一种简单的结构,使用多模态(图片+文本/图片)数据训练统一的encoder,其核心思想为:将图像-文本对转化为由图像embedding+文本embedding组成的长token序列,随机mask后输入encoder来预测缺少的token。得益于视觉和语言数据的共同理解,M3AE的mask ratio(75%)可以比BERT(15%)高很多

框架

pipeline

M3AE可以使用图像-文本对数据及纯图像数据进行训练,框架由以下几部分组成:

Pipleline

Image-language Masking

将图片-文本对转化为token:

  • 图像:采用ViT一样的操作,将图片分为不重叠的patch
  • 文本:采用和BERT一样的操作,将文本拆成tokens,

然后在所有token中随机采样,剩余的部分进行mask,来使任务变得足够困难

M3AE Encoder

encoder将token转化为embedding

  • 文本:token转化为embedding,然后加上1d position encoding
  • 图像:patch通过线性映射为embedding(与文本embedding维度相同),然后加上2d position encoding

然后在两种embedding上加一个用于区分类型的modalities embedding,最后在整个序列头部加一个CLS token。然后该序列被输入transformer得到最终的表达。

M3AE Decoder

输入Decoder的token由以下几部分组成:

  • 未被mask的文本embedding
  • 未被mask的图像embedding
  • mask token(共享的,可学习的embedding)

所有的token都与positional embedding相加,然后和encoder一样,对每个未被mask的token增加modalities embedding。经过decoder后将图像和文本两部分输出使用2个head进行重建:

  • 图像head:从图像token中重建和原patch相同尺寸的图像
  • 文本head:将文本token映射到分类logits,进行token分类

M3AE的自监督训练

  • 图像部分:计算重建patch和原始patch的MSE Loss
  • 文本部分:计算重建token和原始token的Cross Entropy

实验

作者围绕三个问题设计实验:

  • M3AE是否能够学到通用的特征,使其可以在下游任务上表现较好
  • M3AE能否学到有意义的图像及语言特征
  • M3AE的性能是否能随着模型大小及训练时间的增长而提升

为此,作者在一个大规模的图像-文本对数据集(CC12M)上做Pretrain,然后在分类(ImageNet)及out-of-distribution detection(CIFAR-100/CIFAR-10)下游任务上验证性能,在下游任务上训练时,会将backbone的权重冻结住。

图像分类

在该任务中,作者将M3AE和MAE以及CLIP做了对比,可以看到M3AE性能较MAE提升较高,弱于CLIP,但CLIP必须使用成对数据,且从图中看出,仅给出10%的多模态数据,即可提升很多性能。不过图中MAE的准确率为CC12M数据集上预训练的,如果在ImageNet上预训练MAE,则准确率提升至73.5%,作者认为这是由于数据集间的GAP造成的

分类实验

分析

可扩展性:使用更大的模型以及更长的训练时间可以提升模型性能

可扩展性

文本mask比例:M3AE在较高的mask比例下表现较好,这是因为模型可以从图像-文本的联合训练中学到更多的信息

mask ratio

Attention可视化:分别将文本token->图像以及图像patch->文本的注意力分布,可以看到M3AE encoder可以关注到正确物体上

文本token与图像注意力 图像patch与文本注意力

特征聚类可视化:对10个类的M3AE特征进行聚类,效果较MAE更为集中

聚类

图像重建可视化:M3AE可以很好的恢复被mask掉的图片patch,图中3列分别为原图/mask后图像/重建图像

图像重建-ImageNet

总结

M3AE可以简单高效的学习多模态数据中的信息,且不依赖于成对的数据,其思想可以扩展至多种其他任务,如对话系统,visual reasoning等,在医学图像领域也已有应用,如Multi-Modal Masked Autoencoders for Medical Vision-and-Language Pre-Training