文章目錄
1、如何改進模型?
當已經完成一個機器學習模型,而效果並不符合要求時,該如何進行改進?
改進的方向有如下:
1、獲取更多訓練集;
2、挑選特徵,用更小的特徵集進行學習;
3、獲取訓練集數據的更多特徵信息,構建更大的特徵集;
4、使用更復雜的特徵()等;
5、減小;
6、加大。
2、模型評估方法
2.1 簡單評估
1、將數據集按7:3劃分爲訓練集和驗證集
2、使用驗證集驗證訓練模型的準確率:
使用,或錯誤數量作爲評估標準
2.2 特徵評估
例如要對特徵多項式進行選擇,令d爲多項式的最高冪
1、將數據集按6:2:2分爲訓練集(Train),交叉驗證集(CV),驗證集(Test)
2、使用交叉驗證集的誤差來選出最佳d
3、使用訓練集訓練模型
4、使用驗證集進行模型評估
2.3 偏差、方差評估
方差(variance),高方差→過擬合
偏差(bias),高偏差→欠擬合
還是之前確定多項式冪d的例子,隨着d的增大,訓練集和交叉驗證集的誤差如下圖:
左側對應的是高偏差(欠擬合),訓練誤差很大,檢查驗證誤差也很大,兩個接近
右側對應的是高方差(過擬合),訓練誤差很小,檢查驗證遠大於訓練誤差
2.3 正則化與偏差、方差
過大,高方差→過擬合
過小,高偏差→欠擬合
以爲橫座標,畫出的誤差圖,與上圖正好左右互換
3、學習曲線
以數據集的數量m作爲橫座標,畫出誤差曲線
高偏差情況:
增加數據量對於模型改進意義不大
高方差情況:
增加訓練數據對模型改進有用
4、改進模型的答案
1、獲取更多訓練集→高方差適用
2、挑選特徵,用更小的特徵集進行學習→高方差適用
3、獲取訓練集數據的更多特徵信息,構建更大的特徵集→高偏差適用
4、使用更復雜的特徵()等→高偏差適用
5、減小→高偏差適用
6、加大→高方差適用
以上的內容也適合在神經網絡,神經網絡的隱藏層數量、神經元數量對應特徵數量,選擇方式也是一樣的,多了會出現過擬合,這時候可以使用處理。
大的神經網絡+會比小神經網絡好。
5、學習系統設計
1、快速作出簡單系統,先跑起來;
2、畫出學習曲線,確定改進路線;
3、進行誤差分析,對誤差部分分析以改進系統
5.1 查準率、召回率
特別適用於不對稱的分類問題,如信用卡欺詐、癌症篩選
TP: 預測爲正,實際爲正
TN: 預測爲負,實際爲負
FP:預測爲正,實際爲負
FN: 預測爲負,實際爲正
Precision = TP/(TP+FP); 查準率, 在所有被判斷爲正樣本中, 真正正樣本的數量.
Recall = TP/(TP+FN); 召回率, 在所有正樣本中, 被識別爲正樣本的數量.
5.2 平衡查準率與召回率
F score:
5.3 數據量是算法的上限
1、數據越多算法預測越準確,多數據的差模型效果可能比少數據的好模型更好;
2、模型參數越多,模型越準確;