Index
勾配法の課題
関数には、最小値と極小値がある.
誤差関数が下に凸な関数である簡単な状況では、任意の極小値は必ず最小値に一致する.
しかし、深層学習で扱う誤差関数は、一般に複雑な非凸関数である.
本当の最小値である大域的極小値 (Global Minimum) 以外にも、
膨大な数の局所的極小値 (Local Minima) がある.
通常パラメータ空間には、膨大な局所的極小値があり、真の最小値にたどり着くことは難しい.
なので、深層学習では、誤差関数の極小値さえ見つけられれば十分であると考える.
確率的勾配降下法 / Stochastic Gradient Descent; SGD
深層学習が真の最小値は必要としないとはいっても、誤差関数の値があまりにも大きい極小値にはまり込んでしまっては、
使い物にならない.
そこで、極小値にトラップされることをできるだけ回避するために、ランダムな要素を取り入れて、
はまり込んだ場所から弾き出す効果を生み出すことで、勾配法を改善した手法が
確率的勾配降下法 / Stochastic Gradient Descent; SGD.
勾配法では、一度のパラメータの更新に全ての学習データを使用していた. (バッチ学習 / Batch Learning)
しかし、一度の更新に利用する学習データをランダムに選んで(ミニバッチ学習 / Minibatch Learning)、
学習することで、ランダム性を取り入れる.
ミニバッチに分割することで計算コストを削減している.
更新アルゴリズム
SGD は、パラメータ空間の局所解に導いてくれる素晴らしいアルゴリズムではあるが、
無駄な動きが発生してしまうケースもある.
そのような欠点にいくつかの効率化を加えた手法が提案されいる.
参考
Web サイト
深層学習の数理
- P23, 24 確率的勾配降下法 (SGD)
- 深層学習の数理 from Taiji Suzukiwww.slideshare.net
確率的勾配降下法(SGD:Stochastic Gradient Descent)は局所最適解を抜け出せる可能性があるらしい