最小二乘法
最小二乘法,又称最小平方法,是机器学习中基础的算法之一,它是一种优化算法,通过最小化误差的平方来寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。在机器学习中,还可以使用最小二乘法来进行曲线拟合。
上图介绍的上海市长宁区部分房价的信息,从散点图可以发现,房子的大小和房价彼此之间有一些依赖关系,由房子大小可以决定房子的价格,但是这种关系又是不确定的,这时候我们可以利用统计学中的回归模型来寻找这两个变量之间的关系。具体步骤如下:
- 画散点图,直观判断;
- 用近似模型来描述它们的关系,如一元线性模型;
- 建立回归模型;
- 对模型进行参数估计,最小二乘法是这些参数估计的一种常用的方法,这也是本篇博文讲述的重点;
- 讨论模型的效果;
为了描述简单,本篇文章将采用一元线性模型( Y=w0+w1X )建立回归模型来介绍最小二乘法。
Yi^=w0+w1Xi(式1−1)
其中, Yi^ 是根据回归模型求得的值,则 Yi 和 Yi^ 的差就是该模型的误差。则平方损失函数为:
S=∑i=1n(Yi−Yi^)2=∑i=1n(Yi−w0−w1Xi)2(式1−2)
分别对
w0,w1
求偏导得:
∂S∂w0=−2∑i=1n(Yi−w0−w1Xi)(式1−3)
∂S∂w1=−2∑i=1n(Yi−w0−w1Xi)(−Xi)(式1−4)
根据我们的数学知识,函数的极值点为偏导数为0的点。即
∂S∂w0=0(式1−5)
∂S∂w1=0(式1−6)
亦即
nw0+∑i=1n(Xi)w1=∑i=1nYi(式1−7)
∑i=1n(Xi)w0+(∑i=1nx2i)w1)=∑i=1n(XiYi)(式1−8)
对式1-7和式1-8求解得:
w0=∑ni=1Yin−w1∑ni=1Xin(式1−9)
w1=[n∑ni=1XiYi−(∑ni=1Xi∑ni=1Yi)n∑ni=1X2i−(∑ni=1Xi)2(式1−10)
此时,把 w0,w1 带入式1-1,就是我们要求的回归模型。