核心问题
基于掩码的自编码器在自然语言和视觉两个任务上有什么本质区别?
1) 网络结构不同。之前主流的视觉任务主要使用卷积网络,而卷积操作只关注局部的栅格区域,无法集成掩码、位置编码等信息,但是随着 Vision Transformer (ViT) 的出现,网络结构间的差异不再成为一个障碍。
2) 信息密度不同。自然语言是一个高信息密度的媒介,而自然图像天然的存在大量冗余,能够根据高层语义补充缺失的图像块。为了让自编码器学习到高层语义需要掩码掉大比例的图像内容。
3) 解码器的任务不同。因为解码的内容不同,图像解码器需要输出底层的像素信息,需要非平凡的结构。使用 Mask 的解码器网络进行学习。本文设计是一个非对称网络结构,只在解码器部分引入掩码信息。
思考:2) 中直接学习低层语言是否合适,类比是否直接学习高层语义,比如 CLIP 相关的工作,基于多模态的信息对齐实现视觉特征的提取压缩。一个问题是如何获得高质量的图像与文本的匹配对,以及文本描述是否有偏。
本文的核心出发点是高比例的掩码能帮助网络学习高层语义,在下游任务中,特征表示通过监督信息将语义对齐特定即可。
区别对比学习
对比学习主要依赖数据增强进行网络表征相似性和非相似性的学习。
方案
Masking
将图像划分为不重叠的 patch,随机均匀采样
Encoder
可见 patch 加入 position encoding
Decoder
可见 patch 的编码特征以及 mask 特征,全部使用 position encoding
实验
训练不稳定问题。从头训练 ViT-L 并非简单直接的,需要较强的正则化,文章列举了具体采取的配置:
AdamW
- $wd$ 的作用:直接在权重更新时,减去一定比例的原始权重值,$wd$ 越大约束越强。
long warmup
的作用- $\beta=0.95$ 的作用
- EMA 的作用