发布时间:2021-11-17 15:58:29来源:机器之心
机器之心发布
机器之心编辑部
这个新方法在十几类任务和数据集上刷新了SOTA结果,在一些指标上甚至超过了MAE。
前段时间,何恺明等人的一篇论文成为了计算机视觉圈的焦点。这篇论文仅用简单的idea(即掩蔽自编码器,MAE)就达到了非常理想的性能,让人们看到了Transformer扩展到CV大模型的光明前景,给该领域的研究者带来了很大的鼓舞(参见)。
那么,MAE就是大模型视觉模型预训练方法的巅峰了吗?显然不是,一大波挑战者已经在路上了,比如字节跳动、约翰霍普金斯大学等机构组成的联合团队。
在一篇最新的论文中,他们提出了适用于视觉任务的大规模预训练方法iBOT,通过对图像使用在线tokenizer进行BERT[1]式预训练让CV模型获得通用广泛的特征表达能力。该方法在十几类任务和数据集上刷新了SOTA结果,在一些指标上甚至超过了MAE[2]。
论文链接:https://arxiv.org/abs/2111.07832
方法介绍
在NLP的大规模模型训练中,MLM(MaskedLanguageModel)是非常核心的训练目标,其思想是遮住文本的一部分并通过模型去预测这些遮住部分的语义信息,通过这一过程可以使模型学到泛化的特征。NLP中的经典方法BERT就是采用了MLM的预训练范式,通过MLM训练的模型已经被证明在大模型和大数据上具备极好的泛化能力,成为NLP任务的标配。
在该工作中,研究者主要探索了这种在NLP中主流的MaskedModeling是否能应用于大规模VisionTransformer的预训练。作者给出了肯定的回答,并认为问题关键在于visualtokenizer的设计。不同于NLP中tokenization通过离线的词频分析即可将语料编码为含高语义的分词,图像patch是连续分布的且存在大量冗余的底层细节信息。而作者认为一个能够提取图像patch中高层语义的tokenizer可帮助模型避免学习到冗余的这些细节信息。作者认为视觉的tokenizer应该具备两个属性:(a)具备完整表征连续图像内容的能力;(b)像NLP中的tokenizer一样具备高层语义。
如何才能设计出一个tokenizer,使之同时具备以上的属性呢?作者首先将经过mask过的图片序列输入Transformer之后进行预测的过程建模为知识蒸馏的过程:
作者发现,通过使用在线tokenizer监督MIM过程,即tokenizer和目标网络同步学习,能够较好地保证语义的同时并将图像内容转化为连续的特征分布。具体地,tokenizer和目标网络共享网络结构,在线即指tokenizer其参数从目标网络的历史参数中滑动平均得出。该形式近期在DINO[3]中以自蒸馏被提出,并被用以针对同一张图片的两个不同视野在[CLS]标签上的优化:
在该损失函数的基础之上,作者将MIM同样也使用自蒸馏的思路进行优化,其中在线tokenizer的参数即为目标网络历史参数的平均。其过程可表示为:
基于上述训练目标,作者提出了一种新的自监督预训练框架iBOT。iBOT同时优化上述两项损失函数。其中,在[CLS]标签上的自蒸馏保证了在线tokenizer学习到高语义特征,并将该语义迁移到MIM的优化过程中;而在patch标签上的自蒸馏则将在线tokenizer表征的patch连续分布作为目标监督maskedpatch的复原。该方法在保证模型学习到高语义特征的同时,通过MIM显式建模了图片的内部结构。同时,在线tokenizer与MIM目标可以一起端到端地学习,无需额外的tokenizer训练阶段。
预训练时采用孪生网络结构,其中在线tokenizer可以看作教师分支的一部分。教师、学生两分支包括结构相同的backbone网络和projection网络。作者广泛验证了iBOT方法搭配不同的Transformers作为backbone,如VisionTransformers(ViT-S/16,ViT-B/16,ViT-L/16)及SwinTransformers(Swin-T/7,Swin-T/14)。作者发现共享[CLS]标签与patch标签的projection网络能够有效提升模型在下游任务上的迁移性能。作者还采用了随机MIM的训练机制,对每张图片而言,以0.5的概率不进行mask,以0.5的概率从[0.1,0.5]区间随机选取一个比例进行mask。实验表明随机MIM的机制对于使用了multi-crop数据增强的iBOT非常关键。
实验结果
为了验证iBOT预训练方法的有效性,作者在大量的下游任务上进行了验证,同时也在附录里提供了比较详细的不同任务超参数对最终结果的影响。
从Linearprobing(线性分类)及k-NN分类的结果上来看,iBOT使用ViT-B/16达到79.5%线性分类准确度,超越了DINO的78.2%;使用Swin-T/14达到79.3%准确度,超越了EsViT的78.7%;使用ViT-L/16及ImageNet-22K作为预训练数据达到81.6%准确度,为目前ImageNet-1K线性分类基准上最高的结果。
从Fine-tuning的结果上来看,使用ImageNet-1K作为预训练数据及ViT-B/16时iBOT可达到83.8%准确率,高于DINO、MAE的83.6%;使用ImageNet-22K作为预训练数据及ViT-L/16时iBOT可达到86.3%,高于BEiT[4]的86.0%。
在半监督及无监督分类的结果上来看,iBOT也显著优于没有MIM训练目标的DINO。其中在半监督的基准下,作者发现微调数据越少时,iBOT的优势越明显。在无监督的基准下,iBOT能达到43.4%的准确率以及78.6%的NMI。
除此之外,因为MIM显示建模了图片内部结构,作者发现iBOT在密集的下游任务也有非常好的迁移结果。其中iBOT使用ViT-B/16及CascadeMaskR-CNN在目标检测下可达到51.2APb;使用ViT-B/16及UperNet在语义分割下可达到50.0mAP,高于MAE达到的48.1mAP。
同时作者也进一步探究了MIM训练目标所带来的特性,以帮助分析iBOT在全局图像任务及密集图像任务出色表现的原因。作者根据ImageNet验证集中所有图片patch的概率分布,可视化了部分类别中心所代表的模式。作者在大量的可视化结果中发现iBOT针对局部语义有非常好的可视化结果,如下图左一、左二中所示的车灯、狗耳朵展现了不同局部类别语义的出现,而在下图左三、左四中展现了不同局部纹理语义的出现。
在大量鲁棒性分析及测评中,作者发现iBOT相较没有MIM训练目标的DINO有更出色的表现,这说明局部语义的出现能够帮助模型在遮挡、模糊等一系列干扰存在的图像识别任务下有更好的准确性。
方法对比
近期maskedautoencoding的思路可谓在视觉领域大火,和近期一些工作对比,BEiT使用了一个预训练好的DALL-Eencoder作为tokenizer,将每个patch标签离散化后的one-hot编码作为目标模型的标签。
而MPP[5]及近期较火的MAE则可将tokenizer视为恒等变换,即直接在像素空间内进行回归而非分类。
而iBOT则指出了上述几种方式的tokenizer存在过度关注低级信息的问题,这也可以从上述几种方法线性分类的性能不是很高可以看出。但近期MAE中指出当图片中被mask的比例足够大时,可使网络无法从相近patches中插值获取信息从而迫使其学到全局信息;MAE还指出线性分类并不是唯一评估特征表征能力的基准,且和下游迁移学习的表现不能较好相关。
[1]JacobDevlin,Ming-WeiChang,KentonLee,andKristinaToutanova.BERT:Pre-trainingofdeepbidirectionaltransformersforlanguageunderstanding.InNAACL,2019.
[2]KaimingHe,XinleiChen,SainingXie,YanghaoLi,PiotrDollar,andRossGirshick.Maskedautoencodersarescalablevisionlearners.arXivpreprintarXiv:2111.06377,2021.
[3]MathildeCaron,HugoTouvron,IshanMisra,HervéJégou,JulienMairal,PiotrBojanowski,andArmandJoulin.Emergingpropertiesinself-supervisedvisiontransformers.InICCV,2021.
[4]HangboBao,LiDong,andFuruWei.BEiT:BERTpre-trainingofimagetransformers.arXivpreprintarXiv:2106.08254,2021.
[5]AlexeyDosovitskiy,LucasBeyer,AlexanderKolesnikov,DirkWeissenborn,XiaohuaZhai,ThomasUnterthiner,MostafaDehghani,MatthiasMinderer,GeorgHeigold,Syl-vainGelly,JakobUszkoreit,andNeilHoulsby.Animageisworth16x16words:Transformersforimagerecognitionatscale.InICLR,2021.
©THEEND
转载请联系本公众号获得授权
投稿或寻求报道:content@jiqizhixin.com