← 返回题库
第 102 题 · NLP 与机器学习 · 中等

知识蒸馏如何用 Teacher 训练 Student,温度参数有什么作用?

岗位专项 这代表什么?
✓ 资料核验 来源说明:公开面经题库主题;公司归属未独立核验,技术答案依据原论文或官方文档整理
知识蒸馏Teacher Student模型压缩
评论与补充 ↓
口述训练

先用自己的话答,再看参考说法

60 秒是练习上限,不是必须凑满。原理题讲清因果,设计题讲清约束,项目题只讲真实证据。

别照着背。参考说法只用于对照;直接回答问题,简单题说清楚就收尾。项目题只用自己的经历和数字。

面试时怎么答

知识蒸馏不能只说成“Teacher 教 Student”。回答要包含软标签保留了哪些类间关系、温度如何改变分布,以及蒸馏损失为何常乘 \(T^2\) 再与硬标签损失加权。最后补上 Teacher 偏差会传递、Student 容量可能不够,面试官便能继续追问温度和权重怎么调。

可以这样答:

知识蒸馏让 Student 同时学习真实标签和 Teacher 的软概率分布。温度 \(T\) 越高,logits 分布越平,低概率类别之间的相对关系越明显;训练时通常把软目标损失与硬标签损失加权,并用 \(T^2\) 补偿梯度尺度。Teacher 的偏差也会被继承,Student 容量过小则可能学不下这些“暗知识”。

核心回答

知识蒸馏让较小 Student 同时学习真实标签和 Teacher 的软分布。温度 \(T>1\) 会把 logits 分布变平,暴露非目标类别之间的相对关系;经典损失将硬标签交叉熵与 Teacher、Student 在温度下分布的 KL/交叉熵加权,并常乘 \(T^2\) 补偿梯度尺度。蒸馏迁移的是 Teacher 在给定数据上的行为,不保证复制其全部能力。

展开说明

除了输出 logits,可蒸馏中间表示、Attention、关系结构或生成序列。自回归模型有“Teacher 生成答案再做 SFT”的序列级蒸馏,也可对每个 Token 的完整分布做在线或离线蒸馏。Student 容量、蒸馏数据覆盖和分词器兼容性决定上限;Teacher 的偏差、幻觉和安全问题也可能一并迁移。

工程实践

先明确目标是降延迟、显存还是授权成本,再比较同尺寸直接训练基线。离线保存 top-k logits 可降低存储,但会丢失尾部分布;Teacher 与 Student 词表不同则需用文本序列或表示对齐。验收要覆盖任务质量、校准、安全、长尾样本以及真实硬件上的吞吐与延迟。

常见追问

  1. 为什么软标签比 one-hot 提供更多信息? 它展示 Teacher 对其他类别的相似度判断,例如“猫”比“汽车”更接近“狗”。
  2. 为什么经典蒸馏损失常乘 \(T^2\)? 温度增大会缩小关于 logits 的梯度,乘 \(T^2\) 用于大致保持软目标项的梯度量级。
  3. Student 能超过 Teacher 吗? 在特定评测上可能因正则化、数据或架构优势超过,但不能据此认为其整体知识已超过 Teacher。

一句话复习

蒸馏用温度软化的 Teacher 分布传递类别关系,再与真实标签联合训练;效果上限由 Student 容量和数据覆盖决定。

参考资料

无需账号 · 原地交流

评论与补充

评论会直接显示在这道题下面。可以写自己的答法、继续追问或指出错误,不需要 GitHub 账号,也不会跳转到 Issue;内容会公开,请勿填写个人隐私、公司机密或受保密约束的材料。

正在加载评论…