0

有谁知道神经网络训练中反向传播和 Levenberg-Marquardt 之间的区别?有时我看到 LM 被认为是一种 BP 算法,有时我看到相反的情况。您的帮助将不胜感激。

谢谢你。

4

1 回答 1

0

这是两个完全不相关的概念。

Levenberg-Marquardt (LM) 是一种优化方法,而反向传播只是链式法则对导数的递归应用。

LM 直观的做法是这样的:当它远离局部最小值时,它会忽略损失的曲率并充当梯度下降。然而,随着它越来越接近局部最小值,它通过从梯度下降切换到类似高斯牛顿的方法,越来越关注曲率。

LM 方法需要梯度和 Hessian(因为它分别解决了 Hessian 和梯度的变体 (H+coeff*Identity)dx=-gH,g您可以通过反向传播获得梯度。对于 Hessian,它通常不那么简单,尽管在最小二乘中您可以近似它为2gg^T,这意味着在这种情况下,您也可以在初始反向传播结束时轻松获得它。

对于神经网络,LM 通常不是很有用,因为您无法构建如此巨大的 Hessian,即使您这样做了,它也缺乏有效反转它所需的稀疏结构。

于 2019-12-09T11:55:18.823 回答