2.2.3机器学习—— 判定梯度下降是否收敛 + α学习率的选择
发布时间:2024年01月10日
2.2.3 判定梯度下降是否收敛 + α学习率的选择
2.1、 判定梯度下降是否收敛
有两种方法,如下图:

- 方法一:
- 如图,随着迭代次数的增加,J(W,b)损失函数不断下降
- 当 iterations = 300 之后,下降的就不太明显了 / 基本是一条直线了。 这时我们就说,==> “梯度下降已经收敛了”
- 方法二:
- 设置一个阈值 ε,这里我们让ε = 0.001 (自己设置的,但有的时候也掌握不好这个值是多少)。当J(w,b)下降值 < ε 时,我们就认为他已经收敛了
- 最后:还是推荐方法一
2.2 如何设置学习率 α
1、常见的情况:
- 情况一:说明 代码出现bug / α学习率选择太大了


- 情况三:这是一个正常的情况,但是当 迭代次数过多 也可能说明α学习率选择较小

- 情况四:学习率太大了/代码的问题,你把每次更新w 写成w = w +… 应该是减法

2、选择 α 学习率的方法:
- 首先选择从 0.0001 0.01 0.1 1 10 依次去尝试,当发现学习率α的值过大时(J(W,b)损失函数发生上弹)。
- 再进行从最后一次正常的α值(出现损失函数J(w,b)上弹之前的值),依次迭代乘3去尝试
- 最后选择一个比较好的值
**第一步:**首先选择从 0.0001 0.01 0.1 1 10 依次去尝试,当发现学习率α的值过大时(J(W,b)损失函数发生上弹)。

第二步:再进行从最后一次正常的α值(出现损失函数J(w,b)上弹之前的值),依次迭代乘3去尝试。 然后可以以此类推。最后收敛后,选择最合适的α值。

文章来源:https://blog.csdn.net/weixin_46228946/article/details/135450201
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!