統計 26 · 多変量解析 — 次元を下げる・まとめる・分ける

Chapter 26

多変量解析 — 次元を下げる・まとめる・分ける

この章がなぜ必要なのか——変数が多すぎるときにどうするか.

アンケートに 50 問ある。センサーが 200 種類のデータを吐く。 遺伝子の発現量が 2 万個ある。

こうなると、1 変数ずつ見ても全体像は掴めないし、 19 章の重回帰に全部突っ込めば多重共線性で破綻する。

多変量解析は「変数のかたまりを、少数の意味のある軸にまとめる」技術である。 そして主成分分析の中身は、19 章で見た「回帰=射影」という幾何が、 最も純粋な形で現れたものでもある。

このシリーズの最終章として、ここまでの道具が合流する場所を見ていく。

この章で使う既出の用語(定義は各リンク先). 未知(01 章 2 節)、目的変数(01 章 4 節)、統計量(01 章 2 節)、外れ値(03 章 1 節)、区間(06 章 2 節)、標準誤差(06 章 6 節)、証明(08 章 3 節)、標本分布(09 章 1 節)、数値(10 章 1 節)、確率(10 章 3 節)、ばらつき(12 章 5 節)、効果量(12 章 5 節)、復元(16 章 7 節)、割合(17 章 3 節)、正則化(19 章 8 節)、目安(20 章 3 節)、ロジスティック回帰(21 章 6 節)、ロジット(21 章 2 節)、多重共線性(21 章 8 節)、完全分離(21 章 8 節)、必要サンプル数(21 章 8 節)、予測(22 章 5 節)、時系列(22 章 3 節)、解釈(22 章 5 節)、過学習(22 章 1 節)、MAP(23 章 4 節)

1. 準備 — 分散共分散行列と相関行列

\(p\) 個の変数を持つデータ行列 \(X\)(\(n\times p\)、各列は中心化済み)について、

\[ S = \frac{1}{n-1}X^\top X \quad (p\times p \text{ の分散共分散行列}) \]

相関行列 \(R\) は、各変数を標準化してから同じ計算をしたもの。

\[ \text{tr}(S)=\sum_j s_{jj} = \text{全変動} \]

トレース(対角和)が「情報の総量」であるという見方が、この章の鍵になる。

2. 主成分分析 (PCA)

目的

\(p\) 次元のデータを、情報の損失を最小にしながら \(k\) 次元(\(k<p\))に落とす。

定式化

第 1 主成分を、分散が最大になる方向として定義する。

\[ z_1 = \mathbf{a}_1^\top\mathbf{x}, \qquad \lVert\mathbf a_1\rVert=1 \]
\[ V[z_1]=\mathbf a_1^\top S\mathbf a_1 \quad\to\quad \text{最大化} \]

ラグランジュ未定乗数法による導出

制約 \(\mathbf a^\top\mathbf a=1\) のもとで \(\mathbf a^\top S\mathbf a\) を最大化する。

\[ L = \mathbf a^\top S\mathbf a - \lambda(\mathbf a^\top\mathbf a-1) \]
\[ \frac{\partial L}{\partial\mathbf a}=2S\mathbf a - 2\lambda\mathbf a = \mathbf 0 \]
\[ \boxed{S\mathbf a = \lambda\mathbf a} \]

固有値問題になった。 このとき

\[ V[z_1]=\mathbf a^\top S\mathbf a = \mathbf a^\top(\lambda\mathbf a)=\lambda \]

∎

\[ \boxed{\text{主成分の方向} = S \text{ の固有ベクトル}, \qquad \text{その分散} = \text{対応する固有値}} \]

固有値を大きい順に \(\lambda_1\ge\lambda_2\ge\cdots\ge\lambda_p\) と並べ、 対応する固有ベクトルが第 1、第 2、… 主成分になる。

\(S\) は対称行列なので、固有ベクトルは互いに直交する。 つまり主成分どうしは無相関である。

