經常地,對一堆資料進行建模的時候,特別是分類和回歸模型,我們有很多的變數可供使用,選擇不同的變數組合可以得到不同的模型,例如我們有5個變數,2的5次方,我們將有32個變數組合,可以訓練出32個模型。但是哪個模型更加的好呢?目前常用有如下方法:
aic=-2 ln(l) + 2 k
中文名字:赤池資訊量 akaike information criterion
bic=-2 ln(l) + ln(n)*k 中文名字:貝葉斯資訊量 bayesian information criterion
hq=-2 ln(l) + ln(ln(n))*k hannan-quinn criterion
其中l是在該模型下的最大似然,n是資料數量,k是模型的變數個數。
注意這些規則只是刻畫了用某個模型之後相對「真實模型」的資訊損失【因為不知道真正的模型是什麼樣子,所以訓練得到的所有模型都只是真實模型的乙個近似模型】,所以用這些規則不能說明某個模型的精確度,即三個模型a, b, c,在通過這些規則計算後,我們知道b模型是三個模型中最好的,但是不能保證b這個模型就能夠很好地刻畫資料,因為很有可能這三個模型都是非常糟糕的,b只是爛蘋果中的相對好的蘋果而已。
這些規則理論上是比較漂亮的,但是實際在模型選擇中應用起來還是有些困難的,例如上面我們說了5個變數就有32個變數組合,如果是10個變數呢?2的10次方,我們不可能對所有這些模型進行一一驗證aic, bic,hq規則來選擇模型,工作量太大。
sklearn 儲存模型的幾種方法
coding utf 8 created on 2018 3 28 from sklearn import svm from sklearn import datasets import pickle from sklearn.externals import joblib clf svm.svc ...
jq中選擇器的幾種方法
專案 value find 匹配當前元素的後代 div p 後代選擇器 children 匹配當前元素的子元素 div p 子選擇器 next 匹配當前元素的下乙個同級元素 div p 下乙個同級選擇器 nextall 匹配當前元素的下的所有同級元素 div p prev 匹配當前元素的前乙個同級元...
sps程式設計模型中開啟站點的幾種方法
開啟站點的幾種方法 1 如果你想開啟的是你這個webpart所在的站點,直接使用spweb和spcontrol開啟。注意 想要引用microsoft.sharpoint和microsoft.sharpoint.webcontrols spweb mysite spcontrol.getcontext...