2012-11-29 27 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

相关问题