主成分分析の計算手順の詳細を説明します.
【スマホでの数式表示について】
主成分分析とは何か
主成分分析とは
主成分分析(Principal Component Analysis; PCA)とは,多変量解析(multivariate analysis)における分析法のひとつであり,互いに相関のある変数について,観測されたデータの持つ情報をできるだけ失うことなく,元の変数の線形結合で表される,より少数個の変数に要約するための手法である.
主成分分析を概観する簡単な例
主成分分析を概観する簡単な例として,「数学と物理の試験の得点
と,それらの傾斜配点付き総合点
」を考えよう(ただし数学と物理の成績には相関があるとする).傾斜配点を定める重みを
とすれば,総合点
は
(1) ![]()
のように,数学と物理の試験の得点
の線形結合で表すことができる.
式 (1) によって,学生の学力に関する情報は,(数学の得点,物理の得点)という2次元データから,総合点という1次元データに要約される.また,冒頭に説明に沿えば,〈互いに相関のある変数〉は「数学と物理の得点」に対応し,〈観測されたデータ〉は「各学生の試験の得点」に,〈元の変数の線形結合で表される,より少数個の変数〉は「総合点」に対応する.
主成分分析によって,式 (1) の傾斜配点の重み
は,与えられた得点データから一意に決定できる.(ただし,「一意に決定可能であること」は,「唯一の決定方法であること」や「最善の決定方法であること」を意味しない.)
主成分分析は,重み
を「総合点のばらつき(=
の分散)」を最大化するように決定する.これは,近い(あるいは同じ)総合点となる学生をできるだけ少なくするという意味がある.(例えば,傾斜配点なしで(数学,英語)の得点が
,
,
となる3人は同じ総合点にになるが,適当な傾斜配点によって順序をつけることができる.主成分分析は,この傾斜配点の重みの付け方を一意に決定する基準を提供する.)
実際の主成分分析では,式 (1) の変数
の次元を,一般の
次元ベクトル
として,
![]()
なる
の分散を最大化するような重みベクトル
を求めることにより,
に対する適当なデータ圧縮変換を構成する.
主成分分析の計算手順の概要
主成分分析の計算手順の概要を述べる.より詳細な計算法は後節を参照のこと(読者は,式 (1) の例と同様,
などとした上で後述する式の計算を追うことにより,理解が深まるだろう).
① データ数とデータ次元の設定
(2) ![]()
で表すことにする.(例:
は科目数,
は科目
についての得点,
は数学の得点,など.)
(3) ![]()
(4) ![]()
などとする.(例:
は科目数,
は学生数,
は学生
の科目
についての得点.)
観測される変数を表す
と,実際の数値の組である観測データを表す
の区別に注意せよ.ここでは,添字
の有無によって区別する.
② 主成分の定義
(5) ![]()
を考える.(例:
は重み
によって傾斜配点される総合点.)
(6) ![]()
(7) ![]()
を満たすように取る.
式 (5) に観測データ (3),(4) を代入すると,
個の1次元データ
(8) ![]()
(9) ![]()
である.この
は,観測データ
をベクトル
に平行な直線へと射影した値であり,式 (9) によって,
次元観測データ
が1次元データ
に要約される.(例:各学生の学力情報が,科目数
次元の得点データから1次元の総合点データに要約され,順序付けが可能になる.)
この時点で,式 (5) および (9) の
の値は具体的に定まっていない.
の値は,この後,
の分散が最大となるように決定される.
後述する手続きによって
の値を具体的に決定するとき,可能な
の取り方は
通りある.これを表す添字を
として
(10) ![]()
(11) ![]()
である.この
の値を改めて式 (9) に代入すれば,観測データ
をベクトル
に平行な直線へと射影した値
(12) ![]()
を得る.こうして得られる
を,データ
の第
主成分という.
③ 射影データの分散最大化とラグランジュの未定乗数法
さて,式 (9) によって定義される,射影軸
に射影されたデータ
について,その標本平均
を求める式は
(13) ![]()
(14) ![]()
である.ただし,式 (13) の
は観測データ (3) の標本平均であり,式 (14) の
は 観測データ (3) に関する
の分散共分散行列(variance-covariance matrix)である.
( →「射影データの標本平均と標本分散の計算」の節を読む )
重みの規格化条件 (7) の制約下で,式 (14) の標本分散
を最大化するような
を求めよう.これには,制約条件付きの評価関数の極値を求める ラグランジュの未定乗数法 をおこなう.すなわち,ラグランジュ関数
(15) ![]()
の停留点を求めればよい.このラグランジュ関数 (31) の極値問題は,
(16) ![]()
なる,分散共分散行列
の固有値問題に帰着する.
( →「分散最大化を目的とするラグランジュの未定乗数法から分散共分散行列の固有値問題を導く」の節を読む)
④ 分散共分散行列の固有値問題と第k主成分の決定
ラグランジュの未定乗数法から誘導される固有値問題 (32) を解くと,
(17) ![]()
なる,
の固有値
と固有ベクトル
を得る.ただし,固有値と固有ベクトルの添字
の順序は,固有値
を降順(値の大きい順)に並べたものである.すなわち
(18) ![]()
となるように,固有値と固有ベクトルの添字
をつけることとする.
このようにして,分散共分散行列
の固有ベクトルとして得られる
を射影軸として,式 (12) を用いれば,データ
の第
主成分
を得る.すなわち,
データ
の第
主成分
,
![]()
データ
の第
主成分
,
![]()
データ
の第
主成分 ![]()
のように,データ
に対する
個の主成分を得る.
**
重み
の制約条件 (7) および 分散共分散行列
は実対称行列であることから,上で得られた
個の固有ベクトル
は,正規直交基底を成す.すなわち
(19) ![]()
が成り立つ.
射影データの標本平均と標本分散の計算 *
個の
次元観測データ
を,射影軸
に射影して得られる
は,式 (9),すなわち
![]()
(20) ![]()
(21) ![]()
である(式 (13) および式 (14) に同じ.
は 観測データ (3) に関する
の分散共分散行列 ).これらの計算の詳細を示す.
観測データ (3) について,その標本平均
は,
(22) ![]()
(23) ![]()
である.
(24) ![]()
となり,式 (20) を得る.
(25) ![]()
となり,式 (21) を得る.ただし,観測データ (3) に関する標本分散
と標本共分散 ![]()
(26) ![]()
(27) ![]()
(28) ![]()
に注意せよ.
式 (25) について,例示のため
として再度計算をおこなうと,
(29) ![]()
となる.
分散最大化を目的とするラグランジュの未定乗数法から分散共分散行列の固有値問題を導く *
いま,重みの規格化条件 (7) の制約下で,式 (14) の標本分散
を最大化するような
を求めたい.この問題を解くために,制約条件付きの評価関数の極値を求める ラグランジュの未定乗数法(the method of Lagrange multipliers) をおこなう.
一般に,ラグランジュの未定乗数法とは,次のようなものである.
(30) ![]()
点
が,
なる制約条件の下で(すなわち
の下で),関数
の停留点となるとき
(31) ![]()
の停留点を求めればよい.このラグランジュ関数 (31) の極値問題は,
(32) ![]()
なる,分散共分散行列
の固有値問題に帰着する.


コメントを残す