1

我正在学习 SVM 和 ROC。据我所知,人们通常可以使用 ROC(接收器操作特性)曲线来显示 SVM(支持向量机)的分类能力。我想知道是否可以使用相同的概念来比较两个功能子集。

假设我有两个特征子集,子集 A 和子集 B。它们是通过 2 种不同的特征提取方法 A 和 B 从相同的训练数据中选择的。如果我使用这两个特征子集通过 LIBSVM 训练相同的 SVM svmtrain() 函数并绘制它们的 ROC 曲线,我可以通过它们的 AUC 值来比较它们的分类能力吗?因此,如果子集 A 的 AUC 值高于子集 B,我可以得出结论,方法 A 比方法 B 更好吗?这有什么意义吗?

非常感谢你,

4

1 回答 1

2

是的,你在正确的轨道上。但是,您需要记住一些事情。

  1. 通常使用具有适当缩放/归一化的两个特征 A 和 B 可以提供比单独的特征更好的性能。因此,您也可以考虑同时使用功能 A 和 B 的可能性。
  2. 当使用特征 A 和 B 训练 SVM 时,您应该分别针对它们进行优化,即将使用特征 A 获得的最佳性能与使用特征 B 获得的最佳性能进行比较。通常,特征 A 和 B 在不同的内核和参数设置下可能会提供最佳性能.
  3. 除了 AUC 之外,还有其他指标,例如F1 分数平均精度 (MAP),一旦您评估了测试数据,就可以计算它们,并且根据您所考虑的应用程序,它们可能更合适。
于 2012-10-23T04:26:10.180 回答