情形 (b):理论模型的形式为 y = mx + c
与情形 (a) 类似,这可以看作是最小化误差平方和
$$S = \sum_{k=1}^n (mx_k + c - y_k)^2$$
可以证明 $S$ 在以下位置取得最小值
$$m = \frac{\sum_{k=1}^n x_k y_k - n\bar{x}\bar{y}}{\sum_{k=1}^n x_k^2 - n\bar{x}^2} \quad \text{and} \quad c = \bar{y} - m\bar{x} \quad (2.8)$$
为避免有效数字损失, $m$ 的公式通常表示为
$$m = \frac{\sum_{k=1}^n (x_k - \bar{x})(y_k - \bar{y})}{\sum_{k=1}^n (x_k - \bar{x})^2} \quad (2.9)$$
我们可以观察到,在这种情况下,最佳直线通过平均数据点 $(\bar{x}, \bar{y})$ ,且最佳直线的公式为
$$y = mx + c$$
其中 $c = \bar{y} - m\bar{x}$ 。
例 2.17 求 $m$ 和 $c$ 它们给出线性模型的最小二乘拟合 $y = mx + c$ 对于图 2.30 中给出的数据。
| k | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| xk | 0 | 1 | 2 | 3 | 4 |
| yk | 1 | 1 | 2 | 2 | 3 |
解 由 (2.9) 可得最小二乘拟合为
$$m = \frac{\sum_{k=1}^n (x_k - \bar{x})(y_k - \bar{y})}{\sum_{k=1}^n (x_k - \bar{x})^2}$$
这里 $\bar{x} = \frac{1}{5}(10) = 2.0$ , $\bar{y} = \frac{1}{5}(9) = 1.1.8$ , $\sum_{k=1}^n(x_k - \bar{x})(y_k - \bar{y}) = 5.0$ 且 $\sum_{k=1}^n(x_k - \bar{x})^2 = 10$ ,因此
m = 0.5
图 2.30
例 2.17 的数据。