Moore–Penrose逆行列

同義語:Moore–Penrose擬似逆行列Moore–Penrose inverse

概要

Moore–Penrose逆行列(Moore–Penrose inverse)とは、複素行列 $A\in\mathbb{C}^{m\times n}$ に対し、$AXA=A$、$XAX=X$、$(AX)^*=AX$、$(XA)^*=XA$ の 4 条件(Penrose 条件)を満たす行列 $X\in\mathbb{C}^{n\times m}$ のことであり、$A^+$ と書く。任意の行列に対して存在して一意に定まり、正方でない行列や正則でない行列にも逆行列の概念を拡張する。$A$ が正則なら $A^+=A^{-1}$ であり、列が線形独立なら $A^+=(A^*A)^{-1}A^*$ である。$AA^+$ と $A^+A$ はそれぞれ $A$ と $A^*$ の列空間への直交射影であり、$x=A^+b$ は $\|Ax-b\|$ を最小にするノルム最小のベクトル(最小二乗解)を与える。

$$\newcommand{C}[0]{\mathbb{C}} \newcommand{N}[0]{\mathbb{N}} \newcommand{Q}[0]{\mathbb{Q}} \newcommand{R}[0]{\mathbb{R}} \newcommand{Z}[0]{\mathbb{Z}} $$

前提知識: 行列, 内積, 線形独立

定義

以下、$\mathbb{C}^{m\times n}$ で複素数を成分とする $m\times n$ 型の行列全体を表す。$A\in\mathbb{C}^{m\times n}$ に対し、$A$ の転置行列の各成分を複素共役に置き換えた $n\times m$ 型の行列を $A^*$ と書き、$A$ の共役転置(共役転置、Hermite 転置)という。$A^*=A$ を満たす正方行列を Hermite行列 という。$\mathbb{C}^n$ の列ベクトル $x,y$ の標準内積を $\langle x,y\rangle:=y^*x$、ノルムを $\|x\|:=\sqrt{\langle x,x\rangle}$ と書く。定義から任意の $A\in\mathbb{C}^{m\times n}$、$x\in\mathbb{C}^n$、$y\in\mathbb{C}^m$ について $\langle Ax,y\rangle=\langle x,A^*y\rangle$ が成り立つ($y^*Ax=(A^*y)^*x$)。

Moore–Penrose逆行列

$A\in\mathbb{C}^{m\times n}$ に対し、次の 4 条件を満たす $X\in\mathbb{C}^{n\times m}$ を $A$ の Moore–Penrose 逆行列(Moore–Penrose inverse)といい、$A^+$ と書く。

  1. $AXA=A$
  2. $XAX=X$
  3. $(AX)^*=AX$($AX$ は Hermite 行列である)
  4. $(XA)^*=XA$($XA$ は Hermite 行列である)
    この 4 条件を Penrose 条件という。

Moore–Penrose 逆行列は任意の $A$ に対して存在し(thm-moore-penrose-inverse-existence)、一意である(thm-moore-penrose-inverse-uniqueness)ので、記号 $A^+$ は矛盾なく定まる。条件 1 だけを満たす行列は一般に一意でなく、一般化逆行列($\{1\}$-逆行列)と呼ばれる。条件 3・4 の Hermite 性を加えて初めて一意性が得られる(rem-moore-penrose-inverse-counterexample)。

直感

Moore–Penrose 逆行列は「逆行列が存在しない行列に対しても、逆行列にもっとも近い振る舞いをする行列」である。条件 1 は「$X$ を挟んでも $A$ の作用が変わらない」ことを、条件 2 は逆に「$A$ を挟んでも $X$ の作用が変わらない」ことを述べ、$A$ と $X$ が互いに緩やかな逆の関係にあることを表す。条件 3・4 は、$AX$ と $XA$ がそれぞれ $A$ の列空間 $\operatorname{im}A$ と $A^*$ の列空間 $\operatorname{im}A^*$ への直交射影になることを要求する条件であり(prop-moore-penrose-inverse-projections)、これによって一意性と最小二乗法への応用(thm-moore-penrose-inverse-least-squares)が得られる。
名称は E. H. Moore(1920 年)と R. Penrose(1955 年)に由来する(Pen55、GVL13)。擬似逆行列(pseudoinverse)や一般化逆行列と呼ばれることもあるが、これらの名称は文献によっては条件 1 のみを満たす行列など別の対象を指すこともあるので注意が必要である。