寄与率

\[ \text{第 } j \text{ 主成分の寄与率}=\frac{\lambda_j}{\sum_{m=1}^p\lambda_m}, \qquad \text{累積寄与率}=\frac{\sum_{m\le k}\lambda_m}{\sum_m \lambda_m} \]

\(\sum\lambda_m = \text{tr}(S)\) なので、固有値は「全変動をどう分け合ったか」を表す。

主成分の数の決め方

基準内容
累積寄与率70〜90% を目安
カイザー基準固有値 > 1(相関行列の場合)。平均以上の情報を持つ成分
スクリープロット固有値の減り方が緩やかになる「肘」で切る
平行分析ランダムデータの固有値と比較。最も客観的

標準化するかどうか

使う行列状況
相関行列(標準化する)変数の単位が違う。通常はこちら
分散共分散行列単位が同じで、分散の大きさ自体に意味がある

標準化しないと何が起きるか. 身長 (cm) と体重 (kg) と年収 (円) を混ぜると、 年収の分散が桁違いに大きいので、第 1 主成分がほぼ年収だけになる。 それは「次元削減」ではなく「一番スケールの大きい変数を選んだ」だけである。

特異値分解 (SVD) との関係

\[ X = U\Sigma V^\top \]

実装では固有値分解より SVD を使う(数値的に安定)。 sklearn.decomposition.PCA の内部も SVD である。

また SVD の低ランク近似は、フロベニウスノルムの意味で最良の近似であることが証明されている (エッカート・ヤングの定理)。PCA が「最も情報を失わない次元削減」であることの根拠になっている。

幾何学的な意味

PCA は「データ雲に最もよくフィットする直交軸を見つける」ことである. 第 1 主成分は、データを射影したときに最も長く伸びる方向。 同時に、元の点からの距離の二乗和が最小になる方向でもある (伸びる方向を取れば、残る垂直成分が最小になるため)。

18 章の回帰は「\(y\) 方向の残差」を最小化したが、 PCA は「直交方向の距離」を最小化する。これが両者の決定的な違いである。 だから PCA には目的変数がない(教師なし学習)。

主成分の解釈

因子負荷量 = 主成分と元の変数の相関。

\[ \text{loading}_{jm}=a_{jm}\sqrt{\lambda_m}/s_j \]

解釈は常に主観的である. 「第 1 主成分は総合学力、第 2 主成分は文系/理系の傾向」といった読み方は、 数学が教えてくれるものではなく、分析者が意味づけるものである。 無理に意味を付けようとせず、「解釈できない主成分もある」と認めることも重要。

3. 因子分析

PCA と似ているが、発想が逆である。

PCA因子分析
発想観測変数を合成して成分を作る潜在的な因子が観測変数を生んでいると考える
方向観測 → 成分因子 → 観測
モデル\(z = \mathbf a^\top\mathbf x\)\(x_j = \sum_m \ell_{jm}f_m+\varepsilon_j\)
誤差考えない独自因子 \(\varepsilon_j\) を明示
目的次元削減構造の発見・解釈

「知能」「顧客満足度」のような、直接測れない概念を想定するのが因子分析である。 心理学・マーケティングで広く使われる。

回転(バリマックス回転など)で解釈しやすくするのが特徴。 因子軸は回転しても当てはまりが変わらないので、 「各変数が少数の因子にだけ強く負荷する」ように回転させる(単純構造)。

4. クラスタリング

階層的クラスタリング

  1. 各点を 1 つのクラスタとする
  2. 最も近いクラスタ 2 つを併合
  3. 1 つになるまで繰り返す → デンドログラム

距離の定義:

名前定義
ユークリッド距離\(\sqrt{\sum(x_j-y_j)^2}\)
マンハッタン距離\(\sum\lvert x_j-y_j\rvert\)
マハラノビス距離\(\sqrt{(\mathbf x-\mathbf y)^\top S^{-1}(\mathbf x-\mathbf y)}\)

