在上一篇文章中,首次出现了学习率这个词,在这篇文章中我会详细介绍一下它是什么,到底对机器学习的训练有着怎样的影响。
一、学习率是什么?
先来复习一下梯度下降算法,在每次迭代过程中,算法计算目标函数关于当前参数值的梯度(即函数在该点的斜率或方向导数向量),然后沿着梯度的反方向移动一定的步长。更新规则可以表示为:
其中:
- θ 表示模型参数。
- η是学习率,决定了每一步沿梯度方向调整参数的幅度。
- ∇f(θ) 是目标函数 f 关于参数 θ 的梯度。
学习率就是这里所说的步长,它是一个超参数,用于控制我们在梯度下降过程中每步的跳跃大小。也就是在每次梯度下降更新参数(如线性回归的权重和偏置)的时候,学习率决定了我们沿着负梯度方向走的步长。直观理解,就像你在山上往下走,而你的目标是走到山谷(函数最小值),每一步你到底能走多远,就是由学习率决定的。