关于在线机器学习ftrl_proximal_lr的二三件事

原创 2017年09月19日 11:04:42

题记:一直以为ftrl_proximal_lr模型是为了解决参数在内存中的使用问题。跟大神请教后,ta说:ftrl_proximal 为了解决online中模型稀疏性的问题。

前世今生

直接贴图:

从上面图可以看出来,这个模型的变异点就是梯度优化模块(即所谓的目标函数)。感觉ftrl_proximal_lr是集大家所成的,ftrl_proximal_lr是既能提高OGD准确率也能提供比RDA更好的稀疏性。那我们来分解一下最后的一个等式:第一项是梯度更新,第二项是L1正则项处理(产生稀疏解),第三项累积加和限定了新的迭代结果x不要离已迭代过的解太远(也即FTRL-Proximal中proximal的含义),保证泛化精度。这一项其实也是low regret的需求。所谓的low regret是Online learning中每次学习的误差减去使用用当前为止的最优函数而产生的误差的平均值。
这里写图片描述
上图更好的解释ftrl_proximal_lr的进化过程。

伪代码

这里写图片描述

先贴个图,虽然还没实现,但我在努力看大神的代码和框架,整理好,继续补充进来。
四个参数的设定结合paper里的指导意见以及反复实验测试,找一组适合自己问题的参数就可以了。所谓的per-coordinate,其意思是FTRL是对w每一维分开训练更新的,每一维使用的是不同的学习速率,也是上面代码中lamda2之前的那一项。与w所有特征维度使用统一的学习速率相比,这种方法考虑了训练样本本身在不同特征上分布的不均匀性,如果包含w某一个维度特征的训练样本很少,每一个样本都很珍贵,那么该特征维度对应的训练速率可以独自保持比较大的值,每来一个包含该特征的样本,就可以在该样本的梯度上前进一大步,而不需要与其他特征维度的前进步调强行保持一致。

参考资料如下
http://www.cnblogs.com/EE-NovRain/p/3810737.html
http://www.datakit.cn/blog/2016/05/11/ftrl.html#自动特征管理

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

在线学习算法FTRL

在线学习算法FTRL         优化算法中的LBFGS解法以及GD等解法,是对一批样本进行一次求解,得到一个全局最优解。     实际的互联网广告应用需要的是快速地进行model的更新。...
  • mytestmy
  • mytestmy
  • 2014年02月08日 11:01
  • 34709

点击率预测算法:FTRL

1逻辑回归 1 sigmoid函数 2 极大似然估计MLE与损失函数 3 梯度下降 4 另一种形式的损失函数及其梯度 2FOBOS与RDA 1 FOBOS基本原理 2 L1-FOBOS 3 RDA基本...

【算法】在线学习算法FTRL详解

原文链接:http://www.cnblogs.com/EE-NovRain/p/3810737.html   现在做在线学习和CTR常常会用到逻辑回归( Logistic Regression),...

ftrl算法

http://blog.csdn.net/luoyexuge?viewmode=list    牛逼的博客学习 http://www.cnblogs.com/luctw/p/4757943....

基于FTRL的在线CTR预测算法

本文主要讲解基于FTRL的在线CTR预测算法的主要思想以及Java实现

java、scala实现FTRL模型(数据以及工程实现)

最近同事分享了一个最优化的相关的文档,其中涉及FTRL模型,下面主要说说FTRL模型的实现,其本质还是逻辑回归模型,但是在进行求解进行了改变, 理论主要参考:在线最优化求解(Online Optimi...

Ftrl算法和FFM算法 广告点击率预测

http://blog.csdn.net/jediael_lu/article/details/77772542      FTRL算法详解 http://blog.csdn.net/jed...

机器学习(五)--- FTRL一路走来,从LR -> SGD -> TG -> FOBOS -> RDA -> FTRL

在线学习算法FTRL

FTRL算法

先占坑,http://www.wbrecom.com/?p=412 这篇写的不错,思路写的清晰 在上一篇博文中中我们从原理上定性比较了L1-FOBOS和L1-RDA在稀疏性上的表现。...

线性代数的本质-20160614总结

线性代数的本质
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于在线机器学习ftrl_proximal_lr的二三件事
举报原因:
原因补充:

(最多只允许输入30个字)