MATLAB,Python,Scilab,Julia比較 第4章 その75【誤差逆伝播法②】

MATLAB,Python,Scilab,Julia比較 第4章 その75【誤差逆伝播法②】 数値計算
MATLAB,Python,Scilab,Julia比較 第4章 その75【誤差逆伝播法②】

バックナンバーはこちら。
https://www.simulationroom999.com/blog/compare-matlabpythonscilabjulia4-backnumber/

はじめに

多層パーセプトロンの誤差逆伝播法について。
まずは全体像から。

登場人物

博識フクロウのフクさん

指差しフクロウ

イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1

エンジニア歴8年の太郎くん

技術者太郎

イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1

多層パーセプトロンの誤差逆伝播法の説明の流れ【再掲】

太郎くん
太郎くん

まずは、多層パーセプトロンの誤差逆伝播法の説明の流れを再掲。

  • 誤差逆伝播法の全体像の確認
  • 出力層の重みとバイアスを求める誤差からの連鎖律
  • 隠れ層の重みとバイアスを求める誤差からの連鎖律
  • 上記をプログラミングするための最適化
フクさん
フクさん

今回は、「誤差逆伝播法の全体像の確認」をする。

誤差逆伝播法の全体像

太郎くん
太郎くん

今回から多層パーセプトロンの誤差逆伝播法をやっていくんだよね。

フクさん
フクさん

そうそう。
まずは全体像を図示しよう。

多層パーセプトロンの誤差逆伝播法の全体像、W1、X、h()、Z1、σ()、W2、A1、g()、Z2、A2,SSE()、E
太郎くん
太郎くん

予想通り、単純パーセプトロンより長くなるのか。

太郎くん
太郎くん

でも、
途中のW1|XとかW2|A1ってなんだ?

重みによって少しルートが変わる

フクさん
フクさん

それは、連鎖律で最終的に微分したパラメータの違いで少しルートが変わるためだな。

フクさん
フクさん

出力層の重みへの連鎖律はW1で微分したいのだけど、
隠れ層の重みへの連鎖律で考える場合はW1ではなく隠れ層の出力であるA1を経由することになる。
これが多層になった場合の面倒なところだな。

太郎くん
太郎くん

ようわからんが、それぞれの層の連鎖律を考える際に差があるってことか・・・。

フクさん
フクさん

まぁ、慣れてしまえばそういうもんだって程度になるけど。

太郎くん
太郎くん

(慣れるってほどの頻度でやることではなさそう・・・。)

それぞれの重みに対しての連鎖律

フクさん
フクさん

連鎖律を使用する目的は、各層の重みとバイアスの更新の方向を決めること。
今回の多層パーセプトロンは隠れ層と出力層にそれぞれが存在している。

太郎くん
太郎くん

ということは、出力層と隠れ層のそれぞれの連鎖律を求めるってことになるのかな?

フクさん
フクさん

そうそう。
合成関数で書くと以下になるな。

出力層の合成関数

SSE(σ(g(A1,W2)))

隠れ層の合成関数

SSE(σ(g(σ(h(X,W1)),W2)))

太郎くん
太郎くん

異様にごちゃごちゃしてるな・・・。
連鎖律を知らなかったらすでに逃げ出してる・・・。

フクさん
フクさん

微分可能な既知の関数の合成関数であれば、連鎖律で微分可能だ。
ってのを知っていれば、めんどくささは感じつつも解けなくはないということはわかる。

太郎くん
太郎くん

そうそう。
具体的にどうなるわかはわからないけど、
解けるってことだけは分かってるからなんとか耐えられる感じ。

フクさん
フクさん

そんな感じで克服していくとやれることが増えるってことだな。

まとめ

フクさん
フクさん

まとめだよ。

  • 誤差逆伝播法の全体像を確認。
  • 更新したい重みとバイアスの層によって連鎖律のルートが少し変わる。
  • 出力層と隠れ層の合成関数を確認。

バックナンバーはこちら。

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

Amazon.co.jp: Pythonで動かして学ぶ!あたらしい線形代数の教科書 eBook : かくあき: Kindleストア
Amazon.co.jp: Pythonで動かして学ぶ!あたらしい線形代数の教科書 eBook : かくあき: Kindleストア

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

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装 | 斎藤 康毅 |本 | 通販 | Amazon
Amazonで斎藤 康毅のゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装。アマゾンならポイント還元本が多数。斎藤 康毅作品ほか、お急ぎ便対象商品は当日お届けも可能。またゼロから作るDeep Lea...

ゼロからはじめるPID制御

ゼロからはじめるPID制御 | 熊谷 英樹 |本 | 通販 | Amazon
Amazonで熊谷 英樹のゼロからはじめるPID制御。アマゾンならポイント還元本が多数。熊谷 英樹作品ほか、お急ぎ便対象商品は当日お届けも可能。またゼロからはじめるPID制御もアマゾン配送商品なら通常配送無料。

OpenCVによる画像処理入門

OpenCVによる画像処理入門 改訂第3版 (KS情報科学専門書) | 小枝 正直, 上田 悦子, 中村 恭之 |本 | 通販 | Amazon
Amazonで小枝 正直, 上田 悦子, 中村 恭之のOpenCVによる画像処理入門 改訂第3版 (KS情報科学専門書)。アマゾンならポイント還元本が多数。小枝 正直, 上田 悦子, 中村 恭之作品ほか、お急ぎ便対象商品は当日お届けも可能。...

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

恋する統計学[回帰分析入門(多変量解析1)] 恋する統計学[記述統計入門] | 金城俊哉 | 数学 | Kindleストア | Amazon
Amazonで金城俊哉の恋する統計学 恋する統計学。アマゾンならポイント還元本が多数。一度購入いただいた電子書籍は、KindleおよびFire端末、スマートフォンやタブレットなど、様々な端末でもお楽しみいただけます。

Pythonによる制御工学入門

Amazon.co.jp

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

Amazon.co.jp

コメント

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