用標準資料來訓練,但是在真實的測試過程中,輸入資料的並不會是標準資料,導致了訓練與測試的兩個過程中資料分布的不一致。
首先,訓練集合與測試集合的分布完全一樣,這個不太現實,因為相對於有限的訓練集,測試集合理論上趨於無限大,所以無法窮盡。然而我們也不能為了單單去擬合我們手裡的測試集而調整模型。
那麼要了解業務場景,要知道你的產品需要到哪些場景中,人為的分析資料來源,這樣收集到的資料可能會更好。
這裡假定你有個識別人臉的應用,你的資料集是來自某知名人臉資料庫(簡稱原資料庫),10w張左右,清晰標註明確。而你的使用者是手機上傳影象,影象模糊且場景較複雜,1w張左右。那麼現在其實你應該關心的是1w張使用者資料,但是1w張樣本太少了,那麼此時可以隨機劃分出一部分使用者影象與原資料庫混合訓練,但是測試集合一定是使用者影象而非你的原資料庫,那麼這樣的模型可能就會表現的相對更好一些。
將資料集切分成「訓練 測試資料集」和交叉驗證
把資料集分為兩部分 分別用於訓練和測試 sklearn提供乙個將資料集切分成訓練集和測試集的函式。from sklearn.cross validation import train test splitxd train,xd test,y train,y test train test split...
43 為什麼要訓練資料集與測試資料集
我們說它之所以過擬合,是因為雖然我們學習到的這個曲線使得我們整個樣本使用這個曲線進行 的誤差變小了,但是如果有乙個新的樣本的話,比如下圖紫色的點對應的 x xx 座標大概是 2.5 左右,那麼根據我們的這個曲線 的結果大概是 0.5 左右,顯然可以發現這個 的結果和之前藍色的樣本點相差太大。我們直觀...
資料集預處理,劃分為測試資料集合驗證資料集
在乙個資料集中隨機選出80 的記錄作為訓練資料集,訓練得到相應的數學模型之後,將剩餘的20 的記錄作為驗證,測試模型的準確性。原有資料集形式 1 1193 5 978300760 1 661 3 978302109 1 914 3 978301968 1 3408 4 978300275 1 235...