我正在学习用 Python 实现梯度下降算法,遇到了选择正确学习率的问题。
我了解到学习率通常选择为 1(Andrew Ng 的机器学习课程)。但是出于好奇的原因,我尝试了alpha = 1.1and alpha = 1.2。

我可以看到,在 的情况下alpha = 1.2,我们比其他学习率更快地达到了较低的成本(仅仅是因为曲线首先触及底部)。可以肯定地说这alpha = 1.2是最优惠的价格吗?
我插入了 theta 值,alpha = 1.2为了预测商品的价格,我实现的函数提供了与 Sklearn 相同的答案,但LinearRegression()迭代次数少于alpha = 1.0。
使用较低的阿尔法率会增加迭代次数。
那么,为什么学习率上限为 1?是强制的还是建议的?
我是否应该忘记选择学习率并让功能等功能LinearRegression()在未来自动处理它?
我是机器学习的新手,我想了解算法背后的推理,而不是盲目地调用函数并使用高级库来玩弄参数。
如果我理解错误的概念,请随时纠正我。