べんきのにっき

いろいろと垂れ流します。

続・重回帰分析で変数をいじると?

概要

重回帰分析で、説明変数の中心化、あるいはある定数だけずらした場合の結果を比較する。

重回帰分析で変数をいじると?の続きの記事です。

注意

行列とベクトルが太字になっていないので、寛容な心を持って読み替えてください。

設定

この後使う記号たち

※よくある重回帰と同じなので、知っているなら読み飛ばしてOK。

※前回の記事と同じです。

計画行列 X(n行p+1列)

1列目は定数項のため、要素が全て1。2列目からp+1列目はp個の説明変数にあたるベクトル。

 \displaystyle
X= ( 1_{n} , x_{1} , \cdots ,x_{p} )

 1_{n} , x_{ \cdot} はそれぞれ次のような列ベクトル。


1_{n} = ( 1,1, \cdots ,1 )^{T} \\
x_{1} = ( x_{1,1} , x_{1,2} , \cdots , x_{1,n} )^{T} \\
\vdots \\
x_{p} = ( x_{p,1} , x_{p,2} , \cdots , x_{p,n} )^{T}

目的変数ベクトル y(n行1列)

 y

重回帰のモデル

 y=X \beta +\varepsilon

 \beta の最小二乗解  \hat{ \beta}

 \displaystyle
\hat{\beta} = \left( X^{T}X \right)^{-1} X^{T}y

予測値  \hat{y}

 \hat{y} =X \hat{\beta} = X \left( X^{T} X \right)^{-1} X^{T} y

決定係数  R^{2}

 \displaystyle  R^{2} = 1- \frac{||y - \hat{y} ||^{2} }{ || y - \bar{y} ||^{2} }

AIC

 \displaystyle
AIC = n \left( \mathrm{log} 2 \pi + 1 + \mathrm{log} \frac{1}{n} || y - \hat{ y } ||^{2} \right) + 2(p+2)

説明変数をずらす

説明変数をずらすのは、xに右から適当な行列Mをかける操作になる。具体的には、列基本変形の行列を考えればよい。 Mはこんな感じになる。

$$ M= \begin{pmatrix} 1 & k_{1} & k _{2} & \cdots & k _{p} \\ 0 & 1 & 0 & \cdots & 0 \\ 0 & 0 & 1 & \cdots & 0 \\ \vdots & \vdots & \vdots & \ddots & 0 \\ 0 & 0 & 0 & \cdots & 1 \\ \end{pmatrix} $$

 k_{i} = - \bar{x} _{i} とすると、中心化する変形になる。

実際にそうなっていることを確認してみる。 次のような計画行列Xと、列基本変形の行列Mで計算する。

$$ X= \begin{pmatrix} 1 & x _{1,1} & x _{1,2} \\ 1 & x_{2,1} & x _{2,2} \\ 1 & x_{3,1} & x _{3,2} \\ 1 & x_{4,1} & x _{4,2} \\ 1 & x_{5,1} & x _{5,2} \\ \end{pmatrix} $$

$$ M= \begin{pmatrix} 1 & - \bar{x} _{1} & - \bar{x} _{2} \\ 0 & 1 & 0 \\ 0 & 0 & 1 \\ \end{pmatrix} $$

XMの積は次のようになる。

$$ XM= \begin{pmatrix} 1 & x _{1,1} - \bar{x} _{1} & x _{1,2} - \bar{x} _{2} \\ 1 & x_{2,1} - \bar{x} _{1} & x _{2,2} - \bar{x} _{2} \\ 1 & x_{3,1} - \bar{x} _{1} & x _{3,2} - \bar{x} _{2} \\ 1 & x_{4,1} - \bar{x} _{1} & x _{4,2} - \bar{x } _{2} \\ 1 & x_{5,1} - \bar{x} _{1} & x _{5,2} - \bar{x} _{2} \\ \end{pmatrix} $$

確かに中心化された。

Xの変数を列ごとに適当にk足したものを  X_{k} とおくと、

 X_{k}=XM と書ける。

次のようなモデルについて考える。

 \displaystyle
y= X _{k} \beta_{2}

このモデルの偏回帰係数、決定係数、AICについて考える。

偏回帰係数

前回の記事と同様に展開できる。

 \displaystyle
\hat{ \beta_2 } = \left( X _{k} ^{T} X _{k} \right)^{-1} ( X _{k} )^{T}y

 \displaystyle
