LoginSignup
7
8

More than 3 years have passed since last update.

特異値分解と一般逆行列+α

Last updated at Posted at 2020-05-21

特異値分解

特異値分解とは?

サイズが$M\times N$で,ランク$r < min(M,N)$の行列$A$は,$M \times r$ 行列 $U$
,$N \times r$ 行列 $V$ ,$r \times r$ の対角行列 $\Delta$ を用いれば常に
$$A=U\Delta V^H $$
の形に分解でき、これを特異値分解と呼ぶ.
特異値分解は必ず存在する.これが工学的には非常に需要なポイントである。

あと特異値分解はいろいろな形があります。すべての行列のサイズを $M,N$ で分解する記事などを多く見かけますが上記で示した形で特異値分解しないと
ランク落ちした行列等を特異値分解できません。

特異値,左特異ベクトル及び右特異ベクトル

$V,U$の列を$V=[v_1,v_2,\dots,v_r],U=[u_1,u_2,\dots,u_r]$ と定義し$\Delta$の対角成分を$\Delta=diag(\mu_1,\mu_2,\dots,\mu_r) (\mu_1 \geq \mu_2 \geq \dots > 0)$ と定義する.

$\mu$ を特異値,$u$ を左特異ベクトル,$v$ を右特異ベクトルと呼ぶ.
あとU,Vをそれぞれ左特異行列、右特異行列とかっていったりします。

特異値の0を特異行列 $\Delta$ には通常含めません.ここではまりました。

特異値,左特異ベクトル及び右特異ベクトルの求め方(M >= N)

$M\geq N$ の時,特異値分解の式に右から $V$ を乗じると,

$$Av_i=\mu_iu_i$$

左から $A^H$ を乗じると

$$A^HAv_i=\mu^2_i v_i$$

を得る.上式は$A^HA$ の固有値 $\mu^2_i $ と,固有ベクトル(右特異ベクトル) $v_i$ を求める問題に帰着する.
左特異行列 $U$ は固有値問題から得られた対角行列 $\Delta$ と右特異ベクトルからなる右特異行列 $V$ を用いて

$$U=AV\Delta^{-1}$$

で求めることができる.

ここで $\Delta^{-1}$ が登場します。なので特異値0を入れてしまうとこの計算ができなくなるので
0は抜くべきです。

特異値,左特異ベクトル及び右特異ベクトルの求め方(M<N)

$M < N$ の時,特異値分解の式にエルミート転置を取り右から $U$ を乗じると,

$$A^Hu_i=\mu_iv_i$$

左から $A$ を乗じると

$$AA^Hu_i=\mu^2_i u_i$$

を得る.上式は$AA^H$ の固有値 $\mu^2_i $ と,固有ベクトル(左特異ベクトル) $u_i$ を求める問題に帰着する.
右特異行列は固有値問題から得られた対角行列 $\Delta$ と左特異ベクトルからなる左特異行列 $U$ を用いて

$$V=A^HU\Delta^{-1}$$

で求めることができる.

一般逆行列

一般逆行列とは?

$M \times N$ の任意の行列 $A$ に対して,

$$AA^-A=A$$
を満たす $N\times M$ 行列 $A^-$ を一般逆行列と言う.
行列 $A$ に対して $A^-$ は一意に決まらない.そこで一意に決まるように定義したのがムーアペンローズの一般逆行列である。

ムーア・ペンローズの一般逆行列

$M\times N$ の行列 $A$ に対し,以下の四つの条件を満たし,一意に決まる行列をムーア・ペンローズ一般逆行列と呼ぶ.
1. $AA^+A=A$
2. $A^+AA^+=A^+$
3. $(AA^+)^H=AA^+$
4. $(A^+A)^H=A^+A$

正方行列じゃない場合や行列式の値が0になる場合でも疑似的な逆行列を無理やり作る感じですね!
あと、"ムーア・ペンローズ一般行列式"とかいってたら先生に怒られました(笑)気を付けましょう
あと $A^+$ は $A$ のダガーです。ダガーってもうちょいキリストっぽいよなとかおもってプラスだよな?とおもってエープラスとかいってたら同様にしばかれました。

特異値分解と一般逆行列の関係

$A$ の特異値分解

$$A=\sum_{i=1}^{r} \mu_iu_iv^H_i$$

を用いて一般逆行列を示すと

$$A^+=\sum_{i=1}^{r} \frac{1}{\mu_i}v_iu^H_i$$

で表せる.また,これを特異行列 $U,V$ と特異値行列 $\Delta$ を用いて表現すると,

$$A^+=V\Delta^{-1}U^H$$

となる.
このことから、一般逆行列を求めるには特異値分解を用いれば簡単ということですね。

応用編

列空間への正射影行列の求め方

$M \times N$ の任意の行列 $A$ に対して,

ある行列$A\in \mathbb{C}^{M\times N}$ の値域 $R(A)$ への正射影行列は


$$P_{R(A)}=AA^+$$

で与えられる.
一般逆行列をつかって求められます。

左特異ベクトルによる正射影の表現

$P_{R(A)}=AA^+$ をさらに展開すると

$$P_{R(A)}=AA^+=(\sum_{i=1}^{r} \mu_iu_iv^H_i)(\sum_{i=1}^{r} \frac{1}{\mu_i}v_iu^H_i)=UU^H$$

このことから正射影行列は$A$の左特異ベクトルで表現できる

連立一次方程式の解の有無

連立1次方程式は

$$Ax=f$$

もし $A$ が $M=N$ で正則であれば解 $x$ は

$$x=A^{-1}f$$

のように求められる.

解の存在の確認方法

行列 $A$ の値域を $R(A)$ とする.連立一次方程式 $Ax=f$ が成り立っている時,$f\in R(A)$ であり,
$f\in R(A)$ の時: $Ax=f$ を満たすような解 $x$ は存在する
$f\notin R(A)$ の時: $Ax=f$ を満たすような解 $x$ は存在しない
と言える.

$f\in R(A)$ かどうかは$f$ を $R(A)$ に射影して,それが $f$ に一致するかを確認すればよい。
すなわち,$R(A)$ への正射影行列 $P_{R(A)}$ を用いて,
$$P_{R(A)}f=f$$
が成り立つかどうかを確認すればよい.

係数行列と列ベクトルから,最良近似解を求める

連立方程式の解が不定の時(解が無限にある)

$Ax=f$ となる解が存在する場合でも,解が一意に決まらない場合がある.例えば,$M < N$ の場合は未知数より方程式の数が少ないため,解が一意に決まらない.$Ax=f$ の解は,一般逆行列を用いて

$$x=A^+f$$

を選択できる.解が不定の場合, $A$ の零空間 $N(A)$ における任意のベクトル$h\in N(A)$ を取れば

$$x=A^+f+h$$

も解である.

連立方程式の解が不能の時(解けない)

$Ax=f$ となる解が存在しない場合は,$f$ と $Ax$ が最も近くなるように $x$ を選ぶことで,解の代わりとして用いる.
つまり,$Ax$ が $f$ の $R(A)$ への正射影となるような$\hat x$ を見つけ,これを $x$ の近似解とする.これを $f$ の最良近似と呼ぶ.

$$A\hat x =P_{R(A)}f$$

を解けばよい.これを変形すると

$$\hat x =A^+f+h$$

となる.

このことから近似的に解をもとめることもできるのですね。

7
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
8