2012-11-29 14 views
5

私は現在、10分割交差検定に誤分類率を得るために、MATLABでこの構文を使用しています:クロスバリデーションの各フォールドで誤分類率を取得する方法は?

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

私は 'cvpartition'関数の概念をあまり得ていないので、' crossval'プロセスを細分化するのに少し問題があります。パーティションを私が自分で作ってしまえば、「層別化された」プロパティが侵害されますか? – Neu

+0

@ Neu、低レベルの機能を使用して高レベルの機能を試してみてください。類似の結果が得られるかどうかを確認してください... – Shai

+0

私はすでにそれを持っています。 – Neu

関連する問題