例

正則行列の場合

$A=\begin{pmatrix}1 & 1\\ 0 & 1\end{pmatrix}$ は正則行列で、逆行列は $A^{-1}=\begin{pmatrix}1 & -1\\ 0 & 1\end{pmatrix}$ である。prop-moore-penrose-inverse-invertible により $A^+=A^{-1}$ である。

対角行列の場合

対角行列 $A=\begin{pmatrix}2 & 0\\ 0 & 0\end{pmatrix}$ に対し、prop-moore-penrose-inverse-diagonal の構成に従い、$0$ でない対角成分を逆数に、$0$ はそのまま $0$ にして $A^+=\begin{pmatrix}1/2 & 0\\ 0 & 0\end{pmatrix}$ を得る。$A$ は正則でないので逆行列は存在しないが、Moore–Penrose 逆行列は存在する。

列ベクトルの場合

$A=\begin{pmatrix}1\\ 2\end{pmatrix}\in\mathbb{C}^{2\times1}$ とし、$X=\frac15\begin{pmatrix}1 & 2\end{pmatrix}\in\mathbb{C}^{1\times2}$ とおく。
$$ AX=\frac15\begin{pmatrix}1 & 2\\ 2 & 4\end{pmatrix},\qquad XA=\frac15(1+4)=1 $$
であるから、$AXA=A\cdot1=A$、$XAX=1\cdot X=X$ であり、$AX$、$XA$ はともに実対称行列なので Hermite である。よって $A^+=X$ である。一般に $0$ でない列ベクトル $a$ について $a^+=a^*/\|a\|^2$ であり(prop-moore-penrose-inverse-full-rank)、$A$ が正方でなくても $A^+$ が定まる。

階数1の正方行列の場合

$A=\begin{pmatrix}1 & 1\\ 1 & 1\end{pmatrix}$ は $B=\begin{pmatrix}1\\ 1\end{pmatrix}$、$C=\begin{pmatrix}1 & 1\end{pmatrix}$ により $A=BC$ と分解される。$B^*B=2$、$CC^*=2$ であるから、thm-moore-penrose-inverse-existence の公式により
$$ A^+=C^*(CC^*)^{-1}(B^*B)^{-1}B^*=\frac14\begin{pmatrix}1 & 1\\ 1 & 1\end{pmatrix} $$
である。実際 $AA^+=A^+A=\frac12\begin{pmatrix}1 & 1\\ 1 & 1\end{pmatrix}$ は Hermite で、$AA^+A=A$、$A^+AA^+=A^+$ が直接計算で確かめられる。

反例:条件1だけでは一意でない

$A=\begin{pmatrix}1 & 0\\ 0 & 0\end{pmatrix}$ の Moore–Penrose 逆行列は $A^+=A$ である(prop-moore-penrose-inverse-diagonal)。一方 $B=\begin{pmatrix}1 & 7\\ 0 & 0\end{pmatrix}$ は
$$ ABA=\begin{pmatrix}1 & 7\\ 0 & 0\end{pmatrix}\begin{pmatrix}1 & 0\\ 0 & 0\end{pmatrix}=\begin{pmatrix}1 & 0\\ 0 & 0\end{pmatrix}=A $$
により条件 1 を満たすが、$AB=\begin{pmatrix}1 & 7\\ 0 & 0\end{pmatrix}$ は Hermite でない($(AB)^*\ne AB$)ので条件 3 を破り、$B\ne A^+$ である。条件 1 だけを満たす行列(一般化逆行列)は $B$ のように無数にあり、条件 3・4 の Hermite 性を課して初めて一意に定まる。
また逆行列の公式 $(AB)^{-1}=B^{-1}A^{-1}$ の類似 $(AB)^+=B^+A^+$ は一般には成り立たない。$A=\begin{pmatrix}1 & 1\end{pmatrix}$、$B=\begin{pmatrix}1\\ 0\end{pmatrix}$ とすると $AB=(1)$ で $(AB)^+=(1)$ だが、$A^+=\frac12\begin{pmatrix}1\\ 1\end{pmatrix}$、$B^+=\begin{pmatrix}1 & 0\end{pmatrix}$ により $B^+A^+=(1/2)$ である。破れるのは「積の Moore–Penrose 逆行列が Moore–Penrose 逆行列の逆順の積に等しい」という主張である。

