logo

統計学における主成分分析 📂統計的分析

統計学における主成分分析

概要

重回帰分析 $Y \gets X_{1} , \cdots, X_{p}$ を行うと考えてみよう。主成分分析principal component analysis、英語の略語でPCAとは、簡単に言えば量的変数をきちんと独立になるように「再構成」して分析する方法である。多変量データの分析という観点から見れば、より少ない変数で現象を説明するための「次元削減」としての意味がある。

主成分分析の理論的な導出をきちんと理解するには、線形代数、可能であれば数値線形代数に関する知識まで必要である。どうしても頭に入ってこないなら、Step 3, 4も読んで理解してみよう。数理統計学にある程度自信があるなら、数理統計学における主成分分析の記事を読んでみるのもよい。

導出 1

Step 1. 標準化 — $p$個の独立変数と$n$個の標本があるデータ

$$ \begin{bmatrix} y_{1} \\ y_{2} \\ \vdots \\ y_{n} \end{bmatrix} = \begin{bmatrix} 1 & x_{11} & \cdots & x_{1p} \\ 1 & x_{21} & \cdots & x_{2p} \\ \vdots & \vdots & \ddots & \vdots \\ 1 & x_{n1} & \cdots & x_{np} \end{bmatrix} \begin{bmatrix} \beta_{0} \\ \beta_{1} \\ \vdots \\ \beta_{p} \end{bmatrix} $$

計画行列を用いて$Y = X \beta + \varepsilon$のように表せる。この$X$を標準化した行列$Z$とは、$j$番目の独立変数$X_{j}$の標本平均$\overline{ x_{j} }$と標本標準偏差$s_{ X_{j} }$に対し、$(i,j)$-成分を

$$ \left( Z \right)_{ij}: = {{ x_{ij} } - \overline{ x_{j} } \over { s_{ X_{j} } }} $$

として持つ行列である。すると新しい回帰係数

$$ \Theta := \begin{bmatrix} \theta_{1} \\ \theta_{2} \\ \vdots \\ \theta_{p} \end{bmatrix} $$

に対し、定数項のない回帰分析の計画行列式$Y = Z \Theta + \varepsilon$を得ることができる。この$Z = \begin{bmatrix} Z_{1} & \cdots & Z_{p} \end{bmatrix}$は、ベクトル$X_{1} , \cdots , X_{p}$を標準化した$Z_{1} , \cdots , Z_{p}$で構成された$( n \times p )$行列となる。


Step 2.

スペクトル分解について、$Z^{T} Z$は$( p \times p )$対称行列であるが、その定義を考えてみると$\displaystyle {{1} \over {n-1}} Z^{T} Z$は$Z_{1} , \cdots , Z_{p}$に対する共分散行列となる。特に$Z$は標準化された行列であるため、同時に相関係数行列にもなる。スペクトル理論によれば

$$ \begin{cases} Z^{T} Z = Q \Lambda Q^{T} \\ Q^{T} Q = Q Q^{T} = I \end{cases} $$

を満たす直交行列

$$ Q = \begin{bmatrix} q_{11} & q_{12} & \cdots & q_{1p} \\ q_{21} & q_{22} & \cdots & q_{2p} \\ \vdots & \vdots & \ddots & \vdots \\ q_{p1} & q_{p2} & \cdots & q_{pp} \end{bmatrix} $$

と$Z^{T} Z$の固有値からなる対角行列

$$ \Lambda = \text{diag} ( \lambda_{1} , \lambda_{2} , \cdots , \lambda_{p} ) = \begin{bmatrix} \lambda_{1} & 0 & \cdots & 0 \\ 0 & \lambda_{2} & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_{p} \end{bmatrix} $$

が存在する。ここで便宜上$\lambda_{1} \ge \lambda_{2} \ge \cdots \ge \lambda_{p}$となるように置き、$Z$もそれに対応するように再整列した行列と考えよう。


Step 3. 主成分の構成

