当前位置:   article > 正文

DINO论文笔记_dino 论文

dino 论文

标题:Emerging Properties in Self-Supervised Vision Transformers
论文链接:https://arxiv.org/pdf/2104.14294
代码链接:https://github.com/facebookresearch/dino
会议:ICCV 2021

研究背景及动机

DINO 论文发表时,Transformer 方法出现不久,当时 ViT 相比于 CNN 方法并没有表现出明显的优势:指标差不多,但需要更多训练数据及计算成本。
DINO 想要探究自监督学习在 Transformer 模型上是否能取得比较好的效果,因为自监督方法在 NLP 上效果很好。


结论

  1. DINO 训好的自监督特征包含物体边缘信息;
  2. 将 DINO 训好的自监督特征用 k-NN 进行分类,就可以在 ImageNet 上得到不错的效果。

方法

从算法示意图可以看出,DINO 的整个过程比较简单。
首先,对于一张图像,进行不同的 augmentation 变换。变换可以生成 global view( 22 4 2 224^2 2242)以及 local view( 9 6 2 96^2 962)的 crop,teacher model 仅接受 global view 的输入,student model 可以接受 global 和 local view 的输入。计算 loss 时,用 teacher model 和 student model 输出的概率之间的交叉熵作为监督信息: L = ∑ x ∈ { x 1 g , x 2 g } ∑ x ′ ∈ V , x ′ ≠ x H ( P t ( x ) , P s ( x ′ ) ) L=\sum_{x\in\{x_1^g,x_2^g\}}\sum_{x'\in V,x'\neq x}H(P_t(x),P_s(x')) L=x{x1g,x2g}xV,x=xH(Pt(x),Ps(x))。从 loss 设计可以看出,DINO 训练过程希望模型对于同一张图像的局部和全局能有接近的概率预测结果。
在这里插入图片描述|200

训练过程中,student model 的参数用 sgd 更新,teacher model 的参数由 student model 和 teacher model 的参数加权得到, θ t ← λ θ t + ( 1 − λ ) θ s \theta_t\leftarrow\lambda\theta_t+(1-\lambda)\theta_s θtλθt+(1λ)θs

避免训练崩溃

为了防止训练崩溃,DINO 采取了两个措施:

  1. Centering:把 teacher 模型的预测结果减掉 c,其中 c ← m c + ( 1 − m ) 1 B ∑ i = 1 B g θ t ( x i ) c\leftarrow mc+(1-m)\frac{1}{B}\sum_{i=1}^Bg_{\theta_t}(x_i) cmc+(1m)B1i=1Bgθt(xi)
  2. Sharpening:把 teacher model 的 τ t \tau_t τt 设得比较低。
    实验中证明了这两个措施需要一起使用。

实验

与 SOTA 方法比较

截屏2024-04-28 19.08.37.png|200

  1. 在 backbone 相同的情况下,DINO 比其他 ssl 的方法效果好;
  2. 在 backbone 采用 ViT 模型时,dino 采用 k-NN 分类就能取得与 linear 相近的结果;
  3. 效果与 supervised 方法相比,仍然有比较明显的差距。
在其他下游任务上的性能
图像检索

截屏2024-04-28 19.20.23.png|200

  1. 在同样的 backbone 上,取得了超过监督学习的效果;
  2. 如果采用同样的预训练数据,DINO 与最好的监督学习模型比,还有比较明显的差距;
  3. 如果直接采用目标数据集作为预训练数据,DINO 可以取得很好的效果。
Copy Detection

截屏2024-04-29 10.44.41.png|200
DINO 在该任务上效果很好,可能是因为该任务与 DINO 用来预训练的任务最接近。

视频分割

截屏2024-04-29 13.31.49.png|200
DINO 即使不经过 finetune 在视频分割任务上也能取得不错的效果。

分类

截屏2024-04-29 13.38.59.png|200
用 DINO 进行预训练,然后 finetune,与直接训练相比效果有所提升。

消融实验
验证模型每个模块的作用

截屏2024-04-29 16.09.05.png|200
用实验验证了 DINO 每个模块都是有作用的。

Teacher model 参数更新方式比较

截屏2024-04-29 18.26.19.png|200
Teacher model 的参数更新方式对模型效果有很大影响。

Centering 和 sharpening 的效果

截屏2024-04-29 19.10.10.png|200

  1. 从右图可以看出,单用 centering 或单用 sharpening 都会导致训练崩溃;
  2. 单用 centering 使概率趋向于平均分布;单用 sharpening 使概率趋向于集中与某一类。

个人看法

DINO 的方法设计并不复杂,但是用 DINO 预训练得到的 feature map 与图像分割 mask 有很强的联系,这个性质比较有趣。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/1002949
推荐阅读
  

闽ICP备14008679号