梯度下降法公式问题
来源:6-1 什么是梯度下降法
weixin_慕勒6286300
2022-02-26
接上个问题:https://coding.imooc.com/learn/questiondetail/r9mGB65qgVK6jaKR.html
-η为什么要乘以导数呢,像老师所说的,把-η拿掉不是一样可以吗?dθ每次以一个固定长度增减,直到dθ的导数为0就可以了
1回答
-
η 拿掉,理论上是可以的,整个梯度下降的逻辑过程依然是 ok 的。只不过有了 η,就多了一个调节步长的超参数,可以帮助我们更好地控制整个梯度下降的过程。比如:
如果发现梯度下降的过程过慢(尝试了 1w 次迭代,还没有收敛),那么我们就可以增大 η;
如果发现梯度下降的过程不稳定(比如在两个或者多个非最优解的地方跳动,甚至损失函数越来越大),那么可能是梯度下降的过程计算出的导数对应的步长大了,用一个较小的 η 则可以让其收敛;(很多同学在更真实的数据中遇到了这个问题,在这个课程的问答区你就能找到这样的提问,解决方式就是减小 η)
甚至一些改动的梯度下降法,这个 η 可以不断变化,比如随着迭代次数的增加逐渐变小,因为搜索前期可以步子大一些,而搜索后期越来越趋于收敛,则步子小一些,这样做可以帮助我们在速度和精度上做一个平衡;(这个例子课程后续你会看到)
所有的这些,都可以靠引入这养一个参数以后,靠调节这个参数完成。
===========
这就是工程和理论不一样的地方。
举一个或许不算恰当的例子。我们完全可以不给汽车设计油门,只要有前进档和倒挡就好了。前进档的时候前进,有上坡自动加点儿油,能把坡走上去;下坡的时候自动给点儿刹车,能安全平稳下坡,这是完全可以做到的。
那我们为什么还要设计一个油门?因为我们不满足于仅仅是车能“走起来”,能前进或者后退就可以。我们希望能够更多地控制车速,希望在有的路段快点儿走,在有的路段慢点儿走;有的天气快点儿走,有的天气慢点儿走;驾驶员在有些状态下车速能快点儿,有些状态下能慢点儿。我们靠油门控制“车速”这个参数,而不仅仅是让汽车能前进或者后退,才能让我们更好地使用汽车。
继续加油!:)
40
相似问题