如何使用Java Library使用LibSVM执行模型选择?

时间:2015-03-13 10:14:12

标签: java machine-learning libsvm

为了寻找推文分类问题的算法,我与SVM交叉。从LibSVM开始,我使用其java库(不是命令行)实现了一个系统,这个系统产生了大约50%-60%的线性函数。现在我希望执行模型选择,缩放,交叉验证和特征选择,以期提高我的准确性。问题是,我无法通过LibSVM在Java库中找到这些功能。那么我有什么选择。考虑到我是一名java程序员?如果选择是自己写,怎么做,用什么算法?我应该和任何其他机器学习库或算法一起去完成任务吗?

3 个答案:

答案 0 :(得分:0)

我不确定模型选择或缩放是什么意思。我知道LibSVM会进行交叉验证,但我不知道功能选择。我建议使用R而不是java。有许多用于不同特征选择方法的包以及SVM,如:

  

e1071

答案 1 :(得分:0)

JSAT有一个SVM实现(不是LibSVM使用的完全相同的算法,但解决了同样的问题)以及许多其他算法,GridSearch和特征选择方法。

偏见:我是图书馆的作者。

答案 2 :(得分:0)

SVM中的模型选择过程,可帮助您根据功能的不同参数选择最佳模型。在LibSVM库中,使用交叉验证方法完成模型选择。它的作用是将您的训练数据划分为多个子集,并且每次都使用不同的参数训练模型,以提高准确性。这也消除了over fitting problem