Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
matlab中的交叉验证_Matlab_Cross Validation - Fatal编程技术网

matlab中的交叉验证

matlab中的交叉验证,matlab,cross-validation,Matlab,Cross Validation,我在is的文档中读到,mcr=crossval('mcr',X,y,'Predfun',Predfun)函数在matlab中计算误分类率,但是如果它应用10倍交叉验证,那么我们将有10个不同的误分类值,因为我们做了10次测试,每次测试都会产生一个结果,但是值mcr是单个的还是标量的,所以它取平均误分类率还是取最小值等等?使用平均误分类率(所有折叠和所有monte-carlo重新分区)。下面的crossval行演示了平均损失的计算- loss = sum(loss)/ (mcreps * sum(

我在is的文档中读到,
mcr=crossval('mcr',X,y,'Predfun',Predfun)
函数在matlab中计算误分类率,但是如果它应用10倍交叉验证,那么我们将有10个不同的误分类值,因为我们做了10次测试,每次测试都会产生一个结果,但是值
mcr
是单个的还是标量的,所以它取平均误分类率还是取最小值等等?

使用平均误分类率(所有折叠和所有monte-carlo重新分区)。下面的
crossval
行演示了平均损失的计算-

loss = sum(loss)/ (mcreps * sum(cvp.TestSize));
其中,
loss
最初是每个交叉验证折叠和每个重新划分的损失向量,
mcreps
是重新划分的数量,
sum(cvp.TestSize)
是交叉验证测试集的总大小


这用于MSE(均方误差)和MCR损失函数。

您是否知道,在这些k倍交叉验证中,是否有办法获得最佳精度(或最小误分类)?您可以复制
crossval
的代码,并将该行更改为
loss=min(loss)
但我不知道你为什么想要最小的误分类率(因为交叉验证的目的通常是告诉你关于你的平均概括错误)。科学方法(即论文中测量的准确度)是否将平均误分类率作为准确度的标准度量?我想在我的最终结果中取得最好的分类准确率(我不知道这个东西在科学上有多正确)