机器学习(一)线性回归学习

部分图片来自Standford公开课machine learning中Andrew老师的讲解。(https://class.coursera.org/ml/class/index


第一章——-线性回归 Linear Regression


(一)、Cost Function

线性回归是给出一系列点假设拟合直线为h(x)=theta0+theta1*x, 记Cost Function为J(theta0,theta1)

之所以说单参数是因为只有一个变量x,即影响回归参数θ1,θ0的是一维变量,或者说输入变量只有一维属性。

首先要熟悉下最小二乘法,也叫做最小平方法。,“最小”指的是参数的估计值要保证各个观测点与估计点的距离的平方和达到最小。说法一,就是按理说为预测值和样本值的绝对值之差,因为绝对值后面不好算,所以算平方。二是也可以算是欧氏距离(后面很多会用到欧式距离),那么后面从极大似然概率角度分析


在直线的 y = ax + b中,通过给定的几个点(x1, y1), (x2, y2), (x3, y3)然后求出参数 (a, b), 根据给出的点列出方程组,然后令: 
S(a,b)(y1(ax1+b))2+(y2(ax2+b))2+(y3(ax3+b))2S(a,b)=(y1−(ax1+b))2+(y2−(ax2+b))2+(y3−(ax3+b))2 

然后使 S(a,b) 最小化, 对a 和 b 分别求偏导,令其等于0, 求得a 和 b 的估计值。

为什么loss函数是最小二乘法呢,从概率方面可以通过极大似然估计方法反推(最大似然估计:就是利用已知的样本结果反推最有可能(最大概率)导致这样结果的参数值。最大似然函数的思想就是什么样的参数才能使我们观测到目前这组数据的概率是最大的。





那么求解theta的值可以使用梯度下降法和正规化方程,后面文章的会具体讲解。


下图中为简化模式,只有theta1没有theta0的情况,即拟合直线为h(x)=theta1*x

左图为给定theta1时的直线和数据点×

右图为不同theta1下的cost function J(theta1)



cost function plot:



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


将上图中的cost function在二维上用不同颜色的等高线映射为如下右图,可得在左图中给定一个(theta0,theta1)时又图中显示的cost function.



我们的目的是最小化cost function,即上图中最后一幅图,theta0=450,theta1=0.12的情况。




(二)、Gradient descent

gradient descent是指梯度下降,为的是将cost funciton 描绘出之后,让参数沿着梯度下降的方向走,并迭代地不断减小J(theta0,theta1),即稳态。


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


参数的变换公式:其中标出了梯度(蓝框内)和学习率(α):


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



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



关于学习率:


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

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

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


求导后:



由此我们得到:


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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值