バックナンバーはこちら。
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
モーメンタムへ至る道【再掲】
まずはモーメンタムへ至るフローを再掲
- 勾配降下法の更新式(済)
- 勾配降下法の動作イメージ
- モーメンタムの更新式
- モーメンタムの動作イメージ
- モーメンタムのプログラムフロー
- モーメンタムによる分類の学習プログラム
今回は、この中の「勾配降下法の動作イメージ」
勾配降下法の動作イメージ
前回は勾配降下法の更新式を確認したけど、
実際どういうふう動くかはわからんね。
正直状況によるってところだが、
ざっくりとしては2パターンだな。
学習率が小さい場合
(収束に時間がかかる)
学習率が大きい場合
(収束は早いかもしれないが発散の可能性もある。)
学習率の設定で大きく性格がか変わるって感じだねー。
小さすぎても大きすぎてもダメで、ちょうどよさそうなところを頑張って探す感じ。
そうそう。
そのように人間の手で調整していくパラメータであるため、
学習率などはハイパーパラメータと呼ばれるな。
パラメータって呼び方だと重みとかバイアスの話になるから、
ハイパーって接頭辞を付けて呼び分けてるわけか。
まとめ
まとめだよ。
- 勾配降下法の動作イメージを確認。
- 学習率が大きい場合と小さい場合で挙動が変わる。
- ちょうど良い学習率を人間の手で探す。
- これにより、一般的なパラメータとは異なるハイパーパラメータというカテゴリになる。
バックナンバーはこちら。
Pythonで動かして学ぶ!あたらしい線形代数の教科書
ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装
ゼロからはじめるPID制御
OpenCVによる画像処理入門
恋する統計学[回帰分析入門(多変量解析1)] 恋する統計学[記述統計入門]
Pythonによる制御工学入門
理工系のための数学入門 ―微分方程式・ラプラス変換・フーリエ解析
コメント