谷歌DeepMind提出广义知识蒸馏(GKD),通过策略内自生成样本与教师反馈结合,显著提升小模型性能,兼容强化学习,解决传统蒸馏的分布错配问题。
现在训练大模型,其实浪费了大量算力! 谷歌DeepMind最新论文提出了一种叫“策略内蒸馏”(On-Policy Distillation)的新方法,直接让小模型边犯错边学习,效率飙升!
看看这篇ICLR 2024顶会论文《策略内语言模型蒸馏:从自我生成的错误中学习》:
先说说作者是谁——这篇论文来自谷歌DeepMind,第一作者Rishabh Agarwal和Nino Vieillard都是强化学习与大模型压缩领域的老手,团队还包括来自Mila(蒙特利尔学习算法研究所)和多伦多大学的研究者。他们不是纸上谈兵,而是真正把大模型压缩、蒸馏、强化学习三者打通的实战派!
传统知识蒸馏的问题:训练和推理“脱节”了!
你可能听说过“知识蒸馏”——就是让一个小模型(学生)去模仿一个大模型(老师)的行为,从而在保持性能的同时节省算力。
但问题来了:传统方法用的是老师生成的固定答案来训练学生。
可学生在实际推理时,自己一步步生成内容,每一步都依赖上一步——一旦开头出错,后面全崩!
这就叫“训练-推理分布错配”(train-inference distribution mismatch),也叫“曝光偏差”(exposure bias)。
举个例子:老师说“今天天气真好”,学生训练时背的是这句话。
但真让它自己写,它可能开头写成“今天下雨了”,后面就完全跑偏了——可训练数据里根本没有“下雨”这个开头!
所以传统蒸馏,学生学得再好,一上战场就掉链子。
新方法GKD:让学生边写边改,老师实时点评!
谷歌团队提出的“广义知识蒸馏”(Generalized Knowledge Distillation, GKD)彻底改变了玩法。
核心思想就一句话:让学生用自己的语言写句子,老师当场打分、指出哪里该改!
具体怎么操作?
学生先自己生成一段文本(比如摘要、翻译、数学解题步骤),然后把这段“作业”交给老师。
老师不是简单说对错,而是逐字给出“每个词的概率分布”——相当于告诉你:“这里用‘晴朗’比‘下雨’更合理,概率高87%!”
学生再根据这些反馈调整自己的语言习惯。
关键是:训练数据不再是固定的,而是动态生成的、学生自己会写的句子!
这就叫“策略内”(on-policy)——只练你真会用的东西,不练空中楼阁。
不止模仿,还能结合强化学习!
更牛的是,GKD还能无缝对接强化学习(RL)!
比如你想让模型写摘要时“不能胡编乱造”,就可以加一个“事实一致性”奖励信号。
GKD一边让学生模仿老师的语言风格,一边用RL惩罚它“说谎”——双管齐下,效果炸裂!
论文里有个实验:在XSum新闻摘要任务上,结合RL和GKD的小模型,不仅ROUGE-2分数大幅提升,事实错误率还比30亿参数的大老师还低!
这意味着什么?小模型不仅能干活,还能干得更靠谱!
实测三大任务,全面碾压旧方法!
团队在三个经典任务上做了测试:新闻摘要(XSum)、英德翻译(WMT)、小学数学题(GSM8K)。
结果惊人:
- 摘要任务:用7700万参数的小模型,蒸馏后效果超过5400亿参数的PaLM模型(谷歌早期超大模型)!
- 翻译任务:BLEU分数提升高达70%,而且只用25%的数据就干翻了用全量数据的传统方法!
- 数学推理:结合思维链(Chain-of-Thought),小模型准确率暴涨90%,解题步骤更清晰、更少胡扯!
而且,GKD还特别“省饭”——因为学生模型小,自己生成训练数据比让大老师生成快得多,训练成本大幅下降。
选对“损失函数”,效果差十倍!
GKD另一个亮点是:你可以自由选择“老师和学生之间的距离怎么算”。
传统方法只用“前向KL散度”(forward KL),但GKD支持反向KL、JSD(广义JS散度)等。
实验发现:
- 如果你想要高质量、少胡说,就用反向KL或JSD(0.9)——它会让模型聚焦老师最可能说的词,避免瞎猜。
- 如果你想要多样性,比如创意写作,就用前向KL,鼓励探索更多可能性。
在指令微调(Instruction Tuning)这种任务上,反向KL效果最好——因为用户指令通常只有一个正确意图,模型必须“精准命中”,不能发散。
连强化学习微调(RLHF)都能升级!
现在主流的大模型对齐方法是RLHF(人类反馈强化学习),但有个问题:为了不偏离原始能力,RLHF通常会用“反向KL”把模型拉回初始状态。
而GKD直接把“初始状态”换成“老师模型”——相当于让RLHF在对齐人类偏好的同时,还能持续向更强的老师学习!
这不仅能减少“对齐税”(alignment tax,即对齐后通用能力下降的问题),还能让小模型在安全性和能力上双丰收。
总结一下:GKD到底强在哪?
1. 动态训练:用学生自己生成的内容训练,彻底解决训练-推理错配。
2. 灵活损失:支持多种散度,按任务需求调平衡“质量 vs 多样性”。
3. 高效省算力:小模型自产数据,比依赖大老师更便宜。
4. 兼容RL:能和强化学习无缝结合,同时优化能力与安全性。
5. 通吃任务:从摘要、翻译到数学推理,全面超越传统蒸馏。
未来,这种“边做边学、实时反馈”的模式,很可能成为大模型压缩和微调的新标准。
毕竟,在算力越来越贵的时代,谁不想用一个小模型,干出大模型的活,还更听话、更靠谱呢?