特異値分解の証明

最終更新 2017年 11月9日
  $m$ 行 $n$ 列 の任意の実行列 $A$ は、
行列の特異値分解
と分解することができる。
  ここで $V$ と $U$ は、それぞれ $m$ 行 $m$ 列 と $n$ 行 $n$ 列 の直交行列である。 また、$\Lambda$ は、対角成分が正または $0$ であり、 非対角成分が $0$ である $m \times n$ の行列である。 すなわち
特異値分解の表現
と表せる行列である。 ここで、 $\sigma_{i}>0$ $(i=1,2,\cdots,r)$ である。
  このような分解を特異値分解 (singular value decomposition) といい、 任意の行列に対して可能であることから、 工学や物理学でしぱしば活用される分解である。 証明を以下に記す。

  証明

$A$ を $m$ x $n$ の実行列とすると、 $A^{T}A$ は、$n$ 次正方行列であり、 転置行列の積の性質により、
を満たすので、 実対称行列である。
  実対称行列は次の大切な性質を持つ。 すなわち、 実対称行列の固有ベクトルによって 正規直交基底を構成することができる ( このことは、 実対称行列が正規行列の一種であること、 および、 正規行列の固有ベクトルによって正規直交基底を構成することができる ことから理解される )。
  そこで、 正規直交基底を成すように集めた $A^{T} A$ の固有ベクトルを $\{ \mathbf{u}_{1}, \mathbf{u}_{2}, \cdots \mathbf{u}_{n} \}$ と表すと、 これらは、
を満たす。 ここで、 $i,j = 0,1,\cdots,n$ であり、 上の式は、 $\mathbf{u}_{i}$ が固有値 $\xi_{i}$ の固有ベクトルであることを表し、 下の式は、集合 $\{ \mathbf{u}_{1}, \cdots \mathbf{u}_{n} \}$ が正規直交基底であること表している。 なお、 $\delta_{ij}$ はクロネッカーのデルタであり、 内積は
によって定義されているものとする。
  固有値 $\xi_{i}$ は、$(1)$ により、
と表せる。一方で、 右辺は、 内積と行列の転置との関係により、 任意のベクトル $\mathbf{x}$ に対し、
が成り立つので、 固有値 $\xi_{i} $ はすべて $0$ 以上であることが分かる。
  そこで、 $\xi_{i}$ を正のものと $0$ のものに次のように分けることが可能である。
ここで、 $r$ は正の固有値の数である ( このように分けることは、固有ベクトルに付いた添え字を入れ替えるだけで可能であり、 問題の一般性を失わない )。
  ここで、 ベクトル $\mathbf{v}_{i}$ $(i = 1,2,\cdots, r)$ を、
と定義する。 $\mathbf{v}_{i}$ は、 $A$ が $m$ x $n$ の行列であり、 $\mathbf{u}_{i}$ が $n$ x $1$ の列ベクトルであることから、 $m$ x $1$ の列ベクトルである。 また 内積と行列の転置との関係と $(1)$ から
を満たすことが分かる。
  このように定義された
は、互いに直交するので、線形独立なベクトル集合である。 従って、 $(2)$ の線形結合の全体は、$m$ 次元ベクトル空間の中の $r$ 次元の部分空間を構成する。
  一般に、 ベクトル空間には、 部分空間の正規直交基底を含む正規直交基底が存在するので、 $(2)$ を含むようにベクトル空間全体の正規直交基底を構成することができる。 すなわち、$(2)$ に $m-r$ 個のベクトル
を加えて、 正規直交基底
を構成することができる。
  このように構成した $\{ \mathbf{v}_{1}, \cdots, \mathbf{v}_{m} \}$ には、 $i,j = 1,2,\cdots,m $ に対して、
が成り立つ。
  続いて $m \times m$ の行列 $V$ と、 $n \times n$ の行列 $U$ を
と定義する。 これらはそれぞれ正規直交基底 ( $(1)$ と $(3)$ を参考 ) を列ベクトルとして持つ行列である。 ところで、 一般に正方行列が正規直交基底を列ベクトルとして持つことと、 その正方行列が直交行列であることは必要十分条件であることが知られている ( 証明は、 直交行列の必要十分条件 を参考 )。 ゆえに、 $U$ と $V$ は直交行列である。 すなわち、
を満たす行列である。 ただし、一行目の $I$ は、$n \times n$ の単位行列であり、 二行目の $I$ は、$m \times m$ の単位行列であることに注意する。
  これらによって定義される次の行列を考える。
この行列は $m$ x $n$ の行列であり、 次のように書き換えることができる。
  まず、 $i=r+1, r+2, \cdots, n$ の場合 $\xi_{i}=0$ であることと $(1)$ により、
が成立することから、 $A\mathbf{u}_{i} = 0$ であるので、
と表せる。
  次に、 右辺の行列の $i,j=1,2,\cdots,r$ の場合、 $(1)$ から
が成立することを用いると、
と表せる。
  また、 $i=r+1,r+2,\cdots,m$ かつ $j=1,2,\cdots,r$ の場合、 $(3)$ より、
が成立することを用いると、
と表せる。
  $\sqrt{\xi_{i}}=\sigma_{i}$ と表し、右辺の行列を $\Lambda$ と定義する。すなわち、
と定義する。 ここで $\sigma_{i} > 0$ である。
  こうすると、上の式は、
と表される。
  この関係を用いると、
が成り立つことが分かる。
  すると、 この式は $U$ と $V$ は、直交行列であること $(4)$ により、
と書き表せる。
  この式は、 任意の行列 $A$ が直交行列 $V$ と、 対角成分が正または $0$ であり非対角成分が $0$ である行列 $\Lambda$ と、 直交行列 $U^{T}$ の積によって分解されることを表している。 すなわち、 特異値分解を表している。
補足: $r$ について
  正の固有値の数 $r$ は、行列 $A^{T}A $ のランク(階数)である。
一般に行列の積のランクは、 積を構成する行列のランク以下であるので、 任意の行列 $A$ に対して
が成立する。 また、 行列のランクは、 行の数以下であることから、
が成立する。 ゆえに、
である。 このことは、 $A^{T}A$ の 正の固有値の数 $r$ が必ず $A$ の行数 $m$ 以下であることを表している。