【发布时间】:2015-08-05 15:34:14
【问题描述】:
我正在尝试制作一个使用this tutorial 对推文的情绪进行分类的应用程序。我想比较朴素贝叶斯和 SMO 分类器的结果。虽然朴素贝叶斯工作正常,但 SMO 因以下错误而崩溃:
java.lang.ArrayIndexOutOfBoundsException: 6786
at weka.core.SparseInstance.toDoubleArray(SparseInstance.java:425)
at weka.filters.unsupervised.attribute.Normalize.batchFinished(Normalize.java:283)
at weka.filters.Filter.useFilter(Filter.java:682)
at weka.classifiers.functions.SMO.buildClassifier(SMO.java:1312)
at machinelearning.WekaTutorial.trainClassifier(WekaTutorial.java:106)
at machinelearning.WekaTutorial.main(WekaTutorial.java:219)
我的应用程序有点不同(它有 GUI 可以让您搜索推文并选择要分类的推文),但出于测试目的,我修改了教程中原始应用程序的代码,以确保它不是我的错误。我改变了这一行:
classifier = new NaiveBayes();
到这一行:
classifier = new SMO();
我没有碰任何其他东西,但我仍然遇到同样的错误。有谁知道为什么以及如何解决它?
【问题讨论】:
标签: java classification weka text-classification