最小ノルム解の導出と図による理解

「連立一次方程式を満たす解の中で一番原点に近いものを求める」問題です。この問題はきれいに解けます。

定理1(最小ノルム解)

Axundefined=bundefinedA\overrightarrow{x}=\overrightarrow{b} を満たす xundefined\overrightarrow{x} の中で xundefined2\|\overrightarrow{x}\|_2 を最小にする解 xundefined\overrightarrow{x_*} がただ1つ存在し, xundefined=A(AA)1bundefined\overrightarrow{x_*}=A^{\top}(AA^{\top})^{-1}\overrightarrow{b} ただし,AA は行ベクトルが線形独立な m×nm\times n 行列,xundefined\overrightarrow{x}nn 次元ベクトル,bundefined\overrightarrow{b}mm 次元ベクトルとする。

最小ノルム解について,問題設定・定理の証明・射影による理解を紹介します。

問題設定・記号

  • xundefined2\|\overrightarrow{x}\|_2xundefined\overrightarrow{x} の長さ(2ノルム)です。つまり,xundefined\overrightarrow{x} の各成分を x1,...,xnx_1,...,x_n とすると xundefined2=x12+x22++xn2\|\overrightarrow{x}\|_2=\sqrt{x_1^2+x_2^2+\cdots +x_n^2} です。

  • AA の行ベクトルが線形独立なので,mnm\leqq n です。横長行列(方程式の数よりも変数の数が多い連立方程式)をイメージしてください。

  • rankA=m\mathrm{rank}\:A=m です。よって,任意の bundefined\overrightarrow{b} に対して Axundefined=bundefinedA\overrightarrow{x}=\overrightarrow{b} を満たす解 xundefined\overrightarrow{x} が存在します。その解の中で x2\|x\|_2 を最小にするもの(最小ノルム解)を探す問題です。

最小ノルム解の証明

冒頭の定理を証明します。主張を3つにわけてそれぞれ証明します:

  1. そもそも AAAA^{\top} に逆行列 (AA)1(AA^{\top})^{-1} が存在すること。
  2. xundefined=A(AA)1bundefined\overrightarrow{x_{*}}=A^{\top}(AA^{\top})^{-1}\overrightarrow{b}Axundefined=bundefinedA\overrightarrow{x}=\overrightarrow{b} の解であること。
  3. Axundefined=bundefinedA\overrightarrow{x}=\overrightarrow{b} なる任意の xundefined\overrightarrow{x} に対して xundefined2xundefined2\|\overrightarrow{x}\|_2\geqq \|\overrightarrow{x_*}\|_2 であること。
1の証明

AAAA^{\top} が正則であることを証明する。具体的には,行列が正則であることの意味と5つの条件の条件4「AAxundefined=0undefinedAA^{\top}\overrightarrow{x}=\overrightarrow{0} なら xundefined=0undefined\overrightarrow{x}=\overrightarrow{0}」を証明する。

AAxundefined=0undefinedAA^{\top}\overrightarrow{x}=\overrightarrow{0} なら xundefinedAAxundefined=0\overrightarrow{x}^{\top}AA^{\top}\overrightarrow{x}=0,つまり (Axundefined)(Axundefined)=0(A^{\top}\overrightarrow{x})^{\top}(A^{\top}\overrightarrow{x})=0

Axundefined22=0\|A^{\top}\overrightarrow{x}\|_2^2=0

長さが 00 であるベクトルは 0undefined\overrightarrow{0} のみなので

Axundefined=0undefinedA^{\top}\overrightarrow{x}=\overrightarrow{0}

ここで,定理の仮定より AA の行ベクトルが線形独立なので,AA^{\top} の列ベクトルが線形独立。つまり xundefined=0undefined\overrightarrow{x}=\overrightarrow{0} がわかる。

2の証明

Axundefined=(AA)(AA)1bundefined=bundefinedA\overrightarrow{x_*}=(AA^{\top})(AA^{\top})^{-1}\overrightarrow{b}=\overrightarrow{b}

3の証明

