什么是 知识蒸馏?

知识蒸馏是一种模型压缩技术,通过训练较小的「学生」模型来模仿较大「教师」模型的行为,将知识转移以创建保留大部分原始性能的高效模型。

快速了解

创建时间2015 年由 Hinton 等人提出
规范文档官方规范

工作原理

知识蒸馏使 AI 能力能够部署在资源受限的环境中。该技术通过让学生模型学习教师输出的软概率分布(logits)而非仅仅是硬标签来工作。这会转移关于类别之间关系的「暗知识」。现代应用包括将 GPT-4 蒸馏成较小的模型、创建高效的推理模型,以及从通用教师构建专业模型。著名的例子包括 DistilBERT 和各种蒸馏的大语言模型。

主要特点

  • 将知识从大型教师转移到小型学生
  • 使用软标签(概率分布)进行训练
  • 比仅使用硬标签训练保留更多知识
  • 支持在边缘设备和移动端部署
  • 可以组合多个教师进行集成蒸馏
  • 温度参数控制分布的软度

常见用途

  1. 为移动部署创建高效模型
  2. 在保持质量的同时降低推理成本
  3. 从通用教师构建专业模型
  4. 压缩大语言模型
  5. 边缘 AI 和物联网应用

示例

loading...
Loading code...

常见问题

知识蒸馏和模型剪枝有什么区别?

知识蒸馏训练一个较小的学生模型来模仿较大教师模型的输出,转移学到的知识。模型剪枝则是从现有模型中移除不必要的权重。蒸馏创建一个新的、更小的架构,而剪枝是减少现有模型的规模。

为什么温度在知识蒸馏中很重要?

温度软化教师模型的概率分布,揭示更多关于类别之间关系的信息。较高的温度产生更软的分布,传递更多关于类别相似性的「暗知识」,帮助学生学习更好的表示。

知识蒸馏可以用于大语言模型吗?

是的,知识蒸馏广泛用于大语言模型。例如 DistilBERT(从 BERT 蒸馏而来)和各种 GPT 模型的蒸馏版本。它使强大的语言能力能够部署在资源受限的设备上。

使用知识蒸馏通常会损失多少性能?

学生模型通常保留教师 90-99% 的性能,同时体积缩小 2-10 倍。具体性能取决于压缩比、学生架构和蒸馏过程的质量。

什么是集成蒸馏?

集成蒸馏将多个教师模型的知识组合到单个学生中。这可以产生超越任何单个教师的学生,因为它捕获了来自不同模型的互补知识。

相关工具

相关术语

相关文章