0

テスト記事:二次形式のベクトル微分(勾配)の簡単な導出法

536
0
$$$$

二次形式のベクトル微分(勾配)の簡単な導出法

二次形式のベクトル微分(勾配)

$n$次元実列ベクトルと$n$次実正方行列をそれぞれ

$ \begin{gather} \boldsymbol x=(x_1 \ \cdots \ x_n)^\top, \boldsymbol A=\begin{pmatrix} a_{11} & \cdots & a_{1n}\\ \vdots & \ddots & \vdots \\ a_{n1} & \cdots & a_{nn} \end{pmatrix} \end{gather} $

としたとき,$\boldsymbol {x^\top Ax}$を二次形式(Quadratic form)という.
さて,このベクトル微分

$ \dfrac{\partial (\boldsymbol {x^\top Ax})}{\partial \boldsymbol x} \ \ $または,$\ \ \mathrm{grad}(\boldsymbol {x^\top Ax}) =\nabla(\boldsymbol {x^\top Ax}) $

を導出する.
当然,

$ \displaystyle \boldsymbol {x^\top Ax}=\sum_{i=1}^n \sum_{j=1}^n a_{ij}x_ix_j $

であるから,$x_k$での偏微分は,

$ \displaystyle \begin{align} \frac{\partial (\boldsymbol {x^\top Ax})}{\partial x_k} &=\sum_{i=1}^n \sum_{j=1}^n \left( a_{ij}\frac{\partial x_i}{\partial x_k}x_j+a_{ij}x_i\frac{\partial x_j}{\partial x_k} \right) (\because \mathrm{chain \ rule})\\ &=\sum_{i=1}^n \sum_{j=1}^n a_{ij}\delta_{ik}x_j+\sum_{i=1}^n \sum_{j=1}^n a_{ij}x_i\delta_{jk}\\ &=\sum_{j=1}^n a_{kj}x_j+\sum_{i=1}^n a_{ik}x_i\\ \end{align} $

よって,$k=1,...,n$を並べることにより,
$ \dfrac{\partial (\boldsymbol {x^\top Ax})}{\partial \boldsymbol x} =\boldsymbol{Ax+A^\top x} =(\boldsymbol{A+A^\top})\boldsymbol x $

を得る.
これは,スカラーで言うと$\dfrac{\mathrm d}{\mathrm d x}ax^2=2ax$に対応している.

Einsteinの規約を用いる方法

$ \displaystyle \begin{align} \frac{\partial (\boldsymbol {x^\top Ax})}{\partial \boldsymbol x} &=\frac{\partial}{\partial x_k}(a_{ij}x_ix_j)\\ &=a_{ij}\frac{\partial x_i}{\partial x_k}x_j+a_{ij}x_i\frac{\partial x_j}{\partial x_k} (\because \mathrm{chain \ rule})\\ &=a_{ij}\delta_{ik}x_j+a_{ij}x_i\delta_{jk}\\ &=a_{kj}x_j+a_{ik}x_i\\ &=(\boldsymbol{A+A^\top})\boldsymbol x \end{align} $

と,煩雑でなくなるため,慣れている者はこうすると良い.

例題(レーリー商の停留点)

$\dfrac{\boldsymbol {x^\top Ax}}{\boldsymbol {x^\top x}}$をレーリー商(Rayleigh quotient)という.$\boldsymbol {A^\top=A}$のとき,停留点を求めよ.

解答

$ \dfrac{\partial}{\partial \boldsymbol x}\left(\dfrac{\boldsymbol {x^\top Ax}}{\boldsymbol {x^\top x}}\right) =\dfrac{2\boldsymbol{Ax}\cdot(\boldsymbol {x^\top x})-(\boldsymbol {x^\top Ax})\cdot 2\boldsymbol {Ix}}{(\boldsymbol {x^\top x})^2}=\boldsymbol0 $

よって,

$ \boldsymbol{Ax}(\boldsymbol {x^\top x})=(\boldsymbol {x^\top Ax}) \boldsymbol x \iff \boldsymbol{Ax}=\left(\dfrac{\boldsymbol {x^\top Ax}}{\boldsymbol {x^\top x}}\right)\boldsymbol x $

従って,$\boldsymbol {x \neq 0}$ゆえ,レーリー商の停留点は$\boldsymbol A$の固有ベクトルである.

終わりに

初投稿でしたが,操作が直感的でわかりやすく(改行がそのまま反映されるなど),自動プレビューが出てくるので,書き心地が良かったです.

投稿日:202378
OptHub AI Competition

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。

投稿者

東北大学工学研究科出身 できるだけ受け売りはせず,自分で思いついた解法や妄想を備忘録がてら書き綴っていこうと思います.

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中