最近在看周志華的《機器學習》,整理了一些學習筆記。模型選擇與評估的知識偏向理論,該回去複習概率論了QWQ
一、名詞解釋
訓練誤差/經驗誤差trainning error/empirical error
學習器在訓練集上的誤差。
泛化誤差generalizationerror
學習器在新樣本上的誤差。
測試誤差testingerror
學習器在測試集上的誤差。
過擬合overfitting
學習器學習能力過於強大,把不太一般的特性也學習了。
欠擬合underfitting
學習器學習能力低下。
性能度量performancemeasure
衡量模型泛化能力的評價標準。
二、常見的評估方法
留出法hold-out
價格數據集D劃分爲兩個互斥的集合,一個作爲訓練集S,另一個作爲測試集T。
常見的做法是將2/3~4/5的樣本進行訓練,剩餘用於測試。
單次留出法得到的結果不夠穩定,一般進行若干次隨機劃分、重複實驗後取平均值作爲評估結果。
評估結果的保真性與劃分比例有關。
交叉檢驗法crossvalidation / k折交叉驗證k-foldcross validation
將數據集D劃分爲k個大小相似的互斥子集。每次用k-1個子集的並集作爲訓練集,餘下的那個作爲測試集,進行k次訓練和測試,最後返回k個測試結果的均值。
k最常用的取值是10。k折交叉驗證通常要隨機使用不同的劃分重複p次,最終結果是p次k折交叉驗證的均值。
評估結果的穩定性和保真性取決於k的取值。
留一法Leave-One-Out
k=樣本數量m,只有唯一的劃分方式,每個子集一個樣本。評估結果比較準確,但存在缺陷,數據集過大時計算開銷過大。
自助法bootstrapping
每次在數據集D中隨機挑選一個樣本,將其拷貝的副本放入D’,重複m次後得到包含m個樣本的數據集D’。通過自助採樣,D中約有36.8%的樣本未出現在D’中。
將D’作爲訓練集,D\D’(集合相減)作爲測試集。測試結果稱爲包外估計(out-of-bag estimate)。
在數據集較小時很有用,但會引入估計偏差,因此在數據量充足時不常用。
三、常用的性能度量
錯誤率和精度
錯誤率是分類錯誤的樣本數佔樣本總數的比例。
精度是分類正確的樣本數佔樣本總數的比例。
查準率、查全率與F1
查準率precision:P = TP / (TP+ FP)
查全率recall:R = TP / (RP+FN)
F1= 2×P×R / (P+R)
F1的一般形式Fβ= (1 +β2)×P×R / ( (β2×P) + R)
β=1時爲標準的F1;β>1時查全率有更大影響;β<1時查準率有更大影響。
ROC與AUC
ROC:受試者工作特徵曲線(ReceiverOperating Characteristic)。根據學習器的預測結果對樣例進行排序,按順序逐個把樣本作爲正例進行預測,每次計算出兩個重要量的值,分別作爲橫、縱座標作圖,即可得到ROC曲線。
ROC的橫軸是假正例率FPR,縱軸是真正例率TPR。
FPR= FP / (TN + FP)
TPR= TP / (TP + FN)
AUC:AreaUnderROC Curve,通過對ROC曲線下各部分的面積求和得到。
四、比較檢驗
假設檢驗hypothesistest
參考《概率論與數理統計》。
交叉驗證t檢驗
可比較兩個學習器的優劣。
可採用5×2交叉驗證。
McNemar檢驗
可比較兩個學習器的分類結果差別。
採用二項分佈檢驗,通過對兩組樣本前後變化的頻率,計算二項分佈的概率值。
主要用於配對資料率的檢驗。
Friedman檢驗與Nemenyi後續檢驗
多個算法進行比較,並進行排序。
五、偏差與方差
偏差bias
度量了學習算法的期望預測與真實結果的偏離程度,即刻畫了學習算法本身的擬合能力。
方差variance
度量了同樣大小的訓練集的變動所導致的學習性能的變化,即刻畫了數據擾動所造成的影響。
噪聲
表達了在當前任務上任何學習算法所能達到的期望泛化誤差的下界,即刻畫了學習問題本身的難度。