Stanford机器学习---第一讲. Linear Regression with one variable

原文:http://blog.csdn.net/abcjennifer/article/details/7691571

 本栏目(Machine learning)包括单参数的线性回归、多参数的线性回归、Octave Tutorial、Logistic Regression、Regularization、神经网络、机器学习系统设计、SVM(Support Vector Machines 支持向量机)、聚类、降维、异常检测、大规模机器学习等章节。所有内容均来自Standford公开课machine learning中Andrew老师的讲解。(https://class.coursera.org/ml/class/index

 

第一章-------单参数线性回归 Linear Regression with one variable

 

 (一)、Cost Function

 1、线性回归是给出一系列点假设拟合直线为h(x)=theta0+theta1*x, 记Cost Function为J(theta0,theta1);之所以说单参数是因为只有一个变量x,即影响回归参数θ1和θ0的是一维变量,或者说输入变量只有一维属性。

 2、下面为简化模式,只有theta1没有theta0的情况,即拟合直线为h(x)=theta1*x。左图为给定theta1=1时的直线和代价;右图为不同theta1下的cost function J(theta1)

   

 

   3、当存在两个参数theta0和theta1时,cost function是一个三维函数,这种样子的图像叫bowl-shape function

 

4、将上图中的cost function在二维上用不同颜色的等高线映射为如下右图,在左图中画出给定一个(theta0,theta1)时的拟合直线.

 

 (二)、Gradient Descent

1、gradient descent是指梯度下降,为的是将cost funciton 描绘出之后,让参数沿着梯度下降的方向走,通过迭代不断减小J(theta0,theta1),直到最小值。

 2、每次沿着梯度下降的方向:

 3、参数迭代的计算公式:其中标出了梯度(蓝框内)和学习率(α):

 

  4、gradient即J在该点的切线斜率slope,tanβ。下图所示分别为slope(gradient)为正和负的情况:

 

   5、同时更新theta0和theta1,左边为正解:

 6、关于学习率:

                      α太小:学习很慢;                                               α太大:容易过学习

         所以如果陷入局部极小,则slope=0,不会向左右变换。

     

7、下图表明:无需逐渐减小α,就可以使下降幅度逐渐减小(因为梯度逐渐减小):

   8、代价函数求导:

 9、由此我们得到:

 

     其中x(i)表示输入数据x中的第i组数据。

 

posted @ 2017-04-25 21:33  kanghe  阅读(108)  评论(0)    收藏  举报