把一个大模型的能力“装进”一个小模型,这件事在工程上有个形象的名字:模型蒸馏。理解它最直观的方式,是把它想成一位经验丰富的老师和一名刚入门的学生。老师知识渊博,但讲课、答疑、批改作业都需要大量时间和资源;学生体量小、反应快,却还没有形成自己的判断。蒸馏做的事情,就是让学生不必从零摸索,而是通过观察老师的回答方式来学习。最终学生未必能达到老师的全部水平,但在很多具体任务上已经足够好用,而且跑得更快、更省资源。
教师与学生:蒸馏里的两个角色
在模型蒸馏中,教师模型通常是参数量大、训练充分、在任务上表现较好的模型。它的作用不是被压缩,而是被“请教”——用它的输出为小模型提供学习目标。学生模型则是参数量更少、结构可能更简单、推理成本更低的模型,它是蒸馏真正要产出的结果。
这里容易产生一个误解:蒸馏并不是把大模型的参数切掉一块,也不是把大模型的文件压缩成小文件。教师和学生可以是完全不同的网络结构,甚至层数、宽度、注意力设计都不一样。它们之间的连接只有一个:教师对同一批输入给出的输出,被当作学生要模仿的答案。
这个关系有点像学写文章。学生不是去背老师的脑神经连接,而是大量阅读老师写过的段落,从中体会用词、句式和结构上的偏好。老师写得好,学生就有更好的模仿对象;老师写得一般,学生也很难学到更高水平。
软标签:教师传递的不只是答案
要理解蒸馏的工作机制,关键在于“软标签”这个概念。假设任务是判断一张图片是猫还是狗。普通训练数据给出的标签是硬标签:这张图是猫,那张图是狗,非此即彼。学生只能知道“对”和“错”。
而教师模型给出的是一个概率分布。对某张图,它可能输出:猫 0.9、狗 0.08、狐狸 0.02。这个分布就是软标签。它除了告诉学生正确答案是猫,还透露了额外信息:这张图在老师看来有点像狗,也有极小的可能像狐狸,但绝不像汽车。这些“不像什么”的信息,在硬标签里是完全丢失的。
软标签的价值在于,它把教师对类别之间相似性的判断传递给了学生。学生学到的不是一个孤立的正确答案,而是一张关于“哪些答案更接近、哪些更遥远”的相对关系图。这种信息密度更高,也更容易让小模型在有限容量下抓住任务的关键结构。

学生是怎么被训练的
蒸馏的训练过程可以拆成几个层次。学生模型对每个输入也输出一个概率分布,训练目标就是让这个分布尽量接近教师给出的分布。衡量两个分布差距的常用方式是让它们的差异越小越好,学生通过不断调整自己的参数来缩小这个差距。
在实际操作中,学生往往同时接受两类监督:一类是模仿教师的软标签,另一类是真实数据的硬标签。前者提供丰富的结构信息,后者保证学生不会在模仿中偏离任务本身。两者的比例如何搭配,是蒸馏实践中的一个调节点。
这和直接用数据从头训练小模型有明显区别。从头训练时,小模型只有硬标签可用,它必须自己从大量样本中摸索出类别之间的关系。而蒸馏相当于把教师已经摸索出来的判断框架直接交给学生,学生少走了很多弯路。因此在数据量有限、任务较复杂的情况下,蒸馏往往比从头训练更快得到可用的结果。
为什么要蒸馏:能力、成本与场景的平衡
蒸馏的核心动机是部署成本。大模型能力强,但对算力、内存和能耗的要求高,很难直接放进手机、摄像头、车载设备或工业传感器这类边缘环境。小模型参数量少,推理速度快,可以在本地完成计算,不必把数据传到云端,延迟更低,隐私风险也更小。
除了部署,蒸馏还有几个实际好处。它可以让模型在特定任务上更专注:如果教师是在某个垂直领域训练过的模型,学生就能集中学习这个领域的判断方式,而不必承担通用大模型的所有负担。它也可以用于加速迭代:先用大模型探索效果上限,再蒸馏出可落地的小模型,形成从研究到产品的过渡。
需要说明的是,蒸馏得到的小模型并不是大模型的“缩小版复制品”。它继承的是教师输出中体现出来的行为模式,而不是教师内部的全部知识。因此它在教师擅长的任务上通常表现接近,但在教师本身就不擅长或训练数据覆盖不到的地方,学生也很难凭空补足。
能力会损失多少
这是读者最关心的问题,但答案不是一句“损失多少个百分点”能概括的。蒸馏后的能力差距取决于几个因素:教师本身有多强、学生容量有多大、任务有多复杂、训练数据是否充分。
一般来说,学生在教师表现最好的任务上最容易接近教师,因为软标签在这些任务上信息最清晰、最一致。当任务需要长链条推理、大量世界知识或精细的上下文理解时,小模型受限于容量,往往会出现更明显的下滑。如果学生容量过小,即使教师很强,学生也可能学不动,出现“教了但装不下”的情况。
另一个容易被忽略的点是,学生通常难以完全超越教师。蒸馏本质上是模仿,模仿的上限是教师给出的信号质量。如果教师在某些样本上判断错误,学生也可能把这些错误一并学走。实践中有时会通过引入真实标签、数据筛选或多次蒸馏来缓解,但这不改变模仿关系的基本方向。
适用边界:什么时候该用,什么时候不该用
蒸馏适合那些对延迟、成本、隐私或离线运行有明确要求的场景,也适合任务边界相对清晰、教师在该任务上已经表现可靠的情况。比如移动端的图像分类、语音唤醒、文本审核初筛、工业质检中的缺陷识别,这些任务往往不需要模型具备通用对话能力,只需要在特定输入上稳定输出判断。
它不太适合的场景也很明确。如果任务本身要求最高的判断精度,或者需要模型具备广泛的开放域推理能力,那么直接使用大模型或采用其他压缩与加速手段可能更合适。蒸馏也不是免费的:它需要先有一个训练好的教师,需要额外的训练流程,还需要评估学生是否真的达到了可用的水平。
把蒸馏放回更大的图景里看,它解决的是“能力如何以更低成本落地”的问题,而不是“如何造出更强的模型”。教师模型负责探索能力上限,学生模型负责把其中一部分能力带到真实设备和真实业务里。理解这条分工线,就能理解为什么蒸馏在模型小型化和边缘部署中会长期占有一席之地,也能理解它的边界在哪里。
文章版权归作者所有,未经允许请勿转载。