学習率最適化手法

・ニューラルネットワークの学習を行う際、毎回の学習量つまり学習率を設定する必要がある。この学習率を最適化することで学習の結果が大きく変わる。

勾配降下法:

画像1

ε が学習率

・従来法では固定した学習率を使用:学習率の値が大きい場合 ⇒ 発散してしまう。学習率の値が小さい場合 ⇒収束するまでに長時間、大域局所最適値に収束しづらい。

・学習率最適化手法:モメンタム、AdaGrad、RMSProp、Adamなど

・モメンタム:

画像2

モメンタムのメリット:局所的最適解にはならず、大域的最適解となる。谷間についてから最も低い位置(最適値)にいくまでの時間が早い。

・AdaGrad:

画像3

AdaGradのメリット:勾配の緩やかな斜面に対して、最適値に近づける。課題:学習率が徐々に小さくなるので、鞍点問題を引き起こす事がある。

・RMSProp:

画像4

RMSPropのメリット:局所的最適解にはならず、大域的最適解となる。ハイパーパラメータの調整が必要な場合が少ない。

・Adam:

画像5

Adamのメリット:モメンタムおよびRMSPropのメリットを併用したアルゴリズムである。

確認テスト:モメンタム・RMSProp・AdaGradの特徴をそれぞれ簡潔に説明せよ

回答:1)モメンタムはその名の通りに、勾配の方向に慣性をつけることで収束を早めることもできる。2)RMSPropは振動方向の学習率を下げ、振動を抑えることで谷方向へ真っ直ぐ収束する。3)モーメンタム + RMSPropにすることでRMSPropの利点を保ち、収束も早い。

考察

・Adamは集大成とも言える手法で現在では最も使われていると言える学習率最適化のアルゴリズムである。ただし、ある研究によってはSGD+加速法(モーメント、nesterov)が最終的に最も良い学習結果が見られる。

・AdaDeltaというAdamの亜種もあり、学習率の設定が不要になるもので、収束もかなり早い。


この記事が気に入ったらサポートをしてみませんか?