- @ThothChildren
- 2017.9.13
- PV 254
Adadelta最適化関数
ー 概要 ー
学習係数を自動で調整する最適化関数.
Adagradで学習が進むにつれて学習係数が0になってしまう点を改良した最適化関数.
単位を揃えることで学習係数の初期値を不要にしている.
この章を学ぶ前に必要な知識
ポイント
- 過去数個の勾配に限定して更新量を計算
- 学習係数を自動で更新
- 学習係数初期値不要
- Adagradを改良した最適化関数
解 説
AdadeltaはAdagradでの
・学習が進むと学習係数が0になってしまうこと
・過去の勾配を全て保持していること
・単位が揃っていないこと
の課題を解決した最適化関数.
上記の課題をそれぞれ
・過去全てを使わずn個分のみを使用して学習係数を調整する
・n個分を保持するのではなく合計値を保持する.(指数平滑移動平均で更新)
・パラメータと同じ単位にするため、学習係数を過去のパラメータ平均に置き換える
| Adagrad最適化関数 |
$$w_t = w_{t-1} - \frac{RMS(\Delta{w})_{t-1}}{RMS(\nabla{J(w)})_t} \nabla{J(w_t)}$$ | Adadelta最適化関数
RMSは与えられた変数を二乗してたし合わせ平均する関数(二乗平均平方根) |
この章を学んで新たに学べる
Comments
Reasons
知識: Adagrad最適化関数
学習係数を自動調整していく最適化関数の一つ.
過去の勾配と最新の勾配を元に各パラメータごとに学習率を調整するのが特徴.
Adam, Adadelta, RMSPropはAdagradを改良したもの