【入門】逆伝播①【数値計算】

【入門】逆伝播①【数値計算】 数値計算
【入門】逆伝播①【数値計算】

一連の合成関数

先ほどの構成をブロック図として書き出したのが以下になる。

一連の合成関数のブロック図表現、W、f()、Z、σ()、A、SSE()、E

注意点としては、
入力が\(X\)ではなく重み\(W\)。

これは、調整したいのが入力ではなく重みであるため。
だから、単純パーセプトロンの学習における入力は重みと見なしてる感じになる。

そして、さきほどの合成関数を数式で表現するとこうなる。

合成関数

\(E=SSE(\sigma(f(W)))\)

各関数

そして、各関数を書き出す。

誤差関数

\(
\displaystyle E=\frac{1}{2}\sum_{i=1}^n(A-Y)^2
\)

活性化関数

\(
A=\sigma(X)
\)

入力と重みの内積

\(
Z=f(W)=
\begin{bmatrix}
w_1&w_2&b
\end{bmatrix}
\begin{bmatrix}
x_1\\
x_2\\
1
\end{bmatrix}
\)

この関数の合成がさっきの合成関数ってことになる。
あとは、合成関数の微分こと連鎖律を考えていくことになる。

合成関数の微分こと連鎖律について

先ほどの関数の合成関数を元に連鎖律を定義できる。
以下の数式になる。

\(
\displaystyle \frac{\partial E}{\partial W}=\frac{\partial E}{\partial A}\frac{\partial A}{\partial Z}\frac{\partial Z}{\partial W}
\)

学習データを加味すると

そして、詳細は後ほど説明するが、
学習データを加味すると、\(f(W)\)は暗黙的に4種類になる、
結果的には以下の「多変量関数の連鎖律」になる。

\(
\displaystyle \frac{\partial E}{\partial w_1}=\frac{\partial E}{\partial a_1}\frac{\partial a_1}{\partial z_1}\frac{\partial z_1}{\partial w_1}+\frac{\partial E}{\partial a_2}\frac{\partial a_2}{\partial z_2}\frac{\partial z_2}{\partial w_1}+\frac{\partial E}{\partial a_3}\frac{\partial a_3}{\partial z_3}\frac{\partial z_3}{\partial w_1}+\frac{\partial E}{\partial a_4}\frac{\partial a_4}{\partial z_4}\frac{\partial z_4}{\partial w_1}
\)

\(
\displaystyle \frac{\partial E}{\partial w_2}=\frac{\partial E}{\partial a_1}\frac{\partial a_1}{\partial z_1}\frac{\partial z_1}{\partial w_2}+\frac{\partial E}{\partial a_2}\frac{\partial a_2}{\partial z_2}\frac{\partial z_2}{\partial w_2}+\frac{\partial E}{\partial a_3}\frac{\partial a_3}{\partial z_3}\frac{\partial z_3}{\partial w_2}+\frac{\partial E}{\partial a_4}\frac{\partial a_4}{\partial z_4}\frac{\partial z_4}{\partial w_2}
\)

一見するとすごいことになっているように見える。

まとめ

  • 誤差逆伝播法とか単純パーセプトロンに関連する用語を確認。
  • 逆伝播を行う単純パーセプトロンの構成を確認。
  • 一連の合成関数について書き出し。
  • 合成関数を構成する各数式を書き出し。
  • 合成関数の微分こと連鎖律について説明。
  • 学習データを加味した場合の多変量関数の連鎖律について簡単に説明。

MATLAB、Python、Scilab、Julia比較ページはこちら

Pythonで動かして学ぶ!あたらしい線形代数の教科書

https://amzn.to/3OE5bVp

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

https://amzn.to/3OBiaax

ゼロからはじめるPID制御

https://amzn.to/3SvzuyR

OpenCVによる画像処理入門

https://amzn.to/498ZUgK

恋する統計学[回帰分析入門(多変量解析1)] 恋する統計学[記述統計入門]

https://amzn.to/3STAe2i

Pythonによる制御工学入門

https://amzn.to/3uskuK5

理工系のための数学入門 ―微分方程式・ラプラス変換・フーリエ解析

https://amzn.to/3UAunQK

コメント

タイトルとURLをコピーしました