3.3 最小二乗法
ここでは,回帰直線と実際のデータとの差の量である残差に注目する.ここで適当にHeights
からデータを10個取り出したデータを考え,推定値から得られる回帰直線も一緒に考える.
いま推定値をそれぞれ\(\hat \beta_0, \hat \beta_1\)として回帰直線で得られる\(y_i\)の推定値を
\[ \begin{align} \hat y_i = \hat \beta_0 + \hat \beta_1 x_i \end{align} \tag{3.2} \]
とする.そしてこの推定値と実際のデータとの差を
\[ \begin{align} e_i = \hat y_i - y_i \end{align} \tag{3.3} \]
と定義しこれを残差(residuals)と呼ぶ.先ほどのFig 3.5において,実際のデータ点(黒丸)と回帰直線(オレンジの線) の差なのでグラフでみると次のようになる.
最小二乗法ではこの\(e_i\)に着目し\(\sum_{i=1}^{n} e_i^2\)をできるだけ小さくするようにパラメータ\(\beta_0, \beta_1\)を選ぶ.これを数式で以下のように表現する.
\[ \begin{align} \hat \beta_0, \hat \beta_1 = \mathop{\rm arg~min}\limits_{\beta_0, \beta_1 \in \mathbb R} \sum_{i=1}^{n} e_i^2 \end{align} \tag{3.4} \]
実際に最小二乗法によってパラメータの推定値がどのように表されるのか確認していく. (3.4)式を満たすパラメーター\(\hat \beta_0, \hat \beta_1\)を求めたいので,これらの関数である\(L(\beta_0, \beta_1)\)を次のように考える.
\[ \begin{align} L(\beta_0, \beta_1) &= \sum_{i=1}^{n} e_i^2 \\ &= \sum \left (y_i - \hat y_i \right)^2 \\ &= \sum \left[ y_i - \left(\hat \beta_0 + \hat \beta_1 x_i \right) \right]^2 \end{align} \tag{3.5} \]
具体的には\(L(\beta_0, \beta_1)\)をそれぞれの変数で微分し\(0\)となる点を考える.ここで\(L\)については微分した値が\(0\)になる点が最小になることが\(L\)の関数形からわかる.
すなわち
\[\begin{align} \begin{matrix} \begin{cases} \frac{\partial}{\partial \beta_0} L(\beta_0, \beta_1) \\ \frac{\partial}{\partial \beta_1} L(\beta_0, \beta_1) \end{cases} & \Leftrightarrow & \begin{cases} \sum_{i=1}^{n} \left[ y_i - (\beta_0 + \beta_1 x_i) \right] = 0 \\ \sum_{i=1}^{n} \left[ y_i - (\beta_0 + \beta_1 x_i) \right]x_i = 0 \end{cases} \end{matrix} \tag{3.6} \end{align}\]
を解けば良い.
3.3.1 \(\hat \beta_0\)の推定
\(\hat \beta_0\)については,
\[ \begin{align} \sum_{i=1}^{n} \left[ y_i - (\beta_0 + \beta_1 x_i) \right] &= \sum y_i - n\beta_0 + \beta_1 \sum x_i \\ &= n \bar y - n \beta_0 - \beta_1 n \bar x \\ &= 0 \end{align} \]
より
\[ \begin{align} \hat \beta_0 = \bar y - \hat \beta_1 \bar x \end{align} \tag{3.7} \] を得る.ここで\(\bar x,\bar y\)はそれぞれ\(x_i, y_i\)の平均で\(\bar x = 1/n \sum x_i, \bar y = 1/n \sum y_i\)とした.これをそれぞれ式変形すれば
\[ \begin{align} \sum x_i = n \bar x \\ \sum y_i = n \bar y \end{align} \]
を得る.
3.3.2 \(\hat \beta_1\)の推定
次に\(\hat \beta_1\)については,
\[ \begin{align} \sum_{i=1}^{n} \left[ y_i - (\beta_0 + \beta_1 x_i) \right]x_i &= \sum y_i x_i - \beta_0 \sum x_i - \beta_1 \sum x_i^2 \\ \end{align} \]
とし,ここで(3.7)式を代入すると
\[ \begin{align} \sum y_i & x_i - (\bar y - \hat \beta_1 \bar x) \sum x_i - \hat \beta_1 \sum x_i^2 \\ &= \hat \beta_1 \left(\bar x \sum x_i - \sum x_i^2 \right) + \sum y_i x_i - \bar y \sum x_i \end{align} \]
というように変形できる.さらに
\[ \begin{align} &\sum (x_i - \bar x)^2 = \sum x_i^2 - \bar x \sum x_i \\ &\sum (x_i - \bar x) (y_i - \bar y) = \sum x_i y_i - \bar y \sum x_i \end{align} \tag{3.8} \]
であることに注意すると
\[ \begin{align} \hat \beta_1 = \frac{\sum(x_i - \bar x)(y_i - \bar y)}{\sum (x_i - \bar x)^2} \end{align} \tag{3.9} \] となる.まとめると(3.4)式を満たすパラメーターの推定値は
\[ \begin{align} \hat \beta_0 &= \bar y - \hat \beta_1 \bar x \\ \hat \beta_1 &= \frac{\sum(x_i - \bar x)(y_i - \bar y)}{\sum (x_i - \bar x)^2} \end{align} \tag{3.10} \]
と解析的に求めることができる.