$I = QQ^{T}$であるから $$ Y = Z \Theta + \varepsilon = Z Q Q^{T} \Theta + \varepsilon $$ ここで$C := ZQ $, $\alpha := Q^{T} \Theta$と置くと $$ Y = C \alpha + \varepsilon $$ この$C = \begin{bmatrix} C_{1} & \cdots & C_{p} \end{bmatrix}$に対し、$C_{1} , \cdots , C_{p}$を$Z_{1}, \cdots , Z_{p}$の主成分principal componentという。$j$番目の主成分の形は

$$ C_{j} = q_{1j} Z_{1} + \cdots + q_{pj} Z_{p} = \sum_{i=1}^{p} q_{ij} Z_{j} $$

のように、既存の独立変数を線形結合で再構成したものである。


Step 4.

主成分の独立性 — 次の計算によってこの主成分どうしの独立性を確認できる。 $$ \begin{align*} & Z^{T} Z = Q \Lambda Q^{T} \\ \implies& Q^{T} Z^{T} Z Q = \Lambda \\ \implies& \left( Z Q \right) ^{T} \left( Z Q \right) = \Lambda \\ \implies& C^{T} C = \Lambda \end{align*} $$ 言い換えると $$ C_{j}^{T} C_{j} = \begin{cases} \lambda_{j} & , i=j \\ 0 & , i \ne j \end{cases} $$ であるから主成分どうしは必ず独立であり、固有値 $\lambda_{j}$が$0$に近いほど小さいということは$\displaystyle C_{j} = \sum_{i=1}^{p} q_{ij} Z_{j}$が零ベクトルに近いという意味になるため、$Z_{1} , \cdots , Z_{p}$が多重共線性を持つと見なせる。

限界

主成分回帰分析 $Y \gets C_{1} , \cdots , C_{p}$は、固有値に問題のある変数を除去することで多重共線性の問題を回避する。また、元の回帰分析と比べてはるかに少ない数の変数を使うため、次元が削減されたと言える。

一見、主成分分析は万能のように見えるが、必ずしもそうとは限らない。まず$Z$を作るために標準化するということは、質的変数変換に対して手を打ちにくい点が多いという意味であり、このように「再構成」をする過程で分析そのものが理解しにくくなる。

統計が統計学を理解していない人にも必要であるという点を考えると、この点はかなり致命的である。例えば韓国経済に関する分析に主成分分析を使うと、具体的に失業率$X_{2}$や平均初任給$X_{7}$のように理解しやすい数値ではなく、「総合雇用指数」$C_{4}$のような奇妙な単語で表現することになるという具合である。分析者ですら、使える回帰式は作り出したものの、その真の意味は把握できないという大惨事が起こりうる。(コンピュータ工学の方ではデータの理解よりも予測と分類が重要であるため、このような欠点をあまり気にしない。)

また、どの主成分も脱落させずに$Y \gets C_{1} , \cdots , C_{p}$をそのまま使うなら、元の$Y \gets X_{1} , \cdots , X_{p}$と何ら変わりがないが、ここでいくつかの主成分を脱落させるということ自体が、元々あったデータを放棄するという意味になる。それでも必要なら使うべきだが、必要なければあえて使う理由はない。使うときは使うにしても、どんな欠点と限界があるのかは明確に知って使うべきである。

条件数 1

一方、導出過程で求められる固有値を通じて、多重共線性を診断する数値的な指標である条件数condition numberを計算できる。 $$ \kappa := \sqrt{ {{ \lambda_{1} } \over { \lambda_{p} }} } $$ これは数値行列代数的に重要な意味があり、分析の不安定性を説明でき、経験的には$\kappa > 15$のとき元のデータに多重共線性があると推測できるとされるが、実際には統計学的な文脈であまり使われない。

関連リンク


  1. Hadi. (2006). Regression Analysis by Example(4th Edition): p255~257. ↩︎ ↩︎