问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

最小二乘法求解二元线性回归问题

创作时间:
作者:
@小白创作中心

最小二乘法求解二元线性回归问题

引用
CSDN
1.
https://blog.csdn.net/Jacoh/article/details/140909591

最小二乘法是机器学习和数据分析中常用的一种线性回归方法。本文通过一个具体的二元线性回归问题,详细介绍了如何使用矩阵最小二乘法求解拟合直线。

假设,二维平面中有三个坐标(1,1)、(2,2)、(3,2),很显然该三个坐标点不是共线的,如何拟合出一条直线使其为最优直线。

如上图所示,根据三个点,求拟合直线 $$ y = C + Dt $$

将三点的坐标分别带入,可得到如下形式:

$$
\begin{cases}
C + D = 1\
C + 2D = 2\
C + 3D = 2\
\end{cases} \tag{1}
$$

显然方程组无解,因为三点不共线。

令:

$$
A = \left[ \begin{matrix}
1 & 1 \
1 & 2 \
1 & 3
\end{matrix} \right], \quad
b = \left[ \begin{matrix}
1 \
2 \
2
\end{matrix} \right]
$$

则(1)式可表示为:

$$
Ax=b\tag{2}
$$

令(1,p1)、(2,p2)、(3、p3)分别是拟合直线 y = C + Dt 上的与b 对应的三个坐标,其中

$$
P=\left[ \begin{matrix}
p1 \
p2 \
p3
\end{matrix} \right]
$$

说明:p 是投影的缩写,这里表示b 在拟合直线上的投影点。那么 P 与 b 之间的差值即为误差 e,整个计算过程是为了求出直线,使得 e 最小。

由于 P 中的点均在拟合直线上,所以下列方程有解:

$$
A\hat{x}=P\tag{3}
$$

说明:P 向量是 b 向量在 Col(A) 空间的投影。Col(A) 即 A 矩阵的列空间。

有投影矩阵的性质可得,

$$
(b - A\hat{x}) \perp a_1,(b - A\hat{x}) \perp a_2
$$

$$
A^T(b - A\hat{x}) = 0
$$

可得

$$
A^T A\hat{x}=A^T b \tag4
$$

计算:

$$
A^T A = \left[ \begin{matrix}
1 & 1 & 1 \
1 & 2 & 3 \
\end{matrix} \right]
\left[ \begin{matrix}
1 & 1 \
1 & 2 \
1 & 3
\end{matrix} \right] =
\left[ \begin{matrix}
3 & 6 \
6 & 14
\end{matrix} \right]
$$

$$
A^T b = \left[ \begin{matrix}
1 & 1 & 1 \
1 & 2 & 3 \
\end{matrix} \right]
\left[ \begin{matrix}
1 \
2 \
2
\end{matrix} \right] =
\left[ \begin{matrix}
5 \
11
\end{matrix} \right]
$$

由此得方程组:

$$
\begin{cases}
3C + 6D = 5\
6C + 14D = 11
\end{cases} \tag{5}
$$

解得:

$$
C = \frac{1}{3}, D = \frac{1}{2}
$$

即最后求得的拟合直线方程为:

$$
y = \frac{1}{3} + \frac{1}{2} t \tag6
$$

求解过程中的误差

$$
e = p - b
$$

则误差的最小二乘表示为:

$$
min(l) = (C + D - 1)^2 + (C + 2D - 2)^2 + (C + 3D - 2)^2
$$

利用求导函数等于0 的方式,同样可以求得

$$
C = \frac{1}{3}, D = \frac{1}{2}
$$

补充说明

A 的各列线性无关,才使得A^T A 可逆,这是最小二乘法成立的大前提。

至此,结束。

追加题目:

t = 1 ; y = 4

t = 2 ; y = 5

t = 3 ; y = 8

如何将上述三个点,拟合到过原点(0,0)的直线上?

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号