采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
请问老师,这个“步长”乘以“导数”表示的是J的变化值吗?
导数d(J)/d(theta),描述的是theta产生单位变化的时候,相应的J的变化。在这里,我们主要关注这个导数的符号。这个导数的符号,表示的函数J增大的方向(导数为正,表示theta向正方向移动,J增大;导数为负,表示theta向负方向移动,J增大。)由于我们要找到J的最小值,所以我们的theta向-d(J)/d(theta)的方向移动。而移动的大小,由eta进行调节。
把这些逻辑合在一起,-eta*dJ/d(tehta),是我们的theta的改变量,这个改变量,在让J减小。
后续结合我们写的程序,可能会理解的更深刻。如果有必要,建议再看一遍这一章第一小节对于这个图示的介绍:)
加油!
非常感谢!
那这一章第2节中的代码 theta = theta - eta * gradient 这个式子不太理解。 为什么新的theta值等于前一个theta减J的变化值?
我对原答案进行了扩充:)
登录后可查看更多问答,登录/注册
Python3+sklearn,兼顾原理、算法底层实现和框架使用。
2.5k 19
3.5k 17
2.9k 15
1.6k 15
1.5k 14