主成分分析の公式の導出と覚え方:共分散行列の固有値問題への流れを整理

こんにちは。ゆうせいです。

たくさんの項目を持つデータを扱う際、重要な情報をできるだけ残したまま項目数を減らす手法として主成分分析が使われます。学習を進める中で、最終的に共分散行列の固有値問題へと行き着く数式の展開に直面し、暗記すべき公式の形が分からなくなる場面があります。

複雑に見える主成分分析の公式は、ばらつきを最大にするという目的から出発し、制約条件付きの計算を進めることで自然と導き出されます。丸暗記に頼らず、式の成り立ちを追うことで公式の形を記憶に定着させる道筋を整理していきます。

主成分分析の目的と専門用語の整理

主成分分析の根底にある狙いは、多次元のデータが最も広く散らばる直線の向きを探し出す作業です。散らばりが大きい方向ほど、データが持つ本来の特徴が多く残るという前提に基づいています。

計算の流れを把握するために、前提となる二つの基礎用語を確認します。

共分散行列

共分散行列とは、複数の項目における個別の散らばり具合と、項目同士の連動具合をひとまとめにした正方形の表です。

高校の身体測定を思い浮かべてみてください。生徒全員の身長と体重を測定したと仮定します。身長自身の散らばりや体重自身の散らばりに加えて、身長が高い人ほど体重も重いといった二つの項目の連動具合を一つの表に整理したものが共分散行列です。

固有値問題

固有値問題とは、ある行列に対してベクトルを掛けた結果が、元のベクトルを単に定数倍しただけの形になる特別な方向と倍率を求める方程式です。

学校の運動場で生徒全員が先生の指示に従って移動する場面を想像してください。大半の生徒は斜めや別の方向へ移動しますが、特定の直線上に立っていた生徒だけは、向きを変えずにその直線上を何倍かの距離だけ進みます。向きを変えずに伸び縮みする直線方向が固有ベクトルであり、その伸び縮みの倍率が固有値に相当します。

公式を思い出すための3段階の構成

主成分分析の公式は、三つの手順を順番にたどることで再現できます。

  1. 最大化したい分散を数式で表す
  2. ベクトルの長さを固定する制約を設ける
  3. 制約付きの式を微分して固有値問題の形を導く

この順序を頭の中で追えるようになると、試験や実装の際にも公式の骨格を正確に思い出すことができます。

分散の最大化から固有値問題が導かれる手順

各項目の平均値があらかじめ0になるよう調整されたデータを考えます。データの共分散行列を Σ、新しく探したい方向のベクトルを w と置きます。

手順1:分散の表現とベクトルの固定

データをベクトル w の方向へ射影した後の散らばり具合は、以下の二次形式で表されます。

w^{T} \Sigma w

方向ベクトル w の長さをどこまでも伸ばせば値も際限なく増えてしまうため、ベクトルの長さを1に固定する条件を置きます。

w^{T} w = 1

手順2:条件をまとめた式の作成

長さを1に保ちながら射影後の分散を最大にするため、未定乗数 λ を使って二つの要素を一つの式 L にまとめます。

L = w^{T} \Sigma w - \lambda (w^{T} w - 1)

手順3:微分による固有値方程式の導出

式の値が最も大きくなる地点を求めるため、式 L をベクトル w で微分して0と置きます。

\frac{\partial L}{\partial w} = 2 \Sigma w - 2 \lambda w = 0

両辺を2で割り、項を整理すると、以下の関係式が得られます。

\Sigma w = \lambda w

共分散行列 Σ にベクトル w を掛けると、元のベクトル w の λ 倍になるという式が完成しました。共分散行列の固有値問題を解けば、散らばりを最大にする方向ベクトル w が求まるという結論に至ります。

また、得られた式の左から w の転置を掛けると、分散の値そのものが固有値 λ と一致することが分かります。分散を最大化するためには、求まった固有値のうち最も数値が大きいものを選べばよいという規則も同時に導かれます。

主成分分析を活用するメリット

確認できる主成分分析の長所は以下の通りです。

  • データの項目数の圧縮 関連性の強い複数の項目を少数の総合指標にまとめることで、データの情報量を保ちながら全体の容量を抑え、計算時間を短縮できます。
  • 説明変数間の相関の排除 新しく作られる主成分同士は互いに直交し、相関を持たない性質があるため、回帰分析などの前処理に用いることで変数同士の重複による推定の乱れを防ぎます。
  • 平面での全体把握 三次元以上の複雑な広がりを持つデータを、散らばりの大きい上位二つの成分に落とし込むことで、平面上に配置して全体の偏りを目視で確認できます。

主成分分析が抱えるデメリット

一方で、計算の仕組みに起因する制約は以下の通りです。

  • 曲線状の傾向に対する対応の難しさ 直線を引いて散らばりを測る手法であるため、渦巻き状や曲線を描いて分布するような複雑なデータの関係性を正確に捉えることができません。
  • 外れ値による歪みの発生 分散の大きさを基準として軸を決めるため、極端に離れたデータが混ざっていると、主成分の方向がその離れた点に引っ張られて本来の傾向からずれてしまいます。
  • 新しい軸の意味付けの不明瞭さ 新しく作られた成分は元の複数の項目が混ざり合った数値であるため、その軸が現実世界で具体的に何を指し示しているのかを言語化して説明しにくい場合があります。

まとめ

主成分分析の公式は、分散の式をベクトルの長さ1という制約のもとで微分し、0と置く流れから生まれます。「分散の最大化」「長さの固定」「微分して整理」という3つの手続きを押さえておけば、なぜ共分散行列の固有値問題にたどり着くのかを迷わずに導き出せます。

理解と記憶をさらに定着させるための学習手順は以下の通りです。

  1. 二つの変数からなる簡単な共分散行列を用意し、紙の上で固有方程式を解いてみる
  2. 求めた固有値の合計に対する各固有値の割合を計算し、寄与率の求め方を確認する
  3. データの測定単位が異なる場合に共分散行列ではなく相関行列を用いる理由を調べる

導出の道筋を一度手で書き出してみることで、断片的な数式の暗記から抜け出し、線形代数の道具がどのように統計に役立っているかを把握できるようになります。

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
海外放浪の末、2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。

学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。