行列・ベクトルの微分公式の導出 vol.2

#前回のリンク

https://qiita.com/yudaiyamashita/items/4c120dcbd744e317cc4d

#ベクトルをベクトルで微分する。の続き

今度は回転運動や対称移動、平行移動でのベクトル移動で重ならない場合、線形変換できないものを扱う。要は数の世界(1次元の世界)でいう1次関数でないものを扱っていく。例えば正射影ベクトルを求める変換は以下の通りで平行移動や回転移動では移すことができない。

$$\vec{d} = \frac{\vec{a}\cdot\vec{x}}{||\vec{x}||^2} \hspace{0.5em} \vec{x}$$

のように書ける。なぜならスカラー倍に相当するところ自体の因数に$\vec{x}$が入っているからでこういったものを扱う。

#具体的には

となると移り先を
$$\begin{pmatrix}\boldsymbol f^1(\boldsymbol x) \\\ \boldsymbol f^2(\boldsymbol x) \\\ \vdots \end{pmatrix}$$
としておいて,　（各成分はスカラー。）

これは、前回述べた通り、$$\frac{\partial }{\partial \boldsymbol x}= \begin{pmatrix}\frac{\partial}{\partial x_1} \\\ \frac{\partial}{\partial x_2} \\\ \vdots \end{pmatrix}$$

任意の$$\boldsymbol f^i(\boldsymbol x)= f^i_1(x_1)+f^i_2(x_2)+ \cdots= \begin{pmatrix}f^i_1 & f^i_2 & f^i_3 \cdots \end{pmatrix} \begin{pmatrix}x_1 \\\ x_2 \\\ x_3 \\\ \vdots \end{pmatrix}$$,
ただし$f^i(x_j)= f^i \circ x_j$である。 
行列をは$M$とする。
$$M\boldsymbol  x=\begin{pmatrix}  ^t\boldsymbol f^1 \\\ ^t\boldsymbol f^2 \\\ \vdots ​\end{pmatrix}\boldsymbol x= \begin{pmatrix}  ^t\boldsymbol f^1 \boldsymbol x \\\ ^t\boldsymbol f^2 \boldsymbol x \\\ \vdots ​\end{pmatrix}$$

今度は$f$の下付き添字に着目し
$\begin{pmatrix}  ^t\boldsymbol f^1 \\\ ^t\boldsymbol f^2 \\\ \vdots ​\end{pmatrix}=\begin{pmatrix}  \boldsymbol f_1 & \boldsymbol f_2 & \cdots ​\end{pmatrix}$と捕らえなおす。
$$\frac{\partial }{\partial \boldsymbol x}\begin{pmatrix}  \boldsymbol f_1 & \boldsymbol f_2 & \cdots ​\end{pmatrix}= \begin{pmatrix}\frac{\partial}{\partial x_1} \\\ \frac{\partial}{\partial x_2} \\\ \vdots \end{pmatrix}\begin{pmatrix}  \boldsymbol f_1 & \boldsymbol f_2 & \cdots ​\end{pmatrix}$$
$$=\begin{pmatrix}  \frac{\partial f^1_1}{\partial x_1} & \frac{\partial f^1_2}{\partial x_1} & \cdots \\\ \frac{\partial f^2_1}{\partial x_2} & \frac{\partial f^2_2}{\partial x_2} & \cdots \\\ \vdots & \vdots & \ddots​\end{pmatrix}$$
$f$の右上と$x$の右下の数字は一致するし、次の注釈によって略記して書いていいということがわかる。
$$=\begin{pmatrix}  \frac{\partial f_1}{\partial x_1} & \frac{\partial f_2}{\partial x_1} & \cdots \\\ \frac{\partial f_1}{\partial x_2} & \frac{\partial f_2}{\partial x_2} & \cdots \\\ \vdots & \vdots & \ddots​\end{pmatrix}$$

#注釈
滑らかな関数をある点を原点にして、どこかの軸上でマクローリン展開すると

$$\boldsymbol f^i(x_j)≒ \boldsymbol f^i(\boldsymbol 0) + \frac{\partial \boldsymbol f^i}{\partial x_j}(\epsilon)x_j$$
と近似できる。
$\epsilon$は0にごく近い数。(平均値の定理)
これはある点周りで線形近似できる、ということである。つまり行列計算ができる。書かないが、ベクトルのままでもマクローリン展開できる。
ベクトル微分について証明途中なので、無鉄砲に公式を参照することはできないが、結局、多項式と、n乗の項の前に∞に発散したり、不定形にはならない係数が導出するということがポイント。


それをふまえ、$f^i$というのは何だったかというと、
$$\boldsymbol f^i\cdot\boldsymbol x= f^i_1\cdot x_1+f^i_2 \cdot x_2+ \cdots$$
であり例えば、$x_i$で座標微分すると出てくるのは$f^i_i$

今のところ、i行目は$f^i$で$x_i$で微分すると約束しているので、添え字の片方は省略してよい、ということになる。

#結果

例えば$f:\boldsymbol R^n \to \boldsymbol R^m$, 
$\boldsymbol y = \boldsymbol f(\boldsymbol x)$ を微分すると(もちろん可微分)

$$\begin{pmatrix}  \frac{\partial f_1}{\partial x_1} & \frac{\partial f_2}{\partial x_1} & \cdots & \frac{\partial f_n}{\partial x_1}\\\ \frac{\partial f_1}{\partial x_2} & \frac{\partial f_2}{\partial x_2} & \cdots & \vdots \\\ \vdots & \vdots & \ddots & \\\ \frac{\partial f_n}{\partial x_1} & \cdots & & \frac{\partial f_n}{\partial x_m}\end{pmatrix}$$
となり行列が導出する。

