梯度下降与牛顿梯度下降的区别是什么?

我了解梯度下降的作用。基本原理是通过沿着曲线缓慢移动来接近局部最优解。我现在试图理解普通梯度下降和牛顿方法之间的实际区别是什么?

我在维基百科上读到这样一句话:“牛顿方法利用曲率信息来选择更直接的路径。”这句话直观上意味着什么?


回答:

在局部最小值(或最大值)点x处,目标函数f的导数为零:f'(x) = 0(假设f具有足够的光滑性)。

梯度下降通过利用f的一阶导数信息来寻找这样的最小值x:它简单地从当前点沿着最陡的下降方向前进。这就像让一个球沿着f的图形滚动,直到它停下来(忽略惯性)。

牛顿方法通过用线性函数g来近似f',然后明确地求解该函数的根,来寻找满足f'(x) = 0的点x(这被称为牛顿求根法)。g的根不一定是f'的根,但在许多情况下是一个不错的猜测(关于收敛标准的更多信息,请参见牛顿求根方法的维基百科文章)。在近似f'时,牛顿方法使用了f''f的曲率)。这意味着它对f的光滑性有更高的要求,但也意味着(通过使用更多信息)它通常收敛得更快。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注