ディープラーニングフィードフォワードネットにおける騒々しい行動
-
16-10-2019 - |
解決
F1スコアグラフの過剰対数形状は、学習が効果的であり、コストが最小に向かっていることを示しています。それは良い。私は、あなたが言及しているノイズは、約3kの反復後のグラフの不安定性であると仮定しています:Zig-zagの方法でコストが削減され、上昇します。
これは多くの場合、学習率が大きすぎることを示唆しています。バック伝播は右勾配を見つけますが、コスト関数の端に沿って下るのではなく、大きな一歩を踏み出し、登ることになります。グラフが中間値の周りに振動するように見えるとき、それは特に明白です。使用している学習率の正確な価値については言及していませんが、それを減らすようにしてください。良い出発点は0.01ですが、それは多くの要因に依存するので、実験してみてください。
別の問題はバッチサイズかもしれません:つまり、勾配の計算に貢献する例の数。大きすぎると、間違った方向に平均勾配が向けられる可能性があります。そして、小さなステップ(つまり、学習率が低い)でも役に立ちません。そして、それは再びジグザグパターンで現れるかもしれません。バッチサイズがパラメーターの1つである場合、それを減らしようとします。
最も可能性の低い問題は、ネットワークのエンコーディングアーキテクチャである可能性があります。特に、最後の層の8つのニューロンの控えめな数。この場合、個々のニューロンは最終出力に大きな影響を与える可能性があります。そして、背中の伝播の単一のステップから生じる小さな調整でさえ、そのニューロンの活性化値の兆候を潜在的に反転させ、他の例の結果に影響を与える可能性があります。最後の層のニューロンの数を増やしてみてください。私は個人的に50x50x50のアーキテクチャを試すことをお勧めします。
お役に立てれば!