libsvm中的交叉验证

我在项目中使用libsvm库,最近发现它提供了开箱即用的交叉验证功能。我查看了文档,上面明确指出需要在调用svm-train时使用-n开关来启用交叉验证功能。但是当我使用-v开关调用时,无法获得svm-predict所需的模型文件。

从头实现支持向量机超出了我项目的范围,所以我更希望修复这个问题,如果它有问题的话,或者向社区寻求支持。

有谁能帮我解决这个问题吗?

这是库的链接,用C和C++实现的,这里是描述如何使用它的论文


回答:

因为libsvm仅将交叉验证用于参数选择。

来自libsvm常见问题解答:

问:进行交叉验证后,为什么没有输出模型文件?交叉验证用于选择好的参数。找到这些参数后,您需要在没有-v选项的情况下重新训练整个数据集。

如果您打算使用交叉验证来估计分类器在您数据上的质量,您应该通过分割数据、在部分数据上训练并在其他部分上测试来实现外部交叉验证。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注