1.三个概念
a.老师、学生网络:通过结构复杂,计算量大但是性能优秀的教师神经网络,对结构相对简单,计算量较小的学生网络进行指导,以提升学生网络的性能。
b.暗知识:目标间的相似性
c.温度系数【超参】:调节softmax公式中,exp的分母T越大,分布越平滑,贫富差距越小
作用:类似负重登山,T相当于负重包。当有一天取下负重后,登山就会比正常快。
现在使得各个类别之间的界限模糊,网络必需增加性能才能使得分类更准确,这样当最后T==1时,模型的性能会更好
T参数为了对应蒸馏的概念,在论文中叫的是Temperature,也就是蒸馏的温度。T越高对应的分布概率越平缓,为什么要使得分布概率变平缓?举一个例子,假设你是每次都是进行负重登山,虽然过程很辛苦,但是当有一天你取下负重,正常的登山的时候,你就会变得非常轻松,可以比别人登得高登得远。
同样的,在这篇文章里面的T就是这个负重包,我们知道对于一个复杂网络来说往往能够得到很好的分类效果,错误的概率比正确的概率会小很多很多,但是对于一个小网络来说它是无法学成这个效果的。我们为了去帮助小网络进行学习,就在小网络的softmax加一个T参数,加上这个T参数以后错误分类再经过softmax以后输出会变大(softmax中指数函数的单增特性,这里不做具体解释),同样的正确分类会变小。这就人为的加大了训练的难度,一旦将T重新设置为1,分类结果会非常的接近于大网络的分类效果。
d.软目标 硬目标:带T的目标是soft,要尽量的接近于大网络加入T后的分布概率。
2.四个步骤
a.传统方式训练神经网络
b.建立学生网络,模型输出用传统的softmax,拟合目标为one-hot形式的训练集输出,loss1
c.对训练好的老师网络加softmax分类器加入温度参数,作为具有相同温度参数的softmax分类器的学生网络的拟合目标,loss2
d.引入参数alpha,(1-alpha)*loss1+alpha*loss2整体作为网络训练的loss,训练网络
3.整体结构图