技术指南

知识蒸馏

知识蒸馏训练一个小型的“学生”模型来模仿一个大型的、准确的“教师”模型。

概述

知识蒸馏训练一个小型的“学生”模型来模仿一个大型的、准确的“教师”模型。这很重要,因为它缩小了强大的模型,因此它们可以在手机和服务器上以较低的成本运行,同时保持大部分准确性。

知识蒸馏是一个技术构建块,会大规模影响模型质量、基础设施成本、延迟和可靠性。

深入探讨

大模型很准确,但部署缓慢且昂贵。知识蒸馏通过让学生从教师的输出中学习而不仅仅是从硬标签中学习,将他们的能力转移到一个紧凑的模型中。 Hinton 及其同事的关键见解是,教师的完整概率分布带有“暗知识”:即使它预测“狗”,“狼”与“汽车”的相对概率也揭示了教师如何看待相似之处。用温度软化这些概率会暴露该结构,学生会接受训练来匹配它,通常与真实的标签一起。结果是一个更小、更快的模型,比仅根据标签训练的模型具有更好的泛化能力。 DistilBERT 和 TinyBERT 是著名的蒸馏语言模型。

技术洞察

经典损失将蒸馏项(学生和教师的软化概率之间的 KL 散度)与真实标签上的标准交叉熵结合起来。软化在 softmax 中使用温度 T:较高的 T 会使分布变得平坦,因此小的类间相似性会变成可学习的信号;蒸馏梯度通常按 T 平方缩放。变体超越输出:基于特征的蒸馏匹配中间隐藏层,基于关系的蒸馏匹配示例之间的关系。

掌握知识蒸馏

知识蒸馏训练一个小型的“学生”模型来模仿一个大型的、准确的“教师”模型。这很重要,因为它缩小了强大的模型,因此它们可以在手机和服务器上以较低的成本运行,同时保持大部分准确性。知识蒸馏是一个技术构建块,会大规模影响模型质量、基础设施成本、延迟和可靠性。为了建立深入的理解,请将知识蒸馏视为一种操作模型,而不是单一功能:定义期望的结果,澄清假设,并将系统可以可靠地完成的任务与仍需要专家判断的任务分开。

在实践中,强大的团队使用知识蒸馏来根据可靠性和成本优化架构、数据和基础设施选择。他们记录明确的成功标准,根据实际数据和工作流程进行测试,并根据观察到的失败模式而不是一次性基准测试胜利进行迭代。这就是理论理解转变为跨产品、政策和运营的持久能力的地方。

多年来,架构决策决定着性能和运营成本。与此同时,优化一个基准测试可以隐藏更广泛的系统弱点。最具弹性的方法是将实验速度与治理规则结合起来:运行试点、捕获证据、发布决策日志,并随着模型行为、用户期望和监管要求的发展不断更新保障措施。

战略影响

多年来,架构决策决定着性能和运营成本。

多年来,架构决策决定着性能和运营成本。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

更好的工程选择可以减少生产中的可靠性事故。

更好的工程选择可以减少生产中的可靠性事故。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

知识蒸馏的未来

蒸馏现在是交付高效模型的标准步骤,并且是当今小型、功能强大的开放模型浪潮的核心。一个快速增长的趋势是从大型语言模型中进行序列级蒸馏,其中强大的模型生成训练数据或推理轨迹(包括思维链)来教授较小的学生,从而模糊了与合成数据的界限。当从输出成为竞争对手训练信号的专有模型中提取时,预计会与量化和修剪进行更紧密的配对,更多的设备上部署,以及有关许可和质量的持续争论。

现实世界的实施

DistilBERT 将 BERT 的参数压缩了大约 40%,同时保留了大部分语言理解,以实现更快的推理。

缩小大型视觉模型,以便图像分类器可以在智能手机相机应用程序上实时运行。

将大模型的思维链推理提炼成更小的模型,使其更便宜地回答数学或编码问题。

将模型集合压缩为单个学生,从而降低生产服务成本和延迟,而不会损失太多准确性。

实施模式

实践中的知识蒸馏

DistilBERT 将 BERT 的参数压缩了大约 40%,同时保留了大部分语言理解,以实现更快的推理。

DistilBERT 将 BERT 压缩到大约 40% 的参数,同时保留其大部分语言理解,以实现更快的推理。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会获得更好的结果。

实践中的知识蒸馏

缩小大型视觉模型,以便图像分类器可以在智能手机相机应用程序上实时运行。

缩小大型视觉模型,以便图像分类器可以在智能手机摄像头应用程序上实时运行当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会获得更好的结果。

实践中的知识蒸馏

将大模型的思维链推理提炼成更小的模型,使其更便宜地回答数学或编码问题。

将大模型的思想链推理提炼成较小的模型,使其以更便宜的成本回答数学或编码问题当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会得到更好的结果。

实践中的知识蒸馏

将模型集合压缩为单个学生,从而降低生产服务成本和延迟,而不会损失太多准确性。

将模型集合压缩到单个学生中,从而降低生产服务成本和延迟,而不会造成太大的准确性损失。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会获得更好的结果。

风险与防护栏

!

优化一项基准测试可以隐藏更广泛的系统弱点。

!

基础设施和维护成本常常被低估。

!

随着系统变得更加复杂,安全性和可观察性差距可能会扩大。

实施路线图

1

在实施之前定义延迟、质量和成本目标。

在实施之前定义延迟、质量和成本目标。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

2

在实际负载和数据条件下进行基准测试。

在实际负载和数据条件下进行基准测试。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

3

仪器监控错误、漂移和用户影响。

仪器监控错误、漂移和用户影响。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

4

在扩展之前准备回滚和事件响应路径。

在扩展之前准备回滚和事件响应路径。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

不断探索