梯度下降存在局部极小值问题。我们需要运行梯度下降指数次来找到全局最小值。
谁能告诉我梯度下降的任何替代方案及其优缺点。
Thanks.
See 我的硕士论文 https://arxiv.org/pdf/1707.09725.pdf#page=96对于非常相似的列表:
神经网络的优化算法
- Gradient based
- Flavours of gradient descent (only first order gradient):
- Stochastic gradient descent:
- Mini-Batch gradient descent:
- Learning Rate Scheduling:
- Momentum:
-
RProp https://en.wikipedia.org/wiki/Rprop和小批量版本 RMSProp
- AdaGrad https://en.wikipedia.org/wiki/Stochastic_gradient_descent#AdaGrad
- 阿达德尔塔 (paper http://arxiv.org/pdf/1212.5701v1.pdf)
- 指数衰减学习率
- 绩效调度
- 新手调度
- 快速推进 https://en.wikipedia.org/wiki/Quickprop
- 内斯特罗夫加速梯度 (NAG):解释 http://cs231n.github.io/neural-networks-3/#sgd
- Higher order gradients
-
牛顿法 https://en.wikipedia.org/wiki/Newton%27s_method: 通常不可能 https://stats.stackexchange.com/a/253636/25741
- Quasi-Newton method
- Unsure how it works
- Adam (Adaptive Moment Estimation)
- 共轭梯度
- Alternatives
- 遗传算法
- 模拟退火
- Twiddle https://martin-thoma.com/twiddle/
- 马尔可夫随机场(graphcut/mincut)
- The 单纯形算法用于运筹学环境中的线性优化,但显然也用于神经网络(source https://visualstudiomagazine.com/articles/2014/10/01/simplex-optimization.aspx)
您可能还想看看我的文章优化基础知识 https://martin-thoma.com/optimization-basics以及 Alec Radfords 的精美动图:1 https://i.stack.imgur.com/iZOUf.jpg and 2 https://i.stack.imgur.com/D25Fj.jpg, e.g.
其他有趣的资源有:
- 梯度下降优化算法概述 http://sebastianruder.com/optimizing-gradient-descent/
权衡
我认为所有发布的优化算法都有一些具有优势的场景。一般权衡是:
- 您一步获得了多少进步?
- 你能多快计算一步?
- 该算法可以处理多少数据?
- 是否保证找到局部最小值?
- 优化算法对你的函数有什么要求? (例如一次、两次或三次可微)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)