关于深度学习:SplitMask大规模数据集是自我监督预训练的必要条件吗

自监督预训练须要大规模数据集吗?这是2021年公布的一篇论文,它在自监督预训练场景中应用小数据集,如Stanford Cars, Sketch或COCO,它们比ImageNet小几个数量级。并提出了一种相似于BEiT的去噪自编码器的变体SplitMask,它对预训练数据的类型和大小具备更强的鲁棒性。

SplitMask

SplitMask是基于三个步骤:split, inpaintmatch

split:与规范ViTs一样,图像首先被合成为16×16像素块。而后将图像宰割为两个不相交的子集A和B,别离由共享深度ViT编码器进行独立解决。

Inpaint:接下来,应用子集A的patch示意和一个浅解码器(例如2层),通过解决掩码图像建模(MIM)工作(BEiT),子集B的patch被“填充”。

最初,对每个分支对应的解码器输入的patch示意进行均匀池化,失去全局图像描述符。

Match:应用两个示意xa和xb,别离对应于观测patch的子集A和B来预计InfoNCE loss (CPCv1):

增加这种比照损失的动机是激励模型产生全局统一的特色,这些特色在不同抉择的察看子集之间是统一的,而不依赖于任何手工设计的转换。

后果

1、融化钻研

仅应用5%的ImageNet样本就能达到峰值性能,增加更多的样本并不能提供额定的晋升。应用10% ImageNet子集。训练近3k个epoch的长时间,与残缺ImageNet的300个epoch的总更新次数相匹配。

应用autoencoderlossBEiTSplitMask(如MIM)进行预训练对数据集大小的减小具备鲁棒性。而DINO则与监督预训练一样,当应用较小的数据集进行训练时,模型的性能会降落。

通过更简略的抉择替换DALL-E标记器不会导致准确性的任何显着升高。

2、COCO

应用COCO图像对DINO进行相似的预训练则失去了绝对较弱的性能,仅优于随机初始化。与BEiT基线相比,SplitMask带来了统一的改良,例如应用viti -small时的+0.6 box AP和应用viti -base的+0.3 mask AP。

3、ADE20K

即便应用绝对较小的20k图像样本进行预训练,去噪自编码器也能够在这种具备挑战性的工作上提供十分有竞争力的性能。

4、小数据集

SplitMask能够进一步提高多个数据集的性能:例如,在iNaturalist 2018数据集上,能够看到基于vit的模型的精度进步了3.0。

5、ImageNet

SplitMask提供了弱小的性能,在所有骨干网上都优于BEiT和MoCo v3。

论文地址:Are Large-scale Datasets Necessary for Self-Supervised Pre-training?

https://avoid.overfit.cn/post/21d79b50015d406694bcf063b12c02e3

作者:Sik-Ho Tsang

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理