訓練 驗證 測試集

2021-10-01 12:35:04 字數 646 閱讀 7801

對於乙個需要解決的問題的樣本資料,在建立模型的過程中,我們會將問題的data劃分為以下幾個部分:

小資料時代

在小資料量的時代,如:100、1000、10000的資料量大小,可以將data做以下劃分:

通常在小資料量時代,以上比例的劃分是非常合理的。

大資料時代

但是在如今的大資料時代,對於乙個問題,我們擁有的data的數量可能是百萬級別的,所以驗證集和測試集所佔的比重會趨向於變得更小。

驗證集的目的是為了驗證不同的演算法哪種更加有效,所以驗證集只要足夠大能夠驗證大約2-10種演算法哪種更好就足夠了,不需要使用20%的資料作為驗證集。如百萬資料中抽取1萬的資料作為驗證集就可以了。

測試集的主要目的是評估模型的效果,如在單個分類器中,往往在百萬級別的資料中,我們選擇其中1000條資料足以評估單個模型的效果。

100萬資料量:98% / 1% / 1%;

超百萬資料量:99.5% / 0.25% / 0.25%(或者99.5% / 0.4% / 0.1%)

notation

建議驗證集要和訓練集來自於同乙個分布,可以使得機器學習演算法變得更快;

如果不需要用無偏估計來評估模型的效能,則可以不需要測試集。

訓練集 驗證集 訓練 驗證 測試集

注意事項 1.訓練 驗證 測試集必須分布相同,比如收集如下幾個區域的使用者資料,在分割訓練 驗證 測試集的時候不能將us uk用於訓練,india 驗證,china 測試,這樣的話由於各個地區分布不同,產生的結果也不好。更明智的做法是每個地區的資料單獨分割訓練 驗證 測試集,保證資料同一分布。2.驗...

訓練集 驗證集 測試集

訓練集loss 驗證集loss 測試集loss 乙個好的網路,二者的差距應該是很低的。但一般情況下因為網路不可避免地存在一定程度上的過擬合,所以肯定是train loss低於test lost,但如果低太多,就得考慮是過擬合的問題還是因為樣本的特徵空間不統一的問題。驗證集基本是在每個epoch完成後...

訓練集,驗證集,測試集

普通引數就是可以被梯度下降所更新的,也就是訓練集所更新的引數。超引數是指訓練開始之前設定的引數,不在梯度下降的更新範圍內,比如網路層數 網路節點數 迭代次數 學習率等等 1.訓練集 確定模型後,用於訓練普通引數 2.驗證集 交叉驗證集cv 驗證集在每個epoch訓練完成後,用來測試一下當前模型的準確...