玄関雑学の部屋雑学コーナー統計学入門

第7章 重回帰分析

この章では重回帰分析の原理と結果の解釈方法、そして各種の変数選択手法とパス解析について解説します。

7.1 重回帰モデル

(1) 単回帰分析と重回帰分析

重回帰分析(multiple regression analysis)は多変量解析の中で最もよく利用される手法です。 名前から想像されるように、この手法は回帰分析を多変量に拡張した手法であり、あるデータに影響を与えている他のデータが多数ある時に、その影響のしかたを直線で近似して分析する手法です。

普通の回帰分析と同様に、この手法もあるデータと別のデータの間の因果関係がはっきりしている、または因果関係を想定しているデータに適用します。 例えば各種の項目を総合して概括評価が行われている時に、その概括評価の評価規準つまり各項目の重要度を分析したい場合などに適用します。 なお重回帰分析と区別するために、普通の回帰分析を単回帰分析(simple regression analysis)と呼ぶことがあります。 (→5.1 相関係数と回帰直線)

例として第6章の表6.1.1のデータに重回帰分析を適用してみましょう。 このデータの場合、TCとTGに基づいて重症度を判定したので因果関係は明白です。 しかしこの表を眺めているだけではTCとTGが重症度にどのような影響を及ぼしているのかわかりません。

表6.1.1 脂質異常症患者の
TCとTGと重症度
患者No.TCTG重症度
12201100
22301501
32401502
42402501
52502003
62601503
72602502
82602901
92702504
102802904

そこでデータの分布状態がよくわかるようにグラフを描くことにしましょう。 といっても、残念ながらウェブではホログラムのような3次元表示はできないので、表6.1.1のデータをそのままプロットするわけにはいきません。 そこで3つの項目から2項目ずつ選んで3枚の散布図を描き、参考までに3次元プロットの見取り図を添えておくことにしましょう。

図7.1.1の左上が見取り図、右上がTCと重症度の散布図、左下が重症度とTGの散布図、右下がTCとTGの散布図です。 TCと重症度の散布図と座標軸を合わせるために、他の2枚の散布図は座標軸を反転しているので注意してください。 左上の見取り図にはデータのプロットだけでなく重回帰式が表す平面も描いてあります。 これについては次節で説明します。

図7.1.1 見取り図と3種類の散布図

図7.1.1に説明変数と目的変数だけでなく説明変数同士の散布図、つまりTCとTGの散布図も描いてあるのを見て不思議に思うかもしれません。 しかし重回帰分析は説明変数同士の関係も計算に入れて分析するので、それが直線的であるかどうかも確認する必要があるのです。 そしてその関係は因果関係ではなく、お互いに影響を及ぼし合っているという相関関係を想定します。 図7.1.1を見ると表6.1.1における3項目間の関係は直線的であり、重回帰分析を適用しても問題なさそうです。

ところで賢明な読者は図7.1.1が3次元プロットの見取り図、正面図、側面図、および立面図になっていることにお気付きでしょう。 そしてもっと賢明な読者は、もし項目が4つ以上あったら4次元以上のプロットが必要になり、その見取り図を描くことはもちろん、そんなプロットを想像することすら不可能になってしまうことにもお気付きでしょう。 そしてもっともっと賢明な読者は(←しつこい!(^^;))、この方法ではp個の項目についてp(p-1)/2枚の散布図を描く必要があり、もし10項目あったら45枚もの散布図を描かなければならないことにもお気付きでしょう。

正直いって、それは恐ろしく面倒な作業です。 項目数が少ないうちはまだ何とかなりますが、10項目以上になるとほとんど手に負えません。 しかし正しい解析結果を得るためには、データを目で見て適切かどうかを判断するというこの重要な作業を省くことはできません。 そこで折衷案として項目数が多い時は目的変数と各説明変数の散布図だけを描き、説明変数同士の散布図は省略することにしても良いでしょう。 それなら説明変数の数だけ散布図を描くだけです。

原則として多変量解析は単変量解析でそれなりの結果が出ている時に、それらを数学的に総合するためのものです。 そのため重回帰分析を適用する前に目的変数と各説明変数の散布図を描き、各変数の基本統計量と相関係数または回帰直線ぐらいは計算しておくべきです。

(2) 重回帰モデル

重回帰分析では目的変数yと説明変数xの間に次のような直線的な関係——数学的には線形関係といいます——があると仮定します。 これを(線形)重回帰モデルといい、β0切片(intercept)、βj偏回帰係数(partial regression coefficient)といいます。

