この項目では、行列を「意味のある成分」に分解する固有値分解と特異値分解を学びます。主成分分析(PCA)や低ランク近似など、機械学習の重要手法の数学的な裏付けとなる内容です。

※この項目はシラバス2026では出題対象外(オプション)ですが、前提知識として重要なため解説します。

📖 概要

行列は「ベクトルを別のベクトルに変換する写像」とみなせます。この変換の性質を調べる強力な道具が、固有値・固有ベクトルです。正方行列に対して、変換しても方向が変わらない特別なベクトル(固有ベクトル)と、その伸縮率(固有値)を求めると、行列の振る舞いを単純な「軸ごとの拡大縮小」として理解できます。これを行列の分解として整理したものが固有値分解(対角化)です。

一方、固有値分解は正方行列にしか使えず、正方行列でも常に対角化できるとは限りません。そこで任意の形の行列に適用できるように一般化したものが特異値分解(SVD)です。特異値分解は「回転(直交変換)→軸ごとの伸縮→回転」という形に行列を分解し、行列の重要な成分を特異値の大きい順に取り出せます。

機械学習では、データの分散が大きい方向を見つける主成分分析、行列の低ランク近似によるデータ圧縮・ノイズ除去、レコメンデーションなどで、これらの分解が理論的な基盤として使われます。

🔍 キーワード解説

固有値と固有ベクトル

正方行列 A に対し、Av = λv(v は零ベクトルでない)を満たすベクトル v を固有ベクトル、スカラー λ を固有値と呼びます。直感的には、固有ベクトルは「A で変換しても方向が変わらないベクトル」であり、固有値はその方向への伸縮率です。固有値は特性方程式 det(A - λI) = 0 を解くことで求められます。n次正方行列の固有値は(重複を含めて)n個あり、固有値の総和は行列のトレース(対角成分の和)、総積は行列式に一致します。

対角化(固有値分解)

n次正方行列 A が n本の線形独立な固有ベクトルを持つとき、固有ベクトルを列に並べた行列 V と、固有値を対角に並べた対角行列 Λ を使って A = V Λ V^(-1) と書けます。これが対角化(固有値分解)です。対角化すると、行列の累乗が A^k = V Λ^k V^(-1) と簡単に計算できるなど、解析が大幅に楽になります。特に実対称行列は必ず直交行列で対角化でき、固有値はすべて実数になります。共分散行列は実対称行列なので、主成分分析ではその固有ベクトルが主成分の方向、固有値が各方向の分散を与えます。

特異値と特異ベクトル

任意の m行n列の行列 A は、A = U Σ V^T の形に分解できます。これが特異値分解で、U は m次直交行列、V は n次直交行列、Σ は対角成分に非負の値を大きい順に並べた行列です。Σ の対角成分を特異値、U の列を左特異ベクトル、V の列を右特異ベクトルと呼びます。特異値は A^T A の固有値の非負の平方根に一致し、右特異ベクトルは A^T A の固有ベクトル、左特異ベクトルは A A^T の固有ベクトルです。ゼロでない特異値の個数は行列のランクに一致します。

低ランク近似への応用

特異値分解で得られる成分のうち、大きい特異値に対応する上位 k 個だけを残すと、元の行列をランク k の行列で近似できます。この低ランク近似は「行列の情報を最もよく保つ圧縮」として知られ、データ圧縮・ノイズ除去・推薦システム・単語の意味表現(潜在的意味解析)など幅広く応用されます。深層学習でも、学習済みモデルの重み行列を圧縮する発想の基礎になっています。

📝 試験でのポイント

💡 ポイント
  • 2次正方行列の固有値固有ベクトルを特性方程式から実際に計算させる問題が典型です
  • 固有値の和=トレース、固有値の積=行列式、という関係は検算にも使えるので必ず覚えましょう
  • 対角化 A = V Λ V^(-1) の各行列が何か(固有ベクトルの行列・固有値の対角行列)を問われます
  • 特異値と固有値の関係(特異値は A^T A の固有値の平方根)、特異ベクトルと A^T A・A A^T の固有ベクトルの対応を整理しておきましょう
  • 固有値分解は正方行列のみ、特異値分解は任意の行列に適用可能、という適用範囲の違いは紛らわしいポイントです

📚 まとめ

固有値・固有ベクトルは、行列による変換を「方向を変えない軸と伸縮率」として捉える道具です。 対角化は固有ベクトルを使って行列を単純な形に直し、累乗計算や分散構造の解析を容易にします。 特異値分解は任意の行列に使える一般化で、特異値の大きい順に行列の重要成分を取り出せます。 主成分分析や低ランク近似の土台として、計算手順と性質の両方を押さえておきましょう。