赞
踩
该文是GoogleFTRL在点击率模型上的应用,从技术实现的角度介绍了在线学习算法FTRL的工程实现,并且给出一些内存优化、特征选择等工程细节。从此FTRL算法才大规模推广使用。
该笔记主要介绍一下几类在线学习算法的思路以及FTRL实现细节以及工程上技巧。
点击率预估问题(CTR)是计算广告中非常重要的模块,预估一个用户对广告的点击概率,从而提升广告效果。
LR模型时CTR问题中最经典的模型,而LR模型训练也是无约束最优化问题中经典案例。因此问题最终归约为如何有效优化LR模型;同时还需要考虑模型稀疏性,模型稀疏性可能会和训练数据不足、模型复杂度过高相关,也是控制过拟合的有效手段。
LR模型需要解决问题是
求解该类问题最经典的算法是GD(梯度下降法也称最速下降法),即沿着梯度方法逐渐优化模型参数。
梯度下降法能够保证精度,要想预防过拟合问题一般会加上正则项,L1或者L2正则。
L1相对于L2正则能够产生更稀疏的参数(为什么?)
相比于批量GD算法,OGD能够利用实时产生的正负样本,一定程度上能够优化模型效果。
在线优化算法需要特殊关注模型鲁棒性和稀疏性,由于样本是一个一个到来,默写参数可能因为训练样本不足导致过拟合等。因此OGD会着重处理模型稀疏性。
对于L1正则,模型权重更新方式为
相对于L1正则属于比较暴力的解决方案,直接将不满足阈值的系数设置为0.
以k为窗口,如果t/k不为整数时采用标准的SGD进行优化,否则采用如下方法
简单截断法比较暴力,不够优雅,因此提出改进思路。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。