https://blog.csdn.net/qq_18343569/article/details/50036557
交叉驗證(Cross-Validation)的基本思想:
將原數據進行分組,一部分做為訓練集,另一部分做為驗證集,首先用訓練集對不同參數的模型進行訓練,再利用驗證集來測試訓練得到的模型,進而用驗證集的測試誤差來衡量模型中的參數。
常用的交叉驗證的方法:
( 1) Hold-out 方法
Hold-out 方法即將原數據隨機的分成兩組,一組用作訓練數據集,另一組用作驗證數據集。
訓練集訓練模型,驗證集則用於驗證訓練得到的模型,驗證集的測試誤差則為衡量標准。
Hold-out 方法依賴於單一的數據分割,並沒有出現數據的交叉。實驗結果高度依賴數據集的分割,驗證結果容易出現不穩定的情況。為此,取多次 Hold-out 驗證結果的均值則成為廣義的交叉驗證方法的評價標准。但在多次采用 Hold-out 驗證時,由於隨機分割數據,可能造成部分數據的信息無法充分利用,進而造成實驗效果的偏差。
( 2)留一驗證法( Leave-one-out, LOO CV)
LOO CV是經典交叉驗證方法的一種,
即若原數據為 N 個樣本,則每個數據單獨作為驗證集,剩下的 N-1個樣本作為訓練集。實驗數據在訓練時的充分利用是 LOOCV 方法的優點,但是在數據比較大時,高成本的計算復雜度成為 LOO CV 方法的局限性,然而小樣本數據在采用 LOO CV 方法時可以得到很好的效果。
LOO CV 方法可以進一步得到改進,形成 LMO (Leave-m-out) CV[40],即數據中每 M個數據均有機會成為驗證集,剩余的 − MN 個數據作為訓練集。 M > 1時, LMO CV 在一定程度上改善了 LOO CV 計算復雜度過高的不足。
( 3) K 折交叉驗證法( K-flod Cross Validation)
在上述方法的基礎上,提出了 K 折交叉驗證法,即將原數據平均分成 K 組,每一組均可作為驗證集,剩余的 K −1組作為訓練集。 K 個驗證集的測試誤差的均值為此方法的性能評價指標。 K 折交叉驗證法不僅充分利用了數據的信息,有效的避免了過擬合和欠擬合狀態的發生,得到的結果具有說服性,而且降低了計算復雜度。這一優勢使得 K折交叉驗證法成為最常用的交叉驗證方法。然而 K 值的選取問題,困擾着 K 折交叉驗證法的使用。一般而言, K 的選取范圍為 5 到 10。
---------------------
作者:qq_18343569
來源:CSDN
原文:https://blog.csdn.net/qq_18343569/article/details/50036557
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!