A Blog Entry on Bayesian Computation by an Applied Mathematician
$$
$$
特異値分解
任意の行列 \(A\in M_{n,p}(\mathbb{R}),r:=\operatorname{rank}(A)\) について,直交行列 \(U\in O_n(\mathbb{R}),V\in O_p(\mathbb{R})\) と非負実数 \(\sigma_1\ge\cdots\ge\sigma_r>0\) が存在して,次が成り立つ: \[
A=U\Sigma V^\top,\qquad\Sigma:=\begin{bmatrix}D&O_{r,p-r}\\O_{n-r,r}&O_{n-r,p-r}\end{bmatrix},\quad D:=\mathrm{diag}(\sigma_1,\cdots,\sigma_r).
\] \(D\) を 特異値行列,の対角要素を 特異値 と呼ぶ.
(Sylvester, 1889) は特異値を正準乗数 (canonical multipliers) と呼んでいた.Sylvester は特異値分解を独立に再発見した一人で,歴史上最初の特異値分解は (Beltrami, 1873) が与えたものだとされている.より詳しい歴史については (Stewart, 1993) 参照.
まず \(v_1,\cdots,v_r\in\mathbb{R}^n\) を,\(A^\top A\) の固有ベクトルからなる正規直交系として取る. このとき \(v_1,\cdots,v_r\) は \(\mathrm{Im}\,(A^\top)\) の像の基底である. \(v_1,\cdots,v_r\) が \(A^\top A\) の固有ベクトルであることが必要であることは, \[
A^\top A=(U\Sigma V^\top)^\top(U\Sigma V^\top)=V\Sigma^\top U^\top U\Sigma V^\top=V(\Sigma^\top\Sigma)V
\] となることからわかり,\(\sigma_1^2,\cdots,\sigma_r^2\) が \(A^\top A\) の固有値である. (従って \(AA^\top\) の固有値でもある).
続いて,条件 \(Av_i=\sigma_iu_i\;(i\in[r])\) によって,\(u_1,\cdots,u_r\) を定める.するとこれらは直交し, \(\mathrm{Im}\,(A)\) の基底をなす.さらに,\(AA^\top\) の固有ベクトルでもある.
このことは次のように示せる:
\[\begin{align*}
u_i^\top u_j&=\left(\frac{Av_i}{\sigma_i}\right)^\top\left(\frac{Av_j}{\sigma_j}\right)=\frac{v_i^\top A^\top Av_j}{\sigma_i\sigma_j}=\frac{\sigma_j^2}{\sigma_i\sigma_j}v_i^\top v_j=0,\qquad i\ne j.
\end{align*}\]
\(\langle u_1,\cdots,u_r\rangle\subset\mathrm{Im}\,(A)\) であることと,正規直交することから線型独立でもあり,これらが \(\mathrm{Im}\,(A)\) の基底であることがわかる. さらに,任意の \(i\in[r]\) について, \[
AA^\top u_i=\frac{AA^\top Au_i}{\sigma_i}=\sigma_iAv_i=\sigma_i^2u_i,\qquad i\in[r].
\] なお,\(Av_i=\sigma_iu_i\) が必要であることは,\(v_1,\cdots,v_r\) の正規直交性から, \[
Av_i=\biggr(u_1\sigma_1v_1^\top+\cdots+u_r\sigma_rv_r^\top\biggl)v_i=u_i\sigma_i
\] からわかる.
\(v_1,\cdots,v_r\) の正規直交な延長であって,\(v_{r+1},\cdots,v_n\) が \(\mathrm{Ker}\;(A)\) の基底になるもの,\(u_1,\cdots,u_r\) の正規直交な延長であって,\(u_{r+1},\cdots,u_m\) が \(\mathrm{Ker}\;(A^\top)\) の基底になるものが取れる. これは,核と余像,像と余核が直交するためである. これについて,\(A=U\Sigma V^\top\) が成り立つ.
以上の証明から,次のこともわかる:
- \(A\) の特異値は,\(A^\top A\) の固有値の正の平方根に等しい.
- \(V\) の列ベクトルは \(A^\top A\) の固有ベクトルであり,\(U\) の列ベクトルは \(AA^\top\) の固有ベクトルになる.
低階数近似
\((n,p)\)-行列の全体 \(M_{n,p}(\mathbb{C})\) は Hilbert-Schmidt 内積 \[
(B \,|\,A)_\mathrm{HS}:=\operatorname{Tr}(A^*B)=\sum_{i=1}^m\sum_{j=1}^na_{ij}b_{ij}
\] に関して Hilbert 空間をなす.\(M_{n,p}(\mathbb{R})\) はこの閉部分空間をなす.
\(A\in M_{n,p}(\mathbb{R})\) を行列,\(0\le r\le n\lor p\) を自然数とする.ランク \(r\) の行列 \(\widetilde{A}\in M_{n,p}(\mathbb{R})\) のうち,\(A\) に最も近いものは \[
\widetilde{A}:=U\Sigma_{1:r}V^\top=\operatorname*{argmin}_{\operatorname{rank}(\widetilde{A})=r}\|A-\widetilde{A}\|_\mathrm{HS}
\] が与える.ただし,\(\Sigma_{1:r}=\mathrm{diag}(\sigma_1,\cdots,\sigma_r,0,\cdots,0)\) とした.
またこのときの残差は,残った特異値のうち最大のもの \[
\|A-\widetilde{A}\|_\mathrm{HS}=\sigma_{r+1}
\] が与える.
一般化逆行列
\(A\in M_{mn}(\mathbb{R})\) について,次の3条件を満たす行列 \(A^+\in M_{nm}(\mathbb{R})\) は一意的に定まる:
- 反射型一般可逆行列:\(AA^+A=A,A^+AA^+=A^+\)
- 最小ノルム型:\(A^+A\) は自己共役である:\((A^+A)^\top=A^+A\)
- 最小誤差型:\(AA^+\) も自己共役である:\((AA^+)^\top=AA^+\)
これを Moore-Penrose の一般化逆行列 という.
任意の行列 \(A\in M_{n,p}(\mathbb{R})\) の一般化逆行列は,直交行列 \(V,U\) で座標変換を施したところで逆行列を取り,これを再び \(V,U\) で変換し直したものに等しい:
\(A\in M_{n,p}(\mathbb{R})\) の一般化逆行列は次のように表せる: \[
A^+=V\Sigma^{-1}U^\top,\qquad \Sigma^{-1}=\begin{bmatrix}D^{-1}&O_{r,p-r}\\O_{n-r,r}&O_{n-r,p-r}\end{bmatrix}.
\]
References
Beltrami, E. (1873).
Sulle funzioni bilineari.
Giornale Di Matematiche Ad Uso Degli Studenti Delle Universita,
11, 98–106.
Eckart, C., and Young, G. (1936).
The approximation of one matrix by another of lower rank.
Psychometrika,
1(3), 211–218.
Moore, E. H. (1920).
On the reciprocal of the general algebraic matrix.
Bulletin of the American Mathematical Society,
26(9), 394–395.
Penrose, R. (1955).
A generalized inverse for matrices.
Mathematical Proceedings of the Cambridge Philosophical Society,
51(3), 406–413.
Strang, G. (2016). Introduction to linear algebra. Wellesley-Cambridge Press.
柳井晴夫,竹内啓. (1983). 射影行列・一般逆行列・特異値分解,Vol. 10. 2018年に新装版が出版されている; 東京大学出版会.