rocket网络

论文《Rocket Launching: A Universal and Efficient Framework for Training Well-performing Light Net》
最近在做广告的点击率模型优化,在某些低质流量上需要优化网络结构,节省性能,参考了这篇文章的一些思想。大致总结了下这篇文章。

关键词是联合训练来优化线上性能。light网络和booster网络联合训练,booster网络作用是指引light网络训练,最终线上作用的是light网络
rocket 网络结构

loss function

设计了一个loss function。第一项是交叉熵函,第二项是logits 的平方差(hint loss)
rocke网络的loss function

联合训练

大多数方法是teacher网络训练好之后,再固定给student网络训练,是串行的,分开训练的。
rocket网络联合训练

对于第二项hint loss,论文考虑了三种设计:
hint loss的三种形式

第一种loss function对l(x)求导:
对应mse的导数

缺点:与p(x)正相关,p(x)=0时,会梯度消失

第二种loss导数是:
对应SNN-MIMIC的导数

(实验证明,此效果最好)

第三种loss导数是:
对应knowledge distillation的导数

也存在梯度消失问题。但各种人证明了这个效果最好。hinton建议选一个中间的temprature值,非常负的logits是噪声。论文认为,非常负的logits含有有用信息可以帮助light网络更好地学习

梯度block

论文让boost网络只训练交叉熵,即指考虑与target 误差
rocket网络梯度更新方式

而light网络训练交叉熵加上hint loss

实验效果

最好的仍然是booster网络单独训练,rocket架构的设计主要通过辅助训练节省线上预测的性能

你可能感兴趣的:(rocket网络)