作者:ZhendaXie等 机器之心编译 机器之心编辑部 来自清华大学、西安交大、微软亚研的研究者提出了一种称为MoBY的自监督学习方法,其中以VisionTransformer作为其主干架构,将MoCov2和BYOL结合,并在ImageNet1K线性评估中获得相当高的准确率,性能优于MoCov3、DINO等网络。 近两年来,计算机视觉领域经历了两次重大转变,第一次是由MoCo(MomentumContrast)开创的自监督视觉表征学习,其预训练模型经过微调可以迁移到不同的任务上;第二次是基于Transformer的主干架构,近年来在自然语言处理中取得巨大成功的Transformer又在计算机视觉领域得到了探索,进而产生了从CNN到Transformer的建模转变。 不久前,微软亚研的研究者提出了一种通过移动窗口(shiftedwindows)计算的分层视觉SwinTransformer,它可以用作计算机视觉的通用主干网络。在各类回归任务、图像分类、目标检测、语义分割等方面具有极强性能。 而在近日,来自清华大学、西安交通大学以及微软亚洲研究院的研究者也在计算机视觉领域发力,提出了名为MoBY自监督学习方法,以VisionTransformers作为其主干架构,将MoCov2和BYOL结合在一起,在ImageNet1K线性评估中获得相当高的准确率:通过300epoch训练,分别在DeiTS和SwinT获得72。8和75。0的top1准确率。与使用DeiT作为主干的MoCov3和DINO相比,性能略好,但trick要轻得多。 更重要的是,使用SwinTransformer作为主干架构,还能够评估下游任务中(目标检测和语义分割等)的学习表征,其与最近的ViTDeiT方法相比,由于ViTDeiT不适合这些密集的预测任务,因此仅在ImageNet1K上报告线性评估结果。研究者希望该结果可以促进对Transformer架构设计的自监督学习方法进行更全面的评估。 论文地址:https:arxiv。orgpdf2105。04553。pdfGitHub地址:https:github。comSwinTransformerTransformerSSL 方法介绍 自监督学习方法MoBY由MoCov2和BYOL这两个比较流行的自监督学习方法组成,MoBY名字的由来是各取了MoCov2和BYOL前两个字母。MoBY继承了MoCov2中的动量设计、键队列、对比损失,此外MoBY还继承了BYOL中非对称编码器、非对称数据扩充、动量调度(momentumscheduler)。MoBY架构图如下图1所示: MoBY包含两个编码器:在线编码器和目标编码器。这两个编码器都包含一个主干和projectorhead(2层MLP),在线编码器引入了额外的预测头(2层MLP),使得这两个编码器具有非对称性。在线编码器采用梯度更新,目标编码器则是在线编码器在每次训练迭代中通过动量更新得到的移动平均值。对目标编码器采用逐渐增加动量更新策略:训练过程中,动量项值默认起始值为0。99,并逐渐增加到1。 学习表征采用对比损失,具体而言,对于一个在线视图(onlineview)q,其对比损失计算公式如下所示: 式中,为同一幅图像的另一个视图(view)的目标特征;i是键队列(keyqueue)中的目标特性;是temperature项;是键队列的大小(默认为4096)。 在训练中,与大多数基于Transformer的方法一样,研究者还采用了AdamW优化器。 MoBY伪代码如下所示: 实验 在ImageNet1K上的线性评估 在ImageNet1K数据集上进行线性评估是一种常用的评估学得的表征质量的方式。在该方式中,线性分类器被用于主干,主干权重被冻结,仅训练线性分类器。训练完线性分类器之后,使用中心裁剪(centercrop)在验证集上取得了top1准确率。 表1给出了使用各种自监督学习方法和主干网络架构的预训练模型的主要性能结果。 1。与使用Transformer架构的其他SSL方法进行比较 MoCov3、DINO等方法采用ViTDeiT作为主干网络架构,该研究首先给出了使用DeiTS的MoBY的性能结果,以便与该研究的方法进行合理比较。经过了300个epoch的训练,MoBY达到了72。8top1的准确率,这比MoCov3和DINO(不含多次裁剪(multicrop))略胜一筹,结果如表1所示。 2。SwinTVSDeiTS 研究者还比较了在自监督学习中各种Transformer架构的使用情况。如表1所示,SwinT达到了75。0top1的准确率,比DeiTS高出2。2。值得一提的是,这一性能差距比使用监督学习还大(1。5)。 该研究进行的初步探索表明,固定patch嵌入对MoBY没有用,并且在MLP块之前用批归一化代替层归一化层可以让top1准确率提升1。1(训练epoch为100),如表2所示。 在下游任务上的迁移性能 研究者评估了学得的表征在COCO目标检测实例分割和ADE20K语义分割的下游任务上的迁移性能。 1。COCO目标检测和实例分割 评估中采用了两个检测器:MaskRCNN和CascadeMaskRCNN。表3给出了在1x和3x设置下由MoBY学得的表征和预训练监督方法的比较结果。 2。ADE20K语义分割 研究者采用UPerNet方法和ADE20K数据集进行评估。表4给出了监督和自监督预训练模型的比较结果。这表明MoBY的性能比监督方法稍差一点,这意味着使用Transformer架构进行自监督学习具有改进空间。 消融实验 研究者又进一步使用ImageNet1K线性评估进行了消融实验,其中SwinT为主干网络架构。 1。不对称的droppathrate是有益的 对于使用图像分类任务和Transformer架构的监督表征学习来说,droppath是一种有效的正则化方法。研究者通过消融实验探究了该正则化方法的影响,实验结果如下表5所示。 2。其他超参数 第一组消融实验探究了键队列大小K从1024到16384的影响,实验结果如表6(a)所示。该方法在不同K(从1024到16384)下都能够稳定执行,其中采用4096作为默认值。 第二组消融实验探究了温度(temperature)的影响,实验结果如表6(b)所示。其中为0。2时性能最佳,0。2也是默认值。 第三组消融实验探究了目标编码器的初始动量值的影响,实验结果如表6(c)所示。其中值为0。99时性能最佳,并被设为默认值。