【发布时间】: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