xundefined22=xundefinedxundefined+xundefined22=xundefinedxundefined22+xundefined22+2(xundefinedxundefined)xundefined\|\overrightarrow{x}\|^2_2\\ =\|\overrightarrow{x}-\overrightarrow{x}_*+\overrightarrow{x}_*\|_2^2\\ =\|\overrightarrow{x}-\overrightarrow{x_*}\|_2^2+\|\overrightarrow{x}_*\|_2^2+2(\overrightarrow{x}-\overrightarrow{x_*})^{\top}\overrightarrow{x_*}

ここで「Axundefined=bundefinedA\overrightarrow{x}=\overrightarrow{b} のとき第三項が 00」なら xundefined2xundefined2\|\overrightarrow{x}\|_2\geqq \|\overrightarrow{x_*}\|_2 がわかる。以下では「Axundefined=bundefinedA\overrightarrow{x}=\overrightarrow{b} のとき第三項が 00」を示す:

(xundefinedxundefined)xundefined=(xundefinedxundefined)A(AA)1bundefined=(AxundefinedAxundefined)(AA)1bundefined=(bundefinedbundefined)(AA)1bundefined=0(\overrightarrow{x}-\overrightarrow{x_*})^{\top} \overrightarrow{x_*}\\ =(\overrightarrow{x}-\overrightarrow{x_*})^{\top} A^{\top}(AA^{\top})^{-1}\overrightarrow{b}\\ =(A\overrightarrow{x}-A\overrightarrow{x_*})^{\top}(AA^{\top})^{-1}\overrightarrow{b}\\ =(\overrightarrow{b}-\overrightarrow{b})(AA^{\top})^{-1}\overrightarrow{b}\\ =0

参考文献:Least-norm solutions of undetermined equations

射影による理解

定理2

Ax0undefined=bundefinedA\overrightarrow{x_0}=\overrightarrow{b} なる任意の x0undefined\overrightarrow{x_0} に対して,x0undefined\overrightarrow{x_0}(KerA)(\mathrm{Ker}\:A)^{\perp} に直交射影したら xundefined\overrightarrow{x_*} になる。

ただし,定理2における記号の意味や前提は定理1のものと同じとします。

KerA\mathrm{Ker}\:AAxundefined=0undefinedA\overrightarrow{x}=\overrightarrow{0} を満たす xundefined\overrightarrow{x} 全体の集合(→行列のカーネル(核)の性質と求め方)で,\perp は直交補空間を表します。

証明

Im(A)=(KerA)\mathrm{Im}(A^{\top})=(\mathrm{Ker}\:A)^{\perp} である(有名な公式)。

よって,Im(A)\mathrm{Im}(A^{\top}) への射影を考える。これは射影行列のイメージと楽しい公式より,P=A(AA)1AP=A^{\top}(AA^{\top})^{-1}A をかけることに対応する。

つまり,Px0undefined=xundefinedP\overrightarrow{x_0}=\overrightarrow{x_*} を示せばよい。

これは xundefined=A(AA)1bundefined\overrightarrow{x_*}=A^{\top}(AA^{\top})^{-1}\overrightarrow{b}Ax0undefined=bundefinedA\overrightarrow{x_0}=\overrightarrow{b} から分かる。

定理2のイメージ

射影による理解 図のように理解できます。図の説明:

  1. Axundefined=bundefinedA\overrightarrow{x}=\overrightarrow{b} の解空間上に x0undefined\overrightarrow{x_0} があります。

  2. その解空間は KerA\mathrm{Ker}\:A と平行です。なぜなら解に KerA\mathrm{Ker}\:A の元を加えても解だからです。

  3. その直交補空間 (KerA)(\mathrm{Ker}\:A)^{\perp} を考えます。解空間とも直交します。

  4. x0undefined\overrightarrow{x_0}(KerA)(\mathrm{Ker}\:A)^{\perp} に射影した xundefined\overrightarrow{x_*} が解空間の中で一番原点に近いのでノルム最小解になります。

定理1の証明は思ったより単純でした。