梯度下降算法&线性回归算法


**机器学习的过程说白了就是让我们编写一个函数使得costfunction最小,并且此时的参数值就是最佳参数值。

定义
假设存在一个代价函数
fun:\(J\left(\theta_{0}, \theta_{1}\right)\)
通过不断地调整\(\theta_{0}\)\(\theta_{1}\)是函数\(J\left(\theta_{0}, \theta_{1}\right)\)取得最小值

梯度下降就是使J不断通过导数下降的一种算法
\(\theta_{j}:=\theta_{j}-\alpha \frac{\partial}{\partial \theta_{j}} J\left(\theta_{0}, \theta_{1}\right)\)
\(a\)是学习率,也就是梯度下降的效率

  • 如果学习效率过小,则导致J下降太慢,
  • 如果学习效率太大,会导致到不了J最小值,会直接越过最小值,这时候代价函数反而变大了
  • 因此适度最好。参考

线性回归梯度下降

给出梯度下降的参数更新公式,\(\theta_0\)\(\theta_1\)要同时更新

线性回归算法

说白了就是将梯度下降算法应用到代价函数中,求使代价函数最小的\(\theta_0\)\(\theta_1\),这个就是多元微积分里面的求偏导数,因为是两个未知数,同时求两个未知数

假设函数和代价函数的关系

晚点我更新一下代码!


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2026 CODEPRJ.COM