DNN训练的Hessian-Free优化与梯度下降

时间:2015-07-22 18:34:53

标签: neural-network mathematical-optimization deep-learning gradient-descent hessian-matrix

Hessian-Free(HF)优化技术如何与用于训练深度神经网络(DNN)的梯度下降技术(例如随机梯度下降(SGD),批量梯度下降,自适应梯度下降)进行比较?

在什么情况下应该选择HF技术而不是梯度下降技术?

2 个答案:

答案 0 :(得分:2)

简而言之,HFO是一种避免消失梯度问题的方法,这种问题来自于(天真地)在深网中使用反向传播。但是,深度学习是关于避免这个问题调整学习和/或体系结构,因此最终归结为每个特定网络模型(和策略,如预调整)和HFO之间的特定比较。最近有很多关于这个主题的研究,但还没有完全探索。在某些情况下,它表现得更好,有些则没有。 Afaik(可能很快就会过时)基于Elman的RNN(不是LSTM)受益最多。

Tl;博士:SGD仍然是goto方法,虽然有缺陷。直到有人找到更好的非SGD学习方式。 HFO是许多人的一个建议,但它还没有被发现是最先进的。

答案 1 :(得分:2)

我认为如果有人知道差异,那么知道何时何地使用每种方法都会有所帮助。我试图阐明这些概念。

Gradient Descent是一种一阶优化方法,并且一直如此 用于神经网络的训练,因为二阶方法,如 牛顿法在计算上是不可行的。但是,二阶方法比一阶方法显示出更好的收敛特性,因为它们还考虑了误差空间的曲率。

此外, 一阶方法需要对reduce参数进行大量调整,即 具体应用。他们也有被困在局部最佳状态的倾向 并表现出缓慢的收敛。

Newton's方法不可行的原因是计算 Hessian矩阵,耗时过长。为了克服这个问题," Hessian free"提出了一种可以使用牛顿方法而不直接计算Hessian矩阵的学习方法。

我不想了解更多细节,但据我所知,对于深度网络,强烈建议使用HF优化(HF方法也有很多改进)因为它需要更少的培训时间,或者使用SGD的动力。