正定値行列について

概要

正定値行列について適当に*1解説をします。また、ここで出てくる行列は実数係数です

 

定義

n次対称行列{A}が半正定値であるとは任意の{x\in \mathbb{R}^n}に対して

$$x^{\top} Ax\geq 0$$

となることをいう。また{A}が正定値であるとは、半正定値であってかつ

$$x^{\top}Ax=0\Leftrightarrow x=0$$

となることをいう。

同値な定義

半正定値⇔すべての固有値が非負

正定値⇔すべての固有値が正

 

以下これの証明をする

①半正定値⇒すべての固有値が非負

対偶を示す。{A}は対称行列なので直交対角化ができる。

よって{A=P\Lambda P^{-1}}

$$x^{\top}Ax=x^{\top}P\Lambda P^{-1}x$$

$$=(P^{\top}x)^{\top}\Lambda (P^{-1}x)$$

対称行列は転置と逆行列が等しくなるので

$$=(P^{-1}x)^{\top}\Lambda (P^{-1}x)$$

となる。ここで{\Lambda}

$$\Lambda=\left(\begin{array}{ccc}\lambda_1&\cdots&0\\\vdots&\ddots&\vdots\\0&\cdots&\lambda_n\end{array}\right)$$

という形をしているが、背理法の仮定により、{A}は負の固有値をもつので{\lambda_i\lt 0(\exists i)}と仮定することができる*2

{e_i\in\mathbb{R}^n}{i}番目の基本ベクトル*3として{x=Pe_i}とおくと

$$x^{\top}Ax=(P^{-1}Pe_i)^{\top}\Lambda (P^{-1}Pe_i)$$

$$={e_i}^{\top}\Lambda e_i=\lambda_i\lt 0$$

となる。よって対偶が示された。

②全ての固有値が非負⇒半正定値

{A}を直交対角化して{A=P\Lambda P^{-1}}として

$$\Lambda=\left(\begin{array}{ccc}\lambda_1&\cdots&0\\\vdots&\ddots&\vdots\\0&\cdots&\lambda_n\end{array}\right)$$

{\lambda_1,\ldots,\lambda_n}{A}固有値なのでこれらは全て非負である。

{x^{\top}=(x_1,\ldots,x_n),x=Py,y^{\top}=(y_1,\ldots,y_n),}

とおくと、

$$x^{\top}Ax=(P^{-1}Py)^{\top}\Lambda (P^{-1}Py)$$

$$=y^{\top}\Lambda y=\sum_{k=1}^{n}\lambda_k {y_k}^2\geq 0$$

となる。

③全ての固有値が正⇒正定値

【②】とほぼ同じ。{\lambda_k\gt 0}より

$$\sum_{k=1}^{n}\lambda_k {y_k}^2=0\Leftrightarrow y_1=\cdots=y_n=0$$

となった。

④正定値⇒すべての固有値が正

もし{\lambda_i=0}なる{i}がある場合なら、

{i}番目の基本ベクトル{e_i}について{x=Pe_i}とすれば

$$x^{\top}Ax=\lambda_i=0$$

となって{P}:正則なので、0でないベクトルであって{x^{\top}Ax=0}となるものが存在する。

よって半正定値行列について「0を固有値に持つ⇒正定値ではない」が成り立つので対偶を取ればよい

 

内積との一対一対応

 

shakayami-math.hatenablog.com

 

{\langle *,*\rangle}{\mathbb{R}^n}上の内積としたとき、{A}という正定値行列が存在して{\langle x,y\rangle=x^{\top}Ay}となる。

②逆に{A}という正定値行列があるならば{\langle x,y\rangle :=x^{\top}Ay}と定めたら内積になる

 

①の証明

{e_1,\ldots,e_n}という基本ベクトルを取ってきたとき、{A}という行列を

{(i,j)}成分を{\langle e_i,e_j\rangle}と定めるとよい。つまり

$$A=\left(\begin{array}{ccc}\langle e_1,e_1\rangle&\cdots&\langle e_1,e_n\rangle\\\vdots&\ddots&\vdots\\\langle e_n,e_1\rangle&\cdots&\langle e_n,e_n\rangle\end{array}\right)$$

 を定めると

