A Gift from Knowledge Distillation: Fast Optimization, Network Minimization and Transfer Learning

发布于:2022-11-02 ⋅ 阅读:(336) ⋅ 点赞:(0)

知识的三种形式

一、摘要

二、方法步骤

1.解决问题的流程-FSP

2.蒸馏方法

         3.结果

总结

知识的三种形式

1.Responsed-Based Knowledge :小模型学习大模型的输出   (Hinton)

2.Feature-Based Knowledge:小模型学习大模型的中间feature  https://arxiv.org/abs/1412.6550

3.Relation-Based Knowledge:小模型学习input-hidden-output之间的关系

本文则是3的思想

一、摘要

1.从预先训练的深度神经网络DNN提取知识并转移到另一个DNN

2.由于DNN从输入空间到输出空间是经过多层顺序映射的,我们用层间流动的方式定义要传递的蒸馏知识,这是通过计算两层特征之间的内积来计算的。

3.当我们将学生DNN与与学生DNN大小相同但没有教师网络训练的原始网络进行比较时,所提出的蒸馏知识在两层之间流动的转移方法表现出三个重要现象:(1)学习蒸馏知识的学生DNN比原始模型优化得更快;(2)学生DNN优于原始DNN;(3)学生DNN可以从接受不同任务训练的教师DNN那里学习到经过提炼的知识,并且学生DNN的表现优于从零开始训练的原始DNN。

二、方法步骤

1.解决问题的流程-FSP

该图为迁移学习方法的概念图

FSP矩阵是由两层特征生成的,表示从DNN中提取的知识。通过计算表示方向的内积,生成FSP矩阵,两层之间的流动可以用FSP矩阵表示。

说白了该图的作用就是:将每个teacher和student的block都取第一层和最后一层,并分别输出特征图,该特征图即为求解过程(FSP)矩阵流

2.蒸馏方法

算法如上图所示

在完成第一步FSP之后,进行两个阶段的蒸馏操作

阶段一:对学生网络预训练,目的是使学生网络的FSP与教师网络的FSP相似

阶段二:利用学生DNN的预训练权值作为初始权值进行正常的训练过程


 示意图如下:

 该图为方法的完整架构

其中教师和学生的网络层数都可以改变,在保持相同空间大小的三个截面上提取FSP矩阵。

3.结果

分别从快速优化、网络最小化、迁移学习三个方面证明了本文方法的有效性

总结

授人与鱼不如授人以渔

1.本文即是小模型学习input-hidden-output之间的关系

2.FSP若尺寸不同,用最大池化层拟合

3.用Gram矩阵计算loss函数

4.使用FSP矩阵来描述学习方法。教师网络的“蒸馏信息”以FSP矩阵的形式被提取出来,并将它传送到学生网络上


网站公告

今日签到

点亮在社区的每一天
去签到