FTRL(Follow-the-regularized-Leader)在线学习

Online Learning定义

传统的批量算法的每次迭代是对全体训练数据集进行计算(例如计算全局梯度),优点是精度和收敛还可以,缺点是无法有效处理大数据集(此时全局梯度计算代价太大),且没法应用于数据流做在线学习。而在线学习算法的特点是:每来一个训练样本,就用该样本产生的loss和梯度对模型迭代一次,一个一个数据地进行训练,因此可以处理大数据量训练和在线训练。准确地说,Online Learning并不是一种模型,而是一种模型的训练方法,Online Learning能够根据线上反馈数据,实时快速地进行模型调整,使得模型及时反映线上的变化,提高线上预测的准确率。Online Learning的流程包括:将模型的预测结果展现给用户,然后收集用户的反馈数据,再用来训练模型,形成闭环的系统。

Online Learning问题

  • 难以得到稀疏解
  • 稀疏解的意义:
    • 特征选择,抛弃无用的特征
    • 避免过拟合
    • 节省存储空间和计算资源,工业界的模型特征在亿级别到百亿级

为什么Batch Training能得到稀疏解,Online Learning不行

简单来说,Batch Training沿着全局梯度方向进行下降,Online Learning每次沿着某个样本的梯度方向进行下降,即使采用L1正则化的方式,也很难产生稀疏解。(关于L1正则化为什么可以得到稀疏解可以参考l1 相比于 l2 为什么容易获得稀疏解? - 知乎

Online Learning优化目标

直观理解二者的区别,Loss是在一次batch计算完,得到了新的Wn,然后计算loss,追求loss最小。而Regret是每t个样本来,更新w后得到Wt,追求累计regret最小,有点贪心的思想。

 

经典的Online Learning的方法

  • SGD:学习率恒定的梯度下降法
  • OGD:学习率随着步长变化的(变小)梯度下降法
  • 简单截断法:对参数进行截断的SGD(每训练k轮,进行一次截断,截断小于阈值θ的参数。优点简单粗暴,可以得到稀疏解;缺点会丢失比较稀疏的重要特征,实践中存在精度差)
  • TG :对参数进行截断的SGD(每训练k轮,进行一次计算,“截断”小于阈值θ的参数。截断方式更加平滑;可以得到稀疏解,实践中精确度效果较差)
  • FOBOS: TG截断法的延伸。基于SGD,把权重的更新分为两步,第一步是不带正则的梯度下降,第二步是加上正则后的微调
     

FTRL(Follow-the-regularized-Leader)

其他内容后续补充

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值