2017-06-29 2 views
0

こんにちは私はベースデータセットmnistの上にcaffeを使用していますが、なぜトレーニング中に精度の出力があるのだろうと思いますか? prototxtファイル内で精度層はカフェのウィキからcaffeのトレーニングフェーズで正確な出力が得られるのはなぜですか?

layer { 
    name: "accuracy" 
    type: "Accuracy" 
    bottom: "ip2" 
    bottom: "label" 
    top: "accuracy" 
    include { 
    phase: TEST 
    } 
} 

あるlenet_train_test.protoxtそれは私がカフェ列を実行したときに、私は明示的に特定のフェーズに訓練するために述べていますし、同じカフェのテストのために行くと言っています。しかし、なぜ私がcaffe列車を走らせたら、精度のためのレイヤーが特にTESTと言うときに、私はまだ正確さを得ているのでしょうか?

+1

あなたは完全なproto_test.protoxtを投稿できますか?私には正確性があり、includeディレクティブがないと思われます。 – Eliethesaiyan

+1

トレーニング中の精度出力を示す出力の一部を投稿することもできます。 – Shai

答えて

1

solver.prototxtをご覧ください。

test_iter: 1000 
test_interval: 50 

これらは、モデルの収束を確認するための定期的なテストです。この場合、テストは50回のトレーニング反復ごとに行われます。テストは1000回の順方向パス反復で構成されています。これがあなたの精度レポートのソースです。トレーニングを通して、精度は全体的に向上するはずです。この精度が平坦になると、収束します。過度のフィッティングに移行すると、さらなるトレーニングによって精度が低下する可能性があります。

関連する問題