青の統計学-DS Playground-

主成分分析・因子分析・SEM・パス解析

Stage 5 — 第1章 | 統計検定準1級チートシート 推定学習時間:100〜120分 | 難易度:★★★★☆


このページで押さえること

主成分分析と因子分析は、どちらも多変量データを少数の軸で説明する手法ですが、目的が違います。 主成分分析は観測変数の分散をよく説明する合成変数を作り、因子分析は観測変数の背後にある潜在因子を仮定します。 SEMとパス解析は、さらに変数間の構造をモデルとして表します。

このページを終えると、こんなことができるようになります:

  • PCAを分散最大化と固有値問題として説明できる
  • 主成分スコア、負荷量、寄与率、累積寄与率を区別できる
  • 因子分析の共通因子、独自因子、共通性を説明できる
  • 直交回転と斜交回転の目的を説明できる
  • SEM、パス解析、潜在変数の位置づけを整理できる

2級ではここまで、準1級ではここが増える

2級では、変数間の関係は主に相関係数単回帰・重回帰で扱います。2つ(または少数)の変数の関係を1本の係数や直線で読むところまでが中心です。

準1級では、多数の変数を同時に少数の軸へ縮約する視点と、観測されない潜在変数を仮定する視点が加わります。

観点 2級でのレベル 準1級で増える点
変数の数 2変数〜数変数の関係 多変量を少数の軸へ縮約(PCA)
構造 観測変数同士の相関・回帰 背後の潜在因子を仮定(因子分析・SEM)
道具 相関係数・回帰係数 固有値問題・因子負荷量・パス係数

つまり準1級では「2変数の相関を読む」で止まらず、分散共分散行列を固有値分解して軸を作る発想や、潜在変数で共分散を説明する発想を扱います。差がつくのは、PCAと因子分析を目的で区別する判断と、SEMのパスを因果と即断しない注意です。


1. PCAの目的

📘 前提知識:分散最大化が固有値問題になる理由

データ点を1本の軸へ射影すると、軸の向きによって射影点の散らばり(分散)が変わります。 「最も散らばる向き」を探す——これがPCAの目的です。 制約 $a^\top a=1$ のもとで $a^\top S a$ を最大にする問題は、ラグランジュ未定乗数法を使うと $Sa=\lambda a$ という固有値方程式に化けます。 だから「分散が最大の方向=共分散行列の固有ベクトル」「その分散の大きさ=固有値」と対応します。

$p$ 個の変数を持つ標準化済みデータを考えます。 分散共分散行列または相関行列を

\[ S \]

とします。 第1主成分は、重みベクトル $a$ による線形結合

\[ Z_1=a^\top X \]

の分散を最大にする方向です。 ただし、スケールを固定するため

\[ a^\top a=1 \]

を課します。 最大化問題は、

\[ \max_a a^\top S a \quad \text{subject to}\quad a^\top a=1 \]

です。

ラグランジュ未定乗数法より、

\[ Sa=\lambda a \]

が得られます。 つまり、主成分方向は $S$ の固有ベクトルであり、主成分の分散は対応する固有値です。 固有値が大きい固有ベクトルから順に第1主成分、第2主成分…と並べると、上位の軸ほど多くの分散を説明します。

関連教材(青の統計学)


2. 寄与率・負荷量・スコア

固有値を

\[ \lambda_1\ge \lambda_2\ge\cdots\ge\lambda_p \]

とします。 第 $k$ 主成分の寄与率は、

\[ \frac{\lambda_k}{\sum_{j=1}^{p}\lambda_j} \]

です。 累積寄与率は、上位 $m$ 個までの寄与率の和です。

主成分スコアは、各観測を主成分方向へ射影した値です。

\[ z_{ik}=a_k^\top x_i \]

主成分負荷量は、元の変数と主成分の相関として読まれる量です。 定義の流儀は教材で揺れますが、標準化データでは概念的に

\[ Corr(X_j,Z_k) \]

として理解します。


3. PCAの注意点

PCAは教師なしの次元削減です。 目的変数をよく予測する軸を作るとは限りません。 分散が大きい方向が、分類や回帰に有用な方向とは限らないからです。

また、単位やスケールが異なる変数をそのまま使うと、分散の大きい変数が主成分を支配します。 そのため、相関行列を使うか、標準化してからPCAを行うことが多いです。

PCAの主成分は互いに直交します。 これは解釈しやすさにつながる一方、実際の潜在概念が直交するとは限りません。

次の図では、固有ベクトルとして得た主成分軸にデータを射影し、観測と変数を別の量として読む。

