【MLE视角】最小二乘法

发布时间 2023-04-10 08:45:22作者: 心元

· 最小二乘法Least Square

让我们从一个最简单的问题开始,如何根据一组观测数据\((x_i,y_i)\)来寻找它背后的规律呢?通过先验知识我们可以确定输入输出模型是\(y=kx+b\),但由于观测数据有采样误差,因此并不完全符合模型。那么,我们就需要寻找一个最佳的拟合结果,来尽可能好地描述观测数据。
d75324ad35caf86f53e5808535b4113.jpg
可是,最佳的判别标准是什么?是点到直线的距离,误差\(\Delta y\)的代数和,还是绝对值之和,还是平方或者四次方和?勒让德对此提出了最小二乘准则:误差的平方和最小估计出来的模型是最接近真实情形的。这从直观上来讲是对的,使误差平方和达到最小在各方程的误差之间建立了一种平衡,从而防止了某一极端误差取得支配地位,而这有助于揭示系统的更接近真实的状态。不过他并没有给出证明。
当模型为线性函数时,这样的函数拟合称为线性回归问题,即求一个合适的x使得\(Ax=b\)。这时候,我们从几何上可以发现最小二乘的直观性——当b不在A的列空间内时,最小二乘法给出的是b在A的列向量空间中的投影,这确实是最佳的结果(如上图右)。
回顾一下线代中的推导:
\(y=w^Tx\)
\(x\)为未知的参数向量,\(y=Ax\)为模型的理论值,而\(b\)为观测值,则最小二乘的代价函数为
\(J(x) = ||y-b||^2 = ||Ax-b||^2=(Ax-b)^T(Ax-b)\)
由矩阵分析中的求导公式,
\(\frac{\partial x^TA}{\partial x} = \frac{\partial xA^T}{\partial x} = A,\space \frac{\partial x^TAx}{\partial x} = Ax + A^Tx\)
可以得到
\(\frac{\partial}{\partial x}J(x) = 2A^TAx - 2A^Tb=0, \space A^T(Ax-b)=0\)
\(x=(A^TA)^{-1}A^Tb\)
· 当逆不存在或为病态矩阵时,可以添加一个正则项(待补充)

· 为什么是平方和?最大似然估计MLE

(Maximum Likelihood Estimate,也译为极大似然估计)
我们回到最开始的问题:为什么使用平方和最小来度量,而不是差的绝对值,四次方,垂线距离或其他?有没有更一般地解释呢。让我们暂且忘记最小二乘法,来审视一下我们遇到的问题:我们观测得到了一组样本,并根据先验知识确定了模型(比如\(y=kx+b\)),现在需要通过这组样本去估计模型的参数(\(k,b\))。由于观测有随机误差,因此只能求最佳近似,也即参数最可能的取值
想到了什么?这是一个典型的最大似然估计问题。即若知道了服从某一分布\(F(x;\theta)(\theta为参数)\)的随机变量\(x\)的一组采样\(x_1,x_2,x_3...\)后,去反推出这个分布最可能是什么形态,也就是参数\(\theta\)的最可能取值(似然指的是参数取某一值的可能性).
我们按照这个思路来解决这一问题。假设真实模型有参数\(w\),其输出为\(f_w(x)\),我们观测时会产生一个随机误差\(\epsilon\),那么观测值可以认为是一个随机变量\(y=f_w(x)+\epsilon\)。这个随机变量的分布模型是什么呢?显然取决于误差的分布。拉普拉斯在高斯工作的基础上,提出可以把误差设想成个数很多的、独立同分布的“元误差”之和,根据中心极限定理,误差应服从正态分布\(\epsilon \sim N(0,\sigma^2)。\)因此,观测样本应满足\(y_i \sim N(f_w(x_i),\sigma^2)\),也即由理论值\(f_w(x_i)\)叠加一个所谓的高斯噪声\(\epsilon\)得到。
481654159085171ab1cbcf88ef37d20.jpgafa4420f056a2bf1887ac785aaaef50.jpg
接下来,我们进行最大似然估计。通常我们假设样本之间都是相互独立的,因此在参数为\(w,\sigma\)时,取得样本集的联合概率就是各个样本概率的乘积。每个样本发生的概率为
\(p(y_i|x_i; w)=\frac{1}{\sqrt{2\pi}\sigma}exp(-\frac{(y_i-f_w(x_i))^2}{2\sigma^2})\)
样本集的整体发生概率,也就是所谓的似然函数为
\(L(w)=\prod_{i=1}^n p(y_i|x_i; w) = \prod_{i=1}^n \frac{1}{\sqrt{2\pi}\sigma}exp(-\frac{(y_i-f_w(x_i))^2}{2\sigma^2})\)
样本集发生的概率被表示为了一个以\(w\)为自变量的函数,那么当样本集发生概率最大时,\(w\)也就达到了最可能取值。因此我们只需要求出上式的最大值。由于连乘形式不方便求导,并且多个\(p<1\)的乘积会使得最终结果非常小,计算不便。我们取对数处理
\(J(w)=ln( L(w)) = -\frac{1}{2\sigma^2} \sum_{i=1}^{n} (y_i - f_w(x_i))^2 -n ln(\sqrt{2\pi}\sigma)\)
这时,我们惊奇地发现,由于参数\(\sigma\)并不影响极值点的位置,因此最前面的系数和后面的常数都可以忽略,而剩下的部分,就是最小二乘法则!由于负号的关系,似然函数的最大值便转换为了平方和的最小值,即
\(arg\space max_w \space J(w) = arg\space min_w \space \sum_{i=1}^{n} (y_i - f_w(x_i))^2\)
这个漂亮的结果表明,最大化似然函数等价于最小化最小二乘的代价函数,表明了以误差平方和作为最佳拟合准则的合理性。因此我们可以说,最小二乘法就是误差满足正态分布的最大似然估计!将误差平方和作为代价函数是正态分布下的特殊结果,而如果我们改变误差的分布,也就会得到新的代价函数。比如伯努利分布对应的是逻辑回归,多项分布对应的结果是softmax函数等等(有待证明和进一步解释).