2017-03-18 129 views
2

我正在玩Keras的cifar10示例,您可以找到here。我已經重新創建了模型(即,不是相同的文件,但其他所有內容幾乎相同),您可以找到它hereKeras cifar10示例驗證和測試損失低於培訓損失

該模型是相同的,我訓練模型爲30個時期與0.2驗證拆分50,000圖像訓練集。我無法理解我得到的結果。我的驗證和測試損耗比訓練更小的更小(負,訓練精度較低相比,驗證和測試準確度):

     Loss  Accuracy 
    Training   1.345   0.572 
Validation   1.184   0.596 
     Test   1.19   0.596 

Model Training and Validation loss and accuracy

望着情節,我我不知道爲什麼訓練錯誤再次開始如此糟糕。我是否需要減少訓練的時代數量,或者實施早期停止?不同的模型架構會有所幫助嗎?如果是這樣,那麼好的建議是什麼?

謝謝。

回答

2

這是一種罕見的現象,但它時常發生。有幾個原因,這可能是這種情況:

  • 較小的數據集具有較小的內在差異所以這意味着你的模型正確捕捉模式數據的內部和火車錯誤較大僅僅是因爲內部方差訓練集大於驗證集
  • 簡單的意外 - 這可能也會發生 - 你的分割適合這種行爲。
+0

謝謝。 (1)CIFAR10是否被認爲是一個小數據集?從情節看來,大約7個時代我獲得了不錯的表現,但讓我感到困惑的是,訓練錯誤持續增加。 (2)我跑了很多次,得到了類似的結果,我希望我不會不走運。 – shaun

相關問題