PCAでデータ点を分散最大方向の主成分軸へ射影し、主成分スコアと変数負荷量を示す図

PCAは、分散が最大になる軸へデータを射影し、観測ごとのスコアと変数ごとの負荷量を読む。

主成分スコアは観測が軸上のどこにあるか、負荷量は元変数が主成分とどれだけ関係するかを表す。寄与率は、その軸が全分散のどれだけを説明するかである。


4. 因子分析のモデル

因子分析では、観測変数 $X$ が少数の共通因子 $F$ と独自因子 $\varepsilon$ で説明されると考えます。

\[ X=\Lambda F+\varepsilon \]

ここで $\Lambda$ は因子負荷量行列です。 通常、

\[ E[F]=0,\quad Var(F)=I,\quad E[\varepsilon]=0,\quad Cov(F,\varepsilon)=0 \]

を仮定します。 このとき、観測変数の共分散行列は

\[ \Sigma=\Lambda\Lambda^\top+\Psi \]

と分解されます。 この式は「観測変数の共分散は、共通因子で説明できる部分 $\Lambda\Lambda^\top$ と、各変数に固有のばらつき $\Psi$ の和」と読みます。 $\Psi$ は独自因子の分散を対角に持つ行列です。

変数 $j$ の共通性は、共通因子で説明される分散です。

\[ h_j^2=\sum_{k}\lambda_{jk}^2 \]

独自性は

\[ \psi_j=1-h_j^2 \]

のように読めます。


5. PCAと因子分析の違い

観点 PCA 因子分析
目的 分散を最大に説明する合成変数 潜在因子で共分散を説明
モデル 記述的な線形変換 確率モデル
誤差 明示しない 独自因子を持つ
直交主成分 回転で解釈性を調整
出力 スコア・寄与率 因子負荷量・共通性

PCAは次元削減、因子分析は潜在構造の推定と考えると区別しやすいです。


6. 回転

因子分析では、因子軸を回転して解釈しやすくします。 直交回転では因子同士の相関を0に保ちます。 代表例はバリマックス回転です。

📘 前提知識:回転は「説明しやすい軸へ取り直す」操作

因子分析では、同じ共分散構造をかなり近い形で説明できる因子軸が複数あります。 そのままだと、1つの変数が複数因子に中途半端に載って、因子名を付けにくいことがあります。 回転は、モデルを別物にするというより、負荷量のパターンを読みやすくして「この因子は何を表すか」を解釈しやすくする操作です。

直交回転を表す行列を $T$ とすると、

\[ T^\top T=I \]

を満たします。 回転後の因子負荷量は

\[ \Lambda^*=\Lambda T \]

のように書けます。 直交回転では因子同士の相関を0に保つため、因子分散共分散行列は単位行列のままです。

斜交回転では、因子間の相関を許します。 心理尺度や社会調査では、潜在因子が完全に独立とは限らないため、斜交回転の方が自然なことがあります。 斜交回転では、因子間相関行列を $\Phi$ と置くと、共分散構造は

\[ \Sigma=\Lambda^*\Phi{\Lambda^*}^\top+\Psi \]

のように読みます。 つまり、直交回転は「因子を独立なまま回す」、斜交回転は「因子同士の相関も許して回す」と理解します。

回転はモデルの当てはまりを大きく変えるというより、因子負荷量の解釈を明確にするための操作です。


7. SEMとパス解析

SEMは、観測変数と潜在変数の関係、潜在変数同士の関係を同時に扱う枠組みです。 測定モデルと構造モデルに分けて考えます。

測定モデルは、潜在変数が観測指標をどう説明するかを表します。 因子分析に近い部分です。 観測指標を $x$、潜在変数を $\xi$、測定誤差を $\delta$ とすると、典型的には

\[ x=\Lambda_x\xi+\delta \]

と書きます。 これは「観測された質問項目や指標は、背後の潜在変数と測定誤差からできている」と読む式です。

構造モデルは、潜在変数や観測変数の間の因果的・構造的な関係を表します。 パス解析は、観測変数間の有向関係をパス係数で表す方法です。 内生潜在変数を $\eta$、外生潜在変数を $\xi$ とすると、構造モデルは

\[ \eta=B\eta+\Gamma\xi+\zeta \]

のように書けます。 $B$ は内生変数同士のパス、$\Gamma$ は外生変数から内生変数へのパス、$\zeta$ は構造方程式の誤差です。 パス解析では潜在変数を置かず、観測変数同士に同様の回帰式を置くと考えると理解しやすくなります。

