简介
目录:
-
蒸馏是什么?怎么蒸BERT?
-
BERT蒸馏有什么技巧?如何调参?
-
蒸馏代码怎么写?有现成的吗?
今天rumor就结合Distilled BiLSTM/BERT-PKD/DistillBERT/TinyBERT/MobileBERT/MiniLM六大经典模型,带大家把BERT蒸馏整到明明白白!
模型蒸馏原理
Hinton在NIPS2014[1]提出了知识蒸馏(Knowledge Distillation)的概念,旨在把一个大模型或者多个模型ensemble学到的知识迁移到另一个轻量级单模型上,方便部署。简单的说就是用小模型去学习大模型的预测结果,而不是直接学习训练集中的label。
在蒸馏的过程中,我们将原始大模型称为教师模型(teacher),新的小模型称为学生模型(student),训练集中的标签称为hard label,教师模型预测的概率输出为soft label,temperature(T)是用来调整soft label的超参数。
蒸馏这个概念之所以work,核心思想是因为好模型的目标不是拟合训练数据,而是学习如何泛化到新的数据
本文深入探讨了BERT模型的知识蒸馏过程,包括模型蒸馏原理、BERT蒸馏技巧和经典模型如Distilled BiLSTM、BERT-PKD、DistillBERT等的介绍。文章详细阐述了如何进行蒸馏,以及蒸馏过程中关键参数的选择,提供了蒸馏代码实战的指导,是理解并实践BERT模型蒸馏的全面指南。
订阅专栏 解锁全文
760

被折叠的 条评论
为什么被折叠?



