行列をベクトルに掛けると、普通はベクトルの方向が変わる。しかし特別な方向があり、そこでは方向は変わらず伸び縮みするだけ。この特別な方向が固有ベクトル、伸縮率が固有値。主成分分析からGoogleのPageRankまで、固有値は至る所に現れる。

固有値 固有ベクトル 固有値分解 PCA スペクトル

固有値・固有ベクトルとは

固有値・固有ベクトル

行列 A に対して、以下を満たすスカラー λ とベクトル v:

Av = λv

v: 固有ベクトル(eigenvector)... 方向が変わらないベクトル

λ: 固有値(eigenvalue)... その方向での伸縮率

固有ベクトルは行列が「自然に作用する」方向を示す。固有値はその強さを示す。

幾何学的解釈

固有値 λ 意味
λ > 1 その方向に拡大
0 < λ < 1 その方向に縮小
λ = 1 その方向は不変
λ < 0 方向が反転
λ = 0 その方向に潰れる(次元が下がる)

固有値分解

固有値分解(Eigendecomposition)

n×n の正方行列 A を以下のように分解:

A = VΛV⁻¹

V: 固有ベクトルを列に並べた行列

Λ: 固有値を対角に並べた対角行列

条件:n個の線形独立な固有ベクトルが必要

特異値分解(SVD)

固有値分解は正方行列のみに適用可能。任意の行列には特異値分解(SVD)を使う。

特異値分解(Singular Value Decomposition)

任意の m×n 行列 A を分解:

A = UΣVᵀ

U, V: 直交行列(左右特異ベクトル)

Σ: 対角行列(特異値)

実務での応用

WEB開発での応用

画像圧縮:SVDで低ランク近似。重要な成分だけ残す。

レコメンデーション:行列分解(Matrix Factorization)で協調フィルタリング。

PageRank:隣接行列の最大固有値に対応する固有ベクトルがページの重要度。

AI/MLでの応用

PCA(主成分分析):共分散行列の固有ベクトルが主成分の方向。次元削減。

白色化:データを無相関化する前処理。固有値分解を使用。

スペクトラルクラスタリング:グラフラプラシアンの固有ベクトルでクラスタリング。

安定性解析:勾配爆発/消失は重み行列の固有値に関係。

深掘りリンク