林軒田 15 驗證法

2021-07-16 23:30:47 字數 1604 閱讀 8186

驗證資料的選擇 validation set dval

留1法做交叉驗證

k-fold 交叉驗證

其他資料

演演算法選方面選擇:pla, pocket, linear regression, logistic regression

iteration的次數:100,1000

每步大小: 1,0.01

特徵transform: linear線性的、quadratic二次的,poly-10 10次多項式,legendre-poly-10 10次垂直多項式。

regulation選什麼: l2 regularizeer l2範數,l1範數,對稱範數。。。

規範化的權重λ 0,0.01,1

如果用訓練樣本做驗證,其實是被汙染了的資料,因為你在訓練模型的時候已經使用了這些資料

如果使用測試樣本做驗證,那就不好了,因為這些測試樣本給你的話,以後判定的指標就不准了呀。

所以可以在訓練之前拿出一部分樣本做測試。這些樣本不參與訓練;

所以我們現在把資料分成了兩部分,k的那部分用來做驗證,也就是計算eval,n-k那部分用來訓練模型。而在我們選擇模型的時候,就不需要計算ein了,而是計算eval,以此來估計當前模型的eout。

我們的finite hoffding不等式來計算eout

選出合適的gm之後還要用所有的資料重新來一次訓練。

有當test_data很小,train_data接近d時,才差不多。

一般情況下,我們的test_data選取總資料的20%.即n/5 .

留乙個作為test_data,其餘都作為train_data.迴圈n次,再把n個error取平均.

cross validation: 交叉驗證指的是同一筆資料有時候當驗證有時候當訓練樣本,最後取平均。

該方法理論上很好,但是實際上,並不常用.一般再資料量很小的時候用.

缺點有:

1.可能計算量很大

2.穩定性不是很好,因為每次僅僅留乙個點作為test_data

一般k取10. 也有取5的.k越大,越精確.但是運算量大.

交叉驗證其實對結果還是有一些樂觀成分.

只要計算量允許,就用10折交叉驗證,10折效果一般比5摺好.

cross validation 比single validation(普通驗證法) 好,只要計算量允許,一定要用cross validation

[驗證法:如何選擇模型,引數等 - 丁磊_ml的部落格 - 部落格頻道 - csdn.net]

(

林軒田 15 驗證的方法

演演算法選方面選擇 pla,pocket,linear regression,logistic regression iteration的次數 100,1000 每步大小 1,0.01 特徵transform linear線性的 quadratic二次的,poly 10 10次多項式,legendr...

交叉驗證法

基本原理 交叉驗證是用來觀察模型的穩定性的一種方法,我們將資料劃分為n份,依次使用其中乙份作為測試集,其他n 1份作為訓練集,多次計算模型的精確性來評估模型的平均準確程度。訓練集和測試集的劃分會干擾模型的結果,因此用交叉驗證n次的結果求出的平均值,是對模型效果的乙個更好的度量。實現 及注釋 from...

機器學習技法 林軒田 課程總結

how can machines learn by embedding numerous features 1.線性svm,推導非條件目標,qp求解 2.對偶svm,非線性問題消除z域d 1依賴 3.kernel trick僅在x域計算 4.soft margin,n 5.klr,two level...