回帰の分散分析と決定係数




1. 概要

回帰の分散分析は、回帰モデルの効果を統計的に検証する手法です。

この分析を通じて、回帰モデルが目的変数の変動をどの程度説明しているか、また、モデルの各説明変数が統計的に有意な貢献をしているかを判断します。


回帰分析における主な目的は、説明変数と目的の間に存在する関係をモデル化し、この関係の強さや方向を定量化することです。

回帰モデルは、目的変数の予測値を説明変数の線形結合として表現します。

このモデルは一般に次のような形式を取ります。

\displaystyle{
y_i = \beta_0 + \beta_1 x_{i1} + \beta_2 x_{i2} + \cdots + \beta_k x_{ik} + \epsilon_i
}


ここで、各変数は以下のように定義されます。

  •  y _ i i番目の観測値の従属変数
  •  x _ {ij} i番目の観測値の j番目の独立変数
  •  beta _ jは独立変数の係数(モデルパラメータ)
  •  \epsilon _ iは誤差項で、観測値のランダムな変動


分散分析は、モデル全体の統計的有意性を検定するために使用されます。

具体的には、モデルの説明変数が目的変数の変動に対して統計的に有意な効果を持っているかどうかを評価します。

この検定は、モデルの F統計量を用いて行われ、説明変数が目的変数に与える影響が偶然によるものではないことを示すために用います。


回帰の分散分析では、データセット内の全変動(目的変数の全ての変動)を、モデルによって説明される変動(回帰による変動)とモデルによって説明されない変動(残差による変動)に分解します。

モデルがどれだけデータを「説明」しているか、つまり説明変数が目的変数の変動にどれだけ影響を与えているかを定量化することを可能にします。




2. 分散分析の主要な構成要素

回帰の分散分析において、データ内の変動を理解するためには、以下の3つの主要な構成要素を詳細に分析する必要があります。


1. 全変動 (S_T)

全変動は、目的変数の全ての観測値がその平均からどれだけ離れているかを示す指標です。

これは、データセット内の変動の全量を表し、次の式で計算されます。

\displaystyle{
\begin{align}
S_T &= \sum_{i=1}^{n} (y_i - \bar{y})^2 \\
\end{align}
}


また、全変動は下で説明する「回帰による変動」と「残差による変動」に分解することができます。

\displaystyle{
\begin{align}
S_T &= S_R + S_e\\
&= \sum_{i=1}^{n} (\hat{y}_i - \bar{y})^2
+ \sum_{i=1}^{n} (y_i - \hat{y}_i)^2
\end{align}
}


2. 回帰による変動 (S_R)

回帰による変動は、回帰モデルによって説明される変動の量を示します。

これは、モデルの予測値が目的変数の平均からどれだけ離れているかに基づいて計算され、次の式で表されます。

\displaystyle{
\begin{align}
S_R = \sum_{i=1}^{n} (\hat{y}_i - \bar{y})^2
\end{align}
}


説明変数が目的変数の変動にどれだけ貢献しているかを定量化し、モデルの有効性を評価するために用います。


3. 残差による変動 (S_e)

残差による変動は、モデルが説明できなかった変動の量を示し、次の式で計算されます。

\displaystyle{
\begin{align}
S_e = \sum_{i=1}^{n} (y_i - \hat{y}_i)^2
\end{align}
}


モデルの不完全性やデータ内のランダムなノイズを反映し、モデルの改善の余地を示します。


4. (補足) 全変動の分解

「全変動」は「回帰による変動」と「残差による変動」に分解することができます。


実際に分解できるか確認してみます。


まず最初に全変動を展開します。

\displaystyle{
\begin{align}
S_T &= \sum_{i=1}^n (y_i - \bar{y})^2 \\

&= \sum_{i=1}^n \left(
(y_i - \hat{y}_i) + (\hat{y}_i - \bar{y})
\right)^2 \\

&= \sum_{i=1}^{n} (y_i - \hat{y}_i)^2
+ \sum_{i=1}^{n} (\hat{y}_i - \bar{y})^2
+ 2 \sum_{i=1}^{n} (y_i - \hat{y}_i)(\hat{y}_i - \bar{y})

\end{align}
}


ここで、最後の項 \sum _ {i=1}^ {n} (y _ i - \hat{y} _ i)(\hat{y} _ i - \bar{y})​のみを考えます。


 \hat{y} _ i​は次のように表すことができます。

