机器学习的训练算法(优化方法)汇总——梯度下降法及其改进算法

Introduce

今天会说两个问题,第一,建议大脚多看看大牛的博客,可以涨姿势。。。例如:

1、侧重于语言编程和应用的廖雪峰

https://www.liaoxuefeng.com/

2、侧重于高大上算法和开源库介绍的莫烦

https://morvanzhou.github.io/

第二,加深对机器学习算法的理解。

个人理解:经典机器学习算法,例如SVM,逻辑回归,决策树,朴素贝叶斯,神经网络,adaboost等等,他们最本质的区别是分类思想(预测y的表达式)不同,有的是基于概率模型,有的是动态规划。表象的区别是最后的损失函数不同,有的是合页损失函数,有的是交叉熵损失函数,有的是平方损失函数,有的是指数损失函数。当然上述的损失函数是经验风险,对于结构风险需要加入正则化(L0,L1(Lasso),L2(Ridge))。而所谓的训练其实就是损失函数的优化过程,这里可以有不同的优化方法,这些方法并不是机器学习算法的一部分,这属于凸优化或者启发式优化算法。而不同的优化(训练、学习)算法效果也不同,突出的表现为

1、不同的优化算法适应于不同的场景(大规模数据、较深较复杂网络、稀疏数据、收敛速率高)等

2、不同优化算法可以解决特定问题:学习率固定不变、在极值点附近收敛缓慢、收敛波动较大等。

3、启发式优化算法可以用于寻找全局最优点,避免陷入局部最优点和鞍点,但收敛太慢。

今天总结梯度下降法及其改进算法

第一部分是以前的疑惑:在推导梯度性下降法时,推导出类似牛顿法,可行性有待验证。。。

本质就是:梯度下降法只说了下降的方向——最陡的方向,每一次下降多少并没具体给出。而牛顿法或者我的推导中给出了具体下降多少,只是牛顿法是变量,即当前的函数值,而我的算法是固定值。可以看看第二篇参考文章!


第二部分和第三部分是梯度下降法及其改进算法的简介:这里只说一下适应的场景,具体推导建议看论文或者书,博客讲的不乐观



第四部分是以线性回归为例,比较批量梯度下降和随机梯度下降的区别:代价函数的区别



第五部分、直观感受不同优化算法的寻优过程





参考文章:

1、深度学习优化算法汇总

2、机器学习中常见的几种最优化方法

3、梯度下降优化算法综述

  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值