跳转至

EA-KD: Entropy-based Adaptive Knowledge Distillation

会议: ICCV 2025
arXiv: 2311.13621
代码: https://github.com/cpsu00/EA-KD
领域: 模型压缩
关键词: 知识蒸馏, 熵, 自适应权重, 即插即用, 样本重要性

一句话总结

提出 EA-KD,一种基于信息熵的即插即用知识蒸馏方法:通过结合 teacher 和 student 输出的熵值动态重加权蒸馏损失,优先学习高熵(高信息量)样本,在图像分类、目标检测和 LLM 蒸馏任务上均一致提升多种 KD 框架的性能,且计算开销可忽略。

研究背景与动机

领域现状:知识蒸馏(KD)通过让小模型(student)模仿大模型(teacher)来实现模型压缩。主流方法分为 logit-based(对齐软化概率分布)和 feature-based(对齐中间层特征)。近年涌现了 DKD、MLD、CTKD 等改进方法。

现有痛点: - 统一蒸馏的弊端:绝大多数 KD 方法对所有样本一视同仁,忽略了不同样本的学习价值差异。直觉上,这就像老师对所有学生讲同样深度的内容,而非重点讲解关键知识点。 - KLD 的内在偏见:标准 KLD 损失对低熵(简单/置信度高)样本天然赋予更大的损失值(当 student 初始为均匀分布时,低熵 teacher 输出的 KLD ≈ log(C),而高熵输出的 KLD ≈ 0),导致训练被简单样本主导,遮蔽了高价值样本的知识迁移。 - 高熵样本的价值:实验表明高熵样本在 t-SNE 可视化中位于类别决策边界附近,且 teacher-student 准确率差距更大——恰恰是这些困难样本携带了对学习最关键的知识。

核心矛盾:蒸馏过程本应重点关注困难/信息丰富的样本,但当前损失函数的数学特性恰恰导致了相反的倾向。

切入角度:利用信息论中的熵作为样本学习价值的度量,同时结合 teacher(稳定评估)和 student(动态演化)两个视角,动态调整每个样本的蒸馏权重。

核心idea:基于 teacher+student 熵的自适应重加权因子 \(w_{\text{EA}}\),即插即用地增强任意 KD 框架。

方法详解

整体框架

EA-KD 不改变任何 KD 方法的架构或损失函数形式,仅在损失计算时对每个样本乘以一个基于熵的权重因子 \(w_{\text{EA},n}\)。任意 KD 框架(logit-based 或 feature-based)均可直接集成:\(L_{\text{EA-KD}} = \sum_{n} w_{\text{EA},n} \cdot L_{\text{KD},n}\)