マハラノビス距離が重要な理由. 分散共分散で正規化するので、 変数のスケールと相関を自動的に考慮する。 相関の強い方向は「近い」と判定され、独立な方向は素直に測られる。 多変量の外れ値検出にも使われる。

クラスタ間距離(連結法):

方法特徴
最短距離法鎖状につながりやすい
最長距離法コンパクトな塊を作る
群平均法バランス型
ウォード法併合後の平方和増加を最小化。最もよく使われる

ウォード法は分散分析と同じ発想である. 15 章の \(SS_W\)(群内平方和)の増加が最小になるように併合する。 「群内のばらつきを小さく保つ」という基準は、統計を貫くテーマである。

k-means

  1. \(k\) 個の中心をランダムに配置
  2. 各点を最も近い中心に割り当てる
  3. 各クラスタの重心を新しい中心にする
  4. 収束するまで 2〜3 を繰り返す

目的関数:

\[ \min\sum_{i=1}^k\sum_{\mathbf x\in C_i}\lVert\mathbf x-\boldsymbol\mu_i\rVert^2 \]

これは「群内平方和 \(SS_W\) の最小化」そのものである(15 章)。 分散分析は群が既知で差を検定する。k-means は群を未知として最適な分け方を探す。 同じ量を、逆方向に使っている。

注意点内容
\(k\) を事前に決める必要エルボー法、シルエット係数、ギャップ統計量
初期値依存k-means++ で改善。複数回試す
球状クラスタを仮定細長い形や密度差には弱い
標準化が必須距離ベースなのでスケールに敏感

その他の手法

手法特徴
DBSCAN密度ベース。任意の形状、\(k\) 不要、ノイズ点を識別
混合ガウスモデル (GMM)確率モデル。所属確率が出る。EM 法で推定
スペクトラルクラスタリンググラフ理論ベース。複雑な形状に強い

GMM は k-means の確率版である. k-means が「どのクラスタか」を 0/1 で決めるのに対し、 GMM は「クラスタ 1 に 70%、クラスタ 2 に 30%」というソフトな割り当てを出す。 実は k-means は GMM の特殊ケース(分散が等しい球状、割り当てを硬くした極限)である。

5. 判別分析

教師ありの分類手法。クラスラベルが既知の状態で境界を学習する。

線形判別分析 (LDA)

各クラスが同じ共分散行列 \(\Sigma\) を持つ多変量正規分布に従うと仮定する。 ベイズの定理から判別関数を導くと、線形の境界が得られる。

\[ \delta_k(\mathbf x)=\mathbf x^\top\Sigma^{-1}\boldsymbol\mu_k-\frac{1}{2}\boldsymbol\mu_k^\top\Sigma^{-1}\boldsymbol\mu_k+\log\pi_k \]

最大の \(\delta_k\) を与えるクラスに分類する。

フィッシャーの別の見方: 「群間分散 / 群内分散を最大にする射影方向を探す」。

$$\max_{\mathbf w}\frac{\mathbf w^\top S_B\mathbf w}{\mathbf w^\top S_W\mathbf w}$$

これは 15 章の F 統計量そのものである。 分散分析が「群で説明できる変動の割合」を検定したのに対し、 LDA は「その割合が最大になる方向」を探している。 確率モデルからの導出と、この分散比からの導出が同じ答えに至るのは美しい。

QDA

共分散行列がクラスごとに違う場合。境界が二次曲面になる。柔軟だがパラメータが多く、過学習しやすい。

LDA vs ロジスティック回帰

LDAロジスティック回帰
仮定各クラスが多変量正規、共分散共通なし(より緩い)
仮定が正しいとき効率的やや劣る
仮定が崩れたとき弱い頑健
完全分離問題なし発散する(21 章)
多クラス自然に拡張多項ロジット

