Knowledge Distillation(5)——Deep Mutual Learning

之前都是对knowledge重新定义,衍生出的knowledge distillation的变体模型。
本篇博客开始,介绍知识蒸馏的第二类方法:改变学习方式,提高student perfomance。

Deep Mutual Learning CVPR2018

  • 概述
  • Method
    • Model
    • Optimisation
  • Experiments

概述

本文核心idea是,没有teacher,一系列student之间相互学习。
本质也是学习了另一个网络的输出,但是学习方式遍了,因而我把它归到第二类论文
在这里插入图片描述
motivation:
Knowledge Distillation(5)——Deep Mutual Learning_第1张图片
至于why work?
Knowledge Distillation(5)——Deep Mutual Learning_第2张图片
Knowledge Distillation(5)——Deep Mutual Learning_第3张图片
这种学习方式更稳定,更容易收敛:
Knowledge Distillation(5)——Deep Mutual Learning_第4张图片
Knowledge Distillation(5)——Deep Mutual Learning_第5张图片
以及这个分析还不错(似乎也是翻译的论文)

Method

Model

具体方法很简单,定义了两个网络。除了使用GT对各自进行监督,还引入了一个额外的loss,引导他们进行相互间的学习。
Knowledge Distillation(5)——Deep Mutual Learning_第6张图片
这个额外的loss,利用相对熵,即KL散度来定义:
Knowledge Distillation(5)——Deep Mutual Learning_第7张图片
这种额外的loss对于两个网络来说是不一样的,非对称的。也可以用下面这个对称的loss替代,而且效果几乎无差别:
Knowledge Distillation(5)——Deep Mutual Learning_第8张图片

Optimisation

作者的训练步骤
Knowledge Distillation(5)——Deep Mutual Learning_第9张图片
两个模型一起训练,且互相学习直到收敛。不会像传统的distillation,student学习一个已经训练好的teacher,还只是用来初始化参数!!

Experiments

两个students也是一个大网络,一个小网络。其相互学习的效果比,比teacher-student的模式要好:
Knowledge Distillation(5)——Deep Mutual Learning_第10张图片
Knowledge Distillation(5)——Deep Mutual Learning_第11张图片

你可能感兴趣的:(Knowledge,Distillation,知识蒸馏)