最小二乗法と最尤法

Data Science

2017.10.26

Topics

こんにちは、データサイエンスチーム tmtkです。
この記事では、回帰分析において誤差項が正規分布に従うと仮定すれば、最小二乗法が最尤法だとみなせることを説明します。

最小二乗法とは

以前の記事で説明したとおり、最小二乗法とは、回帰問題において残差の二乗和を最小化するパラメータを選択する手法です。
線形回帰について復習すると、線形回帰とは、

  1. n個のデータ(x_{11}, x_{12}, \ldots, x_{1K}; y_1) , (x_{21}, \ldots, x_{2K}; y_2), \ldots, (x_{n1}, \ldots, x_{nK}; y_n) \in \mathbb{R}^K \times \mathbb{R}が与えられている。
  2. 変数x_{ij}, y_{i}の関係が y_i = \sum_{j=1}^K x_{ij}\beta_j + \beta_0で近似できると仮定する。
  3. yの残差 y_i - (\sum_{j=1}^K x_{ij}\beta_j + \beta_0) の二乗和\sum_{i=1}^n \left(y_i - \left(\sum_{j=1}^K x_{ij}\beta_j + \beta_0\right)\right)^2を最小にする\beta_0, \beta_1, \ldots, \beta_Kを計算する。(これが 最小二乗法
    1. で得られた\beta_0, \ldots, \beta_Kを用いて、データ列にy_i = \sum_{j=1}^K x_{ij}\beta_j + \beta_0の関係があると見積もる。

という手続きです。

線形回帰モデル

前節では線形回帰についての概略を復習しましたが、2. の仮定の部分についてより正確に述べると、以下のようになります。
線形回帰の標準的仮定というものがあり、それは以下のとおりです。

  1. y_i = \sum_{j=1}^K x_{ij}\beta_j + \beta_0 + \epsilon_iという式が成り立つ。ここで、\epsilon_iは誤差項と呼ばれる確率変数である。
  2. iに対して、誤差項\epsilon_iの平均は0である。\mathbb{E}(\epsilon_i) = 0.
  3. \epsilon_iの分散はiによらない。\mathbb{V}(\epsilon_i)=\mathbb{E}(\epsilon_i^2)=\sigma^2.
  4. 誤差項\epsilon_iたちは互いに無相関である。\mathrm{Cov}(\epsilon_i, \epsilon_j) = 0 (i\neq j).
  5. 説明変数x_iは確率変数ではない。

以上の仮定を標準的仮定と呼びます。(ただし、標準的仮定にはいろいろな変種があるようです。)

標準的仮定とGauss-Markovの定理

Gauss-Markovの定理という定理があります。
その内容は、以下のとおりです。

定理(Gauss-Markov)

標準的仮定のもとで、線形回帰で最小二乗法によって得られた係数\beta_0, \beta_1, \ldots, \beta_Kは、最良線形不偏推定量(Best Linear Unbiased Estimator, BLUE)になっている。すなわち、\beta_0, \beta_1, \ldots, \beta_Kは不偏推定量であり、かつ、(\beta'_0, \beta'_1, \ldots, \beta'_K)^{\mathrm{T}} = C(y_1, \ldots, y_n)^\mathrm{T} (C \in \mathrm{M}(K+1, n)) とすると、分散共分散行列の差\mathbb{V}( (\beta'_0, \beta'_1, \ldots, \beta'_K)^\mathrm{T}) - \mathbb{V}( (\beta_0, \beta_1, \ldots, \beta_K)^\mathrm{T})が半正定値行列になっている。
証明は省略します。
この定理から、最小二乗推定量\beta_0, \beta_1, \ldots, \beta_K はよい推定量であるといえます。

正規分布仮定と最尤法

線形回帰をする際、実際には上の標準的仮定にくわえて、誤差項\epsilon_iが互いに独立であることと正規分布に従うこと(\epsilon_i\sim N(0, \sigma^2))を仮定することが多いようです。
この仮定をくわえると、最小二乗法による推定量\beta_0, \beta_1, \ldots, \beta_Kが、誤差項についての最尤推定量になっていることがわかります。以下で、これを説明します。
いま、観測データの中にデータ(x_{i1}, \ldots, x_{iK}; y_i)が現れるということは、残差\epsilon_i\epsilon_i = y_i - (\sum_{j=1}^K x_{ij}\beta_j + \beta_0)をとるということです。誤差項が正規分布に従うという仮定から、その確率(確率密度)は
\frac{1}{\sqrt{2\pi\sigma^2}}\exp(-\frac{\left(y_i-(\sum_{j=1}^K x_{ij}\beta_j + \beta_0)\right)^2}{2\sigma^2})
です。したがって、残差に関する尤度関数は
\prod_{i=1}^n \frac{1}{\sqrt{2\pi\sigma^2}}\exp(-\frac{\left(y_i-(\sum_{j=1}^K x_{ij}\beta_j + \beta_0)\right)^2}{2\sigma^2})
です。対数尤度関数は、
\mathscr{L}(\beta_0, \beta_1, \ldots, \beta_K)=\sum_{i=1}^n \ln \frac{1}{\sqrt{2\pi\sigma^2}}\exp(-\frac{\left(y_i-(\sum_{j=1}^K x_{ij}\beta_j + \beta_0)\right)^2}{2\sigma^2})\\=-\frac{1}{2\sigma^2}\sum_{i=1}^n \left(y_i-(\sum_{j=1}^K x_{ij}\beta_j + \beta_0)\right)^2 -\frac{n}{2}\ln(2\pi\sigma^2)
です。この\mathscr{L}(\beta_0, \beta_1, \ldots, \beta_K)を最大化する\beta_0, \beta_1, \ldots, \beta_Kが最尤推定量になります。
\mathscr{L}(\beta_0, \beta_1, \ldots, \beta_K)の式をよくみると、\mathscr{L}(\beta_0, \beta_1, \ldots, \beta_K)を最大化することと残差の二乗和\sum_{i=1}^n \left(y_i - \left(\sum_{j=1}^K x_{ij}\beta_j + \beta_0\right)\right)^2を最小化することは同じですから、最尤推定量と最小二乗推定量の\beta_0, \beta_1, \ldots, \beta_Kは等しいことがわかります。
また、議論を振り返ると、最小二乗法で与えるパラメータが最尤推定量であることを示すためには、回帰問題が線形回帰であることは使っていません。回帰する関数がなんであろうと、誤差項が平均0の正規分布に従うとき、最小二乗法が有効だといえると思います。

まとめ

  • 標準的仮定から、最小二乗法で求めたパラメータが最良線形不偏推定量であることを導けます。(Gauss-Markovの定理)
  • さらに誤差項が互いに独立であることと正規分布に従うということを仮定すれば、最小二乗法で求めたパラメータが最尤推定量であることが導けます。
  • 誤差項が正規分布にしたがうと仮定したときの回帰問題では、最小二乗法が有効です。

参考

テックブログ新着情報のほか、AWSやGoogle Cloudに関するお役立ち情報を配信中!

tmtk

データ分析と機械学習とソフトウェア開発をしています。 アルゴリズムとデータ構造が好きです。

Recommends

こちらもおすすめ

Special Topics

注目記事はこちら