実務ではロジスティック回帰が使われることが多い(仮定が緩いため)が、 クラスが分離しやすく \(n\) が小さい場合は LDA が安定する。 LDA は次元削減としても使える(\(k-1\) 次元への教師あり射影)。

6. その他の多変量手法

手法目的
正準相関分析 (CCA)2 つの変数群の間の相関を最大化する軸を探す
多次元尺度構成法 (MDS)距離行列だけから座標を復元する
対応分析カテゴリデータ版の PCA。分割表の可視化
構造方程式モデリング (SEM)因子分析 + パス解析。潜在変数間の因果構造
t-SNE / UMAP非線形次元削減。可視化専用

t-SNE / UMAP の注意点. 美しい 2 次元の図が得られるが、クラスタ間の距離やクラスタの大きさに意味はない。 ハイパーパラメータで見た目が大きく変わる。 可視化の道具であって、解析の結論を出す道具ではない。 「t-SNE で 3 つのクラスタが見えた」だけを根拠に結論を出してはいけない。

7. 高次元データの注意

次元の呪い

\(p\) が大きくなると:

現象内容
データが疎になる空間の体積が指数的に増え、点がスカスカになる
距離が意味を失う最近傍と最遠点の距離の比が 1 に近づく
過学習しやすいパラメータが増える(22 章)
多重比較変数が多いほど偽の関係が出る(17 章)

距離が意味を失うことの帰結. k-means も k 近傍法も距離に依存している。 \(p\) が数百を超えると、これらの手法は原理的に機能しにくくなる。 だから高次元では、先に次元削減するか、正則化(20 章)を使うのが定石になる。

\(p > n\) のとき

\(S\) が特異になり、\(S^{-1}\) が存在しない(マハラノビス距離も LDA も計算できない)。

対策: 正則化(Ridge、20 章)、縮小推定、スパース推定、PCA で先に次元を落とす。

8. シリーズ全体のまとめ

26 章を通じて積み上げてきたものを、1 枚に俯瞰する。

部中心概念一言で
I(01-03)平均・分散・相関手元のデータを正しく要約する
II(04-08)確率・分布ばらつきを数式で書く
III(09-12)標本分布・CLT・推定・検定一部から全体を推し量る
IV(13-17)t / χ² / F 検定・多重比較「差がある」を正しく主張する
V(18-22)回帰・正則化・モデル選択関係を式にして予測する
VI(23-26)ベイズ・因果・時系列・多変量現代の実務で実際に使う

全編を貫く 5 つの糸

  1. 二乗和で測る — 分散、最小二乗、平方和分解、\(k\)-means。すべて「二乗誤差の最小化」である。
  2. 直交分解 — \(SS_T=SS_{\text{群間}}+SS_{\text{群内}}\)、回帰=射影、PCA。統計の計算は幾何学的には射影である。
  3. \(1/\sqrt{n}\) — 標準誤差、信頼区間の幅、必要サンプル数。精度は \(\sqrt{n}\) でしか上がらない。
  4. バイアスと分散の取引 — MSE 分解、正則化、階層ベイズ、モデル選択。片方を買って片方を売る。
  5. 条件付き確率の非対称性 — \(P(A\mid B)\neq P(B\mid A)\)。ベイズの定理、p 値の誤解、検察官の誤謬。

最後に — プロフェッショナルとは

統計のプロとは、複雑な手法を知っている人ではない。

手法は道具にすぎない。 どの道具をなぜ選んだかを説明でき、その結論がどこまで言えるかを自分で線引きできること—— それがプロフェッショナルである。

9. まとめ

手法目的数学的な核
PCA次元削減分散共分散行列の固有値分解
因子分析潜在構造の発見因子負荷 + 独自因子
階層クラスタリング分類(\(k\) 不要)距離と連結法
k-means分類(\(k\) 指定)群内平方和の最小化
LDA判別群間分散 / 群内分散の最大化