关键设计

  1. 基于熵的样本价值量化

    • 功能:用熵量化每个样本的学习价值
    • 核心思路:对 teacher 和 student 输出分别计算温度软化熵 \(H_n = -\sum_{i=1}^C p_{n,i}(T') \log(p_{n,i}(T'))\),其中 \(T'\) 是专门用于熵计算的温度参数(不同于 KD 本身的温度 \(T\),最优值 \(T'=3\)
    • 设计动机:高熵意味着高不确定性/高信息量,对应类别边界附近的困难样本;\(T'\) 的引入让熵能更平滑地反映不同样本的价值梯度
  2. 双视角重加权因子 \(w_{\text{EA}}\)

    • 功能:融合 teacher 的稳定评估和 student 的动态需求
    • 核心思路:
      • 基础项 \(w_{\text{base},n} = H_n^{\mathcal{T}}\):teacher 对样本价值的评估
      • 交互项 \(w_{\text{interact},n} = \frac{H_n^{\mathcal{T}} \cdot H_n^{\mathcal{S}}}{H_{\text{ub}}}\):teacher-student 熵的归一化乘积
      • 最终权重 \(w_{\text{EA},n} = \frac{w_{\text{base}} + w_{\text{interact}}}{2}\),可改写为 \(\frac{1}{2}H_n^{\mathcal{T}}(1 + \frac{H_n^{\mathcal{S}}}{H_{\text{ub}}})\)
    • 设计动机:
      • 仅用 \(H^{\mathcal{T}}\) 权重在整个训练过程中固定不变,无法捕捉 student 的学习进展(实验表明同批高 \(H^{\mathcal{T}}\) 样本的 \(H^{\mathcal{S}}\) 随 epoch 增加方差增大)
      • 交互项让 student 已掌握的样本(低 \(H^{\mathcal{S}}\))的权重适度降低,仍在学习中的样本保持高权重
      • \(H^{\mathcal{T}}\) 低(teacher 认为简单)时,无论 student 状态如何,权重都低
  3. 与现有 KD 框架的集成

    • 功能:作为即插即用模块集成到任意 KD 方法
    • 核心思路:直接将原始蒸馏损失 \(L_{\text{KD},n}\) 乘以 \(w_{\text{EA},n}\) 即可。对 MLD+LS 等框架需适度降低 KD 权重以避免过度惩罚
    • 设计动机:与 DKD 等方法的协同效应——DKD 在类级别防止 NCKD 被 TCKD 遮蔽,EA-KD 在样本级别防止高价值样本被简单样本遮蔽,两者互补

损失函数 / 训练策略

  • 不引入额外超参,仅继承原始 KD 框架的训练设置
  • 熵温度 \(T' = 3\)(CIFAR-100/Tiny-ImageNet),\(T' = 2\)(ImageNet/transformer teacher)
  • 权重范围 \(w_{\text{EA}} \in [0, H_{\text{ub}}]\),其中 \(H_{\text{ub}} = \log C\)

实验关键数据

主实验

CIFAR-100(7 组 teacher-student 对,7 种 KD 方法)

方法 平均提升 Δ
EA-KD (vs KD) +1.48%
EA-CTKD (vs CTKD) +0.63%
EA-DKD (vs DKD) +0.47%
EA-MLD (vs MLD) +0.38%
EA-ReviewKD (vs ReviewKD) +0.38%
EA-FCFD (vs FCFD) +0.42%

所有 EA 变体均一致提升对应 baseline,平均提升 +0.56%。

跨数据集/任务

任务 数据集 Baseline EA 变体 提升
图像分类 Tiny-ImageNet 56.00 (KD) 59.39 (EA-KD) +3.39%
图像分类 ImageNet 71.03 (KD) 71.79 (EA-KD) +0.76%
目标检测 MS-COCO (R101→R18) 33.97 AP (KD) 34.78 AP (EA-KD) +0.81 AP
目标检测 MS-COCO (R50→MV2) 30.13 AP (KD) 31.81 AP (EA-KD) +1.68 AP
LLM 蒸馏 5 datasets avg. 17.63 (KD) 18.34 (EA-KD) +0.71

消融实验

重加权因子对比(ResNet32×4 → ResNet8×4, CIFAR-100):

权重 KD MLD MLD+LS FCFD
无 (baseline) 73.33 77.08 78.28 76.62
\(w_{\text{base}}\) (\(H^{\mathcal{T}}\) only) 75.14 77.47 78.30 77.50
\(w_{\text{interact}}\) (\(H^{\mathcal{T}} \cdot H^{\mathcal{S}}\)) 74.76 77.45 78.20 77.42
\(w_{\text{EA}}\) 75.46 77.65 78.38 77.44
  • \(w_{\text{base}}\)\(w_{\text{interact}}\) 各自有效,\(w_{\text{EA}}\) 组合后在几乎所有框架上最优
  • 反向加权(高熵低权重)导致性能显著下降(73.33 → 72.73),验证了核心假设
  • EA-DKD vs DKD:Loss landscape 更平滑,β 超参敏感度方差从 0.31 降至 0.10
  • 训练时间增加可忽略(图 1 数据)

个人思考

  • 亮点:极简且通用的即插即用方法,理论分析清晰(KLD 对低熵样本的内在偏见),跨任务/跨框架的一致性令人印象深刻
  • 局限:在已经很强的 baseline 上提升幅度较小(+0.16% ~ +0.38%);LLM 蒸馏场景下序列级重加权的合理性需进一步验证
  • 启发:信息熵作为样本重要性度量的思路简洁有效,可以推广到其他样本加权场景(如主动学习、课程学习)

亮点与洞察

局限与展望

相关工作与启发

评分

  • 新颖性: 待评
  • 实验充分度: 待评
  • 写作质量: 待评
  • 价值: 待评

相关论文