【问题标题】:Is Levenberg–Marquardt a type of Backpropagation algorithm?Levenberg-Marquardt 是一种反向传播算法吗?
【发布时间】:2016-12-21 08:31:28
【问题描述】:

Levenberg-Marquardt 是一种反向传播算法还是另一种算法?

维基百科说它是一种曲线拟合算法。曲线拟合算法与神经网络有何关系?

【问题讨论】:

  • 这是一个简短而广泛的问题。或许可以稍微改进一下。我认为它们是非常不同类型的算法,LM 是一种通用的非线性最小二乘优化方法,反向传播是一种计算损失函数关于某些参数的梯度的方法(它仍然需要优化算法)。我不知道你这两者之间的联系是从哪里来的。
  • @sascha,他们在这里连接...mathworks.com/help/nnet/ref/trainlm.html
  • 好吧,有人使用 LM 作为优化器与反向传播相结合。仍然是两种截然不同的算法,这种训练绝对不是黄金标准! (虽然有小场景等例外情况,但大多数现实世界的 NN 训练都是通过 SGD = 一阶方法完成的!如果需要二阶方法,LBFGS 比 LM 更受欢迎)
  • @sascha,这不是 'somebody' 使用的。这是一个 MATLAB 库函数。
  • 当然。我可能在这里夸大了,但深度学习中的所有高质量论文都是基于 Caffe、Tensorflow、Theano 和 Torch。没有人将 Matlab 用于现实世界的东西(也许用于原型)。并且所有这些库(还有一些正在获得动力;一些基于这些库)仅支持基于 SGD 的算法(例外:torch 中的 LBFGS)。是的。这些是概括性的,您应该持保留态度。我只是说这是一个警告,当它对你的任务没有帮助时(如果有的话),不要花太多时间来理解 LM+backprop。如果是理论,请继续。

标签: neural-network backpropagation


【解决方案1】:

反向传播是计算每个权重的局部误差梯度的想法。这个思想有多种实现方式,标准的反向传播算法其实就是梯度下降,LM在雅可比的计算中使用了反向传播的思想。

LM 比反向传播梯度下降收敛得更快。事实上,还有其他准牛顿算法也使用反向传播来计算他们的雅可比和黑森矩阵,甚至卡尔曼滤波器也可以使用它。

【讨论】:

    【解决方案2】:

    在神经网络方面,梯度下降称为反向传播。梯度下降是一种找到一组参数以最小化函数的方法。如果该函数是均方误差,则它是回归,因此是曲线拟合问题。这是因为人们想要找到一组参数,以最小化函数输出和一些训练数据之间的平方差。

    将训练数据想象成空间中的一些点,您想学习一个函数来最小化这些点之间的平方差。从Least-Squares 的德语维基百科页面,您将看到图形说明。蓝点是你的训练数据,红色曲线是你要学习的函数。

    神经网络通常是一个函数逼近器。 Universal Approximation Theorem 表示具有一个隐藏层和有限数量的神经元的前馈网络能够逼近任何连续函数。您可以将神经网络视为任何连续函数的模板,您只需找到一组权重来逼近给定目标的函数。在这种情况下,目标是最小化一些数据点和函数之间的平方差。这种情况下的目标可以描述为以下等式:

    这里,f(x_i, beta) 是神经网络,beta 是参数集,y_i 是数据点。 argmin beta 的意思是,我们想要找到一组最小化目标函数输出的参数。实际上,所有数据点的网络预期输出f(x_i, beta)y_i 之间误差最小的集合。

    那么,如何实现目标呢?通常,它是通过反向传播或梯度下降来更精确地完成的。计算公式如下:

    在这里,我们在n+1 时更新一个参数beta,其值为前一个时间步n 减去学习率gamma 乘以f(x, beta) 的梯度。之所以称为反向传播,是因为在神经网络中,参数是相互依赖的。

    Levenberg-Marquard 算法 (LVM) 是梯度下降算法和 Gauss-Newton-Method 的组合,带有稍微复杂的矩阵表示法:

    这里,J 是雅可比矩阵,I 是单位矩阵,lambda 是倾销因子。当lambda较小时,算法类似于Gauss-Newton-Method,lambda较大时,类似于梯度下降。

    因此,您可以将其视为解决最小二乘问题的另一种算法,该算法也可用于神经网络。鲁梅尔哈特等人。通过在他们的原始论文Learning representations by back-propagating errors 中使用梯度下降法来使用术语“反向传播”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-12
      • 2010-11-11
      • 1970-01-01
      • 2016-10-16
      相关资源
      最近更新 更多