29
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

射影行列

Last updated at Posted at 2018-02-19

射影行列とは

射影行列は、あるベクトルに作用させると、そのベクトルの部分空間成分を取り出すような行列である。

射影行列がなぜ重要かというと、線型方程式系の最小二乗解と密接に関係しているからである。
最小二乗解は一般逆行列を使って求められるが、一般逆行列の表式の意味を理解しようとすると、射影行列を知っておくのが一番てっとり早いのである。

射影行列の表式

ストラングの教科書1に従って、行列$A$の列ベクトルたちの張る空間を列空間と呼ぶことにする2
このとき、$A$の列空間への射影行列は $ A (A^T A)^{-1} A^T $ であることが知られている3

この記事ではこの表式を導出したいと思う。

導出の前置き

前出のストラングの教科書では、直交性を使って示されている。
しかし、ここでは、双対基底というものを使うことで、射影行列がより簡潔かつ一般的に書けることを示した上で、元々の表式も導出してみる。

双対基底については簡単に説明するが、後半で、計量テンソルを使った反変・共変成分の変換計算4を説明なしに使う。

導出

(Step1) 双対基底

$A$の列ベクトルたち $ \{a_i\} $ が張る空間(列空間)の基底を $ \{a_i\} $ にとる。
これに対して、正規直交性 $$ a^i a_j = \delta ^i_j $$ を満たすような基底を双対基底 $ \{a^i\} $ と呼ぶ。
この式は、$a^i$ と $a_j$ の内積を表しており、$ \{a_i\} $ を縦ベクトルとすると、$ \{a^i\} $ は横ベクトルであることに注意。
双対基底と区別する意味を込めて、元の基底 $ \{a_i\}$ の方を自然基底と呼ぶこともある。

(Step2) 双対基底を使った射影行列の表式

正規直交性から、任意の(縦)ベクトル $x$ に、$a^i$ を掛けると $x$ の $a_i$ 成分が得られることが分かる。
つまり、Aの列空間への射影成分は
$$ x_{\mathrm{span}\{a_i\}} = \sum_i (a^i x) a_i $$ である。この式は
$$ x_{\mathrm{span}\{a_i\}} = \sum_i a_i(a^i x) = \sum_i (a_i a^i) x
$$ と書き換えられるので、射影行列は
$$ P=\sum_i a_i a^i $$ である5

このように、射影行列は、双対基底を入れることで、非常に簡潔な形で表せる。
ここまで来れば、あとは計量テンソルによる添字の上げ下げをするだけである。

(Step3) Aを使った式に直す

計量テンソルで双対基底を自然基底に戻す(添え字を「下げる」)と
$$ P=\sum_{i,j} a_i g^{ij} a_j $$ であり、行列で書くと、$ P = A G^{-1} A^T $ と書ける。
ここで、$ g^{ij} $は $G = (g_{ij})$ の逆行列の行列要素であることを使った。

自然基底の作る計量テンソルである $ g_{ij} $ は、$ g_{ij} = a_i \cdot a_j $であり、行列で書くと、$ G = A^T A $ であるから、結局、射影行列は、
$$ P = A (A^T A)^{-1} A^T $$ となる。

補足:行空間への射影行列

$A$の行ベクトルたちが張る空間は行空間と呼び、同様に射影行列を作ることができる。
列空間の場合と対比的に書くと、

  • $A$の列空間への射影行列は $ A (A^T A)^{-1} A^T $
  • $A$の行空間への射影行列は $ A^T (A A^T)^{-1} A $

行空間への射影行列の表式は、列空間への射影行列の式において、$ A \rightarrow A^T $と置き換えれば得られる。これは、$A$の行空間は、$ A^T $ の列空間と言い換えられるからである。

行空間への射影行列は、線形方程式系のノルム最小解と関連している。

  1. 『ストラング:線形代数イントロダクション』https://www.kindaikagaku.co.jp/math/kd0405.htm

  2. 一般的な言葉でいえば、列空間とはAが表す線形写像の像(Image)です。

  3. Aは実数行列とします。複素数の場合は、転置を共役転置に置き換えれば良いだけ。

  4. 相対論でよく使うやつ

  5. これは抽象的に書けば、$\hat{P}=\sum_i a_i \otimes a^i$ というテンソル積の和で表される写像であり、これを数ベクトル空間で表現したものが行列$P$である。

29
24
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
29
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?