y = β0 + β1x1 + … + βjxj + … + βpxp + ε (j = 1,…,p)
β0:切片  βj:偏回帰係数  ε:yの回帰誤差
表6.1.1の重回帰モデル:y(重症度) = β0 + β1x1(TC) + β2x2(TG) + ε (p = 2)

偏回帰係数は回帰直線における傾き、つまり回帰係数に相当する値です。 ただし回帰係数と少し違い、「他の説明変数が一定」という条件で、ある説明変数が「1」変化した時に目的変数がいくつ変化するかを表す値です。 そして偏回帰係数と区別するために、普通の回帰係数を単回帰係数と呼ぶことがあります。 切片は回帰直線の切片と同じく単なる「ゲタ」です。 いくら高いゲタを履いても人の身長そのものは変わらないのと同様に、重回帰モデルの本質的な部分は偏回帰係数にあります。

単回帰分析と同様に重回帰分析も最小2乗法の原理を応用して計算します。 つまり回帰誤差εを平方し、それを合計した値を最小にするような偏回帰係数推定値bを求め、それを母集団の偏回帰係数βの推定値にします。 その計算方法は単回帰分析以上に複雑怪奇なので計算方法の説明は(注1)を見ていただくとして、その結果は次のような形の式で表されます。 この式を重回帰式といい、直線回帰式を多変量に拡張したものに相当します。 (注1)

 (j = 1,…,p)
:yの推定値   b0:切片推定値  bj:偏回帰係数推定値

重回帰モデルは多変量解析における基本的なモデルなので、重回帰分析以外にも色々な多変量解析手法で利用されます。 例えば一元配置分散分析は説明変数としてダミー変数を用いた重回帰モデルで表現することができます。 また共分散分析(ANCOVA:analysis of covariance)は説明変数の中に計量尺度のデータと名義尺度のデータが混在した重回帰モデルで表現することができ、判別分析(discriminant analysis)は目的変数が名義尺度の重回帰モデルで表現することができます。 これらの手法については第8章第9章で説明します。 (注2) (→4.1 多標本の計量値第8章 共分散分析第9章 判別分析)


(注1) またまた頭の痛い話で恐縮ですが、重回帰分析の計算方法を理解するためにはベクトルと行列の知識と微分の知識、特に逆行列の知識が必要になります。 それらについての解説は「ベクトルと行列」の第3章、第7章、第8章あたりをご覧ください。

というわけで「ベクトルと行列」を読んでいただいたことにして、重回帰分析をベクトルと行列を用いて記述してみましょう。

重回帰モデル

  
        

このように重回帰モデルをベクトルと行列で記述すると、偏回帰係数βjが変数xjの係数であるのに対して切片β0は定数項の係数であることがよくわかります。 この重回帰モデルに最小2乗法を適用して、バラメーターβ最良線形不偏推定量(BLUE解)を求めると次のようになります。

  
→ 最小

この誤差の2乗和Qを最小にするは、Qをで偏微分したものをp(p次元ゼロベクトル)と置いた連立方程式の解です。


