无公式,何恺明新作 MAE——Masked Autoencoders Are Scalable Vision Learners

无公式,何恺明新作 MAE——Masked Autoencoders Are Scalable Vision Learners

相关团队
【本文为个人原创解读,转载请注明出处,非常感谢】

原文链接

何恺明团队的又一力作,和之前的风格一样,想法朴素但有效,全文无公式推导,便于理解,阅读时建议着重领会作者思想。

中心思想:,建立非对称的编码-解码结构(Asymmetric encoder-decoder)并设置极高的遮挡率 (75%),对输入进行随机掩码遮挡,并通过掩码自编码器(Masked Autoencoders)对数据进行重建,从而学到一个强大的自编码器来对视觉任务进行扩展。

在NLP领域,掩码自编码(Mask Autoencoding)已经获得了成功,但在CV领域,这一方法的发展与应用还处于相对落后的阶段,作者认为其主要原因有以下几点:

  1. 基本结构的差异:与NLP不同,过去CV领域普遍采用卷积作为基础结构,而这种对规律的网格进行操作的方式很难引入掩码信息(Mask Token)与位置编码(Positional Embeddings)。而这一问题随着Vit(Vision Transformers )的出现得到解决。
  2. 信息稠密度的差异:语言作为“人造物”,有高度的语义-信息密度(可理解为单一的token中包含的信息量非常大)。通过在一个句子中去除几个单词去训练模型会非常困难,变成一个复杂的语言理解任务。但不同的是图像作为自然信号,有极大的空间冗余,具体表现在可以几乎不使用高级语义信息就可以从周围区域推测出掩码区域的信息(可以理解为同样的方法对于图像而言过于简单,无法学到高级有效的特征)。因此作者在工作中采用了极大的遮挡率加大重建的难度,促使网络学习高级的潜在特征。
  3. 解码器的设计差异:与NLP不同,解码器的目的是重建图像像素,因此解码器的设计在整个过程中起到了关键的作用。

基于以上几点,作者提出一种简单有效的掩码自编码器 MAE,整体结构如下图所示:
MAE网络结构图
整体实现流程如下:

1、将图像分成不重叠的Patch,随后通过线性投影与位置编码从每个patch中生成对应的token。

2、将token的列表进行随机打乱(Random Shuffle)并根据掩码率移除列表最后的token,从而获得编码器(Vit结构)的输入——token的一个子集并进行编码&特征提取工作。

3、在编码完成后,再将掩码token加入到编码器的输出列表中(the list of encoded patches),对整个列表进行逆打乱(Unshuffle, 即之前随机打乱的逆操作)以保证所有token与原目标对齐。

4、利用解码器进行目标重建,并使用均方误差作为损失函数,与BERT类似,仅计算masked patches上的损失(使用均值和标准差进行归一化后再进行损失计算)。

整个过程非常简单,不需要额外的稀疏操作,shuffle及unshuffle的操作速度很快,可以忽略不记。

Decoder的输入包括可见的已编码的token以及mask token。每个mask token都是一个共享的可学习的向量,以用来预测缺失的patch。

Decoder部分仅在预训练时使用,因此结构可以自由定义并独立于encoder部分,文中采用了一个很小的轻量化Decoder以减少与训练时间。

全部的token均添加位置编码以保证其空间信息不丢失。

下图中展现了不同遮挡率下的重建结果:
在这里插入图片描述
不同遮挡率下的模型效果:
在这里插入图片描述
同时文章也提供了全面丰富的实验结果分析,感兴趣的同学可以参考原文以及相关的附录部分。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值