采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
判断损失函数J(theta) = (theta - 2.5) ** 2 +1是否到达极值时,老师使用的方法是abs(J(theta) - J(last_theta)) < epsilon。为什么不使用dJ(theta) < epsilon来判断是否到达极值?
由于线性回归法的损失函数非常简单,所以我们可以使用导数为零的方式获得其极值点,也就是线性回归法有数学解。实际上,这个数学解就是在上一章介绍的正规解。你可以实验一下,取导数为零,最终得到的结果,和上一章介绍的正规方程解是一致的。
关键在于,梯度下降法是一种通用的寻找最小值的方法,并不是只有在线性回归法中才能使用的。对于后续学习的很多机器学习算法,其损失函数是没有数学解的,此时只能使用梯度下降法求解。因此,在这一章,我们的关键是学习梯度下降法,而不是仅仅把线性回归法解决了就可以了:)
继续加油!:)
登录后可查看更多问答,登录/注册
Python3+sklearn,兼顾原理、算法底层实现和框架使用。
2.5k 19
3.5k 17
3.0k 15
1.6k 15
1.5k 14