性質

Moore–Penrose逆行列の一意性

$A\in\mathbb{C}^{m\times n}$ の Moore–Penrose 逆行列は、存在すれば一意である。

$X,Y$ をともに $A$ の Moore–Penrose 逆行列とする。Penrose 条件を繰り返し用いると
$$ \begin{aligned} X&=XAX=(XA)^*X=(XAYA)^*X=(YA)^*(XA)^*X=YAXAX=YAX\\ &=YAYAX=Y(AY)^*(AX)^*=Y(AXAY)^*=Y(AY)^*=YAY=Y \end{aligned} $$
となる。ここで 1 行目では条件 2、4、$A=AYA$($Y$ の条件 1)、共役転置の反転則 $(PQ)^*=Q^*P^*$、条件 4 を 2 回、条件 2 を順に使い、2 行目では $A=AYA$、条件 3 を 2 回、反転則、$A=AXA$、条件 3、条件 2 を順に使った。よって $X=Y$ である。$\square$

対角型の行列の場合

$D=(d_{ij})\in\mathbb{C}^{m\times n}$ が $i\ne j$ のとき $d_{ij}=0$ を満たす(対角型である)とする。$x\in\mathbb{C}$ に対し $x\ne0$ なら $x':=x^{-1}$、$x=0$ なら $x':=0$ と定め、$D^+\in\mathbb{C}^{n\times m}$ を $(i,i)$ 成分が $d_{ii}'$、それ以外の成分が $0$ の対角型の行列とすると、$D^+$ は $D$ の Moore–Penrose 逆行列である。

対角型の行列どうしの積は対角型で、$(i,i)$ 成分は対角成分の積である。$d_{ii}d_{ii}'$ は $d_{ii}\ne0$ なら $1$、$d_{ii}=0$ なら $0$ であり、いずれにせよ実数で、$d_{ii}d_{ii}'d_{ii}=d_{ii}$、$d_{ii}'d_{ii}d_{ii}'=d_{ii}'$ が成り立つ。よって $DD^+D=D$、$D^+DD^+=D^+$ であり、$DD^+$ と $D^+D$ は実数を対角成分にもつ対角行列だから Hermite である。$\square$

射影としての特徴づけ

$X$ を $A\in\mathbb{C}^{m\times n}$ の Moore–Penrose 逆行列とする。このとき $P:=AX$ と $Q:=XA$ は Hermite かつ冪等($P^2=P$、$Q^2=Q$)であり、任意の $y\in\mathbb{C}^m$ について $y-Py$ は $\operatorname{im}A$ のすべての元と直交し、任意の $x\in\mathbb{C}^n$ について $x-Qx$ は $\operatorname{im}A^*$ のすべての元と直交する。すなわち $P$ は $\operatorname{im}A$ への、$Q$ は $\operatorname{im}A^*$ への直交射影である。

$P^2=AXAX=(AXA)X=AX=P$、$Q^2=XAXA=X(AXA)=XA=Q$ であり、Hermite 性は条件 3・4 そのものである。$P$ の像が $\operatorname{im}A$ に含まれることは $Py=A(Xy)$ から、$\operatorname{im}A$ を含むことは $P(Ax)=AXAx=Ax$ から分かる。次に $A^*P=A^*(AX)^*=(AXA)^*=A^*$ であるから、任意の $z\in\mathbb{C}^n$ について
$$ \langle Az,\,y-Py\rangle=\langle z,\,A^*(y-Py)\rangle=\langle z,\,A^*y-A^*y\rangle=0 $$
である。$Q$ についても同様に、$Q=(XA)^*=A^*X^*$ より $\operatorname{im}Q\subset\operatorname{im}A^*$、$QA^*=(AQ)^*=(AXA)^*=A^*$ より $\operatorname{im}Q\supset\operatorname{im}A^*$ であり、あわせて $\operatorname{im}Q=\operatorname{im}A^*$ である。$AQ=A$ により $\langle A^*w,\,x-Qx\rangle=\langle w,\,Ax-AQx\rangle=0$ である。$\square$

