MATLAB,Python,Scilab,Julia比較 第4章 その37【多変量関数の連鎖律①】

MATLAB,Python,Scilab,Julia比較 第4章 その37【多変量関数の連鎖律①】 数値計算
MATLAB,Python,Scilab,Julia比較 第4章 その37【多変量関数の連鎖律①】

バックナンバーはこちら。
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

【再掲】連鎖律を把握するための知識

太郎くん
太郎くん

まずは、連鎖律を把握するための知識を再掲

  • 逆数の微分公式(済)
  • 積の微分公式(済)
  • 商の微分公式(済)
  • シグモイド関数の導関数(済)
  • 多変量関数の連鎖律
  • 勾配降下法
フクさん
フクさん

今回は、多変量関数の連鎖律に突入・・・。
なのだが、これは割とボリュームがある。

太郎くん
太郎くん

マジかよ。

フクさん
フクさん

「多変量関数の連鎖律」に必要な知識を分解すると以下になる。

  • 合成関数
  • 合成関数の微分(連鎖律)
  • 多変数関数の連鎖律
  • 学習データの多入力による暗黙的関数追加
太郎くん
太郎くん

必要なものが増えやがった・・・。

フクさん
フクさん

まぁ、これも各個撃破だな。

合成関数

フクさん
フクさん

まずは合成関数。
これは名前の通り、合成した関数だ。

太郎くん
太郎くん

その「合成した関数」ってのが全く分からんのだけど・・・。

フクさん
フクさん

図示するとこれになる。

合成関数の図解、F(x),g(x),f(u)
フクさん
フクさん

そして、これを数式で示したのがこれ。

\(
\begin{eqnarray}
y&=&f(x)\\
y&=&f(g(x))\\
F(x)&=&f(g(x))
\end{eqnarray}
\)

太郎くん
太郎くん

なんだ、関数の入力に関数を入れ込む感じか。

フクさん
フクさん

この例では2つの関数を合成しているが、
これが3つ、4つになってもOKだ。
そして、単純パーセプトロンは入力層の内積、活性化関数、誤差関数がそれぞれ関数と見なせる。

太郎くん
太郎くん

つまり、合成関数で表現可能ってこと?

フクさん
フクさん

そうそう。
まぁ、実際は多変量な入力を受け付けるので、これだけでは表現できないのだが、
ここで重要なのは関数がネストしていることと一緒という点を認識できればOKだ。

太郎くん
太郎くん

雰囲気だけはわかった。

まとめ

フクさん
フクさん

まとめだよ。

  • 多変数関数の連鎖律に突入したが、これを理解するのに必要な知識があるため、それらを列挙。
  • 合成関数について説明。
    • 単純パーセプトロンも入力層の内積、活性化関数、誤差関数の組み合わせが合成関数と言える。

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

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をコピーしました