主成分分析(5)
では、分散共分散行列を対角化するための直交行列を求める方法を調べていきましょう。これは線形代数学の復習になりますが、ここで述べていきます。実は、この直交行列は、対角化したい対称行列の固有ベクトルを並べたものになっています。このことから確かめていきましょう。
は対角行列でした。対角行列の固有ベクトルは1つの要素がゼロ以外(たとえば1)であとは全てゼロのベクトルであることは、試しに計算してみればすぐ分かります。
左の図では、の行列の要素をで表しました。このようにして個の固有ベクトルが考えられますが、これらは明らかに互いに直交しています。さらにゼロ以外の要素の値を1に定めれば、これら個の固有ベクトルは正規直交系を成します。そこで 番目の要素だけ1で他の要素が0であるベクトルをで表すことにします。は全ての固有ベクトルであることは明らかです。さらに左の図から明らかなようにその固有値はになります。よって
- ・・・・(10)
ここで
- ・・・・(11)
と置くと下の図に示すように、はの番目の列であることが分かります。
よってはと表すことが出来ます。さて(10)の両辺に左からをかけると
となります。ここで(11)を用いると
- ・・・・(12)
になります。この式はが行列の固有ベクトルであり、その固有値がであることを示しています。さらに、、の場合、
なので、は正規直交系を成していることが分かります。よって、行列を求めるには、分散共分散行列の固有ベクトルを求め、それらが正規直交系を成していない場合は、正規直交系になるように修正し、その後、それらを並べることで求めることが出来ます。
では、どのようにして固有ベクトルを求めるかといいますと、先に固有値を求めて、その次に固有値を(12)に代入して固有ベクトルを求めます。固有値は(説明を省略しますが)行列式
- ・・・・(13)
をについて解くことで求めます。とは言え、式(13)はについて次方程式であり、の場合は特殊な場合を除いて解を求めるのが困難です。その場合、どのようにして固有値を求めるのかですが、いろいろな数値計算の技法があるようです。しかし私はまだそれらを理解していません。
上で求めた固有値はの対角要素でしたので、これは座標変換したあと分散共分散行列の対角要素です。ということは座標変換したあとの各座標での分散になります。これの平方根をとれば標準偏差になり、データが各方向にどれだけばらついているかを示す指標になっています。この分散(あるいは標準偏差)が大きい方向(固有ベクトルの方向)から順に第1主成分、第2主成分・・・、と呼びます。このように第一主成分、第2主成分・・・を明らかにし、それぞれの成分(方向)での分散を求めることが主成分分析です。