热门问题
时间线
聊天
视角
知识蒸馏
机器学习方法 来自维基百科,自由的百科全书
Remove ads
知识蒸馏(knowledge distillation)是人工智慧领域的一项模型训练技术。该技术透过类似于教师—学生的方式,令规模较小、结构较为简单的人工智慧模型从已经经过充足训练的大型、复杂模型身上学习其掌握的知识。该技术可以让小型简单模型快速有效学习到大型复杂模型透过漫长训练才能得到的结果,从而改善模型的效率、减少运算开销,因此亦被称为模型蒸馏(model distillation)。
工作原理
知识蒸馏的核心原理是利用教师模型产生的软标签(soft labels)来训练学生模型。与传统训练方法使用硬标签(ground truth labels)不同,软标签提供了更多的类别分布资讯,例如教师模型对每个类别的信心水平。
一般而言,知识蒸馏包含以下步骤:
- 使用教师模型对训练资料进行预测,产生机率分布作为软标签(通常经过温度调整(temperature scaling)处理,以平滑输出分布)。
- 将学生模型同时以硬标签与软标签进行训练。损失函数(loss function)会同时考虑与硬标签的交叉熵损失以及与软标签之间的Kullback–Leibler 散度(KL divergence)。
- 最终学生模型学习到教师模型在输出层的行为与特征表征(representations),即使模型容量较小,也能达到接近的效能。
历史
知识蒸馏技术最早提出于2014年提出。当年“深度学习教父”Geoffrey Hinton等人在当年年底召开的NIPS 2014会议中的一个Workshop中提出此方法。[1]
参考资料
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads