我绘制了5折交叉验证数据作为单元数组,使用正class=1执行曲线函数,然后生成了3条曲线,如图所示。我原以为只有一条曲线。
X,Y,T,AUC,OPTROCPT,SUBY,SUBYNAMES =性能曲线(Actual_label,Score,1);
plot(X,Y)这里,Actual_label和Score是大小为5X1的单元数组。每个单元数组的大小为70X1。1表示正class=1。
附言:我使用的是单类支持向量机,'fitSVMPosterior‘函数不适合单类学习(documentation of MATLAB中也提到过)。因此,这里不能使用后验概率。

发布于 2018-09-28 17:34:41
计算置信区间时,X和Y是一个m乘3的数组,其中m是固定的X值或阈值(T值)的数量。Y的第一列包含平均值。第二列和第三列分别包含逐点置信界的下界和上界。AUC也是一个具有三个元素的行向量,遵循相同的约定。
上面的解释取自MATLAB documentation。
发布于 2018-09-28 16:29:27
这是意料之中的,因为您正在绘制5个折叠中的每一个的ROC曲线。
现在,如果您希望分类器只有一个ROC,您可以使用5个经过训练的分类器来预测独立测试集的标签,或者您可以平均5个折叠层的后验概率并具有一个ROC。
https://stackoverflow.com/questions/52551181
复制相似问题