Moore–Penrose逆行列の存在

任意の $A\in\mathbb{C}^{m\times n}$ は Moore–Penrose 逆行列をもつ。より詳しく、$A\ne O$ の列空間の次元 $r=\dim\operatorname{im}A$(階数)とし、$A=BC$($B\in\mathbb{C}^{m\times r}$ の列は線形独立、$C\in\mathbb{C}^{r\times n}$ の行は線形独立)と分解すると、$B^*B$ と $CC^*$ は正則で
$$ A^+=C^*(CC^*)^{-1}(B^*B)^{-1}B^* $$
である。$A=O$ のときは $A^+=O$($n\times m$ 型の零行列)である。

$A=O$ のときは $X=O$ が 4 条件を満たす。以下 $A\ne O$ とする。
まず分解 $A=BC$ の存在を示す。$A$ の列ベクトル $a_1,\ldots,a_n\in\mathbb{C}^m$ の線形包(列空間 $\operatorname{im}A$)の中で、列ベクトルの族から極大な線形独立な部分族 $a_{j_1},\ldots,a_{j_r}$ をとる($A\ne O$ なので $r\ge1$)。極大性からすべての列 $a_j$ がこの部分族の線形包($\operatorname{span}$)に入り(線形独立 の記事の命題「一ベクトルの追加」の対偶)、よって $a_{j_1},\ldots,a_{j_r}$ は $\operatorname{im}A$ の基底である(線形独立 の記事の命題「極大線形独立集合と基底」)。$B:=(a_{j_1}\ \cdots\ a_{j_r})\in\mathbb{C}^{m\times r}$ とおくと、各 $a_j$ は $a_j=\sum_{k=1}^{r}c_{kj}a_{j_k}$ と一意に書けるので、$C:=(c_{kj})\in\mathbb{C}^{r\times n}$ とおけば $A=BC$ である。$B$ の列は線形独立である。$C$ の行が線形独立であることを示す。$y\in\mathbb{C}^r$ が $y^*C=0$ を満たすとする。$C$ の第 $j_k$ 列は $e_k$($a_{j_k}=1\cdot a_{j_k}$ という一意な表示による)であるから、$y^*C$ の第 $j_k$ 成分は $\overline{y_k}$ であり、$y=0$ である。すなわち $C$ の行は線形独立である。
次に $B^*B\in\mathbb{C}^{r\times r}$ が正則であることを示す。$B^*Bx=0$ なら $\|Bx\|^2=\langle Bx,Bx\rangle=\langle x,B^*Bx\rangle=0$ で $Bx=0$ であり、$B$ の列が線形独立だから $x=0$ である(線形独立 の記事の定理「線形独立性の同値条件」の 4)。よって $B^*B$ は $\mathbb{C}^r$ の単射な線形変換を定め、線形代数学 の記事の定理「次元定理」により全射でもあるから全単射であり、その逆写像は線形なので 行列 の記事の定理「行列と線形写像の対応」によりある行列で表される。この行列が $B^*B$ の逆行列であり、$B^*B$ は正則である。同様に $CC^*y=0$ なら $\|C^*y\|^2=\langle y,CC^*y\rangle=0$ で $C^*y=0$、すなわち $y^*C=0$ で、$C$ の行の線形独立性から $y=0$ である。よって $CC^*$ は正則である。
$X:=C^*(CC^*)^{-1}(B^*B)^{-1}B^*$ とおく。
$$ AX=BC\,C^*(CC^*)^{-1}(B^*B)^{-1}B^*=B(B^*B)^{-1}B^*,\qquad XA=C^*(CC^*)^{-1}(B^*B)^{-1}B^*BC=C^*(CC^*)^{-1}C $$
であり、$(B^*B)^{-1}$ と $(CC^*)^{-1}$ は Hermite 行列の逆行列だから Hermite なので($(H^{-1})^*=(H^*)^{-1}=H^{-1}$)、$(AX)^*=B\bigl((B^*B)^{-1}\bigr)^*B^*=AX$、$(XA)^*=XA$ である。さらに
$$ AXA=B(B^*B)^{-1}B^*BC=BC=A,\qquad XAX=C^*(CC^*)^{-1}C\,C^*(CC^*)^{-1}(B^*B)^{-1}B^*=C^*(CC^*)^{-1}(B^*B)^{-1}B^*=X $$
である。よって $X$ は 4 条件を満たし、thm-moore-penrose-inverse-uniqueness により $A^+=X$ である。$\square$

