最小二乘法拟合线性回归方程是机器学习中最基础的内容了,之前都是从微积分求导的思路理解最小二乘法,现在看到线性代数视角下的最小二乘法感觉挺新颖,记录一下。
我们经常会碰到Ax = b 方程组无解的情况,通常的原因是方程组过多,而未知数太少的情况,也就是矩阵A(n× m)的行数大于列数的情况(n远远大于m)。除非碰上极端情况,结果向量b都在矩阵A的列空间外。普通的消元法解决不了这类问题,因为我们的测量数据是包含杂讯的。
重申一遍:我们不能总是让误差项 e = b – Ax 等于0,当e为0时,x就是使方程组Ax=b 的解。当e 尽可能的取最小值的时候,求得的
就是最小二乘法的解决思路。具体来说,方程Ax=b 无解,但是方程A =p 可解(p:向量b在矩阵A的列空间上的投影)。我们把b向量分解成两部分,在矩阵A的列空间的部分是p,垂直于p位于 零空间的部分是e。e = b – p, e p, 也就是 (b - A)=0。
当Ax=b无解时,方程左右乘以 求解 (b - A)=0
例 1 最小二乘法的一个典型应用就是拟合直线方程,如:给定数据(0,1),(1,9),(3,9)和(4,21)找到一条离数据点最近的直线。