= \left( (XM)^{T} XM \right)^{-1} (XM)^{T}y

 \displaystyle
= \left( M ^{T} X^{T} XM \right)^{-1} M ^{T} X^{T}y

 \displaystyle
= M^{-1} \left( X^{T} X \right)^{-1} {M ^{T} }^{-1} M ^{T} X^{T}y

 \displaystyle
= M^{-1} \left( X^{T} X \right)^{-1} X^{T} y

 \displaystyle
= M^{-1} \hat{ \beta }

Mの逆行列

 M ^{-1}ってどんな行列だろうか。

3行3列のMを例に、掃き出して計算してみよう。

$$ \begin{pmatrix} 1 & k _{1} & k _{2} & | & 1 & 0 & 0 \\ 0 & 1 & 0 & | & 0 & 1 & 0 \\ 0 & 0 & 1 & | & 0 & 0 & 1 \\ \end{pmatrix} $$

2行目を   - k _{1}倍して1行目に足す。

$$ \begin{pmatrix} 1 & 0 & k _{2} & | & 1 & - k _{1} & 0 \\ 0 & 1 & 0 & | & 0 & 1 & 0 \\ 0 & 0 & 1 & | & 0 & 0 & 1 \\ \end{pmatrix} $$

3行目を   - k _{2}倍して1行目に足す。

$$ \begin{pmatrix} 1 & 0 & 0 & | & 1 & - k _{1} & - k _{2} \\ 0 & 1 & 0 & | & 0 & 1 & 0 \\ 0 & 0 & 1 & | & 0 & 0 & 1 \\ \end{pmatrix} $$

 M ^{-1} が計算できた。

$$ M ^{-1} = \begin{pmatrix} 1 & - k _{1} & - k _{2} \\ 0 & 1 & 0 \\ 0 & 0 & 1 \\ \end{pmatrix} $$

つまり \displaystyle M^{-1} \hat{ \beta } は 定数項の偏回帰係数が変化するが、それ以外の偏回帰係数は変化しない。

決定係数

前回の結果を考えると、計算するまでもないが一応計算する。 冗長なので飛ばしてもよい。

予測値 \hat{y_{2}} は次のようになる。

 \displaystyle
\hat{y_{2}} = X _{k} \hat{\beta_{2}}

 \displaystyle
=XM M^{-1} \beta

 \displaystyle
=X \hat{ \beta } = \hat{y}

予測値は全く変化しない。

決定係数  R_{2}^{2}は次のように計算できる。

 \displaystyle
R_{2}^{2} = 1- \frac{ || y - \hat{ y_{2} } ||^{2} }{ || y - \bar{y} ||^{2} }

 \displaystyle
= 1- \frac{ || y - \hat{ y } ||^{2} }{ || y - \bar{y} ||^{2} } = R^{2}

決定係数は説明変数をずらしても変化しない。

AIC

説明変数を定数倍したときのAIC AIC_{2}とおく。

 \displaystyle
AIC_2 = n \left( \mathrm{log} 2 \pi + 1 + \mathrm{log} \frac{1}{n} || y - \hat{ y_{2} } ||^{2} \right) + 2(p+2)

 \displaystyle
 = n \left( \log 2 \pi + 1 + \log \frac{1}{n} || y - \hat{ y } ||^{2} \right) + 2(p+2) = AIC

説明変数をずらしても、 \hat{y} が変わらないのでAICは変化しない。

説明変数も目的変数もずらす

Xに加えて、yもずらす。yを変換し、以下のようなベクトル y_3 を考える。mはスカラー

 y_{3} = y- m1_{n}

 m = \bar{y}なら、yを中心化していることを表す。

このとき、次のモデルについて考えてみる。

 y_{3} = X_{k} \beta_{3} + \varepsilon

このモデルの偏回帰係数、決定係数、AICについて考える。

偏回帰係数

 \displaystyle
\hat{ \beta_3 } = \left( X _{k} ^{T} X _{k} \right)^{-1} ( X _{k} )^{T} y_{3}

 \displaystyle
= \left( X _{k}^{T} X _{k} \right)^{-1} ( X _{k} )^{T} (y - m 1_{n})

 \displaystyle
=  \left( X _{k} ^{T} X _{k} \right)^{-1} ( X _{k})^{T} y -   \left( X _{k} ^{T} X _{k} \right)^{-1} ( X _{k})^{T} m 1_{n}

 \displaystyle
