知识蒸馏中的“温度系数“调控策略:如何让小模型继承大模型智慧?

一、技术原理(数学公式+示意图)

1.1 核心数学公式

温度缩放(Temperature Scaling)
软目标概率计算:
[ q_i = \frac{\exp(z_i/T)}{\sum_j \exp(z_j/T)} ]
其中:

  • ( z_i ):类别i的logits输出
  • ( T ):温度系数(( T > 1 )时概率分布更平滑)

损失函数
[ \mathcal{L} = \alpha \cdot \mathcal{L}{KD}(q^T, p^T) + (1-\alpha) \cdot \mathcal{L}{CE}(y, p) ]

  • ( \mathcal{L}_{KD} ):KL散度损失(教师vs学生)
  • ( \mathcal{L}_{CE} ):交叉熵损失(学生vs真实标签)
  • ( \alpha ):蒸馏损失权重(通常0.5-0.9)

案例对比
在CIFAR-100分类任务中,当T=1时,教师模型对"狗"类别的概率为0.9,其他类别接近0;当T=5时,"狗"概率降为0.4,"猫"和"狼"分别提升到0.3和0.2,保留类别间关联性。


二、实现方法(PyTorch/TensorFlow代码片段)

2.1 PyTorch实现

# 教师模型推理(高温T=5)
teacher_logits = teacher_model(inputs)
soft_targets = torch.nn.functional.softmax(teacher_logits / T, dim=-1)

# 学生模型训练
student_logits = student_model(inputs)
loss_kd = nn.KLDivLoss(reduction='batchmean')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值