ここで、最小二乗法の推定量 \hat{\beta} _ 0 = \bar{y} - \hat{\beta} _ 1 \bar{x}を利用しています。

\displaystyle{
\begin{align}
\hat{y}_i &= \hat{\beta}_0 + \hat{\beta_1} x_i \\

&= (\bar{y} - \hat{\beta}_1 \bar{x}) + \hat{\beta_1} x_i \\

&= \bar{y} + \hat{\beta_1}(x_i - \bar{x})
\end{align}
}


この式を最後の項 \sum _ {i=1}^ {n} (y _ i - \hat{y} _ i)(\hat{y} _ i - \bar{y})に代入します。

\displaystyle{
\begin{align}
\sum_{i=1}^{n} (y_i - \hat{y}_i)(\hat{y}_i - \bar{y})
&= \sum_{i=1}^{n}
(
    y_i - \bar{y} - \hat{\beta_1}(x_i - \bar{x})
)
(
    \bar{y} + \hat{\beta_1}(x_i - \bar{x}) - \bar{y}
) \\

&= \sum_{i=1}^{n}
(
    (y_i - \bar{y}) - \hat{\beta_1}(x_i - \bar{x})
)
\hat{\beta_1}(x_i - \bar{x}) \\

&= 
\hat{\beta}_1
\sum_{i=1}^{n}
(x_i - \bar{x})(y_i - \bar{y})

- \hat{\beta}_1^2
\sum_{i=1}^{n}
(x_i - \bar{x})^2

\end{align}
}


ここで、最小二乗推定量 \hat{\beta _ 1} = \sum _ {i=1}^ {n}(y _ i - \bar{y})(x _ i - \bar{x})/\sum _ {i=1}^ {n} (x _ i - \bar{x})^ 2​を利用して、計算します。

\displaystyle{
\begin{align}
\sum_{i=1}^{n} (y_i - \hat{y}_i)(\hat{y}_i - \bar{y})
&= 
\hat{\beta}_1
\sum_{i=1}^{n}
(x_i - \bar{x})(y_i - \bar{y})

- \hat{\beta}_1^2
\sum_{i=1}^{n}
(x_i - \bar{x})^2 \\

&= \frac{
    \sum_{i=1}^{n}(y_i - \bar{y})(x_i - \bar{x})    
}{
    \sum_{i=1}^{n} (x_i -\bar{x})^2
}
\sum_{i=1}^{n}
(x_i - \bar{x})(y_i - \bar{y})


- \frac{
    \left( \sum_{i=1}^{n}(y_i - \bar{y})(x_i - \bar{x}) \right)^2
}{
    \left( \sum_{i=1}^{n} (x_i -\bar{x})^2 \right)^2
}
\sum_{i=1}^{n}
(x_i - \bar{x})^2 \\

&= \frac{
    \left( \sum_{i=1}^{n}(y_i - \bar{y})(x_i - \bar{x}) \right)^2
}{
    \sum_{i=1}^{n} (x_i -\bar{x})^2
}
- \frac{
    \left( \sum_{i=1}^{n}(y_i - \bar{y})(x_i - \bar{x}) \right)^2
}{
    \left( \sum_{i=1}^{n} (x_i -\bar{x})^2 \right)
} \\

&= 0
\end{align}
}


以上より、 \sum _ {i=1}^ {n} (y _ i - \hat{y} _ i)(\hat{y} _ i - \bar{y}) = 0​となるので、全変動は次のように「回帰による変動」と「残差による変動」に分解することができることがわかります。

\displaystyle{
\begin{align}
S_T &= \sum_{i=1}^{n} (y_i - \hat{y}_i)^2
+ \sum_{i=1}^{n} (\hat{y}_i - \bar{y})^2
+ 2 \sum_{i=1}^{n} (y_i - \hat{y}_i)(\hat{y}_i - \bar{y}) \\

&= \sum_{i=1}^{n} (y_i - \hat{y}_i)^2
+ \sum_{i=1}^{n} (\hat{y}_i - \bar{y})^2
\end{align}
}




3. 分散分析表

分散分析表は、回帰分析の結果をまとめて表現するために用いられる表で、モデルの適合度を評価するための重要な情報を提供します。

この表は、全変動( S_T)、回帰による変動( S_R)、残差による変動( S_e)を含み、これらを利用してモデルの統計的有意性を検定します。


