在数学和统计学中,最小二乘法是一种广泛使用的参数估计方法,主要用于拟合数据点到一条直线或曲线。这种方法的核心思想是最小化预测值与实际观测值之间的误差平方和,从而得到最佳拟合模型。本文将详细推导最小二乘法的基本公式。
假设我们有一组数据点 \((x_1, y_1), (x_2, y_2), \dots, (x_n, y_n)\),我们需要找到一条直线 \(y = ax + b\) 来最好地拟合这些数据点。这里,\(a\) 和 \(b\) 是我们需要确定的参数。
误差函数定义
对于每一对数据点 \((x_i, y_i)\),其对应的预测值为 \(ax_i + b\)。真实值与预测值之间的误差可以表示为:
\[
e_i = y_i - (ax_i + b)
\]
为了衡量整体的拟合效果,我们通常使用误差的平方和作为目标函数:
\[
S(a, b) = \sum_{i=1}^{n} e_i^2 = \sum_{i=1}^{n} [y_i - (ax_i + b)]^2
\]
我们的目标是找到合适的 \(a\) 和 \(b\),使得 \(S(a, b)\) 最小。
求偏导数
为了使 \(S(a, b)\) 最小化,我们需要对其关于 \(a\) 和 \(b\) 分别求偏导数,并令其等于零。
对 \(a\) 求偏导数
\[
\frac{\partial S}{\partial a} = \frac{\partial}{\partial a} \sum_{i=1}^{n} [y_i - (ax_i + b)]^2
\]
利用链式法则展开:
\[
\frac{\partial S}{\partial a} = \sum_{i=1}^{n} 2[y_i - (ax_i + b)](-x_i)
\]
简化后得到:
\[
\frac{\partial S}{\partial a} = -2 \sum_{i=1}^{n} x_i [y_i - (ax_i + b)]
\]
令其等于零:
\[
-2 \sum_{i=1}^{n} x_i [y_i - (ax_i + b)] = 0
\]
即:
\[
\sum_{i=1}^{n} x_i [y_i - (ax_i + b)] = 0
\]
对 \(b\) 求偏导数
类似地,对 \(b\) 求偏导数:
\[
\frac{\partial S}{\partial b} = \frac{\partial}{\partial b} \sum_{i=1}^{n} [y_i - (ax_i + b)]^2
\]
同样利用链式法则展开:
\[
\frac{\partial S}{\partial b} = \sum_{i=1}^{n} 2[y_i - (ax_i + b)](-1)
\]
简化后得到:
\[
\frac{\partial S}{\partial b} = -2 \sum_{i=1}^{n} [y_i - (ax_i + b)]
\]
令其等于零:
\[
-2 \sum_{i=1}^{n} [y_i - (ax_i + b)] = 0
\]
即:
\[
\sum_{i=1}^{n} [y_i - (ax_i + b)] = 0
\]
解联立方程
我们现在有两个方程:
1. \(\sum_{i=1}^{n} x_i [y_i - (ax_i + b)] = 0\)
2. \(\sum_{i=1}^{n} [y_i - (ax_i + b)] = 0\)
将这两个方程展开并整理,可以得到关于 \(a\) 和 \(b\) 的线性方程组。通过解这个方程组,我们可以得到 \(a\) 和 \(b\) 的具体表达式。
经过进一步的代数运算,最终得到最小二乘法的参数估计公式:
\[
a = \frac{n \sum x_i y_i - \sum x_i \sum y_i}{n \sum x_i^2 - (\sum x_i)^2}
\]
\[
b = \frac{\sum y_i - a \sum x_i}{n}
\]
结论
通过上述推导,我们得到了最小二乘法的参数估计公式。这些公式能够帮助我们在给定数据点的情况下,找到一条最优的直线来拟合数据。最小二乘法不仅适用于线性模型,还可以通过变量变换扩展到非线性模型中。
希望本文的推导过程清晰易懂,能够帮助读者更好地理解最小二乘法的核心原理。