知识蒸馏学习笔记

Softmax函数

原始的softmax函数:

加了温度这个变量之后的softmax函数:

  • 这里的T就是温度

  • 原来的softmax函数是T = 1的特例。 T越高,softmax的output probability distribution越趋于平滑,其分布的熵越大,负标签携带的信息会被相对地放大,模型训练将更加关注负标签。

知识蒸馏的具体方法:

步骤是先训练教师网络,然后将教师网络的soft target高温蒸馏给学生网络。

高温蒸馏过程的目标函数由distill loss(对应soft target)和student loss(对应hard target)加权得到。示意图如上。

损失函数的第一项是教师网络产生的logits经过高温T的softmax输出来作为soft target,学生网络在相同高温T下的softmax输出,这两者做cross entropy loss;

第二项是当温度参数为1时,学生网络的softmax输出和hard label这两者之间做cross entropy loss。

实验发现损失函数的第二部分所占比重比较小的时候,能产生较好的结果

参考:

【经典简读】知识蒸馏(Knowledge Distillation) 经典之作 - 知乎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值