1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

学習率,バッチサイズ,エポック,スケジューラ

Posted at

自分で決定しなければならないハイパーパラメータである学習率・バッチサイズ・エポックについて.
大学院での授業でKaggleコンペみたいなことをやらされていて,パラメータ調整に時間をかけたので.

学習率

学習率 大

 一気に学習が進む.しかし一度の更新が大きすぎると最適解を飛び越えてしまい,無限に収束しない.

学習率 小

 局所解に陥りがち.loss推移を追っていると,学習が局所解に陥っているか何となく分かる.学習の度に最終精度に差があるときも,その原因は局所解に陥っているからのときが多い.

バッチサイズ

バッチサイズ 大

 学習が速く,かつ局所解にも陥りづらい.しかし,学習の束が大きいのでデータが平均化されてしまい,データの個性が失われ,結果精度が上がりづらい.

バッチサイズ 小

 学習は遅く,局所解にも陥りやすい.一方,精度は向上しやすい.

スケジューラ

 上記からハイパーパラメータ調整が面倒だということが分かったと思うが,ここで学習率をよしなに調整するためのスケジューラを導入する.大体,初期学習率は1e-01~1e-03くらいでいいと思う.

OneCycleLR

 段階的に学習率を引き下げてくれる

ReduceLROnPlateau

 評価値が改善しなかったら学習率を落としてくれる

エポック

 エポックは大体学習が収束するまで.

結論

 局所解に陥らずに,きちんと収束しているかが大事.loss推移を見て学習が局所解に陥っているか見る.局所解に陥っていたら,スケジューラの初期学習率を上げるか,バッチサイズを上げる.個人的には,スケジューラの初期学習率はどうせ下げてくれるので高めに設定しておき,バッチサイズをいじる.

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?