我是 LibSVM
的初学者。我想通过 LibSVM
使用one vs all
策略多分类。为此,我阅读了其基础知识,但它们并没有让我产生想法。有没有好的 Java 代码示例?
最佳答案
根据implementation documentation LIBSVM 库默认使用“one vs all”策略进行多类预测。
对于代码示例,您可以查看 LIBSVM 的 Java 端口,可以在 here for training 找到它。和 here for prediction .
基本上,您可以使用提供的 CLI 来训练/预测。如果您想在自己的代码中使用它,则必须执行一些“重构”,以使其更适合您的目的。
与 java 一起使用它的基本步骤是:
- 按照图书馆的要求提供“稀疏”格式的培训文件。这只是“classLabel feature_id1:feature_value1 feature_id2:feature_value2 ...”。类标签和 feature_id 必须是整数。
- 获得培训文件后,您可以按照其网站上的说明使用 CLI 工具(您只需配置内核特定参数)。在您的例子中,该库将自动检测超过 2 个类,因此它将开始使用“one vs all”来训练多类 SVM。
- 重复 1.) 获取测试文件并继续使用 CLI 工具来评估您的模型。
关于java - 如何使用 LibSVM 进行 'multi classification' 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32697218/