雑記

おかしい点があったらご指摘いただけますと幸いです。


行列 X \in \mathbb{R}^{n \times n} を、行列式  |X| \in \mathbb{R} に移す写像 F: \mathbb{R}^{n \times n} \to \mathbb{R} を行列のある成分 x_{i,j} について偏微分したいとします。これは |X|j 列目で余因子展開するとわかります。c_{i,j}X(i,j)-余因子とします。
 |X|=\displaystyle \sum_{i'=1}^{n} c_{i',j}x_{i',j}  ∴  \displaystyle \frac{\partial |X|}{\partial x_{i,j}} = c_{i,j}
なのでこれを横に並べれば FX におけるヤコビ行列になります。行列変数をとる関数のヤコビ行列の定義は Magnus and Neudecker に倣います。つまり、この F のヤコビ行列 J1nn 列になり、具体的に X の余因子行列を C として  J = ({\rm vec}C )^{\top} です。ただこれは X においてヤコビ行列 J が存在するといっているだけで、X において全微分可能であるとはいっていないです。そこが気になると思います。全微分可能であることの示し方は色々あると思いますが、そもそも最初から全微分が出せたらそれに越したことはない気がします。なので考えてみます。仮に最後の列で余因子展開していきたいと思います。
 d|X|=d \displaystyle \left( \sum_{i=1}^{n} c_{i,n}x_{i,n}\right)
   \qquad \; = \displaystyle \sum_{i=1}^{n} d \left( c_{i,n}x_{i,n} \right)  d(f + g) = df + dg
   \qquad \; = \displaystyle \sum_{i=1}^{n} \Bigl( ( d c_{i,n} ) x_{i,n} + c_{i,n} d x_{i,n} \Bigr)  d(fg) = (df)g + fdg
   \qquad \; = \displaystyle \sum_{i=1}^{n} \Bigl( (-1)^{i + n} x_{i,n} d |X_{i,n}| + c_{i,n} d x_{i,n} \Bigr) |X_{i,n}|X(i,j)-小行列式
   \qquad \; = \displaystyle \sum_{i=1}^{n} \Bigl( (-1)^{i + n} x_{i,n} \sum_{i'=1, i' \neq i}^{n} d (c_{i,n, i', n-1} x_{i', n-1}) + c_{i,n} d x_{i,n} \Bigr)
   \qquad \; = \displaystyle \sum_{i=1}^{n} \Bigl( (-1)^{i + n} x_{i,n} \sum_{i'=1, i' \neq i}^{n} (x_{i', n-1} d c_{i,n, i', n-1} + c_{i,n, i', n-1} dx_{i', n-1}) + c_{i,n} d x_{i,n} \Bigr)
ここで c_{i,n, i', n-1} はこの記事の中でだけ用いられる見づらい記法で、X から i 行目と n 列目を消した行列の (i', n-1)-余因子、但し、行と列のインデックスは元の行列におけるインデックスをずっとつかう、という意味です。元の行列におけるインデックスをつかうので、以下のような場合分けが生じることに注意します。
  c_{i,n, i', n-1} = \begin{cases} (-1)^{i' + n - 1}|X_{i,n, i', n-1}|  & (i' < i) \\ (-1)^{i' - 1 + n - 1}|X_{i,n, i', n-1}|   & (i' > i)  \end{cases}
ここで  |X_{i,n, i', n-1}| もこの記事の記法で、X から i 行目と n 列目と i' 行目と n-1 列目を消した行列の行列式です。一般の n だとわかりづらいので、n = 4 として上の微分がどうなるか考えてみます。
  d|X|= \displaystyle \sum_{i=1}^{4} \Bigl( (-1)^{i + 4} x_{i,4} \sum_{i'=1, i' \neq i}^{4} (x_{i', 3} d c_{i,4, i', 3} + c_{i,4, i', 3} dx_{i', 3}) + c_{i,4} d x_{i,4} \Bigr)
  \qquad \; = \displaystyle  \sum_{i=1}^{4} (-1)^{i + 4} x_{i,4} \sum_{i'=1, i' \neq i}^{4} (x_{i', 3} d c_{i,4, i', 3} + c_{i,4, i', 3} dx_{i', 3}) + \sum_{i=1}^{4}  c_{i,4} d x_{i,4}
  \qquad \; = \displaystyle  (-1)^{1 + 4} x_{1, 4} (x_{2, 3} d c_{1, 4, 2, 3} + c_{1, 4, 2, 3} dx_{2, 3} + x_{3, 3} d c_{1, 4, 3, 3} + c_{1, 4, 3, 3} dx_{3, 3} + x_{4, 3} d c_{1, 4, 4, 3} + c_{1, 4, 4, 3} dx_{4, 3})
  \qquad \; \; + \displaystyle  (-1)^{2 + 4} x_{2, 4} (x_{1, 3} d c_{2, 4, 1, 3} + c_{2, 4, 1, 3} dx_{1, 3} + x_{3, 3} d c_{2, 4, 3, 3} + c_{2, 4, 3, 3} dx_{3, 3} + x_{4, 3} d c_{2, 4, 4, 3} + c_{2, 4, 4, 3} dx_{4, 3})
  \qquad \; \; + \displaystyle  (-1)^{3 + 4} x_{3, 4} (x_{1, 3} d c_{3, 4, 1, 3} + c_{3, 4, 1, 3} dx_{1, 3} + x_{2, 3} d c_{3, 4, 2, 3} + c_{3, 4, 2, 3} dx_{2, 3} + x_{4, 3} d c_{3, 4, 4, 3} + c_{3, 4, 4, 3} dx_{4, 3})
  \qquad \; \; + \displaystyle  (-1)^{4 + 4} x_{4, 4} (x_{1, 3} d c_{4, 4, 1, 3} + c_{4, 4, 1, 3} dx_{1, 3} + x_{2, 3} d c_{4, 4, 2, 3} + c_{4, 4, 2, 3} dx_{2, 3} + x_{3, 3} d c_{4, 4, 3, 3} + c_{4, 4, 3, 3} dx_{3, 3})
  \qquad \; \; + \displaystyle  \sum_{i=1}^{4}  c_{i,4} d x_{i,4}
上式で dx_{1,3} の係数を集めてくるとこうなります。x_{2,4} は元の行列では2行目の4列目ですが、元の行列から1行目と3列目を削除した行列では1行目の3列目であることなどに注意します。
  x_{2,4} c_{2, 4, 1, 3} -  x_{3,4} c_{3, 4, 1, 3} +  x_{4,4} c_{4, 4, 1, 3} = x_{2,4} |X_{2, 4, 1, 3}| -  x_{3,4} |X_{3, 4, 1, 3}| +  x_{4,4} |X_{4, 4, 1, 3}| = |X_{1,3}| = c_{1,3}
dx_{2,3} , \, dx_{3,3}, \, dx_{4,3} の係数もかき集めてくると以下のようになります。上の場合分けに注意します。
  - x_{1,4} c_{1, 4, 2, 3} -  x_{3,4} c_{3, 4, 2, 3} +  x_{4,4} c_{4, 4, 2, 3} = - x_{1,4} |X_{1, 4, 2, 3}| +  x_{3,4} |X_{3, 4, 2, 3}| -  x_{4,4} |X_{4, 4, 2, 3}| = - |X_{2,3}| = c_{2,3}
  - x_{1,4} c_{1, 4, 3, 3} +  x_{2,4} c_{2, 4, 3, 3} +  x_{4,4} c_{4, 4, 3, 3} = x_{1,4} |X_{1, 4, 3, 3}| -  x_{3,4} |X_{2, 4, 3, 3}| +  x_{4,4} |X_{4, 4, 3, 3}| = |X_{3,3}| = c_{3,3}
  - x_{1,4} c_{1, 4, 4, 3} +  x_{2,4} c_{2, 4, 4, 3} -  x_{4,4} c_{3, 4, 4, 3} = - x_{1,4} |X_{1, 4, 4, 3}| + x_{2,4} |X_{2, 4, 4, 3}| - x_{4,4} |X_{3, 4, 4, 3}| = - |X_{4,3}| = c_{4,3}
そうなると、こうなります。
  d|X|= \displaystyle  (-1)^{1 + 4} x_{1, 4} (x_{2, 3} d c_{1, 4, 2, 3} + x_{3, 3} d c_{1, 4, 3, 3} + x_{4, 3} d c_{1, 4, 4, 3} )
  \qquad \; \; + \displaystyle  (-1)^{2 + 4} x_{2, 4} (x_{1, 3} d c_{2, 4, 1, 3} + x_{3, 3} d c_{2, 4, 3, 3} + x_{4, 3} d c_{2, 4, 4, 3} )
  \qquad \; \; + \displaystyle  (-1)^{3 + 4} x_{3, 4} (x_{1, 3} d c_{3, 4, 1, 3} + x_{2, 3} d c_{3, 4, 2, 3} + x_{4, 3} d c_{3, 4, 4, 3} )
  \qquad \; \; + \displaystyle  (-1)^{4 + 4} x_{4, 4} (x_{1, 3} d c_{4, 4, 1, 3} + x_{2, 3} d c_{4, 4, 2, 3} + x_{3, 3} d c_{4, 4, 3, 3} )
  \qquad \; \; + \displaystyle  \sum_{i=1}^{4}  c_{i,3} d x_{i,3} + \sum_{i=1}^{4}  c_{i,4} d x_{i,4}
ゴールは  d|X|= \displaystyle  \sum_{i=1}^{4}  c_{i,1} d x_{i,1} + \sum_{i=1}^{4}  c_{i,2} d x_{i,2} + \sum_{i=1}^{4}  c_{i,3} d x_{i,3} + \sum_{i=1}^{4}  c_{i,4} d x_{i,4} なので少し近づきました。それで、ここから  dc_{2,4,1,3} = d|X_{2,4,1,3}| を余因子展開するとさらに話を進められますが、X_{2,4,1,3} はもう 22 列なので、これの余因子は行列式というか成分そのものです。上の式の中で dx_{1,2} が出てくる項が6つあるので、3 \times 3 行列の行列式のたすき掛けををくくり出す未来しかみえないです。 一般の  n \times n 行列の行列式微分をこの手順で出そうと思うとこんな流れになる気がします(日本語は雰囲気です)。

  • 余因子展開より、ただちに n 列目の微分の係数が求まる。
  • 余因子の余因子展開より、n-1 列目の微分の係数が求まる。
    • 一旦 (n-2) \times (n-2) サイズの行列式まで砕いてから、 (n-1) \times (n-1) サイズの余因子に貼り合わせる。
  • 余因子の余因子の余因子展開より、n-2 列目の微分の係数が求まる。
    • 一旦 (n-3) \times (n-3) サイズの行列式まで砕いてから、(n-2) \times (n-2) サイズの行列式に貼り合わせ、さらに (n-1) \times (n-1) サイズの余因子に貼り合わせる。
  • 以下繰り返し。

なんかもう大変なので数学的に帰納した方がいいと思います。 d|X|= \displaystyle  \sum_{i=1}^{n} \sum_{j=1}^{n}  c_{i,j} d x_{i,j} が成り立つとすると、

 d|X|=d \displaystyle \left( \sum_{i=1}^{n+1} c_{i,n + 1}x_{i,n + 1}\right)
   \qquad \; = \displaystyle \sum_{i=1}^{n + 1} \Bigl( (-1)^{i + n + 1} x_{i,n + 1} d |X_{i,n + 1}| + c_{i,n + 1} d x_{i,n + 1} \Bigr)
   \qquad \; = \displaystyle \sum_{i=1}^{n + 1} \Bigl( (-1)^{i + n + 1} x_{i,n + 1} \displaystyle  \sum_{i'=1}^{n} \sum_{j=1}^{n}  c_{i, n+1, i',j} d x_{i',j} + c_{i,n + 1} d x_{i,n + 1} \Bigr)
これについて、それぞれの j について上の要領で余因子の貼り合わせをすれば n + 1 でも成り立つ、がいえるはずと思います。ここからそれをかくのは面倒なのでやめます。