MATLAB、Python、Scilab、Julia比較ページはこちら
https://www.simulationroom999.com/blog/comparison-of-matlab-python-scilab/
はじめに
の、
MATLAB,Python,Scilab,Julia比較 第4章 その57【逆伝播⑧】
MATLAB,Python,Scilab,Julia比較 第4章 その58【逆伝播⑨】
MATLAB,Python,Scilab,Julia比較 第4章 その59【逆伝播⑩】
MATLAB,Python,Scilab,Julia比較 第4章 その60【逆伝播⑪】
を書き直したもの。
単純パーセプトロンに対する逆伝播についての話。
- 逆伝播全体について。
- 入力、出力が複数であるが故の連鎖律の事情。
- 入力、出力が複数であるが故の連鎖律の事情のもう一つの考え方。
- プログラム化に向けての話。
【再掲】逆伝播を想定した単純パーセプトロンの構成
まずは、逆伝播を想定した単純パーセプトロンの構成を再掲。
今回は、逆伝播全体について。
逆伝播全体の位置づけ
逆伝播全体の位置づけを確認する。
全体の話だから位置づけもへったくれもないのだけど。
連鎖律上での位置づけ
\(
\displaystyle\frac{\partial E}{\partial b}=\color{red}\frac{\partial E}{\partial A}\frac{\partial A}{\partial Z}{\frac{\partial Z}{\partial b}}
\)
これまでの各偏導関数
そして、連鎖律の各部品になり得る、
これまでの各偏導関数を列挙する。
誤差関数の偏導関数
\(
\displaystyle \frac{\partial E}{\partial A}=A-Y
\)
活性化関数(出力層)の偏導関数
\(
\displaystyle \frac{\partial A}{\partial Z}=\sigma(Z)\{1-\sigma(Z)\}
\)
入力層の偏導関数
\(
\displaystyle \frac{\partial Z}{\partial W}=X
\)
バイアスの偏導関数
\(
\displaystyle \frac{\partial Z}{\partial b}=1
\)
全偏導関数の合体
そして、これらを連鎖律にそって合体させる。
重みに対しての連鎖律
\(
\begin{eqnarray}
\displaystyle\frac{\partial E}{\partial W}&=&\frac{\partial E}{\partial A}\frac{\partial A}{\partial Z}{\frac{\partial Z}{\partial W}}\\
&=&(A-Y)\sigma(Z)\cdot\{1-\sigma(Z)\}\cdot X
\end{eqnarray}
\)
バイアスに対しての連鎖律
\(
\begin{eqnarray}
\displaystyle\frac{\partial E}{\partial b}&=&\frac{\partial E}{\partial A}\frac{\partial A}{\partial Z}{\frac{\partial Z}{\partial b}}\\
&=&(A-Y)\sigma(Z)\cdot\{1-\sigma(Z)\}\cdot 1=(A-Y)\sigma(Z)\cdot\{1-\sigma(Z)\}
\end{eqnarray}
\)
複数の関数の偏導関数の組み合わせではあるけど、
連鎖律で分解してから、合体しなおせば、全体として演算可能な偏導関数ができる。
次のページへ
次のページから入力、出力が複数であるが故の連鎖律の事情。
コメント