= \hat{ \beta_{2} } -  m \left( X _{k} ^{T} X _{k} \right)^{-1} ( X _{k})^{T} 1_{n}

ここで突然 m \left( X _{k} ^{T} X _{k} \right)^{-1} ( X _{k})^{T} 1_{n} というのが出てくる。

いくつか計算してみた感じ、最初の要素がmで、それ以外の要素が0なベクトルになりそうな感じ。

残念ながら、自分程度の数学力ではこれに一般的な証明を与えることができなかった。以下で Mが中心化行列の場合に限って、具体的な値を求める。

Mが中心化行列の時の m \left( X _{k} ^{T} X _{k} \right)^{-1} ( X _{k})^{T} 1_{n} の値

Mが中心化行列の時、 X _{k} ^{T} X _{k}は次で表される(p+1)行(p+1)列のブロック行列になる。 ただし、 S _{x} ( x _{1} , \cdots , x _{p} )の偏差積和行列である。(nで割ると共分散行列)

$$ X _{k} ^{T} X _{k} = \begin{pmatrix} n & 0 \\ 0 & S _{x} \\ \end{pmatrix} $$

つまり、この逆行列 \left( X _{k} ^{T} X _{k} \right) ^{-1}

$$ \left( X _{k} ^{T} X _{k} \right) ^{-1} = \begin{pmatrix} \frac{1}{n} & 0 \\ 0 & S _{x} ^{-1} \\ \end{pmatrix} $$

次に、  ( X _{k} )^{T} 1_{n} だが、これは次のような列ベクトルになる。

 ( X _{k})^{T} 1_{n} = (n,0,0, \cdots , 0) ^{T}

先頭の要素がnで、それ以外はすべて0である。

よって、

 m \left( X _{k} ^{T} X _{k} \right)^{-1} ( X _{k})^{T} 1_{n} = (m,0,0, \cdots , 0) ^{T}

となる。 これで中心化行列に限った場合には証明できたはず。

偏回帰係数の続き

結局、 \hat{ \beta_3 }

 \displaystyle
\hat{ \beta_3 }= \hat{ \beta_{2} } -  (m,0,0, \cdots , 0)^{T}

となり、yから増減させた値だけ、定数項の偏回帰係数が変化する。

決定係数

予測値 \hat{y_{4}} は次のようになる。

 \displaystyle
\hat{y_{4}} = X _{k} \hat{ \beta_3 } = X _{k} \hat{ \beta_{2} } - X _{k}  (m,0,0, \cdots , 0)^{T}

 \displaystyle
=XM M^{-1} \beta - X M  (m,0,0, \cdots , 0)^{T}

 \displaystyle
=X ( \hat{  \beta } - (m,0,0, \cdots , 0 ) ^{T} ) = \hat{y} -m 1 _{n}

予測値はmだけ増減する

よって、決定係数  R _{3}^{2}は次のように計算できる。

 \displaystyle
R _{3}^{2} = 1- \frac{ || y _{3} - \hat{ y _{4} } ||^{2} }{ || y _{3} - \bar{y _{3}} ||^{2} }

 \displaystyle
= 1- \frac{ || (y -m 1_{n} ) - ( \hat{ y } - m 1 _{n} ) ||^{2} }{ || (y - m 1 _{n} )   -  ( \bar{y} - m 1 _{n} ) ||^{2} } = 1- \frac{ || y - \hat{ y }  ||^{2} }{ || y  -  \bar{y} ||^{2} } = R^{2}

決定係数は説明変数と目的変数をずらしても変化しない。

AIC

目的変数もずらしたときのAIC AIC_{3}とおく。

 \displaystyle
AIC_3 = n \left( \log 2 \pi + 1 + \log \frac{1}{n} || y _{3} - \hat{ y_{4} } ||^{2} \right) + 2(p+2)

 \displaystyle
 = n \left( \log 2 \pi + 1 + \log \frac{1}{n} || (y -m 1_{n} ) - ( \hat{ y } - m 1 _{n} ) ||^{2} \right) + 2(p+2)

 \displaystyle
 = n \left( \log 2 \pi + 1 + \log \frac{1}{n} || y - \hat{ y }  ||^{2} \right) + 2(p+2) = AIC

説明変数をずらしても、yと \hat{y} が同じだけずれるのでAICは変化しない。

結論

好きなだけ中心化したらいいんじゃないだろうか。