DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读

Emerging Properties in Self-Supervised Vision Transformers阅读笔记

介绍

论文作者提出了一种新的自监督学习方法,self-distillation with no labels(DINO)。并将其应用在了CNN和Vision Transformer(ViT)结构上,均取得了不错的效果,且ViT的效果还要优于CNN。

特点

  • self-supervised ViT的feature包含了图片的语义分割的明确信息,如场景布局(scene layout),对象边界(object boundaries)等(图1),而传统的supervised ViT和CNN没有包含
  • self-supervised ViT(ViT-S)训练后,采用KNN分类器,在ImageNet可以达到78.3%(top-1)的效果
  • 和BYOL自监督学习方法类似,DINO也由两个network构成,一个student(online)和teacher(target),采用momentum encoder结构,multi-crop training

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第1张图片

启发(Motivation)

  • 传统ViT的缺陷
    • 需要大量计算,大量的训练数据,feature没有包含独特的性质(unique properties)
  • Transformers先是在NLP中应用,之后才被人们尝试用在了CV中,并得到了可以和CNN竞争的优秀成果
    • 因此,作者受到了Transformer在NLP中的自监督预训练思路的启发,如BERT,GPT,利用句子中word来生成pretext task,可以比监督方法提供更多的学习信息
  • self-supervised方法通常使用相似的结构来避免模型坍塌(collapse)和提高性能,如BYOL,SimSiam

方法与实现

结构

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第2张图片

  • 两个结构基本相同,参数不同的network,student和teacher

    • 各由一个encoder(backone,如Resnet,ViT)和一个projection head构成
    • projection head由3层MLP,一层l2 normalization和一层full connection构成
    • DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第3张图片
  • teacher网络采用momentum形式更新,后面有一层centering层,实现对teacher输出的centering和sharpening,从而避免模型坍塌(BYOL中的predictor结构也是起到避免吗,模型坍塌的效果)

    • student和teacher最后都接一层temperature softmax,对两个网络输出的K维feature进行归一化
    • 在teacher网络使用stop-gradient,阻止梯度传播,因此teacher通过student采用exponential moving average(EMA)方法更新梯度
  • 采用cross-entropy的损失函数

  • BN-free

    • 没有使用batch normalization结构

训练流程

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第4张图片

  • 对输入的图片做两次随机的图像增强,然后分别传入student和teacher网络中, g θ s g_{\theta_{s}} gθs为student网络操作, g θ t g_{\theta_{t}} gθt为teacher网络操作
  • 公式 P P P是为temperature softmax函数, τ \tau τ参数控制网络输出分布的sharpness
    • DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第5张图片
  • 然后计算两个网络的最终输出,cross-entropy loss
    • DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第6张图片
  • 将ce loss应用到自监督学习
    • DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第7张图片
  • EMA更新teacher参数, λ \lambda λ随着训练采用cosine schedule方式由0.996更新到1
    • image-20210822172953026

避免坍塌

作者通过平衡centering和sharpening两种效果,从而避免模型坍塌

坍塌:不论输入什么,模型的输出总是单一维度或者均匀分布

  • centering避免了单一维度,但导致了均匀分布
  • sharpening可以避免均匀分布
  • centering操作:给teacher网络增加一个bias c c c
    • image-20210822174637387
    • c c c也是采用EMA形式更新:DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第8张图片
  • sharpening通过teacher网络中softmax中的 τ \tau τ进行控制

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第9张图片

实验

性能评估

作者将在ImageNet上训练好的backone提取出来,冻结参数,使用KNN分类器和线性分类器验证其性能

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第10张图片

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MbDvrAWW-1629627664284)(Emerging Properties in Self-Supervised Vision Transformers论文阅读/image-20210822175246469.png)]

消融实验

不同结构组成

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第11张图片

patch size

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第12张图片

patch size越小,性能越高,但是吞吐量也会下降

迁移学习

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第13张图片

作者将在ImageNet上用自监督方法训练得到的backone进行微调,在其他数据集上测试,与由监督学习得到的backone微调对比

基本自监督训练得到的backone要优于监督学习得到的

teacher更新

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第14张图片

作者测试了不同的teacher更新方法

  • 直接复制student网络参数和上一次迭代的student网络参数,都会导致网络无法收敛
  • 采用复制student上一个epoch参数,可以取得一定效果

student,teacher训练效果

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第15张图片

在训练过程中,teacher的效果要好于student,当使用previous epoch更新teacher就没有这种效果,而同样使用momentum的BYOL也没有这样的效果。

作者认为,DINO的momentum teacher更新类似于Polyak-Ruppert averaging

batch size

DINO Emerging Properties in Self-Supervised Vision Transformers 论文阅读_第16张图片

batch size 的影响不是很敏感

你可能感兴趣的:(神经网络,Transformer,神经网络,深度学习)