- Pretrain
DeiT中使用CNN蒸馏vit
如下图所示,不同与以往采用feacher或logits,文中首先初始化一个可学习的dist_token,与class_token类似,拼接在一起,即[class_token, dist_token, patch_emb]共同送入vit中
loss计算分为两部分- CE loss
输出的cls_token与真实标签 - Lteacher
输出的dist_token与CNN输出的软标签,来自teacher的监督信息
- CE loss
- Finetune
进行下游任务微调时,如分类,使用两个head,cls_token与dist_token对应各自的head,将head输出的平均,即为输出的分类结果
对DeiT中dist_token的理解
于 2023-09-28 19:21:45 首次发布