【机器学习】【数学推导】最小二乘法(线性)

一、解决什么问题

我们现在有一堆样本D = \left \{ (x_{1},y_{1}), (x_{2},y_{2}), ... , (x_{N},y_{N}) \right \},在图象上的位置如下图黑点:

最小二乘法要做的事情,就是拟合出来一条直线(也可以是曲线,但是本篇只说直线的情况),使得所有点的均方差最小,以便用于未知数据情况的猜测

二、如何拟合

因为本篇只讨论线性的,所以直线可以用下记的表达式进行表示:

f(x) = w^{T}X

其中:

X = (x_{1}, x_{2},... , x_{N})^{T} = \begin{pmatrix} x_{1}^{T}\\ x_{2}^{T}\\ ...}\\ x_{N}^{T} \end{pmatrix} = \begin{pmatrix} x_{11} & x_{12} & ... & x_{1P}\\ x_{21} & x_{22} & ... & x_{2P}\\ ... & ... & ... & ...\\ x_{N1} & x_{N2} & .... & x_{NP} \end{pmatrix}

正常情况下,函数表达式有一个常量b,但是为了简写,这里把b融合到了w_{0}中,并令x_{0} = 1

这样w_{0}实际上就是一个常量b了

在样本中,我们知道每个样本的真值Y = (y_{1}, y_{2}, ..., y_{N})^{T},所以我们的均方差表达式为:

E(x) = \sum _{i = 1}^{N}(w^{T}x_{i} - y_{i})^{2}

接下来只需要求得w^{T},就可以获得原函数表达式了,推导过程如下:

首先将均方差公式展开为向量表达形式:

E(x) = \sum _{i = 1}^{N}(w^{T}x_{i} - y_{i})^{2} =\begin{pmatrix} w_{1}x_{1} - y_{1} & w_{2}x_{2} - y_{2} & ... & w_{N}x_{N} - y_{N} \end{pmatrix} \begin{pmatrix} w_{1}x_{1} - y_{1} \\ w_{2}x_{2} - y_{2} \\ ... \\ w_{N}x_{N} - y_{N} \end{pmatrix}

其中相乘的两个矩阵互为转置矩阵,先对左边的矩阵进行转换:

\begin{pmatrix} w_{1}x_{1} - y_{1} & w_{2}x_{2} - y_{2} & ... & w_{N}x_{N} - y_{N} \end{pmatrix}\\ = \begin{pmatrix} w_{1}x_{1} & w_{2}x_{2} & ... & w_{N}x_{N}\end{pmatrix} - \begin{pmatrix}y_{1} & y_{2} & ... & y_{N}\end{pmatrix}\\ = w^{T}\begin{pmatrix} x_{1} & x_{2} & ... & x_{N}\end{pmatrix} - Y^{T}\\ = w^{T}X^{T} - Y^{T}

右边的式子是这个式子的转置,所以转换为:

\begin{pmatrix} w_{1}x_{1} - y_{1} \\ w_{2}x_{2} - y_{2} \\ ... \\ w_{N}x_{N} - y_{N} \end{pmatrix} =(w^{T}X^{T} - Y^{T})^{T} = Xw - Y

带入到原均方差公式中,并继续展开:

E(x) = (w^{T}X^{T} - Y^{T})(Xw - Y) = w^{T}X^{T}Xw - Y^{T}Xw - w^{T}X^{T}Y + Y^{T}Y

不根据矩阵的性质,单纯从均方差的定义知道,E(x)最终一定是一个实数值,所以等式右边的每一项,也一定是一个数字

而其中第二项Y^{T}Xw和第三项w^{T}X^{T}Y互为转置,实数的转置还是自己,所以第二项和第三项是相等的,所以继续简化为:

E(x) = w^{T}X^{T}Xw - 2w^{T}X^{T}Y + Y^{T}Y

对于凸优化问题,想要求得最小值,使得均方差最小,第一反应就是求带,接下来对w进行求导,并求导数为0的w值:

\\\frac {\partial E}{\partial w} = 2X^{T}Xw - 2X^{T}Y = 0\\\\ X^{T}Xw = X^{T}Y\\\\ w = (X^{T}X)^{-1}X^{T}Y

其中,(X^{T}X)^{-1}X^{T}伪逆矩阵,或者叫广义逆矩阵

三、结论

拟合的曲线方程为:f(x) = w^{T}X,其中w = (X^{T}X)^{-1}X^{T}Y

发布了138 篇原创文章 · 获赞 13 · 访问量 2461

猜你喜欢

转载自blog.csdn.net/songyuwen0808/article/details/105590745