∴['] = X'

これを正規方程式(normal equations)といい、行列[']が正則つまり逆行列が存在する時(行列式|'|≠0の時)は解を持ちます。 [']は単純積和行列と呼ばれることもあり、具体的には次のような内容の(p+1)次対称行列です。

この行列に逆行列が存在するなら、その逆行列を正規方程式の両辺に左からかけて解は次のようになります。


b0:切片推定値  bj:偏回帰係数推定値 (j = 1,…,p)

ここで説明変数が1つの時について具体的に計算してみましょう。

  

余因子行列を用いて単純積和行列の逆行列を求めると次のようになり、単回帰分析の結果と一致します。 (→5.1 相関係数と回帰直線)

|'| = n∑xi12 - (∑xi1)2 = nS11   X11 = Σxi12   X12 = -Σxi1   X21 = -Σxi1   X22 = n

偏回帰係数ベクトルの解を元の重回帰モデルに代入すると次のようになります。

   = [']-1X'

行列は次のような性質を持ち、n次元ベクトル空間上のを(p+1)次元部分空間に正射影してに変換する射影子(projection)になります。 (→ベクトルと行列 6.ベクトルの直交分解と直交変換 (注1))

' = ([']-1X')' = ([']-1X')'' = [']-1X' (n次元対称行列)
2 = ([']-1X')([']-1X') = [']-1[X'X][']-1X' = [']-1X' (ベキ等行列:行列のベキが元の行列に等しい行列)

このことから、重回帰モデルをベクトル空間上で幾何学的に解釈すると図7.1.2のようになります。 すなわちn次元ベクトル空間Rnにおいて、nベクトルとp個の説明変数ベクトル1pを基底とする(p+1)次元部分空間Rp+1が考えられ、これはn次元空間中の(p+1)次元超平面(hyperplan)を構成します。 この超平面に目的変数ベクトルを正射影したものが推定値ベクトルになり、その超平面の直交補空間つまり{n-(p+1)}次元部分空間Rn-(p+1)を正射影したものが誤差(残差)ベクトルεになります。

図7.1.2 重回帰モデルの幾何学的解釈 図7.1.3 説明変数がない時の重回帰モデル

なぜならn1pの1次結合として次のように表されるので、これらを基底とする超平面に含まれます。 そのためを射影子によってその超平面に射影したものになるからです。

さらには次のような最小2乗条件を満足する射影つまりεの大きさを最小にする射影であり、必然的に正射影になります。 そしてはこの最小2乗条件を満足する解から作った射影子ですから、必然的に正射影のための射影子になります。 これらのことは図7.1.2から直観的に理解できると思います。

→ 最小

またn1pがn次元ベクトル空間における(p+1)次元部分空間の基底になるためには、nが少なくとも(p+1)以上である必要があります。 そのため例数nが(p+1)よりも少ない時は重回帰分析の解を求めることができません。

説明変数が1つもなくて、行列の成分がnベクトルだけの時は図7.1.3のようになります。 この図は第6章第2節(注2)の図6.2.2と本質的に同じものです。 つまりの平均値を成分とするベクトルyに相当し、εが偏差ベクトルyに相当します。 このことはの成分がnベクトルだけの正規方程式を解いてみると、よりはっきりします。

['] = [n]   [']-1 = [n]-1   

の分散・共分散行列:σ2[']-1 = σ2[n]-1 … myの分散=SE(標準偏差)の平方

また第6章第2節(注2)で説明したように、平均値を求めるということはデータベクトルを平均値ベクトルyと偏差ベクトルyに直交分解していることに相当します。 それと同様に、重回帰分析もデータベクトルを推定値ベクトルと誤差ベクトルεに直交分解していることに相当します。



(εは直交する)

したがってデータを最小2乗法を用いて単純に要約したものが平均値mであり、1つの説明変数との関係を考慮して要約したものが単回帰式(回帰直線)、p個の説明変数との関係を考慮して要約したものが重回帰式であるということになります。 このことから統計学とはデータを要約することであり、多変量解析がその特別 な場合として単変量解析を包含していることが理解できると思います。

ここで説明した重回帰モデルと最小2乗法は、実は暗黙のうちに誤差について次のような仮定を置いています。

不偏性:E(ε) =
等分散性・無相関性(独立性):
※σ2 = σ12 = … = σi2 = … = σn2:共通誤差分散
の分散・共分散行列:V() = σ2[']-1

もし等分散性が成り立たなければ誤差分散の逆数を重みとした重み付け重回帰モデルになり、重み付け最小2乗法によって最良不偏推定値(BLUE解)を求めます。

重み付け重回帰モデル:1/2 = 1/2Xβ + 1/2ε
重み行列:   
重み:   
※重みを誤差分散の逆数にしない時もある。
正規方程式:['] = X'
最良不偏推定値: = [']-1X'
の分散・共分散行列:V() = [']-1

重み付け重回帰モデルは√w・yと√w・xを用いた重回帰モデルであり、計算方法は重回帰モデルとほとんど同じです。 ただし平均値を求める時は例数nの代わりに重み合計Σ√wiを用いるなど、細かい点が少し異なります。 (→5.3 計数値の相関分析と回帰分析 (注4)7.2 7.2 重回帰分析結果の解釈 (注3)9.3 1変量の場合 (注1)10.3 ロジスティック回帰分析の計算方法 (注1))

(注2) 水準数つまり群の数がp個の一元配置モデルは、(p-1)個のダミー変数を説明変数にした重回帰モデルとして次のように表現することができます。

一元配置モデル:y = μ + αj + ε (j = 1,…,p)
μ:総平均値  αj:第j水準の効果  ε:誤差
重回帰モデル: = β + ε = β0n + β22 + … + βjj + … + βpp + ε
xj:群Aj(第j水準)に属す時だけ「1」で、他は「0」のダミー変数 (j = 2,…,p)
A1:x2 = … = xp = 0   Aj:x2 = … = xj-1 = 0, xj=1, xj+1 = … = xp = 0
β0 = μ + α1 = μ1 (A1の母平均値)   βj = αj - α1 = (μj - μ) - (μ1 - μ) = μj - μ1 (Ajの母平均値 − A1の母平均値)
  

この場合、は一元配置のデザインを決める行列なのでデザイン行列と呼ばれます。 ダミー変数が群の数より1つ少ないのは(p-1)個でp個の群を過不足なく表現できるからであり、これは要因Aの自由度が(p-1)になることと関連しています。 ダミー変数が全て0で表される群1は便宜的に基準になる群なので、普通はコントロール群を割り当てます。

このモデルについて正規方程式を解くと次のようになります。

  
rj:Ajの例数   :yの全合計   :群jにおけるyの合計

'の逆行列は余因子行列を用いて次のように計算します。


  
切片:b0 = my1 (A1の平均値)   偏回帰係数:bj = myj - my1 (Ajの平均値 − A1の平均値)
重寄与率:R2 = 要因Aの寄与率 = η2

この時、回帰についての分散分析表がそのまま一元配置分散分析表になり、重寄与率が相関比ηの平方になり、重回帰分析は一元配置分散分析と一致します。 そしてこの時の重回帰モデルを多次元空間で表すと図7.1.4のようになります。 この図でA1群のプロットはy軸上にプロットされ、A2群〜Ap群のプロットはx2−Y平面〜xp−Y平面上にプロットされます。 そして回帰直線を多次元に拡張した回帰超平面が、それら3群のプロットの重心つまり平均値を通ります。

図7.1.4 重回帰モデルによる一元配置分散分析の概念図

また偏回帰係数bjはA1群の平均値とAj群の平均値の差を表し、bjの検定は平均値の差のフィッシャー型多重比較になります。 したがって多重比較の考え方を普通の重回帰分析にも適用するなら、偏回帰係数の検定はフィッシャー型ではなく、例えばダネット型などにすべきだと考えたくなります。

しかし普通の重回帰分析では説明変数間に関連性があり、それらが有機的に組み合わさって目的変数に影響を与えていると考えます。 そのため個々の説明変数を独立に検定することにはあまり意味がなく、特定の説明変数の組み合わせが目的変数にどの程度影響しているかを評価する、つまりどのような説明変数を組み合わせたモデルが最適かを評価することに重点があります。

そして個々の説明変数の偏回帰係数を検定するのは、あくまでも個々の説明変数の寄与分を独立に評価するためです。 多重比較のように、それらの検定結果を”いいとこ取り”してファミリーとしての結論を導くことはありません。 そのため普通の重回帰分析では偏回帰係数の検定に多重比較を適用する必要はありません。 (→4.1 多標本の計量値)

また説明変数が計量値ではなく一元配置分散分析のような名義尺度のデータばかりの時も、ダミー変数を利用して重回帰分析を行うことができます。 例えば説明変数として性と診断名があり、次のように分類されていたとします。

性:男・女  診断名:高脂血症・高血圧症・心疾患・その他

この場合、次のように4つのダミー変数を用いた重回帰モデルで表現することができます。

=β + ε = β0n11 + β22 + β33 + β44 + ε
性 … 男:x1 = 0 女:x1 = 1
診断名 … 高脂血症:x2 = 1, x3 = 0, x4 = 0  高血圧症:x2 = 0, x3 = 1, x4 = 0  心疾患:x2 = 0, x3 = 0, x4 = 1  その他:x2 = 0, x3 = 0, x4 = 0

このモデルについて重回帰分析を行うと、その偏回帰係数は次のようになります。

b0:切片(性:男 かつ 診断名:その他の群の平均値)   b1:性差(女−男)
b2:疾患差(高脂血症−その他)   b3:疾患差(高血圧症−その他)  b4:疾患差(心疾患−その他)

これらは性差または疾患差であると同時に、名義尺度に数量を与えて数量化(quantification)または尺度化(scaling)したものと解釈することができます。 このように名義尺度に何らかの規準に従って数量を与える手法を数量化理論(quantification theory)といいます。 そしてその中で、ダミー変数による重回帰分析に相当する手法を数量化I類といいます。 数量化理論は日本の林知己夫博士によって開発されたので日本では有名です。