2016-12-02 6 views
0

もっと大きな画像(224x224 RGB)を入力するにはthis example modelを適用しようとしています。確率的勾配降下訓練で、私は非常に高く、初期の損失値を取得しますが、その後、彼らは0にドロップ:大きな入力画像で完全に接続されたモデルの損失値を解釈する方法

Minibatch loss at step 0: 85038.437500 
Minibatch accuracy: 7.0% 
Minibatch loss at step 500: 4275149.500000 
Minibatch accuracy: 46.9% 
Minibatch loss at step 1000: 6613.396484 
Minibatch accuracy: 98.4% 
Minibatch loss at step 1500: 0.000000 
Minibatch accuracy: 100.0% 
Minibatch loss at step 2000: 0.000000 
Minibatch accuracy: 100.0% 
Minibatch loss at step 2500: 0.000000 
Minibatch accuracy: 100.0% 
Minibatch loss at step 3000: 0.000000 
Minibatch accuracy: 100.0% 
Test accuracy: 86.9% 

が、私は0.1と0.01にGradientDescentOptimizerの学習率を設定しようとしたが、それは解決しません。

損失がゼロになるのはどういう意味ですか?どうすればこれを防ぐことができますか?このモデルは本質的にこの入力セットには適用できないのですか?

答えて

1

損失がゼロであるということは、モデルがデータに完全に適合していることを意味し、これは100%の精度で確認されます。

これは実際にはかなり良いですが、テストの精度は訓練の精度よりもかなり低い86.9%に過ぎないため、過大な兆候が見られます。これは、モデルがデータにあまりうまく適合しないことを意味し、テストデータには存在しない訓練データにもノイズを当てはめることになります。これはモデルが一般化していることを意味しますが、テストの精度が低いほど問題があります。テストの損失(正確さの代わりに)を見ると、ゼロでないことがわかります。

オーバーフィットを防ぐにはどうすればよいですか?あなたが使用しているモデルはかなりシンプルで、どんな種類の正則化も使用していないようです。 L1/L2正則化、ドロップアウト、またはバッチ正規化を追加すると、必ずオーバーフィットが減少します。

関連する問題