AI知识点001-模型蒸馏
所属分类 AI
浏览量 23
模型蒸馏 distill
模型蒸馏是一种知识迁移技术,
通过让学生模型学习教师模型的输出(如概率分布或中间特征),在保留关键性能的同时显著降低模型体积和推理开销
就像一位资深大厨(大模型)教徒弟(小模型)做菜。
徒弟不需要背下所有菜谱(全部训练数据),只需模仿师傅的做菜方式和调味技巧(推理轨迹/输出),也能做出味道相近的菜肴。
大模型在实际应用中的挑战:
训练资源消耗高:需要大量计算资源
部署困难:对设备算力要求高,难以在手机、IoT 等资源受限设备上运行
推理资源消耗大:单次推理计算量大,导致响应慢、能耗高
通过模型蒸馏,可有效缓解上述问题。
模型蒸馏的原理
步骤一:教师模型提供“参考答案”
传统训练使用“硬标签”(只有一个正确答案),
而模型蒸馏采用“软标签”:即教师模型输出的各选项概率分布。
例子
提示词:"法国首都是哪?"
硬标签:巴黎
软标签:
巴黎:92%(正确答案)
马赛:5%(易混淆)
里昂:2%(历史因素)
其他:1%
软标签提供更多信息,能揭示教师模型的判断逻辑,帮助学生模型更好地理解“为什么选择这个答案”。
步骤二:双重训练目标,既学思路也保准确
学生模型同时优化两个损失函数:
蒸馏损失(KL散度):
衡量学生模型输出与教师模型生成“软标签”的接近程度
让学生模型掌握教师模型的判断逻辑
监督损失(交叉熵):
衡量学生模型输出与“硬标签”(真实答案)的吻合程度
防止因一味模仿,失去基础判断能力
两者加权求和,形成整体损失函数:
总损失 = α × 蒸馏损失 + (1 - α) × 监督损失
注:α 是权重系数,调节“模仿”与“准确”的平衡
步骤三:正常训练流程
学生模型通过反复执行:
前向推理 → 计算损失 → 反向传播 → 更新参数
逐渐接近教师模型的水平
其他蒸馏策略:中间层蒸馏、关系蒸馏
蒸馏与微调对比
对比维度 蒸馏 微调
任务目标:知识迁移 任务适配
优化方向:学习教师模型的输出分布 调整参数以提升特定任务性能
标签类型:概率分布(软标签,如 [猫80%, 狗15%, 兔5%]) 标准答案(硬标签,如"猫")
损失函数:蒸馏损失 + 监督损失 任务特定损失函数
适合场景:知识压缩/边端部署 领域适配
Hugging Face 通过 Transformers 库提供了 DistilBERT、DistilGPT-2 等经典蒸馏模型
DeepSeek 开源蒸馏模型 R1-Distill-Qwen-7B
蒸馏模型比原始 DeepSeek-R1 更小,计算效率更高,使其更容易在资源受限的环境中部署。
尽管尺寸较小,但由于 DeepSeek-R1 传递的知识,蒸馏模型保留了很强的推理能力
阿里云推出开源框架 EasyDistill,
支持黑盒化(通过 API 调用闭源模型)和白盒化(直接访问模型结构)蒸馏,并开源 DistilQwen 系列模型
上一篇
下一篇
企业智能问答系统技术栈
大语言模型发展简史
LangChain4j核心功能
AI知识点002-交叉熵
AI知识点解释