题目:Training data-efficient image transformers & distillation through attention
【GiantPandaCV导语】Deit是一个全Transformer的架构,没有使用任何的卷及操作。其核心是将蒸馏方法引入VIT的训练,引入了一种教师-学生的训练策略,提出了token-based distillation。有趣的是,这种训练策略使用卷积网络作为教师网络进行蒸馏,能够比使用transformer架构的网络作为教师取得更好的效果。
简介
之前的ViT需要现在JFT-300M大型数据集上预训练,然后在ImageNet-1K上训练才能得到出色的结果,但这借助了额外的数据。
ViT文中也表示:“do not generalize well when trained on insufficient amounts of data”数据量不足会导致ViT效果变差。
针对以上问题,Deit核心共享是使用了蒸馏策略,能够仅使用ImageNet-1K数据集就就可以达到83.1%的Top1。
文章贡献如下:
-
仅使用Transformer,不引入Conv的情况下也能达到SOTA效果。
-
提出了基于token蒸馏的策略,这种针对transformer的蒸馏方法可以超越原始的蒸馏方法。
-
Deit发现使用Convnet作为教师网络能够比使用Transformer架构取得更好的效果。
知识蒸馏
Knowledge Distillation(KD)最初被Hinton提出,与Label smoothing动机类似,但是KD生成soft label的方式是通过教师网络得到的。
KD可以视为将教师网络学到的信息压缩到学生网络中。还有一些工作“Circumventing outlier of autoaugment with knowledge distillation”则将KD视为数据增强方法的一种。
KD能够以soft的方式将归纳偏置传递给学生模型,Deit中使用Conv-Based架构作为教师网络,将局部性的假设通过蒸馏方式引入Transformer中,取得了不错的效果。
本文提出了两种KD:
- Soft Distillation: 使用KL散度衡量教师网络和学生网络的输出,即Hinton提出的方法。
L global = ( 1 − λ ) L C E ( ψ ( Z s ) , y ) + λ τ 2 K L ( ψ ( Z s / τ ) , ψ ( Z t / τ ) ) \mathcal{L}_{\text {global }}=(1-\lambda) \mathcal{L}_{\mathrm{CE}}\left(\psi\left(Z_{\mathrm{s}}\right), y\right)+\lambda \tau^{2} \mathrm{KL}\left(\psi\left(Z_{\mathrm{s}} / \tau\right), \psi\left(Z_{\mathrm{t}} / \tau\right)\right) Lglobal =(1−λ)LCE(</