ひよこ統計

多重共線性

統計検定2級

中古車の価格を、走行距離と使用年数の2つで説明する 重回帰モデル を考えます。よく走った車ほど年数も経っているのが普通ですから、一方の説明変数をほかの説明変数の線形結合でかなり正確に表せることがあります。このように説明変数間に強い線形依存がある状態を多重共線性といいます。2変数間の強い相関は一例ですが、3変数以上を組み合わせて初めて現れる依存も含みます。

個々の係数がうまく定まらなくなる点が問題になります。係数の 標準誤差 が大きくなり、∣t∣ |t| が小さくなって、本当は価格を動かしている変数でも有意と判定されにくくなります。データを少し入れ替えただけで係数が大きく動き、符号が理屈と逆になることさえあります。先ほどの2つについて、片方だけを入れたモデルと、両方を同時に入れたモデルの出力を並べます。数値は架空ですが典型的な出方で、価格は万円、走行距離は万km、使用年数は年で測っています。

片方だけを入れた2本のモデル
説明変数係数標準誤差t t 値
走行距離−4.00.5−8.0
使用年数−3.00.5−6.0
両方を入れたモデル
説明変数係数標準誤差t t 値
走行距離−2.41.6−1.5
使用年数−1.21.5−0.8

上の表の2行は、走行距離だけのモデルと使用年数だけのモデルという別々の出力です。下の表は、2つを一度に入れた1本のモデルの出力です。単独では ∣t∣ |t| が 6 や 8 もあった変数が、そろえて入れたとたんに 2 を下回りました。係数は 6 割・4 割ほどに縮み、標準誤差は3倍前後に膨らんでいます。

それでも予測そのものは崩れません。この例の 決定係数 は、走行距離だけのモデルで 0.72、両方を入れても 0.73 です。片方だけのモデルと比べて説明できる量が増えないのは、2つがほとんど同じ情報しか持たないからです。片方を落としても失うものは少ない、ということでもあります。揺らぐのは、その情報を2つの係数へどう振り分けるかのほうで、混同されやすい 擬相関 とは指している場所が違います。擬相関は説明変数と被説明変数の見かけの関係、多重共線性は説明変数どうしの関係の話です。

相関行列は強いペア依存を見つける最初の手がかりですが、ペア相関が小さくても複数変数の組み合わせによる多重共線性は残ります。各説明変数をほかの説明変数で回帰して得る VIF(分散拡大係数)や、設計行列のランク・条件数も併せて確認します。問題が強ければ、目的と事前知識に基づいて変数を外す、まとめる、正則化するなどの対応を検討します。完全な線形依存があると係数は一意に定まりません。回帰係数の検定 で読んだ47市の出力に、定期収入と賞与の合計をもう1列加える場合が典型です。合計を x3 x_3 と書けばどの市でも x3=x1+x2 x_3 = x_1 + x_2 が成り立ち、予測値に現れるのは次の形だけになります。

b1x1+b2x2+b3x3=(b1+b3) x1+(b2+b3) x2b_1 x_1 + b_2 x_2 + b_3 x_3 = (b_1 + b_3)\,x_1 + (b_2 + b_3)\,x_2
x1, x2 x_1,\ x_2 :定期収入と賞与、x3 x_3 :その合計(x3=x1+x2 x_3 = x_1 + x_2 )、b1, b2, b3 b_1,\ b_2,\ b_3 :3つの説明変数それぞれの係数

b3 b_3 を 1 減らして b1 b_1 と b2 b_2 を 1 ずつ増やしても、右辺は元のままです。当てはまりがまったく同じで係数だけが違う組が無数にできるため、最小二乗法 はそのうちの1つを選べません。合計を落として2つで説明するか、合計だけを使うか、あらかじめ決めておくことになります。

予測値が同じで係数だけが違う3つの組

係数が定まらないとはどういうことか、小さなデータで確かめます。ある売店の4日ぶんの記録から、1日の売上を、午前の客数・午後の客数・その合計の3つで説明してみます。

1日目2日目3日目4日目
午前の客数 x1 x_1 (人)5896
午後の客数 x2 x_2 (人)2343
合計 x3 x_3 (人)711139
売上 y y (千円)10121610

合計の列は、上2行を足しただけの値です。ここで、切片をどれも 2 とした次の3つの係数の組を並べます。

b1 b_1 (午前)b2 b_2 (午後)b3 b_3 (合計)
組A110
組B001
組C33−2

1日目の予測値を3通りに計算してみます。組Aでは 2+1×5+1×2+0×7=9 2 + 1 \times 5 + 1 \times 2 + 0 \times 7 = 9 、組Bでは 2+0×5+0×2+1×7=9 2 + 0 \times 5 + 0 \times 2 + 1 \times 7 = 9 、組Cでは 2+3×5+3×2−2×7=9 2 + 3 \times 5 + 3 \times 2 - 2 \times 7 = 9 。すべて同じ 9 千円になりました。残りの3日も同様で、4日ぶんの予測値はどの組でも 9, 13, 15, 11 です。

したがって残差も 1, −1, 1, −1 で共通、残差平方和は 1+1+1+1=4 1+1+1+1 = 4 とどの組でも変わりません。しかも、この 4 は最小の値です。合計の列を外して午前と午後の2つだけで最小二乗法を当てはめると、切片 2・b1=1 b_1 = 1 ・b2=1 b_2 = 1 が求まり、これは組A そのものだからです。最小二乗法は残差平方和を最小にする係数を選ぶ方法ですが、その最小の位置に3つ(実際には無数の組)が並んでいるため、そこから1つを選ぶ根拠を持ちません。

組Cを額面どおりに読むと、合計の係数が −2 なので「客が多い日ほど売上が下がる」ことになります。もちろんそう読むのは誤りで、係数が決まっていないだけです。ここまで極端でなく、3つの変数のあいだの相関が強いだけであれば、最小二乗法は係数を1つ返します。ただしそれは、当てはまりのほとんど変わらない多くの組から選ばれた1つです。データがわずかに変われば別の組に移ります。この振れ幅が、はじめに見た中古車の表の標準誤差にあたります。走行距離と使用年数のどちらが価格を下げているのかをデータが決めきれない、というのが、両方を入れたモデルの 1.6 や 1.5 という値の中身です。

入門問題

全 4 問
問 1

重回帰分析で多重共線性と呼ばれる状態の説明として最も適切なものはどれですか。

問 2

説明変数どうしが強く相関しているとき、個々の回帰係数の推定に起こることとして最も適切なものはどれですか。

問 3

説明変数どうしが強く相関している重回帰モデルについて、手元のデータへの当てはまりの良さに関する記述として最も適切なものはどれですか。

問 4

消費支出を説明する重回帰モデルに、定期収入・賞与・その2つの合計の3つを説明変数として同時に入れました。このとき起こることとして最も適切なものはどれですか。