特異値分解による構成

存在の別証明として、特異値分解 $A=U\Sigma V^*$($U,V$ はユニタリ行列、$\Sigma$ は非負の実数を対角成分にもつ対角型の行列)を使うものが標準的である(GVL13 §5.5)。prop-moore-penrose-inverse-diagonal により $\Sigma^+$ が定まり、$X:=V\Sigma^+U^*$ とおくと、$U^*U=I$、$V^*V=I$ により
$$ AXA=U\Sigma\Sigma^+\Sigma V^*=A,\quad XAX=V\Sigma^+\Sigma\Sigma^+U^*=X,\quad (AX)^*=(U\Sigma\Sigma^+U^*)^*=AX,\quad (XA)^*=(V\Sigma^+\Sigma V^*)^*=XA $$
となる($\Sigma\Sigma^+$、$\Sigma^+\Sigma$ は実対角行列なので Hermite)。したがって $A^+=V\Sigma^+U^*$ である。この構成は特異値分解の存在を前提とするので、本記事では上の階数分解による証明を主とした。数値計算では特異値分解による構成が用いられる。

正則行列と列・行が線形独立な行列
  1. $A\in\mathbb{C}^{m\times n}$ の列が線形独立($r=n$)なら $A^*A$ は正則で $A^+=(A^*A)^{-1}A^*$ であり、$A^+A=I_n$ である。
  2. $A$ の行が線形独立($r=m$)なら $AA^*$ は正則で $A^+=A^*(AA^*)^{-1}$ であり、$AA^+=I_m$ である。
  3. とくに $0$ でない列ベクトル $a\in\mathbb{C}^{m\times1}$ について $a^+=a^*/\|a\|^2$ である。

1 は thm-moore-penrose-inverse-existence において $B=A$、$C=I_n$ ととった場合であり、$CC^*=I_n$ から公式が従う。$A^+A=(A^*A)^{-1}A^*A=I_n$ である。2 は $B=I_m$、$C=A$ ととった場合である。3 は 1 において $A^*A=a^*a=\|a\|^2$ とした場合である。$\square$

正則な正方行列の場合

$A$ が正則な正方行列であるとき $A^+=A^{-1}$ である。

$X:=A^{-1}$ とおくと $AXA=A$、$XAX=A^{-1}$、$AX=XA=I$ は Hermite であるから、$X$ は 4 条件を満たす。thm-moore-penrose-inverse-uniqueness により $A^+=A^{-1}$ である。$\square$

基本的な計算規則

$A\in\mathbb{C}^{m\times n}$ について次が成り立つ。

  1. $(A^+)^+=A$。
  2. $(A^*)^+=(A^+)^*$。
  3. $0$ でない複素数 $c$ について $(cA)^+=c^{-1}A^+$。
  4. $A^+=A^+(A^+)^*A^*=A^*(A^+)^*A^+$。

