|
最近在看《Pattern Regression and Machine Learning》,这里做一点笔记与感想。
背景:
考虑一个多项式拟合问题,如下图,绿线的方程是sin(2πx),蓝点是由绿线并加上噪音(这些噪音是默认符合正态分布的)生成。已知条件是由N个点构成的训练集x=(x1,...xN)T,以及这些点对应的目标值t=(t1,...tN)T。现在的目标是:根据蓝点来拟合一条曲线,而绿线就是我们要最终拟合的效果。

问题:
假设我们最终要拟合的曲线是下面这个M阶方程,方程如下:
y(x,w)=w0+w1x+w2x2+...+wMxM=∑j=0Mwjxj(方程1)
其中w是该方程的系数,也是我们最终要求的对象;
通常我们会使用最小二乘法来做误差函数(error function,其是一种狭义的损失函数loss function),其公式如下:
E(w)=12∑i=1N{y(xn,w)tn}2(方程2)
其中tn是这些点真实的数值,即上图中的蓝点,我们的目标就是求得一组w使E(w)的值最小;
这似乎是一个天经地义的事情,但它是否是正确的?为什么正确?为什么不能直接将残差累加或是残差的绝对值来作为损失函数,如下式?
E(w)=12∑i=1N|y(xn,w)tn|
在使用最小二乘作为误差函数的时候,我们缺乏一个对公式的解释,下面本文就从概率论的角度来解释最小二乘背后的原因。
概率论解释最小二乘法:
这里有个假设:一个点的观测值符合以其真实值为均值,方差为β1(β1=σ2)的高斯分布;即是默认我们的误差是属于高斯分布的,写成数学表达式即: p(t|x,w,β)=(t|y(x,w),β1)(方程3)
如果每个x都是独立同分布的,那么对于观测值t的最大似然函数,即:
p(t|x,w,β)=∏n=1N(tn|y(xn,w),β1)(方程4)
取对数似然函数,即: lnp(t|x,w,β)=∑n=1NlnN(tn|y(xn,w),β1)
即: lnp(t|x,w,β)=β2∑n=1N{y(xn,w)tn}2+N2lnβN2ln(2π)(方程5)
目标是求方程5的最大值,因为最终要求的是w,因此最终就成了求公式6的最小值,即: ∑n=1N{y(xn,w)tn}2(公式6) 这个竟然就是一开始的最小二乘法!
总结1:
利用最小二乘法求解本质上是求解似然函数的最大值,并且默认残差属于高斯分布。
概率论解释岭回归:
我们在上面的基础上增加一个先验概率:拟合函数的参数w属于一个均值为0的多元高斯分布,本质是在限制w中的各项相差不能太大,即: p(w|α)=(w|0,α1I)=(α2π)(M+1)/2exp{α2wTw}(公式7) 对公式7求对数,即: lnp(w|α)=M+12lnα2πα2WTW(公式8) 由于(这是贝叶斯函数的另一种表达方式): 后验概率=先验概率似然函数(公式9) 因此: p(w|x,t,α,β)正比于p(t|x,w,β)p(w|α)(公式10) 现在我们可以通过已知条件,通过后验概率来求出最有可能的w,即求公式10的最大值。取公式10左式的负对数,并将公式5和公式8带入,求公式10的最大值可等价于求下式的最小值,即: β2∑n=1N{y(xn,w)tn}2+α2wTw
总结2:
岭回归本质上是求解后验概率的最大值,并且添加的先验条件是参数w符合多元高斯分布。
极大似然估计(MLE)和极大后验估计(MAP):
在用概率论解释最小二乘法的时候,我们使用的是MLE,即求出似然函数的最大值;在用概率论解释岭回归时,我们使用的是MAP,即求出后验概率的最大值。 |