#ベクトルを同じベクトルで微分すると
当たり前すぎて言われないが
座標$(x, y)$は
$$x\begin{pmatrix}1 \\\ 0\end{pmatrix}+ y\begin{pmatrix}0 \\\ 1\end{pmatrix}$$であり、座標微分(偏微分)の考え方をかみ砕いていうとそれぞれの基底はもちろん独立なので上記の$y$を$x$で微分しても$y$と$x$は独立な基底の上で考えられているのだから依存関係にはない微分係数は恒等的に0

よって
$$\frac{\partial \boldsymbol x}{\partial \boldsymbol x}= I=1$$


#スカラーを行列で微分。
とりあえず残りは4つ。行列は正方行列とする。
$f$を一般線形変換行列全体からなる集合からスカラーへの写像とする。
楽そうな「スカラーを行列で微分」に試みる。

$$\frac{\partial f}{\partial A} = \lim_{\Delta A \to \boldsymbol 0} (f(A + \Delta A) - f(A)){\Delta A}^{-1}$$
※逆行列と元の行列は交換可能。
$f$はごくごく小さい範囲では線形写像と同一視できるので、
$$ = \lim_{\Delta A \to \boldsymbol 0} (f(A) + f(\Delta A) - f(A)){\Delta A}^{-1}=\lim_{\Delta A \to \boldsymbol 0}f ( \Delta A){\Delta A}^{-1}$$



この時点で得られるものが微分する正方行列と同サイズの正方行列であるとわかる。

逆行列の余因子展開における定義式を参照して$ij$成分は
$$\tilde{a_{ij}} = (-1)^{i+j}\frac{\tilde{d_{ij}}}{|\Delta A|}　\tag 1$$
$\tilde{d_{ij}}$は元の行列からi行目とj列目を掃きだした行列の行列式。

ここで$f(\Delta A)$は正方行列の全ての成分を因数とする関数と考えられて、さらに可微分であることを鑑みると、局所的には1次の項とそれ以上の項に分けられる。

上の式(1)の次数は$-1$で$f(\Delta A)$の2次以上は局所的には無視できて1次の項がでてくる、割ると相殺されて、定数がでてくるというカラクリである。


$$\frac{\tilde{d_{ij}}}{|\Delta A|}$$は, $\square+ \circ+ \triangle\cdots$のように書けて、その1つの分子に着目すると、
$$a_{\hat{i_1}\hat{j_1}}a_{\hat{i_2}\hat{j_2}}\cdots$$
ハット付き数字は（下の添え字は無視して）それ以外の数字のいずれか、という意味合いである。

分母は
$$(a_{ij}の入っている部分)+(そうじゃない部分)$$
この部分を$(-1)^{i+j}\tilde{d_{ij}}$で割る。
となると
$$a_{ij}+(1次元の項)$$
※$n$乗の項の和÷$n-1$乗の項の和だから次元は、「単位」といってもいいが、1。
※2乗して正負は打ち消される。
$$f^{11}a_{11}+ f^{12} a_{12}+ \cdots$$



※行列の成分は全て0に極々近い微小量

この(1次元の項)の”分母”だった部分は$n\times n$の$n^2$のうち、一変数ずつ0に近づけるといきなりは0にならない(行列式の演算の定義より)

(コメント：最初この後ごちゃごちゃ書いていたのですが超絶わかりにくかったので全部カット、書き直ししました。)
たとえば大元の式の分母
$$(a_{ij}の入っている部分)+(そうじゃない部分)$$
が小さければ小さいほど元の数の絶対値は大きくなる。

(そうじゃない部分)の扱いについては事実だけ先に言えば割った後、極限操作により0に近づくのだが、厳密に議論するには$a_{ij}$の正負と(そうじゃない数)の正負について場合分けして絶対値記号やらイプシロンデルタ云々の話をする必要がある。しかしめんどーなので天下り的に割ったあとの1次の項が0に近づくことを念頭に、割ったあとの1次の項の最小値、最大値を求める。

ここでは最小値の場合のみ扱う。

そうじゃない部分の次元は$n$で因子(成分)の種類数は$n^2$, そのうち最小の数を$\epsilon$とする。すると$定数(個数)\cdot \epsilon^n$で, $(-1)^{i+j}\tilde{d_{ij}}$は$n-1$次元の項で構成される。今度は$n^2$の種類数のうち、一番大きい数を$M$とする。
結局こちらも$(定数)\cdot M^{n-1}$とかける。

$$a_{ij}+(1次元の項)$$

$(1次元の項)$は$$定数\frac{\epsilon^n}{M^{n-1}}=定数\cdot \epsilon \to 0 (\epsilon \to 0)$$



これで$i$行$j$列目の成分が
$$\lim_{a_{ij}\to 0} \frac{f^j\cdot a_{ij}}{a_{ij}+0}$$
を計算すればよいことがわかる。

#結果

$$ \frac{\partial f}{\partial A}=\begin{pmatrix}  \frac{\partial f}{\partial a_{11}} & \frac{\partial f}{\partial a_{12}} & \cdots & \frac{\partial f}{\partial a_{1n}}\\\ \frac{\partial f}{\partial a_{21}} & \frac{\partial f}{\partial a_{22}} & \cdots & \vdots \\\ \vdots & \vdots & \ddots & \\\ \frac{\partial f}{\partial a_{n1}} & \cdots & & \frac{\partial f}{\partial a_{nn}}\end{pmatrix}$$

ただし$a_{ij}$は行列の$i$行$j$列目を指す。

https://qiita.com/yudaiyamashita/items/d80ebf1c382979155939