ただし、SEMのパスは、データだけで因果を証明するものではありません。 因果解釈には、モデル設定、識別、研究設計、交絡の検討が必要です。

次の図では、観測変数の背後に潜在因子を置く因子分析と、潜在変数同士の関係まで置くSEMを分ける。

因子分析の潜在因子と観測変数の測定モデル、SEMの潜在変数間パス構造を比較する図

因子分析は潜在因子が観測変数を説明する測定モデルで、SEMは潜在変数間のパス構造まで含む。

SEMのパスは構造仮説を表すが、図があるだけで因果が証明されるわけではない。モデル設定と研究設計が必要である。


8. 小さな計算例:2変数相関行列のPCA

固有値・寄与率・主成分方向のつながりを、2変数の相関行列で確認します。 標準化済みの2変数 $X_1,X_2$ の相関行列を、

\[ S=\begin{pmatrix}1 & 0.8\\ 0.8 & 1\end{pmatrix} \]

とします。$S$ の固有値は、$2\times2$ の相関行列 $\begin{pmatrix}1&r\\ r&1\end{pmatrix}$ の固有値が $1\pm r$ になることから、

\[ \lambda_1=1+0.8=1.8,\qquad \lambda_2=1-0.8=0.2 \]

です(和が対角の合計 $=2$ になることで検算できます)。 第1主成分の方向は $\lambda_1$ に対応する固有ベクトル $(1,1)/\sqrt{2}$ で、2変数が同方向に動く「共通の大きさ」を表します。 第2主成分は $(1,-1)/\sqrt{2}$ で、2変数の差を表します。

寄与率は固有値を合計で割って、

\[ \frac{\lambda_1}{\lambda_1+\lambda_2}=\frac{1.8}{2}=0.9 \]

なので、第1主成分だけで全分散の90%を説明できます。

主成分 固有値 方向 寄与率
第1 1.8 $(1,1)/\sqrt{2}$ 90%
第2 0.2 $(1,-1)/\sqrt{2}$ 10%

相関が高い($r=0.8$)ほど第1主成分に分散が集中し、1軸で要約しやすくなります。 寄与率は固有値の割合であって負荷量そのものではない点を、この例で区別します。


9. 問題文トリガー辞書

問題文の表現 選ぶ手法 見る量 典型ミス
「分散を最大に説明」 PCA 固有値・寄与率 目的変数予測と混同
「主成分スコア」 PCA $a_k^\top x_i$ 負荷量と混同
「潜在因子」 因子分析 因子負荷量・共通性 PCAと同一視
「回転」 因子分析 直交/斜交 当てはまり改善だけと考える
「パス係数」 パス解析/SEM 構造モデル 因果証明とみなす
「観測指標と潜在変数」 SEM 測定モデル 回帰分析だけで処理

10. 典型ミス・ひっかけ

ミス なぜ危ないか 防ぎ方
PCAと因子分析を同じ手法として扱う PCAは分散分解、因子分析は潜在モデル 目的と誤差項を見る
寄与率と負荷量を混同する 寄与率は主成分の分散割合 出力の単位を確認
標準化せずPCAする 尺度の大きい変数が支配 相関行列か共分散行列か確認
回転後の因子を絶対的真実と読む 解釈性を高める操作 回転方法と仮定を確認
SEMのパスを因果効果と断定する モデル適合だけでは因果識別できない 設計と交絡を見る

11. 解法テンプレ

多変量縮約・潜在変数モデルの問題は、次の順で処理します。

  1. 目的を確認する(分散を要約したいのか、潜在因子で共分散を説明したいのか)。
  2. PCAなら、相関行列か共分散行列かを決め(標準化の要否)、固有値分解する。
  3. 固有値から寄与率・累積寄与率を計算し、残す軸数を決める。
  4. 因子分析なら、$\Sigma=\Lambda\Lambda^\top+\Psi$ の分解と共通性 $h_j^2$ を読む。
  5. 回転を問われたら、直交(相関0を維持)か斜交(相関を許す)かを目的で選ぶ。
  6. SEM/パス解析では測定モデルと構造モデルを分け、パスを因果と断定しない。

12. ここで1問

固有値・寄与率と潜在因子の区別を確認したら、演習で「目的に応じて手法を選べるか」を練習します。

このページの確認問題

関連教材(青の統計学)


13. 次に読むページ

次は、判別分析、SVM、ROC/AUC、クラスタリングを扱います。 教師ありの分類と教師なしの分類を、目的と評価指標で分けます。