Masked Autoencoders - MAE

motivation

在CV领域已有的预训练方法大多属于有监督,数据要求高。MAE基于自监督,且有效降低计算量。

算法流程

1、输入图像patch切分

2、encoder结构类似ViT,但是随机mask掉输入的75%的patch(mask服务分布保证以center为中心)

3、encoder输出+统一的mask patch embedding输入decoder

4、decoder网络很小,最后一层线性映射,每个token的channel等于patch像素点数,得到像素级重建

5、重建的loss为像素级的MAE

6、推理时,只是用encoder部分,输入全部的patch,获取整图的embedding

7、作为backbone,在分类、检测、分割等下游任务实验中表现优异

思考

1、与BERT的差异

MAE为了消除BERT训练mask推理无mask的GAP:在训练过程中,encoder直接去除了mask patch;decoder中输入统一的mask embedding,loss 计算也只计算mask patch。

2、和Swin transformer的差异

Swin transformer强调构建多层次结构;MAE强调低计算量的预训练

3、MAE和ViT的position embedding差异?

ViT的position embedding是一维可学习embedding,对推理时不同的patch长度采用2D 插值

MAE的position embedding使用sine-cosine全局编码

这里也体现出可学习position embedding和sine-cosine embedding的一个区别:

训练和推理不一致时,可学习的embedding将不再有效,需要插值使用;

sine-cosine embedding基于周期性的确定值,将可以直接使用

4、应用与小目标等边界场景?

MAE的网络中没有进行下采样,推测最终得到的feature map对小目标的检测更加有利

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容