$$x^{\top}Ay=\left(x_1,\ldots,x_n\right)\left(\begin{array}{ccc}\langle e_1,e_1\rangle&\cdots&\langle e_1,e_n\rangle\\\vdots&\ddots&\vdots\\\langle e_n,e_1\rangle&\cdots&\langle e_n,e_n\rangle\end{array}\right)\left(\begin{array}{c}y_1\\\vdots\\y_n\end{array}\right)$$

$$=\left(x_1,\ldots,x_n\right)\left(\begin{array}{c}\langle e_1,e_1\rangle y_1+\cdots +\langle e_1,e_n\rangle y_n\\\vdots\\\langle e_n,e_1\rangle y_1+\cdots+\langle e_n,e_n\rangle y_n\end{array}\right)$$

$$=\left(x_1,\ldots,x_n\right)\left(\begin{array}{c}\langle e_1,y\rangle\\\vdots\\\langle e_n,y\rangle\end{array}\right)$$

$$=x_1\langle e_1,y\rangle +\cdots x_n\langle e_n,y\rangle$$

$$=\langle x,y\rangle$$

 となっている。(途中の変形については、内積の双線形性を用いた。)

 {A}が正定値であることも明らかである。具体的には内積の正値性を用いる。

$$x^{\top}Ax=\langle x,x\rangle\geq 0$$となっているため半正定値行列であり,{x\neq 0}ならば{\langle x,x\rangle\neq 0}となるため正定値行列である。

 

②の証明

(i)双線形性

行列の積が線形性(分配法則)を満たすから

(ii)交代性

正定値行列は前提として対称行列であるから

(iii)正値性

正定値行列の定義そのもの

平方根の存在

半正定値行列{A}を直交対角化して{A=P\Lambda P^{-1}}とおく

ここで

$$\Lambda=\left(\begin{array}{ccc}\lambda_1&\cdots&0\\\vdots&\ddots&\vdots\\0&\cdots&\lambda_n\end{array}\right)$$

であって{\lambda_i\geq 0(i=1,\ldots,n)}である。ここで、

$$D=\left(\begin{array}{ccc}\sqrt{\lambda_1}&\cdots&0\\\vdots&\ddots&\vdots\\0&\cdots&\sqrt{\lambda_n}\end{array}\right)$$

 とおくと、対角行列同士の積は成分ごとの積になるため{D^2=\Lambda}である。

ここで、

$$B=P D P^{-1}$$

とおくと

$$B^2=P D P^{-1}P D P^{-1}=P D^2P^{-1}=P\Lambda P^{-1}=A$$

となる。特に{B}{A}平方根となる。

特に{D}のいくつかの対角成分を{\sqrt{\lambda_k}}から{-\sqrt{\lambda_k}}に変えるなどの工夫をこらしたら、{B^2=A}なる正方行列{B}が少なくとも{2^n}個生成できるだろう。

また{D}が違ったら{B}が違う形になることは{P}正則行列であることから保証してくれるので、違う表記で結果がダブることはない。

行列式

正定値行列の場合は行列式は正、半正定値行列の場合は行列式が非負であることが言える。

というのも行列式固有値のすべての積(固有方程式について解と係数の関係を考えれば良い)であることからわかる

分散共分散行列

{X_1,\ldots,X_n}をそれぞれ確率変数とする。このときn次正方行列{A}

{(i,j)}成分が{E[(X_i-E[X_i])(X_j-E[X_j])]}であるような行列を考える。

$$A=\left(\begin{array}{ccc}E[(X_1-E[X_1])(X_1-E[X_1])]&\cdots&E[(X_1-E[X_1])(X_n-E[X_n])]\\\vdots&\ddots&\vdots\\E[(X_n-E[X_n])(X_1-E[X_1])]&\cdots&E[(X_n-E[X_n])(X_n-E[X_n])]\end{array}\right)$$

$$a^{\top}Aa=\left(a_1,\ldots,a_n\right)\left(\begin{array}{ccc}E[(X_1-E[X_1])(X_1-E[X_1])]&\cdots&E[(X_1-E[X_1])(X_n-E[X_n])]\\\vdots&\ddots&\vdots\\E[(X_n-E[X_n])(X_1-E[X_1])]&\cdots&E[(X_n-E[X_n])(X_n-E[X_n])]\end{array}\right)\left(\begin{array}{c}a_1\\\vdots\\a_n\end{array}\right)$$

