Tensorflow と AdamOptimizer を使用して回帰問題を解決する非常に単純な ANN があり、すべてのハイパーパラメーターを調整するところまで来ました。
今のところ、調整が必要なさまざまなハイパーパラメータが多数あります。
- 学習率 : 初期学習率、学習率減衰
- AdamOptimizer には 4 つの引数 (learning-rate、beta1、beta2、epsilon) が必要なので、それらを調整する必要があります - 少なくとも epsilon
- バッチサイズ
- 反復回数
- ラムダ L2 正則化パラメーター
- ニューロン数、層数
- 出力層の非表示層の活性化関数の種類
- ドロップアウト パラメータ
2 つの質問があります。
1) 私が忘れたかもしれない他のハイパーパラメータを見つけますか?
2) 今のところ、私のチューニングは完全に「手動」であり、すべてを適切に行っているかどうかはわかりません。パラメータを調整する特別な順序はありますか? たとえば、最初に学習率、次にバッチサイズ、そして...これらすべてのパラメータが独立しているとは確信していません - 実際、そうでないものもあると確信しています。明らかに独立しているのはどれで、明らかに独立していないのはどれですか? 次に、それらを一緒に調整する必要がありますか? すべてのパラメータを特別な順序で適切に調整することについて説明している論文や記事はありますか?
編集:これは、さまざまな初期学習率、バッチサイズ、正則化パラメーターについて取得したグラフです。紫色の曲線は私にとっては完全に奇妙です.コストは他のものと同じようにゆっくりと減少しますが、より低い精度率で立ち往生します. モデルがローカル ミニマムでスタックしている可能性はありますか?
学習率については、減衰を使用しました: LR(t) = LRI/sqrt(epoch)
ご協力いただきありがとうございます !ポール