机器学习中的步长和学习率有什么区别?

数据挖掘 Python 张量流
2022-02-23 17:51:55

我正在使用 TensorFlow 在 Python 中实现一些基本的 ML 代码。我想知道是否有人可以简要解释以下函数中步长和学习率的含义和区别。

我用来tf.train.GradientDescentOptimizer()设置参数学习率和linear_regressor.train()设置步数。我一直在tensorflow.org上查看这些函数的文档,但我仍然没有完全掌握这些参数的含义。

谢谢,如果我能提供更多信息,请告诉我。

(在我知道还有一个数据科学论坛之前,我在 Stack Overflow 上发布了这个,抱歉)

1个回答

两者的学习率η和步长Δw与梯度下降有关。在最简单的情况下,它们通过以下方式链接:

Δw=w(+1)-w()=-η(w)w

在哪里是时代和误差函数。

在那种简单的情况下,它们的区别仅在于-(w)w,这有时会导致使用一个术语而不是另一个术语。然而,在更一般的情况下(学习率取决于权重、学习率取决于时期、增加的动量或小批量学习),区别可能具有更大的重要性。

编辑:我回答了您问题的标题,在正文中您似乎指的是步数,即上述公式的迭代次数或时期数。