蒸馏_2022

Focal and Global Knowledge Distillation for Detectors

Abstract

在目标检测当中,老师的特征和学生的特征在不同的区域有很大的变化,尤其是在前景和背景中。因此,如果我们平等地蒸馏,特征图之间的差异会恶化结果。(PS:目标检测中的蒸馏会比对教师模型和原模型的特征图)

翻译:前景不好学,背景很好学,如果这两部分内容进行一样地教授,效果不大好。

因此,我们提出了聚焦且全局蒸馏。聚焦蒸馏分割前景和背景,强迫学生关注教师的关键像素及通道;全局蒸馏则重建不同像素之间的关系,并将这一知识传递给学生。

微信链接

Method

请添加图片描述

通常而言,教师和学生之间的蒸馏过程如下所示:
请添加图片描述

f是调整通道,用于让教师特征和学生特征的通道保持一致。

这样一种方法平等地对待所有部分并且缺乏不同像素之间全局关系的蒸馏。

Focal Distillation

首先设置一个区分前景和背景的mask:

请添加图片描述

其中r表示GT boxes。

不同大小的目标会有不一样的损失,为了平衡这一问题,本文采用了一个规模化的mask:

在这里插入图片描述

Hr、Wr表示GT框的大小,

SENet和CBAM给出结论:关注重要的像素和通道有助于基于CNN的模型得到更好的结果。这里计算了像素或者通道层面的绝对平均值:

请添加图片描述

之后得到注意力图:

请添加图片描述

最终,我们的特征图损失如下:

请添加图片描述
其中的注意力mask采用的是教师模型的。

除此之外,还对学生得到的注意力图和教师的注意力图进行损失计算,其中l是L1loss:

请添加图片描述

Global Distillation

采用GcBlock来捕捉全局关系信息,并以此进行蒸馏:

请添加图片描述
对每一像素的一种重新赋值。

Decoupled Knowledge Distillation

知乎链接

logit蒸馏 和 特征蒸馏

前者计算量小且语义程度高,后者反之。理论来说高维语义特征的效果应该更加好,但事实却不是如此。

实验表明:只有应用NCKD才能获得与经典KD相当甚至更好的结果。

上述实验揭示了logit蒸馏效果不好的原因:经典的KD损失是高度耦合的形式。NCKD损失带有的权重与teacher在目标预测上的置信度是负相关的,即大的预测分数会带来小的权重。值得一提的是,训练样本的置信度普遍较高。

另外,如果训练数据越难,TCKD带给学生的提升就越大。

TCKD适合教难的,NCKD适合教简单的。但是一遇到简单的样本,在经典的KD损失中,NCKD的能力会被抑制。

Co-advise: Cross Inductive Bias Distillation

  1. 决定学生能力提升的不是教师的能力而是教师给予的归纳偏置;
  2. 不同归纳偏置的给予可以带来更好的能力提升;
  3. token与教师的对齐有助于学习。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

右边是我女神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值