acc*_*and 6 java classification weka libsvm
我正在尝试使用基于LibSVM的分类器使用Weka,但是我遇到了这个错误:
Exception in thread "main" weka.core.UnsupportedAttributeTypeException:weka.classifiers.functions.LibSVM: Cannot handle numeric class!
at weka.core.Capabilities.test(Unknown Source)
at weka.core.Capabilities.test(Unknown Source)
at weka.core.Capabilities.test(Unknown Source)
at weka.core.Capabilities.testWithFail(Unknown Source)
at weka.classifiers.functions.LibSVM.buildClassifier(Unknown Source)
at imgclassifier.ImgClassifier.main(ImgClassifier.java:45)
Java Result: 1
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
try {
File f = new File("australian.txt");
LibSVMLoader loader = new LibSVMLoader();
loader.setSource(f);
Instances i = loader.getDataSet();
LibSVM svm = new LibSVM();
svm.buildClassifier(i);
}catch (IIOException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
australian.txt就是一个例子:LibSVM DataSet 任何人都可以解释我的错误在哪里?提前致谢
我不能批评你的整个方法,但是你缺少的一个基本项目是告诉SVM你想做回归.(与许多人的印象相反,LibSVM 可以做回归;请参阅http://www.csie.ntu.edu.tw/~cjlin/libsvm/ - "LIBSVM是......用于......回归(epsilon-SVR,nu-SVR)... ")
你需要这样做告诉它做回归:
svm.setSVMType(new SelectedTag(LibSVM.SVMTYPE_EPSILON_SVR, LibSVM.TAGS_SVMTYPE)); // -S 3=epsilon-SVR
Run Code Online (Sandbox Code Playgroud)
/抢
PS - 我仍然得到'无法处理数字类'错误,直到我使用Java面向对象的方法编码所有参数,使用LibSVM对象上的方法,而不是使用基于字符串的"选项"方法.我不知道为什么会这样,而且可能是红鲱鱼,但它确实如此.
| 归档时间: |
|
| 查看次数: |
9013 次 |
| 最近记录: |