阶段五:学生模型评估与对齐

知识蒸馏的工程化流程走到”阶段五”,意味着你已经完成了蒸馏训练、拿到了一个学生模型权重。在把它交付上线或进入下一阶段的压缩(量化、剪枝)之前,必须先回答一个核心问题:这个学生到底”够不够好”?

“好”在蒸馏语境下从来不是单一指标。教师模型往往庞大而精确,学生模型被设计得更小、更快、更省电——评估的本质,是量化”为了效率牺牲了多少精度”,以及”效率收益是否值得这笔代价”。本文假设你已了解蒸馏的基本损失构成(软损失 + 硬损失的加权和,见 Hinton et al. 2015),并已完成至少一次蒸馏实验。

一、为什么评估不能只看准确率

在普通监督学习中,我们习惯用测试集准确率(或 F1、BLEU 等任务指标)一句话评价模型。但蒸馏的目标函数是多维的:

  • 保真度:学生相对教师,在目标任务上的性能保留了多少;
  • 效率:推理更省时、模型更小、能耗更低;
  • 对齐度:学生的输出分布与教师有多接近,尤其是”暗知识”(dark knowledge,即非目标类的相对概率结构,Hinton et al. 2015)是否被正确迁移。

只看准确率会掩盖风险。例如一个学生在测试集上只掉了 1 个点,但推理延迟反而比教师更高(因结构选择不当),那这次蒸馏就是失败的。因此评估必须分维度、成体系。近年来系统性综述(Mansourian et al. 2025)也强调,蒸馏评估应从精度、效率、对齐等多维度统一报告,与本节的框架一致。

二、四大核心指标

1. 精度指标

最直接的是在验证集/测试集上对比学生与教师的任务指标:准确率、F1、精确率/召回率等。建议同时报告绝对精度相对保留率

$$\text{保留率} = \frac{\text{学生精度}}{\text{教师精度}} \times 100%$$

作为已核验的参考基准,Sanh et al. 2019 的 DistilBERT 报告:体积减小约 40%、推理速度提升约 60%、保留约 97% 的 BERT 语言理解性能。这组数字是公开可引用的真实结果,可作为你评估自己学生时的对照标尺。

2. 速度指标

  • 延迟(Latency):单条样本端到端推理耗时(毫秒级),需区分 batch=1 与批处理场景;
  • 吞吐量(Throughput):单位时间处理样本数(如 tokens/s、samples/s);
  • 速度受硬件、批大小、序列长度影响,评估时需固定对比条件,最好覆盖典型与峰值负载。

3. 体积指标

  • 参数量(Parameters);
  • 模型文件大小(如 .bin / .safetensors 的磁盘占用);
  • 显存/内存常驻占用(运行时峰值)。

体积直接决定能否部署到端侧或嵌入受限环境,是蒸馏的核心收益来源。

4. 能耗与算力指标

  • FLOPs:前向推理的理论计算量;
  • 实际功耗(瓦特),在移动/嵌入式场景尤为关键;
  • 能耗常随 FLOPs 与访存下降而下降,但需实测,不可仅凭参数量推断(具体换算系数不在本事实库,待核实)。

三、与教师模型的对齐度

除了任务指标,蒸馏质量本身需要被度量——即学生有多”像”教师。常用两种口径:

分布对齐(软标签层面)

在温度 $T$ 下,比较学生与教师软化后的输出分布。可用 KL 散度:

$$\text{KL}(P_T^\tau ,|, P_S^\tau) = \sum_i P_{T,i}^\tau \log\frac{P_{T,i}^\tau}{P_{S,i}^\tau}, \quad P^\tau = \text{softmax}(z/T)$$

KL 越低,软标签层面的对齐越好。注意 Hinton et al. 2015 的蒸馏损失本身就是”软损失(温度 $T$ 下 KL/CE)与硬损失(普通 CE)的加权和”,评估时应分别观察两项,以定位学生是在”学分布”还是”学标签”上偏弱。

预测一致性

统计在学生与教师输出预测类别相同的样本比例。高一致性通常意味着学生继承了教师的决策边界;若一致性高但任务精度低,则可能是教师本身在该子集有误。

四、下游任务与泛化评估

学生最终要服务于业务,因此必须做下游评估:

  1. 同分布测试:在蒸馏所用验证/测试集上测精度;
  2. 跨分布/鲁棒性:在分布偏移、噪声、对抗样本上对比师生差距;
  3. 跨任务泛化:若蒸馏目标是通用表征(如 DistilBERT 这类任务无关蒸馏),需在不同下游任务上分别评测保留率;
  4. 错误模式对比:抽样分析学生相对教师新增的错误类型,判断是否有系统性退化。

五、评估流程清单

建议按以下顺序执行(可脚本化):

1. 固定推理环境(硬件、批大小、精度 dtype)。
2. 测教师基线:精度、延迟、吞吐、体积、FLOPs。
3. 测学生:同上四项 + 预测一致性 + 软标签 KL。
4. 计算相对保留率与加速比、压缩比。
5. 在下游/分布偏移集上复测。
6. 输出评估报告:是否所有阈值达标?哪些维度不达标?

六、常见误区

  • 只看平均精度:忽略尾部子集与长尾类别的退化;
  • 延迟不固定条件对比:教师用 FP16、学生用 INT8 测出的”加速比”不可信;
  • 用训练集当评估集:蒸馏常用无标签数据,需用独立测试集;
  • 忽视对齐度:任务精度达标但 KL 很高,说明学生靠”捷径”达标,泛化可能脆弱。

评估阶段不是流程的终点,而是决策点:达标则进入阶段六(量化/剪枝/部署),不达标则需回到蒸馏阶段调整温度、损失权重或学生容量。系统性、可复现的评估,是知识蒸馏从”实验”走向”工程”的关键一步。

延伸阅读 / 参考文献

  • Hinton, Vinyals, Dean (2015),《Distilling the Knowledge in a Neural Network》, arXiv:1503.02531 —— 软标签、温度 $T$ 与 dark knowledge、蒸馏损失构成。
  • Sanh et al. (2019),《DistilBERT, a distilled version of BERT》, arXiv:1910.01108 —— 体积减小 40%、推理快 60%、保留约 97% 性能的可引用基准。
  • Mansourian et al. (2025),《A Comprehensive Survey on Knowledge Distillation》, arXiv:2503.12067 —— 蒸馏评估维度的系统性综述。
本文累计阅读