移至主內容

我上學期有同時修一堂統計學,該課程也有提到 Simple linear regression

它假設 \( \varepsilon_i \overset{i.i.d.}\sim \mathcal{N}(0, \sigma ^2)\) 且 \(Y_i\) 與 \(x_i\) 有如下關係
\[ Y_i=\alpha+\beta x_i+\varepsilon_i\]

從而 \( Y_i=\alpha_0+\beta (x_i-\bar{x}) +\varepsilon_i\) (其中 \(\alpha_0=\alpha+\beta\bar{x}\) )

因為 \( Y_i \sim \mathcal{N}(\alpha_0+\beta (x_i-\bar{x}), \sigma ^2)\)

可以直接使用 MLE 來得到 \( \alpha_0,\ \beta\) 的估計:

令 \( \theta = (\alpha_0,\ \beta,\ \sigma^2)\)

Likelihood function \( \mathcal{L}(\theta) = \left(\frac{1}{\sqrt{2\pi \sigma^2}}\right)^n \mathrm{exp}\left(-\frac{\sum_{i=1}^{n}[y_i-\alpha _0-\beta (x_i-\bar{x})]^2 }{2\sigma ^2}  \right) \)

\( \Rightarrow \log \mathcal{L}(\theta) = -\frac{n}{2} \log({2\pi})-\frac{n}{2}\log(\sigma^2)-\frac{\sum_{i=1}^{n}[y_i-\alpha _0-\beta (x_i-\bar{x})]^2 }{2\sigma ^2}\)

要找到 log-likelihood 的最大值,即是找到 \( Q(\alpha _0,\ \beta) = \sum_{i=1}^{n}[y_i-\alpha _0-\beta (x_i-\bar{x})]^2 \) 的最小值

\[\frac{\partial Q}{\partial \alpha _0}=0,\ \frac{\partial Q}{\partial \beta}=0\]

得到 Normal Equations

\[ \left\{\begin{matrix}
2\sum_{i=1}^{n} (Y_i-\hat{\alpha} _0)^2=0\\
2\sum_{i=1}^{n} (x_i-\bar{x})[y_i-\hat{\alpha} _0-\hat{\beta} (x_i-\bar{x})]=0
\end{matrix}\right.\]

解出來得到

\[ \hat{\alpha} _0=\bar{Y},\ \hat{\beta}=\frac{\sum_{i=1}^{n} (x_i-\bar{x})(Y_i-\overline{Y})} {\sum_{i=1}^{n} (x_i-\bar{x})^2} \]

與上學期最後一周講義的 Proposition 4.5.5 與 Exercise 4.14. 的結果相同,但過程很不一樣

並且統計學裡的方法也有提到 Normal Equations,其內容也與線性代數教的 \( A^t A \mathbf{x} =A^t \mathbf{b}\) 長得不太一樣

我想問這兩個方法為何能得到同樣的結果?一個需要偏微分,另一個只要解線性方程組,結果相同也太神奇了

Li 週一, 2026-03-16 11:40

數學就是這樣有趣和神奇:是正確的概念,不管用哪種方法都會得到一樣的結果。中學時期學的二次函數不是有一樣的情節嗎?要找到極值發生處,你可以用微分等於 0 的方法(分析);也可以用配方法(代數)。

首先要強調:這裡所指的 simple linear regression 就是課堂所提迴歸直線,所得直線與統計模型無關。統計老師所假設的統計模型應該只是說明使用 least squares 的合理性。所以這裡不限於迴歸直線,而是探討使用 least squares 解聯立方程利用微積分或線性代數所得的 normal equation 是一樣的。

考慮聯立方程組 $A\mathbf{x}=\mathbf{b}$,當無解時我們希望找到 $\mathbf{x}_0$ 使得 $\mathbf{b}$ 距離所有其他形如 $A\mathbf{x}$ 的向量(即 $\mathrm{Col}(A)$)最近。線性代數的方法就是利用 $\mathbf{b}$ 投影到 $\mathrm{Col}(A)$ 方法找到 normal equation $A^{\mathrm{t}}A\mathbf{x}=A^{\mathrm{t}}\mathbf{b}$。這個找到 normal equation 的方法課堂上提過,就不再重複說明。如何用微積分處理這個問題呢?也就是我們要找到 $\mathbf{x}_0$ 使得 $A\mathbf{x}_0-\mathbf{b}$ 的長度 $\|A\mathbf{x}_0-\mathbf{b}\|$ 最小。也就是,我們要找到多變數函數 \[\|A\mathbf{x}-\mathbf{b}\|^2=(A\mathbf{x}-\mathbf{b})^{\mathrm{t}} (A\mathbf{x}-\mathbf{b})=\mathbf{x}^{\mathrm{t}}(A^{\mathrm{t}}A)\mathbf{x}-\mathbf{b}^{\mathrm{t}} (A\mathbf{x})-(\mathbf{x}^{\mathrm{t}}A^{\mathrm{t}})\mathbf{b}+\mathbf{b}^{\mathrm{t}}\mathbf{b}\] 在何時有最小值。因 $\mathbf{x}=\begin{bmatrix}x_1\\ \vdots\\ x_n\end{bmatrix}$,令 $F(x_1,\dots,x_n)=F(\mathbf{x})=\mathbf{x}^{\mathrm{t}}(A^{\mathrm{t}}A)\mathbf{x}-\mathbf{b}^{\mathrm{t}} (A\mathbf{x})-(\mathbf{x}^{\mathrm{t}}A^{\mathrm{t}})\mathbf{b}+\mathbf{b}^{\mathrm{t}}\mathbf{b}$,其最小值會發生於滿足聯立方程組 $\left\{\begin{matrix}\partial F/\partial x_1=0\\ \vdots\\ \partial F/\partial x_n=0\\\end{matrix}\right.$. 有興趣的同學不妨檢查一下,這個聯立方程組就是 normal equation $A^{\mathrm{t}}A\mathbf{x}=A^{\mathrm{t}}\mathbf{b}$。這裡要注意:

(1) $\mathbf{b}^{\mathrm{t}}\mathbf{b}$ 是常數,所以每個偏微皆為 $0$。

(2) $\mathbf{b}^{\mathrm{t}} (A\mathbf{x})$ 和 $(\mathbf{x}^{\mathrm{t}}A^{\mathrm{t}})\mathbf{b}$ 皆為 $1\times 1$ 矩陣,所以它們取轉置是一樣的,亦即 $\mathbf{b}^{\mathrm{t}} (A\mathbf{x})=(\mathbf{x}^{\mathrm{t}}A^{\mathrm{t}})\mathbf{b}=\mathbf{x}^{\mathrm{t}}(A^{\mathrm{t}}\mathbf{b})$。而 $\begin{bmatrix}\partial(\mathbf{x}^{\mathrm{t}}(A^{\mathrm{t}}\mathbf{b}))/\partial x_1\\ \vdots\\ \partial(\mathbf{x}^{\mathrm{t}}(A^{\mathrm{t}}\mathbf{b}))/\partial x_n\end{bmatrix}=A^{\mathrm{t}}\mathbf{b}$。

(3) 因為 $A^{\mathrm{t}}A$ 為對稱矩陣,利用偏微乘法原理可得 $\begin{bmatrix}\partial(\mathbf{x}^{\mathrm{t}}(A^{\mathrm{t}}A)\mathbf{x})/\partial x_1\\ \vdots\\ \partial(\mathbf{x}^{\mathrm{t}}(A^{\mathrm{t}}A)\mathbf{x})/\partial x_n\end{bmatrix}=2(A^{\mathrm{t}}A)\mathbf{x}$。