コンテンツにスキップ

主成分分析:分散最大化はなぜ固有値問題になるのか

前提:ニューラルネットワークと逆伝播:連鎖律を計算グラフの上で逆向きに走らせる

生 Markdown
  • 次元削減は「変数が多すぎて見えない・推定が不安定になる・計算が重い」という三つの困りごとへの対処です。主成分分析(principal component analysis, PCA)はそのうち線形かつ教師なしの方法です。
  • PCA の設計原理はただ一つ、「射影したときの分散が最大になる方向を選ぶ」です。これを式に直すと、単位ベクトル u\boldsymbol{u} に対する二次形式 uTSu\boldsymbol{u}^{\mathsf{T}} S \boldsymbol{u}SS は標本共分散行列)の最大化になります。
  • 対称行列の二次形式を単位球面上で最大化する答えは、最大固有値と、それに属する固有ベクトルです。したがって第 1 主成分方向は SS の最大固有値の固有ベクトルになります(系 3.3)。
  • 上位 kk 本の主成分が張る部分空間は、データ点からの垂直距離の二乗和を最小にする kk 次元アフィン部分空間でもあります。分散最大化と当てはめ誤差最小化は同じ問題の裏表です(定理 5.1)。
  • 寄与率 λk/jλj\lambda_k / \sum_j \lambda_j はその主成分が説明する全分散の割合で、kk 次元まで採ったときに捨てられる誤差はちょうど λk+1++λp\lambda_{k+1} + \cdots + \lambda_p です。
  • PCA は変数の単位の取り方に依存し、クラスの区別が保たれる保証もありません。使う前に標準化と目的の確認が必要です(例 7.1例 7.2)。

1. 動機:変数が多いことの何が困るのか

Section titled “1. 動機:変数が多いことの何が困るのか”

機械学習で扱うデータは、たいてい 1 個体あたり多数の数値の組として与えられます。28×2828 \times 28 画素の手書き数字画像なら 784 個の数値、遺伝子発現データなら数万個、アンケートなら設問数だけの数値です。この「1 個体を表す数値の個数」を次元と呼び、以下では pp と書きます。

次元が高いと、少なくとも三つの困りごとが起きます。

第一に、見えません。人間が直接目で読める散布図は 2 次元、頑張って 3 次元までです。784 次元のデータについて「似ているものどうしが固まっているか」を確かめる方法が、そのままでは存在しません。

第二に、統計的に不利になります。標本数 nn に対して次元 pp が大きいと、推定すべき量の個数が標本数に対して過大になり、モデルは訓練データの偶然の凹凸まで覚えてしまいます。共分散行列の推定はその典型で、p×pp \times p の対称行列がもつ p(p+1)/2p(p+1)/2 個の成分を nn 個の標本から決めることになります。後で見るように、n1<pn - 1 < p のときは標本共分散行列の階数が pp に届かず、必ず退化します(注意 6.4)。

第三に、計算量です。多くのアルゴリズムは次元に対して線形以上の計算量をもちます。共分散行列を作るだけでも O(np2)O(np^2) 回の乗算が要ります。

一方で、実データの多くは「見かけの次元ほど自由度がない」という性質をもちます。身長・体重・胸囲・座高を測れば 4 次元のデータですが、これらは互いに強く相関しており、実質的には「体格の大きさ」というほぼ 1 本の軸で説明できてしまいます。手書き数字の画像でも、隣り合う画素の値はほとんど同じですから、784 個の数値が自由に動くわけではありません。見かけの次元と本質的な次元のこの差が、次元削減の付け入る隙です。

では「情報を落とさずに次元を減らす」とは何でしょうか。何を情報と呼ぶかを決めない限り、この問いは意味をもちません。PCA の答えは明快です — 情報とは**散らばり(分散)**である。

この立場を採る理由は、極端な場合を考えるとわかります。ある方向にデータを射影したとき、その値がすべての個体で同じ(分散が 00)だったとしましょう。この座標は定数ですから、記録する必要がありません。捨てても個体を区別する能力は一切失われません。逆に、射影した値が大きくばらつく方向は、個体どうしを最もよく引き離す方向です。ならば「射影後の分散が大きい順に軸を採り、小さいものから捨てる」のが自然だろう、というのが PCA の設計原理です。

歴史的には二つの入口があります。Karl Pearson は 1901 年の論文で「空間内の点の集まりに最もよく当てはまる直線・平面」を、点から直線への垂直距離の二乗和を最小にする問題として論じました。Harold Hotelling は 1933 年に、心理測定の文脈で分散最大化の定式化を与え、principal component の名を与えています。当てはめ誤差の最小化と分散の最大化 — 出発点は違いますが、答えは同じ固有値問題になります。この一致は偶然ではなく、ピタゴラスの定理から導かれる必然です(定理 5.1)。

前章までで扱った線形回帰勾配降下法は、目的変数 yy という「正解」をもつ教師あり学習でした。PCA は yy を使いません。入力データ x\boldsymbol{x} 自身の構造だけを見る教師なし学習です。この違いは後で効いてきます(例 7.2)。

ここから先は Pro プランの内容です。

この章の続き(定義・定理・証明・例・演習)をすべて読むには Pro プランにご登録ください。無料の章は最後まで読めます。

プランを見る ログイン

この記事の誤りを報告する ・運営: 夢現技研合同会社料金プラン利用条件特定商取引法に基づく表記

© 2026 夢現技研合同会社 ・本文の LLM への入力は自由です。コード例は MIT ライセンスです。