背景
最小二乘法(Least Squares Method)是一种用于找到数据点最佳拟合曲线的数学优化技术。它通过最小化数据点和拟合曲线之间的误差平方和来实现。广泛应用于统计学、数据分析和机器学习中。
公式
最小二乘法的基本公式如下:
-
线性回归模型:
y^=β0+β1x
-
误差平方和(SSE):
SSE=i=1∑n(yi−y^i)2=i=1∑n(yi−(β0+β1xi))2
-
通过求解最小化误差平方和,得出最佳拟合参数:
β1=n∑xi2−(∑xi)2n∑(xiyi)−∑xi∑yi
β0=n∑yi−β1∑xi
示例题目
假设我们有以下数据点:(1,2)、(2,3)、(3,5)、(4,4)、(5,6)。求最佳拟合直线。
详细讲解
-
计算必要的求和:
∑xi=1+2+3+4+5=15
∑yi=2+3+5+4+6=20
∑xi2=12+22+32+42+52=55
∑xiyi=1⋅2+2⋅3+3⋅5+4⋅4+5⋅6=70
-
计算斜率 β1:
β1=5⋅55−1525⋅70−15⋅20=275−225350−300=5050=1
-
计算截距 β0:
β0=520−1⋅15=55=1
-
最佳拟合直线方程为:
y^=1+1x=x+1
Python代码求解
import numpy as np
import matplotlib.pyplot as plt
x = np.array([1, 2, 3, 4, 5])
y = np.array([2, 3, 5, 4, 6])
A = np.vstack([x, np.ones(len(x))]).T
beta, beta_0 = np.linalg.lstsq(A, y, rcond=None)[0]
plt.plot(x, y, 'o', label='原始数据', markersize=10)
plt.plot(x, beta * x + beta_0, 'r', label='拟合直线')
plt.legend()
plt.show()
实际生活中的例子
在经济学中,最小二乘法可以用来预测消费支出与收入之间的关系。例如,根据历史数据,使用最小二乘法可以拟合出消费支出与收入的关系直线,从而预测未来的消费行为。