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

图1

启发(Motivation)

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

方法与实现

结构

图2

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

    • 各由一个encoder(backone,如Resnet,ViT)和一个projection head构成
    • projection head由3层MLP,一层l2 normalization和一层full connection构成
    • image-20210822173539492
  • 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结构

训练流程

图3

  • 对输入的图片做两次随机的图像增强,然后分别传入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
    • image-20210822170742143
  • 然后计算两个网络的最终输出,cross-entropy loss
    • image-20210822171458649
  • 将ce loss应用到自监督学习
    • image-20210822172807818
  • 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形式更新:image-20210822174236790
  • sharpening通过teacher网络中softmax中的 τ \tau τ进行控制

image-20210822181830024

实验

性能评估

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

image-20210822175227471

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

消融实验

不同结构组成

image-20210822175603661

patch size

image-20210822175710949

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

迁移学习

image-20210822175851731

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

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

teacher更新

image-20210822180115616

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

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

student,teacher训练效果

image-20210822180722788

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

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

batch size

image-20210822181942202

batch size 的影响不是很敏感

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值