大模型如何「教」小模型?知识迁移的艺术
阅读时间约 8 分钟大语言模型动辄数百亿参数,想把它们部署到手机、笔记本甚至嵌入式设备上,就必须"瘦身"。业界有三种主流压缩技术:量化(Quantization)、剪枝(Pruning) 和 蒸馏(Distillation)。
量化 减少数字精度——把 FP16 权重压缩到 INT4 或更低,模型结构不变,只是每个参数占用更少的位数。我们在 量化 一文中已有详细介绍。
剪枝 则像修剪盆栽——移除那些对输出贡献极小的神经元或连接,让网络更精简。
蒸馏 是最"知识密集"的方法:训练一个全新的小模型,让它模仿大模型的行为。大模型当老师,小模型当学生,把"毕生经验"浓缩传授。
同一张图片,减少数据精度。模型结构不变,权重从高精度降为低精度。
移除不重要的权重和神经元连接,让网络结构更紧凑。
训练一个小模型来模仿大模型的输出行为,迁移知识而非复制参数。
量化是减少笔画,剪枝是删减章节,蒸馏是让老师把毕生经验浓缩传授给学生。
蒸馏的核心思想来自 Hinton 等人 2015 年的经典论文。它定义了两个角色:
教师模型(Teacher):一个已经训练好的大型模型,如 70B 参数的 LLM。它拥有强大的能力,但体积庞大、推理缓慢。
学生模型(Student):一个更小的模型,如 7B 甚至 1.5B 参数。它的目标是用更少的参数达到尽可能接近教师的表现。
传统训练只使用硬标签——正确答案是什么就学什么。但教师模型的输出不仅有正确答案,还有一个完整的概率分布。这个分布包含了 Hinton 所称的"暗知识"(dark knowledge)——教师对各个选项的信心程度,蕴含着类别之间的关系信息。
温度参数 T 控制着分布的"软化"程度。T 越高,分布越平滑,暗知识越丰富;T = 1 是原始分布。
教师模型预测下一个词——"法国的首都是 ___":
答案:巴黎
只告诉学生"答案是巴黎"。
巴黎 85%,伦敦 8%,柏林 5%,东京 2%
学生还学到:伦敦和柏林也是合理的首都答案。
硬标签是考试的标准答案,软标签是老师的讲解——为什么对、为什么错、哪些答案也有道理。
根据学生模型学习教师模型的方式不同,蒸馏可以分为几大类:
最经典的方法。学生模型直接匹配教师模型的输出概率分布,使用 KL 散度(KL Divergence)来衡量两个分布的差异。这是最直接的"模仿说话方式"。
更深层的模仿——学生不仅学习教师的输出,还学习教师中间层的表征(intermediate representations)。这相当于不仅模仿老师怎么说,还模仿老师怎么思考。
现代 LLM 蒸馏中常用的方法。学生模型自己生成文本,然后由教师模型评分。这种方式能让学生学到如何从自身的错误中改进,类似于"做练习题然后让老师批改"。
模型将自己蒸馏成更小的版本——不需要外部教师。通过将模型自身的大版本当作教师,训练一个结构相似但更小的学生版本。
蒸馏的训练目标由两部分损失函数组成:
● 第一项:学生与真实标签的交叉熵,确保学对正确答案
● 第二项:学生与教师软分布的 KL 散度,迁移暗知识
α = 0.5:硬标签与软标签各占一半权重
Logit 蒸馏是模仿老师说话的方式,Feature 蒸馏是模仿老师的思考过程。
蒸馏技术已经被广泛应用于主流模型的生产部署中:
DeepSeek 的 671B 推理模型通过蒸馏产生了一系列小模型:R1-70B、R1-32B、R1-14B、R1-8B、R1-1.5B。从 671B 到 1.5B,参数量缩小 447 倍,但小模型仍然保留了令人惊讶的推理能力。
阿里的 Qwen3.5-0.8B / 2B 等小模型,从更大的 Qwen 模型蒸馏而来,专门为边缘设备部署优化。在手机端即可运行,且效果远超同等规模的从头训练模型。
Google 的 Gemma 系列专为端侧设计,利用 Gemini 系列大模型的知识进行蒸馏,在保持小巧的同时最大化能力保留。
关键数据:一个精心蒸馏的 7B 模型通常能保留 70B 教师模型 85-95% 的能力。
蒸馏就像从一整瓶葡萄酒中提取精华——体积缩小 10 倍,但风味保留 90%。
教师模型的概率分布包含丰富的暗知识,远比简单的正确答案有价值。
通过蒸馏,1.5B 参数的模型也能继承 70B 模型的大部分推理能力。
先蒸馏缩小模型,再量化压缩权重,是端侧 AI 部署的黄金组合。
模型的知识远比参数数量重要——蒸馏证明知识可以被高效地压缩和传递。
蒸馏的本质是:你不需要重新学习所有知识,只需要站在巨人的肩膀上。