アットウィキロゴ
最近、コレスキー分解というものを教えてもらった。

正定値行列は下三角行列とその転置の掛け算で表すことができるというものである。

今、正定値行列をA、下三角行列をLとすると以下のように分解できる。

 A = LL^{T}

証明)

正定値行列の定義は、

任意のxに対して

 x^{T}Ax>0

となる行列Aのことである。

行列Aを対角化すると以下のようになる。

 D = P^{T}AP

ここで、Dは固有値を対角成分とした行列、Pは直交行列を示す。
(いわゆる対角化)

Pは直交行列であるので

 P^{T} = P^{-1}

となる。このことから正定値行列Aは以下のように表せる。

 A = PDP^{T} \cdots (1)

これを正定値行列の定義へと代入すると、

x^{T}PDP^{T}x>0

となる。今、

P^{T}x=y

とすると上式は以下のようになる。

y^{T}Dy>0

これは、行列Aの固有値をそれぞれ

 \lambda_{1},\lambda_{2},\cdots,\lambda{n}

と表したとすると

y^{T}Dy = \lambda_{1}y_{1}^{2} + \lambda_{2}y_{2}^{2} + \cdots + \lambda_{n}y_{n}^{2}>0

となる。(今、行列Aをn×n行列とした)

つまり、正定値行列はすべての固有値が正の値をとらなければならないことになる。

そのため、行列Aが正定値行列ならば式(1)は

 D = SS^{T} とすると

 A = PSS^{T}P^{T}

と表せることになる。
(Sは固有値の平方根が対角成分の対角行列)

今、

(PS)^{T} = B

とすると

 A = B^{T}B \cdots (2)

と表すことができる。

ここでQR分解を考える。

QR分解とは行列を直交行列Qと上三角行列Rの掛け算で表す手法である。

つまり、上式のBを

 B = QR

と表すことができるという分解である。これはグラムシュミットの直交化法を考えると

実現できることがわかる。(証明は略)

この分解を式(2)へ適用すると

 A = R^{T}Q^{T}QR

となり、Qは直交行列であるので

Q^{T} = Q^{-1}

よって

 A = R^{T}R

Rは上三角行列だったので、その転置は下三角行列

 R^{T} = L

とすればはじめの式

 A = LL^{T}

が得られる。 //

コレスキー分解というものがあるということを聞いていたが、

実際にどうやって証明するのかが気になったので調べてみた。

線形代数の基本を押さえていれば理解できると思う。

これを使うと逆行列の計算とかが早くできるみたい。


最終更新:2011年08月26日 13:38