2012-11-29 39 views
5

我目前使用此語法在MATLAB中得到錯誤率在10倍交叉驗證:如何在交叉驗證的每個摺疊中獲得錯誤分類率?

target = [repmat(1,ntrial,1);repmat(2,ntrial,1)]; 
cvo = cvpartition(target,'k',10); 
func = @(XTRAIN,ytrain,XTEST)(classify(XTEST,XTRAIN,ytrain)); 
mcr = crossval('mcr',pooling,target,'predfun',func,'partition',cvo); 

(其中「池」是2級的功能集,我想與分級分類)

從我讀的,mcr將返回10倍的平均錯誤分類率。現在,如果我想從每個摺疊得到錯誤分類率,我該怎麼辦?

預先感謝您。

回答

1

我想說,在這種情況下,您希望對培訓/驗證過程有更多的控制權。你有沒有考慮分解更多的控制過程? 從cvpartition開始,爲交叉驗證創建10倍,然後分別對每個摺疊進行操作。

+0

我有點問題打破了'crossval'過程,因爲我不太瞭解'cvpartition'函數的概念。恐怕如果我自己做分區,是否會侵犯'分層'的財產? – Neu

+0

@Neu,你可以嘗試使用低級函數來模擬高級功能,看看你是否得到了類似的結果... – Shai

+0

我已經知道了,謝謝你的幫助:) – Neu

相關問題