最小二乘法least square
2016-03-01 11:37 GarfieldEr007 阅读(614) 评论(0) 编辑 收藏 举报上研究生的时候接触的第一个Loss function就是least square。最近又研究了一下,做个总结吧。
定义看wiki就够了。公式如下
其中yy代表类标列向量,xx代表特征行向量,WW代表回归或者分类参数矩阵。通过令欧式距离最小化优化得到最优的WW。
我遇到的第一个问题是,这个公式是怎么得到的,motivation是什么。我个人倾向于最大似然这个角度来解释。具体如下:
假设回归或分类模型公式如下:
ϵ∼N(0,σ2)ϵ∼N(0,σ2)代表加性高斯噪声,所以y∼N(WTx,σ2)y∼N(WTx,σ2)。这时通过独立观测xx得到一系列的观测值X=(x1,y1)….,(xN,yN)X=(x1,y1)….,(xN,yN),则可写出对应的似然函数
两边同取自然对数,则
而N(WTx,σ2)=12πσ2√exp(−(y−WTx2)2σ2)N(WTx,σ2)=12πσ2exp(−(y−WTx)22σ2)
故
最大似然函数,求解W,
上式中第二项与WW无关,可以省略,故
把上式中的σ2σ2取掉,就是我们熟悉的最小二乘法啦。
求解时,对对数似然函数求偏导(注意矩阵求导的规则)
∇ln(p(y∣X,w,σ))=−∑Nn=1{yn−WTxn}xTn∇ln(p(y∣X,w,σ))=−∑n=1N{yn−WTxn}xnT 令上式为0,则有
两边同取矩阵的逆,则有: ∑Nn=1xnyTn=∑Nn=1xnxTnW∑n=1NxnynT=∑n=1NxnxnTW
如果用YY表示类标矩阵,XX表示特征矩阵,则有 XYT=XXTWXYT=XXTW W=(XXT)−1XYTW=(XXT)−1XYT
上面的公式称为normal equation。可以求得WW的封闭解,但是只要做过实验的都知道,如果XX的维数稍微一大,求逆的过程非常非常非常慢,且要消耗非常非常多的资源。所以WW一般用梯度下降法求解。
最大似然法在一定程度上证明了最小二乘法的合理性,但是事实上在历史上最小二乘的出现早于前者,所以可以从其它的角度思考一下最小二乘的合理性。比如最小二乘的几何意义,这篇文章讲的挺好的,看了之后受益匪浅。
from: http://bucktoothsir.github.io/blog/2015/12/04/leastsquare/