いずれも「候補が 4 条件を満たすこと」を確かめ、thm-moore-penrose-inverse-uniqueness を使う。1:$X:=A^+$ に対する 4 条件は $A$ と $X$ の役割を入れ替えても同じ形であるから、$A$ は $X$ の Moore–Penrose 逆行列である。2:$Y:=(A^+)^*$ について、$A^*YA^*=(AA^+A)^*=A^*$、$YA^*Y=(A^+AA^+)^*=(A^+)^*=Y$ である。また $A^*Y=(A^+A)^*=A^+A$(条件 4)は Hermite であり、$YA^*=(AA^+)^*=AA^+$(条件 3)も Hermite である。よって $Y$ は $A^*$ に対する 4 条件を満たす。3:$X:=c^{-1}A^+$ について $(cA)X(cA)=cAA^+A=cA$、$X(cA)X=c^{-1}A^+AA^+=X$、$(cA)X=AA^+$、$X(cA)=A^+A$ は Hermite である。4:条件 2 と 3 により $A^+=A^+(AA^+)=A^+(AA^+)^*=A^+(A^+)^*A^*$ であり、条件 2 と 4 により $A^+=(A^+A)A^+=(A^+A)^*A^+=A^*(A^+)^*A^+$ である。$\square$

最小二乗解とその最小ノルム性

$A\in\mathbb{C}^{m\times n}$、$b\in\mathbb{C}^m$ とする。$x_0:=A^+b$ は
$$ \|Ax_0-b\|=\min_{x\in\mathbb{C}^n}\|Ax-b\| $$
を満たす($x_0$ は方程式 $Ax=b$ の最小二乗解、最小二乗法)。さらに、この最小値を達成する $x$ の全体は $x_0+\ker A$ であり、その中で $x_0$ はノルム $\|x\|$ が最小のただ 1 つの元である。とくに $Ax=b$ が解をもつなら $x_0$ はその中でノルム最小の解である。

$P:=AA^+$、$Q:=A^+A$ とおく。prop-moore-penrose-inverse-projections により $P$ は $\operatorname{im}A$ への直交射影である。任意の $x\in\mathbb{C}^n$ について
$$ Ax-b=(Ax-Pb)-(b-Pb) $$
と分けると、$Ax-Pb=A(x-A^+b)\in\operatorname{im}A$ であり、$b-Pb$ は $\operatorname{im}A$ と直交するから、三平方の定理により
$$ \|Ax-b\|^2=\|Ax-Pb\|^2+\|b-Pb\|^2\ge\|b-Pb\|^2 $$
である。等号は $Ax=Pb=Ax_0$ のとき、かつそのときに限り成り立ち、$x=x_0$ はこれを満たす。よって最小値は $\|b-Pb\|$ であり、最小化する $x$ の全体は $\{x\mid Ax=Ax_0\}=x_0+\ker A$ である。
次に、最小化する任意の $x$($Ax=Ax_0$)について $Qx=A^+Ax=A^+Ax_0=A^+AA^+b=A^+b=x_0$ である。$Q$ は Hermite かつ冪等なので $\langle Qx,\,x-Qx\rangle=\langle x,\,Q^*(x-Qx)\rangle=\langle x,\,Qx-Q^2x\rangle=0$ であり、
$$ \|x\|^2=\|Qx\|^2+\|x-Qx\|^2=\|x_0\|^2+\|x-x_0\|^2\ge\|x_0\|^2 $$
となる。等号は $x=x_0$ のとき、かつそのときに限る。$Ax=b$ が解をもつときは $b\in\operatorname{im}A$ なので $Pb=b$ であり、最小値 $0$ を達成する $x$ がまさに解であるから、最後の主張が従う。$\square$

補足

Moore–Penrose 逆行列は、統計学の回帰分析(正規方程式 $A^*Ax=A^*b$ の解 $x=A^+b$)、数値解析(階数落ちした連立1次方程式の安定な解法)、信号処理、最適化などで、正則でない・正方でない係数行列に対する「解」を与える標準的な道具である。数値計算では rem-moore-penrose-inverse-svd の特異値分解による構成を用い、小さい特異値を $0$ とみなして打ち切ることで数値的な階数を扱う(GVL13 §5.5)。実行列の場合は共役転置を転置に置き換えて同じ議論が成り立ち、$A^+$ も実行列になる。

関連項目

参考文献

Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する