知识蒸馏现状与未来

1.综述

1.Knowledge Distillation: A Survey CVPR, 2020

在这里插入图片描述

2.Lin Wang and Kuk-Jin Yoon. Knowledge distillation and student-teacher learning for visual intelligence: A review and new outlooks. CoRR, 2020

在这里插入图片描述

1.1蒸馏的几种类型

基于响应的知识具有相似的动机来进行标签平滑和模型正则化;

基于特征的知识通常用于模仿教师的中间过程

而基于关系的知识则用于捕获不同样本之间的关系

1.2蒸馏的几种方式

离线蒸馏 先训练好teacher 后用teacher训练student

在线蒸馏 teacher和student同步学习

自我蒸馏 网络较深部分的知识蒸馏为浅层部分

1.3蒸馏算法分类

对抗蒸馏 采用

多教师蒸馏 多个teacher哺育一个student

跨模态蒸馏

注意力蒸馏 学习中间原始RGB被激活区域(注意力特征图)

无数据蒸馏

量化蒸馏

终身蒸馏

NAS蒸馏:目前很流行的技术之一,自动识别深度神经模型并自适应地学习适当的深度神经结构。
采用 NAS 来找到 oracle-based 和 architecture-aware 的合适的学生架构实现知识蒸馏,提高神经架构的搜索效率

1.4总结展望

总结:

  • 知识蒸馏可以简单地在不同的深度模型上实现,并且可以通过知识蒸馏轻松地实现不同深度模型的模型压缩。教师和学生的结构之间的关系也显着影响知识蒸馏的性能。
  • 通过协作学习进行在线知识蒸馏可以显着提高深度模型的性能。
  • 自知蒸馏可以很好地改善深度模型的性能。
  • 轻量级深层模型(学生)的性能可以通过大容量教师模型中的知识转移而轻松提高。

展望:最重要的因素包括:怎样设计师生网络体系结构,从老师网络中学习什么样的知识,以及在何处提炼到学生网络中

2.理论

  • Explaining Knowledge Distillation by Quantifying the Knowledge. CVPR 2020

    作者提出三个假设,并依次证明。1.KD促使DNN更容易从数据中学习更多的视觉概念。2.KD可确保DNN更容易同时学习到各种视觉概念,在没有KD的情况下,DNN在多个阶段分阶段学习不同的视觉概念。3. KD使得学习产生了更稳定的优化方向。

  • Variational information distillation for knowledge transfer. CVPR 2019

    KD其实是最大化teacher network 和student network之间的mutual information(互信息)

  • On the efficacy of knowledge distillation. ICCV 2019

    老师容量不是越大越好。模型容量不匹配,导致student模型不能够mimic teacher,反而带偏了主要的loss,KD losses 和accuracy不匹配,导致student虽然可以follow teacher, 但是并不能吸收teacher知识。

  • Deep mutual learning. CVPR 2018

    pretrained的teacher没那么重要

  • Learning from multiple teacher networks. SIGKDD 2017

    多教师网络学习

3.论文

1.Logits(Response)-based

  • Distilling the Knowledge in a Neural Network Hilton NIPS 2014

    KD开山之作,使用softed labels去学习class distribution,交叉熵损失

  • Deep mutual learning CVPR 2018

    提出DML,即让一组学生网络在训练过程中相互学习、相互指导,而不是静态的预先定义好教师和学生之间的单向转换通路。

  • On the efficacy of knowledge distillation, ICCV 2019

    继续使用KD softed labels, 但是聚焦data regularization,提出一种early-stop teacher regularization进行蒸馏,接近收敛时要提前停止蒸馏。

  • Self-training with noisy student improves imagenet classification 2019

    继续使用KD softed labels, 但是聚焦data issue,通过使用更大的噪声数据集来训练student模型

  • Training deep neural networks in generations: A more tolerant teacher educates better students AAAI 2019
    继续使用KD softed labels, 但是在蒸馏过程中通过增加约束来达到优化目标,计算ground Truth类与其他得分最高的K-1类之间的差距,差距越大越好

  • Distillation-based training for multi-exit architectures ICCV 2019

    作者借鉴muti-exit architectures去做ensemble distribution KD,扩展提出新的损失函数。Ensemble distribution KD方法可以很好的保证分布diversity,同时多个模型融合的结构较好。

  • KDGAN: Knowledge Distillation with Generative Adversarial Networks NIPS 2018

    将GAN应用到知识蒸馏,概述中有描述

  • Data-Free Learning of Student Networks ICCV 2019

    GAN做无数据蒸馏算法

  • Improved Knowledge Distillation via Teacher Assistant: Bridging the Gap Between Student and Teacher,2019:主要是当网络差距大时的一个训练策略

    当师生网络差距较大时,学生网络的性能会下降。多步骤知识提炼:教师助理模型是从教师网络那里提炼出来的,而学生仅从教师助理里蒸馏出来

Logits(Response)-based Knowledge优缺点总结

优点:
 1.简单易于理解,student模型学teacher模型输出的概率分布,相当于给出了类别之间的相似性信息,提供了额外的监督信号,学起来更容易。
 2.对于输出层,实现简单方便

缺点:
 1.蒸馏效率依赖于softmax loss计算和number of class
 2.对于没有label(low-level vision)的问题,无法去做
 3.当student network模型太小时,很难从teacher network distilled成功

2. Feature-based

  • Fitnets: Hints for thin deep nets. ICLR 2015

    首次提出通过intermediate feature layers学习knowledge,提出HInt training

  • Paying more attention to attention: Improving the performance of convolutional neural networks via attention transfer. ICLR 2017

    通过提取Teacher模型生成的注意力图来指导Student模型,使Student模型生成的注意力图与Teacher模型相似。Student模型生成的特征更加灵活,不局限于Teacher模型。

  • A Comprehensive Overhaul of Feature Distillation Heo. ICCV 2019

    同样选取student和teacher网络结构的某个位置然后对特征进行变换,最后拉进他们的距离,有在检测任务中进行实验

  • GAN-KD for one-stage object-detection IEEE ACCESS 2020

    将教师网络生成的特征层作为真实样本,学生网络生成的特征层做为假样本,并对两者做生成对抗训练

3. Relation-based

  • A gift from knowledge distillation: Fast optimization, network minimization and transfer learning CVPR 2017

    不拟合Teacher模型的输出,而是去拟合Teacher模型层与层之间的关系,类似于老师教学生做题,中间的结果并不重要,更应该学习解题流程。关系通过层与层之间的内积(点乘)来定义。

  • Similarity-preserving knowledge distillation ICCV 2019

    如果两个输入在老师网络中有着高度相似的激活,那么引导学生网络趋向于对该输入同样产生高的相似激活(反之亦然)的参数组合,提出了保留相似性损失。

Feature/Relation-based Knowledge优缺点总结:

优点:

  1. 泛化性更好,目前SOTA的方法都是基于feature/Relation
  2. 可以处理cross domain transfer and low-level vision问题

缺点:

  1. 对于信息损失很难度量,因此很难选择最好的方法。
  2. 大多数方法随机选择intermediate layers,可解释性不够
  3. 特征的蒸馏位置手动选择或基于任务选择
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值