原因1-在訓練中應用正則化(加了正則項),但在驗證/測試中未應用正則化
正則化方法通常會犧牲訓練准確性來提高驗證/測試准確性——在某些情況下,可能導致驗證loss低於訓練loss。
原因2-訓練loss是在每個epoch測量的,而驗證loss是在每個epoch后測量的
在整個epoch內,您的訓練loss將不斷得到報告;但是,僅在當前訓練epoch完成后,才根據驗證集計算驗證指標。
這意味着,平均而言,訓練loss要提前半個epoch來衡量
原因3-驗證集可能比訓練集更容易,或者代碼中的數據/錯誤泄漏。確保驗證集大小合理,並且是從訓練集相同的分布(和難度)中抽取的。