これは内積のときと同じ方法で計算できる。具体的には期待値の線形性を用いる。

つまり、任意の確率変数{X,Y}に対して{E[X+Y]=E[X]+E[Y]}なので

$$a^{\top}Aa=E[\left\{(a_1X_1+\cdots+a_nX_n)-E[a_1X_1+\cdots+a_nX_n]\right\}^2]\geq 0$$

となる。つまり{A}が半正定値行列であることがわかる。

次に正定値となる条件について考えてみると、確率変数{X}について

{E[(X-E[X])^2]=0}となるためには{E[X]=X}が確率1で成り立たなくてはいけない。*4

つまり正定値行列にならない条件とはある{(a_1,\ldots,a_n)\neq(0,\ldots,0)}があって100%の確率で

$$E[a_1X_1+\cdots+a_nX_n]=a_1X_1+\cdots+a_nX_n$$

が成り立ってしまうこととなる。つまり{a_j\neq 0}ならば

$$X_j=\frac{1}{a_j}\left(E[a_1X_1+\cdots+a_nX_n]-\sum_{k\neq j}a_kX_k\right)$$

というように「一次従属」みたいな形になる。(つまり、余計な情報があると考えれば良い)

さて、以降は分散共分散行列が正定値行列になる場合について考えてみる。

多次元正規分布というものがある。{x\in \mathbb{R}^n}として、確率密度関数

$$f(x)=\frac{1}{\sqrt{(2\pi)^n}\cdot \sqrt{\det{A}}}\exp{\left(-\frac{1}{2}{(x-\mu)}^{\top}A^{-1}(x-\mu)\right)}$$

という形になっている。{\mu}とは平均ベクトルであり、{A}は分散共分散行列である。

分散共分散行列が正定値行列ならば行列式は正なので{A^{-1}}{\sqrt{\det{A}}}で割る場面が無事に定義することができる。

ここで{A=P\Lambda P^{-1}}というような対角化を考えたとき、

$$f(Py+\mu)=\frac{1}{\sqrt{(2\pi)^n}\cdot \sqrt{\det{A}}}\exp{\left(-\frac{1}{2}{Py}^{\top}P\Lambda^{-1} P^{-1}Py\right)}$$

$$=\frac{1}{\sqrt{(2\pi)^n}\cdot \sqrt{\det{A}}}\exp{\left(-\frac{1}{2}{y}^{\top}\Lambda^{-1} y\right)}$$

$$=\frac{1}{\sqrt{(2\pi)^n}\cdot \sqrt{\det{A}}}\exp{\left(-\frac{1}{2}\sum_{k=1}^{n}\frac{{y_k}^2}{\lambda_k}\right)}$$

$$=\frac{1}{\sqrt{\det{A}}}\prod_{k=1}^{n}\left(\frac{1}{\sqrt{2\pi}}\exp{\left(-\frac{1}{2}\frac{{y_k}^2}{\lambda_k}\right)}\right)$$

$$=\frac{1}{\sqrt{\lambda_1\cdots\lambda_n}}\prod_{k=1}^{n}\left(\frac{1}{\sqrt{2\pi}}\exp{\left(-\frac{1}{2}\frac{{y_k}^2}{\lambda_k}\right)}\right)$$

$$=\prod_{k=1}^{n}\left(\frac{1}{\sqrt{2\pi\lambda_k}}\exp{\left(-\frac{1}{2}\frac{{y_k}^2}{\lambda_k}\right)}\right)$$

 となる。{P}は直交行列なので、うまい具合に回転・平行移動などを使って座標変換をすれば、複数の(いろいろな標準偏差を持つ)1次元正規分布の積、つまり{n}個の独立な正規分布の積に分解することができる。 

*1:自分の理解が十分に行き届いてない言い訳

*2:Λの対角成分にAの固有値が並んでいるのでこのような仮定ができる

*3:i番目の成分だけ1で他の成分が全て0であるようなベクトル

*4:ここであえて「確率1」という表現をしたが、ひねくれてるわけではなく正しい表現を追求した結果こうなっている。というのも「常に成り立つ」と「確率1で成り立つ」は厳密には異なるのだ。確率とはルベーグ測度なので、「確率1で」というのは測度論でいうところの「ほとんど至るところで」と同じだと考えるのが良い。