1. 分散分析表

回帰の分散分析表として、次のように表すことができます。

要因 平方和  S 自由度  \phi 平均変動  V 検討統計量  F
回帰変動  S _ R  \phi _ R = p  V _ R = \frac{S _ R}{\phi _ R}  F = \frac{V _ R}{V _ e}
残差変動  S _ e  \phi _ e = n-p-1  V _ e = \frac{S _ e}{\phi _ e}
全変動  S _ T  \phi _ T = n-1


2. 自由度について

  • 全変動の自由度

    データの個数 nから1を引いた n-1です。

    これは、データセットの平均値を計算するとき、その平均値に合わせて全てのデータが一つの制約を受けるためです。


  • 回帰の自由度

    モデルに使われる説明変数の数  p です。

    単回帰の場合は説明変数が一つなので、自由度は1になります。(切片は含まれません。)

    モデルのパラメータとして傾きと切片の2つのパラメータがあっても、実際に自由に動ける情報はそれらのパラメータの関係によって1つに制約されるからです。


  • 残差の自由度

    残差の自由度は、全変動の自由度から回帰の自由度を引いた n -p - 1です。


3. 検定統計量 F の解釈

回帰分析における分散分析表で示される検定統計量 Fは、回帰モデル全体の統計的有意性を評価するために用います。


検定統計量 F​は次のように表されます。

これは、自由度 (p, n-p-1) F分布に従います。

\displaystyle{
\begin{align}
F = \frac{V_R}{V_e}
\end{align}
}


  •  F統計量が大きい場合

    これは、モデルがデータに対して有意な予測能力を持っていることを示します。

    つまり、モデルによって説明される変動が残差による変動に比べて大きい場合、予測変数は従属変数の変動を統計的に有意に説明していると考えられます。


  •  F統計量が小さい場合

    これは、モデルがデータに対して十分な予測能力を持っていないことを示します。

    予測変数が目的変数の変動を説明するのに十分ではない、またはデータに対してモデルが適切でない可能性があります。


 F統計量に基づいて計算されるP値を用いて、モデルの統計的有意性を評価します。

 P値が予め設定された有意水準(例えば、0.05)よりも小さい場合、モデルは統計的に有意と判断されます。

これは、モデルが偶然によるものではなく、予測変数が目的変数の変動を有意に説明していることを意味します。




4. 決定係数

1. 決定係数の定義

決定係数  R^ 2 は、回帰分析におけるモデルの適合度を示す指標です。

この値は 0から 1の間で変動し、モデルがデータの変動をどれだけ説明しているかを定量化します。


決定係数は次のように定義されます。

\displaystyle{
\begin{align}
R^2 &= \frac{S_R}{S_T} \\

&= 1 - \frac{S_e}{S_T}
\end{align}
}


2. 決定係数の解釈

  •  R^ 2 = 1

    モデルがデータの変動を完全に説明している状態。

    つまり、残差による変動 S _ e 0になります。


  •  R^ 2 = 0

    モデルがデータの変動を全く説明していない状態。

    この場合、 S _ R 0となり、全ての変動が残差によるものとなります。


  •  0 \lt R^ 2 \lt 1

    モデルがデータの変動の一部を説明しています。

     R^ 2 の値が大きいほど、モデルがデータをより良く説明していると言えます。


決定係数は、モデルの予測能力を評価する際に非常に有用です。

高い R^ 2値は、モデルが観測データに対して良いフィットを提供していることを示します。

ただし、 R^ 2が高いからといって、モデルが原因と結果の関係を正確に捉えているわけではないことに注意が必要です。


3. 自由度調整済み決定係数

複数のモデルを比較する際には、自由度調整済み決定係数( R^ 2 _ f)を使用することが推奨されます。

これは、モデルに予測変数が多く含まれる場合に、その影響を考慮に入れるためです。

\displaystyle{
\begin{align}
R^2_f &= 1 - \left(
\frac{
    \frac{
        S_e
    }{
        n - p - 1
    }
}{
    \frac{
        S_T
    }{
        n - 1
    }
}
\right) \\

&= 1 - \frac{n-1}{n-p-1}R^2
\end{align}
}


自由度調整済み決定係数は、モデルに無関係な変数が多く含まれるほど低下し、モデルの予測能力をより公平に評価することができます。