而して

ノートとかメモとか。

正射影とか

目標。高校数学のいわゆる正射影ベクトルというのは、2本のベクトルがあったときに、一方のベクトルと他方のベクトルの単位ベクトルとの内積を取ることで、「影」のベクトルが分かるというものだったが、大学に入って線形代数を学ぶと、正射影という用語は、直和分解の一意性に対応する概念として用いられている。自分が学んだときには、これらの繋がりが見えにくかったので、この双方の関係を探ってみようというポスト。

 \boldsymbol{R} ^ n の直和分解  \boldsymbol{R} ^ n=F \dot{+} G があったとして。 \dim{F}=k なら次元定理から  \dim{G}=n-k だから、 F から  \boldsymbol{a} _ {1}, \cdots , \boldsymbol{a} _ {k} k 本、 G から  \boldsymbol{a} _ {k+1}, \cdots, \boldsymbol{a} _ {n} n-k 本の基底をとってきて、次の式が成立つような行列  P を考える:

 P[\boldsymbol{a} _ {1}, \cdots , \boldsymbol{a} _ {k}, \boldsymbol{a} _ {k+1}, \cdots , \boldsymbol{a} _ {n}]=[\boldsymbol{a} _ {1}, \cdots , \boldsymbol{a} _ {k}, \boldsymbol{o}, \cdots , \boldsymbol{o}].\ \ \ \ \ \ (\ast)

この  P が何をしているのかというと、つまり、なにか  \boldsymbol{R ^ n} の元  \boldsymbol{x} が与えられたら、その  \boldsymbol{x} \boldsymbol{a} _ {i} たちの線形結合でかけるのだけれど、 P は、この  \boldsymbol{x} F の元だけめいっぱい使って表現できるベクトルにまで切り落とす役割を担っているとみる。

もっと簡単にいうと、 P は、  \boldsymbol{x} から  G からの関与を消すような作用を持っている。

このことは、  P \boldsymbol{x} F への射影を与えているということに他ならない。

たとえば、 \boldsymbol{R} ^ 3 の空間で、なにか斜めの棒状のもの、たとえば、線分  \{c\  ^ {t} (1, 1, 1); c \in [0,\ 1]\}とかを考えて、 z-軸の正方向遠方に光源をおくと、この線分の影が  xy-平面に映る。

映った影は、もちろん2次元の平面の上にあるから、この影を表すのにベクトルは2本で十分で、たとえばそれは標準基底の  \boldsymbol{e} _ 1, \boldsymbol{e} _ 2 で足りる。

この場合でいえば、先の  F xy-平面で,  G z-軸になる。

この行列  P のことを射影行列という。 F G がどういった基底で構成されているかがわかれば、 (\ast) で右から逆行列をかけることによって  P がわかる。

ex.  \boldsymbol{R} ^ 3 F=\{\boldsymbol{x} \in \boldsymbol{R} ^ 3; 2x+y-z=0\} G=\{\boldsymbol{x} \in \boldsymbol{R} ^ 3; x=y=z\} への射影行列を求める。平面  F の法線ベクトルとして  ^{t}(2,1,-1) がとれるから、 F の基底としてたとえば  ^{t}(0,1,1),\ ^{t}(1,0,2) がとれる。 G の基底は  ^{t}(1,1,1) ととる。

 (\ast) は、

 {
P _ {F}\left[ 
  \begin{array}{rrr}
    0 & 1 & 1\\
    1 & 0 & 1\\
    1 & 2 & 1
  \end{array}
\right]
=\left[
  \begin{array}{rrr}
    0 & 1 & 0\\
    1 & 0 & 0\\
    1 & 2 & 0
  \end{array}
\right]
}

となるから、これを解いて

 {
P _ {F}=\left[
  \begin{array}{rrr}
    0 & -1/2 & 1/2 \\
    -1 & 1/2 & 1/2 \\
    -1 & -1/2 & 3/2
  \end{array}
\right]
}

となる。 P _ {G} については、

 {
P _ {G}\left[ 
  \begin{array}{rrr}
    0 & 1 & 1\\
    1 & 0 & 1\\
    1 & 2 & 1
  \end{array}
\right]
=\left[
  \begin{array}{rrr}
    0 & 0 & 1\\
    0 & 0 & 1\\
    0 & 0 & 1
  \end{array}
\right].
\ \therefore
P _ {G} = \left[
  \begin{array}{rrr}
    1 & 1/2 & -1/2 \\
    1 & 1/2 & -1/2 \\
    1 & 1/2 & -1/2
  \end{array}
\right].
}

今度は、この直和が直交直和であるとき、すなわち  \boldsymbol{R} ^ n=F \oplus G であるときを考える。この場合の射影をとくに正射影という。このときは、片方、たとえば  F の基底がわかれば  G の基底もわかる(Gram-Schmidtと取りかえ定理を用いればよい)。

先の例では、平面  F と直線  G が斜めに交わっているのに対し、今回は  F G が垂直に交わる。この違いが、ただの直和と直交直和の違いに対応している。

この場合も  (\ast) を用いて正射影行列を計算できる。ひとつ例をあげておくと、

