打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
最优化算法中,牛顿法和梯度下降法有什么区别?

GD 和Newton法其实都属于导数下降方法。区别是GD以一阶导数方向作为下降方向,牛顿法作优化问题时可以看做二阶方法,牛顿法比GD有更快的下降速度,证明可以参考斯坦福大学Boyd大神的凸优化。导数方法最大优点是简洁高效,缺点是遇到鞍点就玩完了。这就是为什么目前训练深度学习网络结构需要drop out避免过拟合。非凸问题比较难,目前可以参考进化算法比如GA PSO DE。或者利用Wotao Yin大神的Nonconvex ADMM,原理是针对不同的变量构造不同导数方向根据Augment Lagrange 函数实现。

最后说点理论,因为根据范数等价原理,GD在其二阶导数有界条件下,调节步长可以等效为Banach空间的压缩算子,又因为有限范数线性组合是凸问题,所以利用压缩映像原理,一定收敛于全局最优即不动点。当然,牛顿法有类似结论。对于深度学习中的drop out,是为了防止其梯度陷入局部最优值,如果在有限维的Banach空间讨论,可以看做有界连续算子,利用闭图像原理证明。其他情形,可以经过简化抽象为紧算子,利用列紧的ε网证明即可。还有,GD 和Newton在有限迭代情况下,其收敛点集合可以看做Fσ型集合,一定条件下也可以看做σ代数。顺便说下,GD 和Newton方法都可以看做一类算子的强收敛,弱于算子的一致收敛。

最后补充一点,最近刚刚实现了并行的Nonconvex ADMM用的 Proximal Proximal GD求稀疏解,CUDA 8.0实现的并行化,nvcc compiler 和 CMake file头都大了…

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
R语言梯度下降和牛顿法
大规模优化算法
训练神经网络的五大算法
最优化算法之牛顿法、高斯-牛顿法、LM算法
机器学习中的最优化算法总结
从梯度下降到拟牛顿法:详解训练神经网络的五大学习算法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服