(概要)
『ゼロから作るDeep Learning』読書会@高円寺(15)に参加してきた。
https://koenjidl.connpass.com/event/69408/
この書籍で、下記(1)式他の導出が省略されていた。
行列の微分を、スカラ値の微分の感覚で行うと
あいまいな点がのこるので、要素に分解して導出した。
(方針)
行列の微分を、要素に分解して、多変数のスカラ関数の
スカラ値による微分に、置き換えて解く。
導出した式は、少し変形すれば、一般性を失わないので
公式として利用できる。
(求める式)
(1)
\begin{equation*}
\frac{\partial L}{\partial X} =\frac{\partial L}{\partial Y} ・W^{T}
\end{equation*}
(変数)
\begin{gather*}
(2)Y=( y_{1} ,y_{2} ,y_{3})\\
(3)X=( x_{1} ,x_{2})\\
(4)W=\begin{pmatrix}
w_{11} & w_{21} & w_{31}\\
w_{12} & w_{22} & w_{32}
\end{pmatrix}
\end{gather*}
(前準備)
(5)
\begin{equation*}
XW=\left( x_{1} w_{11} +x_{2} w_{12} ,\ x_{1} w_{21} +x_{2} w_{22} ,\ x_{1} w_{31} +x_{2} w_{32}\right)
\end{equation*}
(6)
\begin{equation*}
y_{j} =\sum _{k} x_{k} ・w_{jk} +b_{j}
\end{equation*}
(式展開)
Y=XW+Bだが、Bは定数で、微分する場合無視するので(5)(6)から
\begin{equation*}
\frac{\partial y_{j}}{\partial x_{i}} =\frac{\partial }{\partial x_{i}}\sum _{k} x_{k} ・w_{jk} =w_{ji}
\end{equation*}
求めるのは(1)のdL/dXだから
\begin{gather*}
\frac{\partial L}{\partial x_{i}} =\sum _{j}\frac{\partial L}{\partial y_{j}} ・\frac{\partial y_{j}}{\partial x_{i}}\\
\ \ \ \ \ \ =\sum _{j}\frac{\partial L}{\partial y_{j}} ・w_{ji}\\
\frac{\partial L}{\partial X} =\begin{pmatrix}
\frac{\partial L}{\partial x_{1}} & \frac{\partial L}{\partial x_{2}}
\end{pmatrix}\\
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =\begin{pmatrix}
\sum _{j}\frac{\partial L}{\partial y_{j}} ・w_{j1} & \sum _{j}\frac{\partial L}{\partial y_{j}} ・w_{j2}
\end{pmatrix}\\
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =\begin{pmatrix}
\frac{\partial L}{\partial Y} ・\begin{pmatrix}
w_{11}\\
w_{21}\\
w_{31}
\end{pmatrix} & \frac{\partial L}{\partial Y} ・\begin{pmatrix}
w_{12}\\
w_{22}\\
w_{32}
\end{pmatrix}
\end{pmatrix}\\
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =\frac{\partial L}{\partial Y} ・\begin{pmatrix}
w_{11} & w_{12}\\
w_{21} & w_{22}\\
w_{31} & w_{32}
\end{pmatrix}\\
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =\frac{\partial L}{\partial Y} ・\begin{pmatrix}
w_{11} & w_{21} & w_{31}\\
w_{12} & w_{22} & w_{32}
\end{pmatrix}^{T}\\
=\frac{\partial L}{\partial Y} ・W^{T}
\end{gather*}
□