ex.  \boldsymbol{R} ^ 3 で、平面  F=\{\boldsymbol{x} \in \boldsymbol{R} ^ 3; x-z=0\} への正射影行列を求める。といっても、先の例と何も変わらない。 F の法線ベクトルとして  ^{t}(1,0,-1) をとれば、 F の基底として  ^{t}(1,0,1),\ ^{t}(0,1,0) がとれる。よって、

 {
P _ {F}\left[ 
  \begin{array}{rrr}
    0 & 1 & 1\\
    1 & 0 & 0\\
    0 & 1 & -1
  \end{array}
\right]
=\left[
  \begin{array}{rrr}
    0 & 1 & 0\\
    1 & 0 & 0\\
    0 & 1 & 0
  \end{array}
\right].
\ \therefore
P _ {F} = \left[
  \begin{array}{rrr}
    1/2 & 0 & 1/2 \\
    0 & 0 & 0 \\
    1/2 & 0 & 1/2
  \end{array}
\right].
}

具体的に、たとえば  ^{t}(2,0,0) F への正射影を求めてみると、

 {
P _ {F}\left[ 
  \begin{array}{rrr}
    2\\
    0\\
    0
  \end{array}
\right]
=\left[
  \begin{array}{rrr}
    1/2 & 0 & 1/2 \\
    0 & 0 & 0 \\
    1/2 & 0 & 1/2
  \end{array}
\right]
\left[ 
  \begin{array}{rrr}
    2\\
    0\\
    0
  \end{array}
\right]
=
\left[ 
  \begin{array}{rrr}
    1\\
    0\\
    1
  \end{array}
\right].
}

図は下のようになる。

f:id:sora410:20191117211851p:plain

さて、正射影というと、高校数学までは冒頭にも述べたようなベクトルの「影」を求めることを指していたが、この図によればその関連は十分にありそうである。そこで、決定的な関係を次に示そう。

準備として。線型空間  E の直交直和分解  E=F \oplus F ^ {\perp} が与えられたとし、 F への正射影  p について、その表現行列  P を求めるとき、先の  A を直交行列にとることができる。実際、 F の正規直交基底として  \boldsymbol{e _ 1}, \cdots, \boldsymbol{e _ k} を、 F ^ {\perp} の正規直交基底として  \boldsymbol{e} _ {k+1}, \cdots, \boldsymbol{e} _ {n} をとれば、これらはすべて互いに直交するから、 \boldsymbol{R} ^ n の正規直交基底となる。ゆえに、この基底において、 A=(\boldsymbol{e} _ 1, \cdots, \boldsymbol{e} _ n) とすれば  A は直交行列になる。したがって  P=(\boldsymbol{e} _ 1, \cdots, \boldsymbol{e} _ k, \boldsymbol{o}, \cdots, \boldsymbol{o}){^t}A が成立つ。

これを踏まえ、 \boldsymbol{R} ^ n において、直線  l=\{c\boldsymbol{a}; \boldsymbol{a}={^t}(a _ 1, \cdots, a _ n) \in \boldsymbol{R} ^ n, c \in \boldsymbol{R}\} への正射影行列  P を求めよう。

 \boldsymbol{R} ^ n の基底  \boldsymbol{b} _ 1, \cdots, \boldsymbol{b} _ n をとる。しかして、 \boldsymbol{b} _ 1 \displaystyle \frac{\boldsymbol{a}}{|\boldsymbol{a}|} でとりかえ、Gram-Schmidtの直交化法を用いて、正規直交基底  \displaystyle \frac{\boldsymbol{a}}{|\boldsymbol{a}|}, \boldsymbol{e} _ 2, \cdots, \boldsymbol{e} _ n をうる。これを用いれば  \displaystyle P\left(\frac{\boldsymbol{a}}{|\boldsymbol{a}|}, \boldsymbol{e} _ 2, \cdots, \boldsymbol{e} _ n\right)=\left(\frac{\boldsymbol{a}}{|\boldsymbol{a}|}, \boldsymbol{o}, \cdots, \boldsymbol{o}\right), すなわち

 { \displaystyle
\begin{eqnarray}
P&=&\left(\frac{\boldsymbol{a}}{|\boldsymbol{a}|}, \boldsymbol{o}, \cdots, \boldsymbol{o}\right)
\left[ 
\begin{array}{cc} 
  \displaystyle \frac{{^t}\boldsymbol{a}}{|\boldsymbol{a}|} \\
  {^t}\boldsymbol{e} _ 2 \\
  \vdots\\
  {^t}\boldsymbol{e} _ n
\end{array} \right]\\
&=&\frac{\boldsymbol{a}{^t}\boldsymbol{a}}{|\boldsymbol{a}| ^ 2}.
\end{eqnarray}
}

ゆえに、  \boldsymbol{x} \in \boldsymbol{R} ^ n があったとすれば、 \boldsymbol{x} の直線  l への正射影は

 \displaystyle P\boldsymbol{x}=\frac{\boldsymbol{a}{^t}\boldsymbol{a}\boldsymbol{x}}{|\boldsymbol{a}| ^ 2}=\frac{(\boldsymbol{x} | \boldsymbol{a})\boldsymbol{a}}{|\boldsymbol{a}| ^ 2}

で与えられる。

射影についてはこの本がわかりやすかった: 笠原晧司著「線形代数固有値問題」(現代数学社).