\[ %汎用 \newcommand{\ctext}[1]{\raise0.2ex\hbox{\textcircled{\scriptsize{#1}}}} %数学 %汎用 \newcommand{\as}{{\quad\textrm{as}\quad}} \newcommand{\st}{{\textrm{ s.t. }}} \newcommand{\set}[2]{\left\{\left.#1\;\right|\;#2\right\}} \newcommand{\naturalNumbers}{\mathbb{N}} \newcommand{\integers}{\mathbb{Z}} \newcommand{\rationalNumbers}{\mathbb{Q}} \newcommand{\realNumbers}{\mathbb{R}} \newcommand{\complexNumbers}{\mathbb{C}} \newcommand{\field}{\mathbb{F}} \newcommand{\func}[2]{{#1}\left({#2}\right)} \newcommand{\argmax}{\mathop{\textrm{arg~max}}} \newcommand{\argmin}{\mathop{\textrm{arg~min}}} %集合論 \newcommand{\range}[2]{\{#1,\dotsc,#2\}} \renewcommand{\complement}{\mathrm{c}} \newcommand{\ind}[2]{\mathbbm{1}_{#1}\left(#2\right)} \newcommand{\indII}[1]{\mathbbm{1}\left\{#1\right\}} %数論 \newcommand{\abs}[1]{\left|#1\right|} \newcommand{\combi}[2]{{_{#1}\mathrm{C}_{#2}}} \newcommand{\perm}[2]{{_{#1}\mathrm{P}_{#2}}} \newcommand{\GaloisField}[1]{\mathrm{GF}\left(#1\right)} %解析学 \newcommand{\sgn}[1]{\operatorname{sgn}\left(#1\right)} \newcommand{\cl}[1]{\operatorname{cl}#1} \newcommand{\Img}[1]{\operatorname{Img}\left(#1\right)} \newcommand{\dom}[1]{\operatorname{dom}\left(#1\right)} \newcommand{\norm}[1]{\left\|#1\right\|} \newcommand{\floor}[1]{\left\lfloor#1\right\rfloor} \newcommand{\ceil}[1]{\left\lceil#1\right\rceil} \newcommand{\expo}[1]{\exp\left(#1\right)} \newcommand{\sinc}{\mathop{\textrm{sinc}}} \newcommand{\GammaFunc}[1]{\Gamma\left(#1\right)} %逆三角関数 \newcommand{\asin}[1]{\operatorname{Sin}^{-1}{#1}} \newcommand{\acos}[1]{\operatorname{Cos}^{-1}{#1}} \newcommand{\atan}[1]{\operatorname{{Tan}^{-1}}{#1}} \newcommand{\atanEx}[2]{\atan{\left(#1,#2\right)}} %微分 \newcommand{\deriv}[3]{\frac{\operatorname{d}^{#3}#1}{\operatorname{d}{#2}^{#3}}} \newcommand{\derivLong}[3]{\frac{\operatorname{d}^{#3}}{\operatorname{d}{#2}^{#3}}#1} \newcommand{\partDeriv}[3]{\frac{\operatorname{\partial}^{#3}#1}{\operatorname{\partial}{#2}^{#3}}} \newcommand{\partDerivLong}[3]{\frac{\operatorname{\partial}^{#3}}{\operatorname{\partial}{#2}^{#3}}#1} \newcommand{\partDerivIIHetero}[3]{\frac{\operatorname{\partial}^2#1}{\partial#2\operatorname{\partial}#3}} \newcommand{\partDerivIIHeteroLong}[3]{{\frac{\operatorname{\partial}^2}{\partial#2\operatorname{\partial}#3}#1}} %積分 \newcommand{\integrate}[5]{\int_{#1}^{#2}{#3}{\mathrm{d}^{#4}}#5} \newcommand{\LebInteg}[4]{\int_{#1} {#2} {#3}\left(\mathrm{d}#4\right)} %複素解析 \newcommand{\conj}[1]{\overline{#1}} \renewcommand{\Re}[1]{{\operatorname{Re}{\left(#1\right)}}} \renewcommand{\Im}[1]{{\operatorname{Im}{\left(#1\right)}}} \newcommand{\Arg}[1]{\operatorname{Arg}{\left({#1}\right)}} \newcommand{\Log}[1]{\operatorname{Log}{#1}} %ラプラス変換 \newcommand{\LPLC}[1]{\operatorname{\mathcal{L}}\left[#1\right]} \newcommand{\ILPLC}[1]{\operatorname{\mathcal{L}}^{-1}\left[#1\right]} %線形代数 \newcommand{\bm}[1]{{\boldsymbol{#1}}} \newcommand{\Span}[1]{\operatorname{span}\left[#1\right]} \newcommand{\Ker}[1]{\operatorname{Ker}\left(#1\right)} \newcommand{\rank}[1]{\operatorname{rank}\left(#1\right)} \newcommand{\inprod}[2]{\left\langle#1,#2\right\rangle} \newcommand{\HadamardProd}{\odot} \newcommand{\HadamardDiv}{\oslash} \newcommand{\matEntry}[3]{#1\left[#2\right]\left[#3\right]} \newcommand{\matPart}[5]{\matEntry{#1}{#2:#3}{#4:#5}} \newcommand{\diag}[1]{\operatorname{diag}\left(#1\right)} \newcommand{\tr}[1]{\operatorname{tr}{\left(#1\right)}} %ベクトル %単位ベクトル \newcommand{\vix}{\bm{i}_x} \newcommand{\viy}{\bm{i}_y} \newcommand{\viz}{\bm{i}_z} %確率論 \newcommand{\PDF}[2]{\operatorname{PDF}\left[#1,\;#2\right]} \newcommand{\Ber}[1]{\operatorname{Ber}\left(#1\right)} \newcommand{\Beta}[2]{\operatorname{Beta}\left(#1,#2\right)} \newcommand{\ExpDist}[1]{\operatorname{ExpDist}\left(#1\right)} \newcommand{\ErlangDist}[2]{\operatorname{ErlangDist}\left(#1,#2\right)} \newcommand{\PoissonDist}[1]{\operatorname{PoissonDist}\left(#1\right)} \newcommand{\GammaDist}[2]{\operatorname{Gamma}\left(#1,#2\right)} \newcommand{\cind}[2]{\ind{#1\left| #2\right.}} %条件付き指示関数 \renewcommand{\Pr}[1]{\operatorname{Pr}\left[#1\right]} \newcommand{\cPr}[2]{\Pr{#1\left| #2\right.}} \newcommand{\E}[2]{\operatorname{E}_{#1}\left[#2\right]} \newcommand{\cE}[3]{\E{#1}{\left.#2\right|#3}} \newcommand{\Var}[2]{\operatorname{Var}_{#1}\left[#2\right]} \newcommand{\Cov}[2]{\operatorname{Cov}\left[#1,#2\right]} \newcommand{\CovMat}[1]{\operatorname{Cov}\left[#1\right]} %グラフ理論 \newcommand{\neighborhood}{\mathcal{N}} %プログラミング \newcommand{\plpl}{\mathrel{++}} \newcommand{\pleq}{\mathrel{+}=} \newcommand{\asteq}{\mathrel{*}=} \]

行列による微分

はじめに

 Kalman filterの最適Kalmanゲインの導出を読んでいるとき、行列のトレースの微分に出くわした。 行列を引数とする関数を行列で微分する操作は自分の知識の範囲を超えていたので勉強することにした。 Matrix Calculusという記事では使う頻度が高そうなものがピックアップされている。 行列による微分の定義の解説は丁寧なのだが、紹介されている性質に対するヒントが少なく、理解を深めるために色々と考えなくてはならなかった。その結果をここに書き残しておく。 ベクトルあるいは行列による微分の表記法にはNumerator LayoutとDenominator Layoutの2大勢力が存在するが、本記事では一貫してNumerator Layoutを採用する。

索引

補題:
項目
微小変化した行列の冪乗
行列の冪乗のトレースの微分
微小変化した行列の逆行列
scalar-by-matrix:
項目
$\frac{\partial \bm{a}^\top X\bm{b}}{\partial X} = \bm{b}\bm{a}^\top$
$\frac{\partial (X\bm{a}+\bm{b})^\top C(X\bm{a}+\bm{b})}{\partial X} = \bm{a}(X\bm{a}+\bm{b})^\top(C+C^\top)$
$\frac{\partial (X\bm{a})^\top C(X\bm{b})}{\partial X} = \left(CX\bm{b}\bm{a}^\top + C^\top X\bm{a}\bm{b}^\top\right)^\top$
$\frac{\partial \mathrm{tr}(X^{-1}A)}{\partial X} = -X^{-1}AX^{-1}$
$\frac{\partial \ln|\det(aX)|}{\partial X} = X^{-1}$
$\frac{\partial |AXB|}{\partial X}$
$\frac{\partial |XX^\top|}{\partial X} = 2|XX^\top|X^\dagger$
$\frac{\partial |X^\top AX|}{\partial X}$
matrix-by-scalar:
項目
$\frac{\mathrm{d} U(x)^{-1}}{\mathrm{d}x}$
$\frac{\mathrm{\partial}^2 U(x)^{-1}}{\mathrm{\partial}x\mathrm{\partial}y}$

補題

微小変化した行列の冪乗

 $X$を$n$次数正方行列とする。$(X+\mathrm{d}X)^k - X^k$の展開には因子$\mathrm{d}X$が2回以上現れる項が存在するが、行列のノルムを考えるとそれらの項のノルムは$\mathrm{d}X \to O$のとき$||\mathrm{d}X||$よりも速く0に収束するので次式が成り立つ。 $$ \mathrm{d}(X^k) = (X+\mathrm{d}X)^k - X^k = \sum_{i=1}^k X^{i-1}(\mathrm{d}X)X^{k-i} + o(||\mathrm{d}X||) $$

行列の冪乗のトレースの微分

 上述のことから次式が成り立つ。 $$ \begin{aligned} \mathrm{d}\left(\mathrm{tr}(X^k)\right) &= \mathrm{tr}\left(\mathrm{d}(X^k)\right) = \sum_{i=1}^k \mathrm{tr}\left(X^{i-1}(\mathrm{d}X)X^{k-i}\right) + \mathrm{tr}\left(o(||\mathrm{d}X||)\right) \\ &= \sum_{i=1}^k \mathrm{tr}\left(X^{k-1}\mathrm{d}X\right) + \mathrm{tr}\left(o(||\mathrm{d}X||)\right) \\ &= k\mathrm{tr}\left(X^{k-1}\mathrm{d}X\right) + \mathrm{tr}\left(o(||\mathrm{d}X||)\right) \\ &= \mathrm{tr}\left(kX^{k-1}\mathrm{d}X\right) + \mathrm{tr}\left(o(||\mathrm{d}X||)\right) \end{aligned} $$ ゆえに $$ \frac{\partial \mathrm{tr}(X^k)}{\partial X} = kX^{k-1} $$

微小変化した行列の逆行列

 $X \in\mathbb{R}^{n\times n}$を可逆行列とし、その特異値を$\sigma_1 \geq \dotsb \geq \sigma_n > 0$とする。 $\mathrm{d}X \in \mathbb{R}^{n\times n}$のノルムが$\sigma_n$未満であるとする。 このとき$||X^{-1}\mathrm{d}X||<1$であるから$X^{-1}\mathrm{d}X$の冪級数が収束するので$(I+X^{-1}\mathrm{d}X)^{-1}$が存在し、次式が成り立つ。 $$ \begin{aligned} (X+\mathrm{d}X)^{-1} - X^{-1} &= (X(I+X^{-1}\mathrm{d}X))^{-1} - X^{-1} = (I+X^{-1}\mathrm{d}X)^{-1}X^{-1} - X^{-1} \\ &= (I - X^{-1}\mathrm{d}X + (X^{-1}\mathrm{d}X)^2 - (X^{-1}\mathrm{d}X)^3 + \cdots)X^{-1} - X^{-1} \\ &= -X^{-1}(\mathrm{d}X)X^{-1} + (X^{-1}\mathrm{d}X)^2(I - X^{-1}\mathrm{d}X + (X^{-1}\mathrm{d}X)^2 - \cdots)X^{-1} \\ &= -X^{-1}(\mathrm{d}X)X^{-1} + (X^{-1}\mathrm{d}X)^2(I + X^{-1}\mathrm{d}X)^{-1}X^{-1} \\ &= -X^{-1}(\mathrm{d}X)X^{-1} + o(||\mathrm{d}X||) \end{aligned} $$

微小変化した行列の行列式

 $X$を$n$次正則行列とし、$\mathrm{d}X$を$n$次正方行列とすると次式が成り立つ。 $$ |X+\mathrm{d}X| = |X(I+X^{-1}\mathrm{d}X)| = |X||I+X^{-1}\mathrm{d}X| $$ 次式が成り立つことを示す。ここに$\tilde{X}$は$X$の余因子行列である。 $$ \frac{\partial |X|}{\partial X} = |X|X^{-1} = \tilde{X} $$

$\textit{Proof}$
 以下、$X$の最小特異値を$\sigma_1$とし、$||\mathrm{d}X|| < \sigma_1$とする。

 $n=1$のときは$|X+\mathrm{d}X| - |X| = X+\mathrm{d}X - X = \mathrm{d}X$だから主張は正しい。

 以下$n\geq 2$とし、$|I+X^{-1}\mathrm{d}X|$を調べるために、$A = X^{-1}\mathrm{d}X$として$|I+A|$を調べる。

 $\bm{e}_i$を、$n$次の列ベクトルで第$i$要素が1、その他は0とする。 $I+A$の$i$行目が$\bm{e}_i^\top$と$A_{i,:}$の和であることと行列式の分解公式を用いて、$|I+A|$の展開には$|I|=1,\;|A|,\;\mathrm{tr}(A)$が含まれることがわかる。 $|I|,|A|$は展開の過程でそれぞれ$I,A$由来の行を徹底的に採用した結果の項に対応する。 $\mathrm{tr}(A)$は1行を$A$から、他の全ての行を$I$から選んだ$n$通りの展開の和に対応する。

 ここに示した$|I|, \mathrm{tr}(A)$以外のものは、展開の過程で$A$から2行以上選んだパターンの行列式に対応する。 これらの項の和を$f(\mathrm{d}X)$と表し、$f(\mathrm{d}X)$が$o(||\mathrm{d}X||)$である、すなわち$\mathrm{d}X\to O$のとき$||\mathrm{d}X||$よりも速く0に収束することを示す。

 $A$から第$i_1,\dotsc,i_k$行を選択し、残りの行は$I$から選択して得られる行列の行列式は$A$から第$i_1,\dotsc,i_k$行,列以外を取り除いて得られる$A$の部分行列$[A]_{(i_1,i_i),\dotsc,(i_k,i_k)}$の行列式に等しい。 また、$[A]_{(i_1,i_i),\dotsc,(i_k,i_k)}$のノルム(=最大特異値)は$||A||$以下である(『線形代数/ノルムの性質#部分行列のノルム』を参照)。よって$[A]_{(i_1,i_i),\dotsc,(i_k,i_k)}$の特異値分解を考えると$|\det([A]_{(i_1,i_1),\dotsc,(i_k,i_k)})| \leq ||A||^k$が成り立つ。 $||A|| = ||X^{-1}\mathrm{d}X|| \leq ||X^{-1}||\;||\mathrm{d}X|| = \sigma_1^{-1}||\mathrm{d}X||$であることから$||[A]_{(i_1,i_i),\dotsc,(i_k,i_k)}|| \leq \sigma_1^{-k}||\mathrm{d}X||^k$である。 従って$f(\mathrm{d}X) = o(||\mathrm{d}X||)$である。 以上より次式が成り立ち、定理の主張が成り立つ。 $$ \begin{aligned} |X+\mathrm{d}X| - |X| &= |X|(1 + \mathrm{tr}(X^{-1}\mathrm{d}X) + o(||\mathrm{d}X||)) - |X| \\ &=\mathrm{tr}(|X|X^{-1}\mathrm{d}X) + o(||\mathrm{d}X||) \end{aligned} $$

$\square$

性質

scalar-by-matrix

$\frac{\partial \bm{a}^\top X\bm{b}}{\partial X} = \bm{b}\bm{a}^\top$

$\textit{Proof}$

$$ \mathrm{d}(\bm{a}^\top X\bm{b}) = \mathrm{tr}(\mathrm{d}(\bm{a}^\top X\bm{b})) = \mathrm{tr}(\bm{a}^\top(\mathrm{d}X)\bm{b}) = \mathrm{tr}(\bm{b}\bm{a}^\top(\mathrm{d}X)) $$

$\square$
$\frac{\partial (X\bm{a}+\bm{b})^\top C(X\bm{a}+\bm{b})}{\partial X} = \bm{a}(X\bm{a}+\bm{b})^\top(C+C^\top)$

$\textit{Proof}$

$$ \begin{aligned} &\phantom{=} \mathrm{d}\left((X\bm{a}+\bm{b})^\top C(X\bm{a}+\bm{b})\right) = (\mathrm{d}X\bm{a})^\top C(X\bm{a} + \bm{b}) + (X\bm{a}+\bm{b})^\top C(\mathrm{d}X)\bm{a} + o(||\mathrm{d}X||) \\ &= \bm{a}^\top(\mathrm{d}X)^\top C(X\bm{a}+\bm{b}) + (X\bm{a}+\bm{b})^\top C(\mathrm{d}X)\bm{a} + o(||\mathrm{d}X||) \\ &= \mathrm{tr}\left(\bm{a}^\top(\mathrm{d}X)^\top C(X\bm{a}+\bm{b})\right) + \mathrm{tr}\left((X\bm{a}+\bm{b})^\top C(\mathrm{d}X)\bm{a}\right) + o(||\mathrm{d}X||) \\ &= \mathrm{tr}\left((\mathrm{d}X)^\top C(X\bm{a}+\bm{b})\bm{a}^\top\right) + \mathrm{tr}\left(\bm{a}(X\bm{a}+\bm{b})^\top C(\mathrm{d}X)\right) + o(||\mathrm{d}X||) \\ &= \mathrm{tr}\left(\bm{a}(X\bm{a}+\bm{b})^\top C^\top\mathrm{d}X\right) + \mathrm{tr}\left(\bm{a}(X\bm{a}+\bm{b})^\top C\mathrm{d}X\right) + o(||\mathrm{d}X||) \\ &= \mathrm{tr}\left(\bm{a}(X\bm{a}+\bm{b})^\top (C+C^\top)\mathrm{d}X\right) + o(||\mathrm{d}X||) \end{aligned} $$

$\square$
$\frac{\partial (X\bm{a})^\top C(X\bm{b})}{\partial X} = \left(CX\bm{b}\bm{a}^\top + C^\top X\bm{a}\bm{b}^\top\right)^\top$

$\textit{Proof}$

$$ \begin{aligned} \mathrm{d}\left((X\bm{a})^\top C(X\bm{b})\right) &= ((\mathrm{d}X))\bm{a})^\top C(X\bm{b}) + (X\bm{a})^\top C((\mathrm{d}X)\bm{b}) + o(||\mathrm{d}X||) \\ &= \mathrm{tr}\left(((\mathrm{d}X))\bm{a})^\top C(X\bm{b})\right) + \mathrm{tr}\left((X\bm{a})^\top C((\mathrm{d}X)\bm{b})\right) + o(||\mathrm{d}X||) \\ &= \mathrm{tr}\left(\bm{a}^\top(\mathrm{d}X)^\top C(X\bm{b})\right) + \mathrm{tr}\left(\bm{b}(X\bm{a})^\top C\mathrm{d}X\right) + o(||\mathrm{d}X||) \\ &= \mathrm{tr}\left((\mathrm{d}X)^\top C(X\bm{b})\bm{a}^\top\right) + \mathrm{tr}\left(\bm{b}(X\bm{a})^\top C\mathrm{d}X\right) + o(||\mathrm{d}X||) \\ &= \mathrm{tr}\left((CX\bm{b})\bm{a}^\top)^\top\mathrm{d}X\right) + \mathrm{tr}\left(\bm{b}\bm{a}^\top X^\top C\mathrm{d}X\right) + o(||\mathrm{d}X||) \\ &= \mathrm{tr}\left((CX\bm{b})\bm{a}^\top)^\top\mathrm{d}X\right) + \mathrm{tr}\left((C^\top X\bm{a}\bm{b}^\top)^\top\mathrm{d}X\right) + o(||\mathrm{d}X||) \\ &= \mathrm{tr}\left((CX\bm{b})\bm{a}^\top + C^\top X\bm{a}\bm{b}^\top)^\top\mathrm{d}X\right) + o(||\mathrm{d}X||) \end{aligned} $$

$\square$
$\frac{\partial \mathrm{tr}(X^{-1}A)}{\partial X} = -X^{-1}AX^{-1}$

$\textit{Proof}$

$$ \begin{aligned} \mathrm{d}(X^{-1}A) &= \mathrm{d}(X^{-1})A = -X^{-1}(\mathrm{d}X)X^{-1}A + o(||\mathrm{d}X||) \\ \therefore \mathrm{d}(\mathrm{tr}(X^{-1}A)) &= \mathrm{tr}(\mathrm{d}(X^{-1}A)) = \mathrm{tr}(-X^{-1}(\mathrm{d}X)X^{-1}A) + o(||\mathrm{d}X||) \\ &= \mathrm{tr}(-X^{-1}AX^{-1}\mathrm{d}X) + o(||\mathrm{d}X||) \end{aligned} $$

$\square$
$\frac{\partial \ln|\det(aX)|}{\partial X} = X^{-1}$

$\textit{Proof}$

$$ \begin{aligned} \ln|\det(aX)| &= \ln (|a|^n|\det(X)|) = n\ln |a| + \ln|\det(X)| \\ \therefore \frac{\partial \ln|aX|}{\partial X} &= \frac{\partial \ln|\det(X)|}{\partial X} = \frac{1}{\det(X)}\frac{\partial \det(X)}{\partial X} = X^{-1} \end{aligned} $$

$\square$
$\frac{\partial |AXB|}{\partial X}$

 Wikipediaの表に載っているのは$A$が正方または縦長の特殊ケースである。 $A$が横長の場合には一般には表の式は成り立たない。 反例を挙げよう。 $l,m \in \mathbb{N}, l0$である。 $\mathrm{rank}(A) = l < m$だから$\exists\bm{x}\in\mathbb{R}^m,\bm{x}\neq\bm{0},A\bm{x}=\bm{0}$。 ここで$x_i \neq 0$なる$i$を任意に選ぶ。$\mathrm{d}X$を、$i$列目を$\bm{x}$,その他の列を$\bm{0}$とする$m$次正方行列とすると$A(X+\mathrm{d}X)B = AXB$なので $|A(X+\mathrm{d}X)B| - |AXB| = 0$である。 これは表の式$\mathrm{tr}(|AXB|X^{-1}\mathrm{d}X) = |AA^*|\mathrm{tr}(\mathrm{d}X) = |AA^*|x_i \neq 0$と一致しない。

 $A$が縦長の場合は$B$は横長であり、$AXB$は任意の$X$に対して非正則であるから$\frac{\partial |AXB|}{\partial X} = O = |AXB|X^{-1}$であるので表の式は正しい。

 $A$が正方行列の場合は$B$もそうであり$|AXB|=|A||B||X|$として$\frac{\partial |X|}{\partial X}$の結果を用いて式を整理すれば表の式が得られる。

$\frac{\partial |X^\top X|}{\partial X} = 2|X^\top X|X^\dagger$

$\textit{Proof}$

 $X \in \mathbb{R}^{l\times m}$とする。

 $l

 $l\geq m,\;\mathrm{rank}(X)=l$のときは

$$ \begin{aligned} &\phantom{=} (X+\mathrm{d}X)^\top (X+\mathrm{d}X) \\ &= X^\top X + X^\top\mathrm{d}X + \mathrm{d}X^\top X + \mathrm{d}X^\top\mathrm{d}X \\ &= X^\top X\left(I + (X^\top X)^{-1}(X^\top\mathrm{d}X + \mathrm{d}X^\top X + \mathrm{d}X^\top\mathrm{d}X)\right) \end{aligned} $$

であるから『微小変化した行列の行列式』と同じ要領で次式を得る。

$$ \begin{aligned} &\phantom{=} |(X+\mathrm{d}X)^\top (X+\mathrm{d}X)| - |X^\top X| \\ &= \mathrm{tr}(|X^\top X|(X^\top X)^{-1}(X^\top\mathrm{d}X + \mathrm{d}X^\top X) + o(||\mathrm{d}X||^2)) \\ &= \mathrm{tr}(|X^\top X|(X^\top X)^{-1}X^\top\mathrm{d}X) + \mathrm{tr}(|X^\top X|(X^\top X)^{-1}\mathrm{d}X^\top X) + o(||\mathrm{d}X||^2) \\ &= \mathrm{tr}(|X^\top X|(X^\top X)^{-1}X^\top\mathrm{d}X) + \mathrm{tr}(|X^\top X|\mathrm{d}X^\top X(X^\top X)^{-1}) + o(||\mathrm{d}X||^2) \\ &= \mathrm{tr}(2|X^\top X|(X^\top X)^{-1}X^\top\mathrm{d}X) + o(||\mathrm{d}X||^2) \\ &= \mathrm{tr}(2|X^\top X|X^\dagger\mathrm{d}X) + o(||\mathrm{d}X||^2) \quad (\because X\text{ is column full rank.}) \end{aligned} $$

よって次式が成り立つ。

$$ \frac{\partial |X^\top X|}{\partial X} = 2|X^\top X|X^\dagger\mathrm{d}X $$

 次に$l\geq m,\;\mathrm{rank}(X)『線形代数/ノルムの性質#絶対値最大の要素とノルムの大小関係』を参照)。 $X$の特異値分解を$U\Sigma V^\top$とし、$\mathrm{d}Y:=U^\top\mathrm{d}X V$とおくと$\mathrm{d}X = U\mathrm{d}Y V^\top$であり、$X+\mathrm{d}X = U(\Sigma + \mathrm{d}Y)V^\top$である。 $\mathrm{d}Y$の要素の絶対値の最大値を$\varepsilon'$とすると$\varepsilon' \leq ||\mathrm{d}Y|| = ||\mathrm{d}X|| \leq \varepsilon\sqrt{lm}$ (『線形代数/ノルムの性質#絶対値最大の要素とノルムの大小関係』を参照)である。

$$ \begin{aligned} &\phantom{=}|(X+\mathrm{d}X)^\top(X+\mathrm{d}X)| = |V(\Sigma + \mathrm{d}Y)^\top U^\top U(\Sigma + \mathrm{d}Y)V^\top| \\ &= |(\Sigma + \mathrm{d}Y)^\top(\Sigma + \mathrm{d}Y)| = |\Sigma^\top\Sigma + \mathrm{d}Y^\top Y + Y^\top\mathrm{d}Y + \mathrm{d}Y^\top\mathrm{d}Y| \end{aligned} $$

 $\mathrm{rank}(X)

$\square$
$\frac{\partial |XX^\top|}{\partial X} = 2|XX^\top|X^\dagger$

 $\frac{\partial |X^\top X|}{\partial X} = 2|X^\top X|X^\dagger$と同様にして示せる。

$\frac{\partial |X^\top AX|}{\partial X}$
$X$が正則な場合: $\frac{\partial |X^\top AX|}{\partial X} = 2|X^\top AX|X^{-1} = 2|A||X|^2 X^{-1}$

 $X \in \mathbb{R}^{l\times l}$とする。 $A$は必然的に$l\times l$正方行列となる。


$A$が正則の場合

$$ \begin{aligned} (X+\mathrm{d}X)^\top A(X+\mathrm{d}X) &= X^\top AX + X^\top A\mathrm{d}X + \mathrm{d}X^\top AX + \mathrm{d}X^\top A\mathrm{d}X \\ &= X^\top AX\left(I + (X^\top AX)^{-1}(X^\top A\mathrm{d}X + \mathrm{d}X^\top AX + \mathrm{d}X^\top A\mathrm{d}X)\right) \\ \therefore\; |(X+\mathrm{d}X)^\top A(X+\mathrm{d}X)| &= |A^\top AX|\left|I + (X^\top AX)^{-1}(X^\top A\mathrm{d}X + \mathrm{d}X^\top AX + \mathrm{d}X^\top A\mathrm{d}X)\right| \end{aligned} $$

『微小変化した行列の行列式』と同様にして

$$ \begin{aligned} &\phantom{=}\left|I + (X^\top AX)^{-1}(X^\top A\mathrm{d}X + \mathrm{d}X^\top AX + \mathrm{d}X^\top A\mathrm{d}X)\right| \\ &= 1 + \mathrm{tr}\left((X^\top AX)^{-1}(X^\top A\mathrm{d}X + \mathrm{d}X^\top AX\right) + o(||\mathrm{d}X||) \\ &= 1 + 2\mathrm{tr}\left(X^{-1}\mathrm{d}X\right) \end{aligned} $$

よって

$$ |(X+\mathrm{d}X)^\top A(X+\mathrm{d}X)| - |X^\top AX| = \mathrm{tr}(2|X^\top AX|X^{-1}\mathrm{d}X) $$

 $A$が非正則の場合は$|X^\top AX|=0$であり、$\mathrm{d}X$に関わらず$|(X+\mathrm{d}X)^\top A(X+\mathrm{d}X)|=0$であるから$A$が正則の場合の公式が通用する。

$X$が正方でなく、$A$が対称であり、$X^\top AX$が正則な場合: $\frac{\partial |X^\top AX|}{\partial X} = 2|X^\top AX|(X^\top A^\top X)^{-1}X^\top A^\top$

 直後に紹介する定理の特殊ケースである。

$X$が正方でなく、$A$が非対称であり、$X^\top AX$が正則な場合: $X$が正方でなく、$A$が非対称であり、$X^\top AX$が正則な場合: $\frac{\partial |X^\top AX|}{\partial X} = |X^\top AX|((X^\top A X)^{-1}X^\top A + (X^\top A^\top X)^{-1}X^\top A^\top)$

 $X$が正則な場合と同じ要領で示せる。

matrix-by-scalar

$\frac{\mathrm{d} U(x)^{-1}}{\mathrm{d}x}$

$\textit{Proof}$
$$ U(x+\mathrm{d}x) = U(x)\left(I + U(x)^{-1}\left(\frac{\mathrm{d} U(x)}{\mathrm{d}x}\mathrm{d}x + o(\mathrm{d}x)\right)\right) $$

$U$の最小特異値を$\sigma_\text{min}(U)$とする。 $\mathrm{d}x$を十分小さくすれば$\frac{\mathrm{d} U(x)}{\mathrm{d}x}\mathrm{d}x + o(\mathrm{d}x)$の最大特異値(ノルム)を$1/\sigma_\text{min}(U)$未満にできる。 このとき$U(x)^{-1}\left(\frac{\mathrm{d} U(x)}{\mathrm{d}x}\mathrm{d}x + o(\mathrm{d}x)\right)$のノルムは1未満だからこれの冪級数が収束するため、これの逆行列が存在して次式が成り立つ。

$$ \begin{aligned} U(x+\mathrm{d}x)^{-1} &= \left(I + U(x)^{-1}\left(\frac{\mathrm{d} U(x)}{\mathrm{d}x}\mathrm{d}x + o(\mathrm{d}x)\right)\right)^{-1}U(x)^{-1} \\ &= \left(I - U(x)^{-1}\frac{\mathrm{d} U(x)}{\mathrm{d}x}\mathrm{d}x + o(\mathrm{d}x)\right)U(x)^{-1} \\ \therefore U(x+\mathrm{d}x)^{-1} - U(x) &= -U(x)^{-1}\frac{\mathrm{d} U(x)}{\mathrm{d}x}U(x)^{-1}\mathrm{d}x + o(\mathrm{d}x) \\ \therefore \frac{\mathrm{d} U(x)^{-1}}{\mathrm{d}x} &= -U(x)^{-1}\frac{\mathrm{d} U(x)}{\mathrm{d}x}U(x)^{-1} \end{aligned} $$

$\square$
$\frac{\mathrm{\partial}^2 U(x)^{-1}}{\mathrm{\partial}x\mathrm{\partial}y}$

$\frac{\mathrm{d} U(x)^{-1}}{\mathrm{d}y}$を$x$で偏微分すれば求まる。

関連記事
スポンサーサイト



コメント

非公開コメント

プロフィール

motchy

Author:motchy
・信号処理
・無線
・組込

GitHub/motchy869

検索フォーム