見出し画像

【統計学修士の備忘録】#5 主成分分析

こんにちは、ぽむぽむです。今回はデータの次元を削減する上で主成分分析(PCA)がどの様に役立つのか記録します。

結論からいうと、PCAは元々あった予測変数を組み合わせて、元より少ない数の新しい変数たちを作るのですが、この新しい変数たちは可能な限り分散が大きくなっており、また、互いに無相関です。こうすることで、多くの変数を含む元データの分散を、少ない変数の分散でカバーできるのです。

手順は以下の通りです。元の変数たちを$${X_{1}, …, X_{p}}$$をすると、最初の成分は

$$
Z_{1} = \phi_{11}X_{1} + \phi_{21}X_{2} + \cdots + \phi_{p1}X_{p}
$$

で表され、制約$${\sum_{j=1}^{p}\phi_{j1}^{2} = 1}$$の元で最も大きい分散を持つように選びます。

例えば$${n \times p}$$のデータ$${X}$$の場合、全ての変数を平均が0になるようにセンタリングしてしまえば、最初の成分は以下の問題を解くことで得られます。

$$
max_{\phi_{11}, …, \phi_{p1}} \cfrac{1}{n} \sum_{i=1}^{n} (\sum_{j=1}^{p} \phi_{j1}x_{ij})^{2} \text{ subject to } \sum_{j=1}^{p} \phi_{j1}^{2} =1
$$

また、この作業はデータの共分散行列の固有値を計算し、最も大きい固有値に対応する固有ベクトルを選ぶことと同じです。確かに共分散行列はデータのばらつきの大きさや変数同士のばらつきの関係を表すものなので、分散=ばらつきが大きくなるような新しい軸を決めることと、共分散行列の固有値が大きい固有ベクトルを求めることが対応しているのは何となく分かると思います。この方の図解が非常に分かりやすいです。


と、ここまでの手順で最初の成分を見つけたら、二つ目以降は一つ前の成分と無相関かつ、最も分散の大きい$${Z_{m}}$$(こちらも$${X_{1}, …, X_{p}}$$を線形に組み合わせたもの)を見つけることを繰り返すだけです。

ちなみに$${\phi_{2} = (\phi_{12}, …, \phi_{p2})^{T}}$$を$${\phi_{1} = (\phi_{11}, …, \phi_{p1})^{T}}$$に直交するように選ぶと、$${Z_{1}}$$と$${Z_{2}}$$は無相関になります。

このように主成分分析は意外と手順は簡単なのですが、何故このステップを踏むと次元が削減できるのか理解するのが難しかったです。学部の時もちゃんと理解せずに使っていました。しかし、やはりデータの情報(分散)を元より少ない変数の情報(分散)で説明する、と考えると分かりやすいのではないでしょうか。



この記事が気に入ったらサポートをしてみませんか?