特異値分解(Singular Value Decomposition; SVD)は、行列による線形変換を、回転、尺度変換、もう一つの回転で表したものです。特異値分解は、n × pの行列Xを次のように分解します。
rをXのランクとします。また、r × rの単位行列をIrとします。
行列U、Diag(L)、およびVには、次のような性質があります。
Uは、U′U = Irを満たすn × rの準直交行列
Vは、V′V = Irを満たすp × rの準直交行列
Diag(L)は、列ベクトルL = (l1, l2, ..., lr)′を対角要素に持つr × rの対角行列。ここで、l1 ≥ l2 ≥ ... ≥ lr > 0
liは、Xの0以外の特異値です。
特異値分解は、正方行列のスペクトル分解(固有値分解)と次のような関係があります。
• liの2乗は、X′Xの0以外の固有値です。
• Vのr列は、X′Xの固有ベクトルです。
注: 行列U、V、および特異値に関し、行列の次元に応じていくつかの異なる表現方法が文献で紹介されています。しかし、それらには、Xのランクまでの特異値分解に関しては根本的な違いはありません。
特異値分解の詳細については、Press et al.(1998, Section 2.6)を参照してください。