最大化問題の立式
主成分分析の目的はデータの要約。の2変量のデータの散布図に、直交する2直線を引く。
このデータの特徴は座標という2次元の情報を使わなくても、各データがとの交点からに沿ってどのくらい離れているかという1次元の情報である程度把握できる。元データの「情報の損失を最小にする」直線の選び方を考える。
情報の損失とは図2の赤の破線部分であり、元の位置から動かしてしまった大きさを表す。求める直線の方向ベクトルをとする。ただし。の垂線の足の座標をとすると、とのベクトルの内積によって、以下のように表される。
情報の損失(赤の破線部分)を最小化する、つまりの平方和*1を最大にするような直線の方向ベクトルを求めればよい。
つまりという制約下で、を最大化する。
をデータの分散共分散行列、を求めたい方向ベクトルとすると、目的関数と制約条件は以下のように表される。
最大化問題を解く
ラグランジュ未定乗数法で解く。
したがって
方向ベクトルは分散共分散行列のある固有値の固有ベクトル。(13)の両辺にを掛けると、
(15)の左辺は既に最大化問題を解いた結果であるため、は行列の固有値のうち大きい方*2。求めたい方向ベクトルは、分散共分散行列の固有値のうち大きいものに対応する大きさ1の固有ベクトル。の固有値の大きい方はの平方和(ばらつき)を最大化したもの。はデータの特徴を表す1番目の座標軸であり第1主成分と呼ぶ。
2番目の座標軸は、第1主成分の方向に直交するベクトルのうち、データを射影したときにばらつきが最も大きくなる方向を選べばよい。最大化問題は、,を制約条件とし、を目的関数とする。の固有ベクトル同士は直交するため、最適解は第1主成分と同じくの2番目に大きな固有値に対応する固有ベクトルだと分かる。
まとめると、
- (第1主成分の平方和)= (第1主成分の固有値のうち1番大きいもの)
- (第1主成分の方向ベクトル)= (1番大きい固有値に対応する固有ベクトル)
- (第2主成分の平方和)= (第1主成分の固有値のうち2番大きいもの)
- (第2主成分の方向ベクトル)= (2番大きい固有値に対応する固有ベクトル)
多次元のデータを扱う場合にも成立する。
寄与率
何番目の主成分(座標軸)まで使えば元データの特徴を十分に把握できるかを判断する基準となるのが寄与率。
- 第1主成分上でのばらつき
- 第2主成分上でのばらつき
- データ全体のばらつき
であることを踏まえると、第1主成分の寄与率は。寄与率が十分1に近いとき、第1主成分だけでデータの特徴を把握できる、つまりデータ全体のばらつきのうち第1主成分上のばらつきが大きいことを意味する。データが次元であるとき、第成分の寄与率は、
第主成分までの累積寄与率は
データの標準化
あらかじめデータを標準化(平均0、分散1)して主成分分析を行う場合も多い。この場合は分散共分散行列ではなく相関行列となる。神永・木下(2019)によると、分散共分散行列を用いる場合、分散のもっとも大きな変数が主成分の値を変えてしまう問題が生じる。変数の分散を1に標準化すると、分散共分散行列ではなく相関行列を用いることになる。同時に、どの変数も等しく重要だとする判断には恣意性が伴う点についても注意を述べている。
主成分負荷量(因子負荷量)
主成分が何を表す座標かを考えるには、各主成分のデータと各変数のデータの相関関係に着目する。主成分のデータともとのデータの相関関係を主成分負荷量(因子負荷量)と呼ぶ。次元データと番目の変数の相関係数を主成分負荷量と呼ぶ。各主成分と関連深い変数が明らかになることで、主成分の解釈を行うときの助けになる。
第主成分との主成分負荷量は、
この値が大きいほど、作成した主成分における元の変数の説明力が高くなる。標準化の仮定、すなわち分散共分散行列ではなく相関行列を用いた場合は、がゼロになるため、(18)の分子の計算のみ行えばよい。他の変数の主成分負荷量も上と同様に計算できる。
- (第主成分との主成分負荷量)
- (第主成分との主成分負荷量)
- (第主成分との主成分負荷量)
主成分得点
各データの各主成分での座標の値を主成分得点(主成分スコア)と呼ぶ。第1主成分の方向ベクトルがのとき、データの主成分得点は
第2主成分の方向ベクトルがのとき、データの主成分得点は