SMOreg在java代码中花费了太多时间

时间:2015-01-01 01:55:14

标签: java weka

我在java代码中使用来自weka的SMOreg(SVM回归)。在buildClassifier()方法上花费超过30分钟。当我通过weka gui工具箱运行相同的输入时,它几乎不需要2分钟。这是我的代码的一部分。

Instances trainD = DataSource.read(trin_file);
trainD.setClassIndex(trainD.numAttributes()-1);
SMOreg predict = new SMOreg();
predict.buildClassifier(trainD);

是否有任何特定的理由在java代码中花费更长时间来完成相同的任务?

1 个答案:

答案 0 :(得分:1)

你可能没有通过所有相同的选项。此外,请确保为运行GUI和运行本机Java代码分配相同数量的内存。

一般来说,回归需要一段时间。作为一个例子,我进行了一项使用SMO / SVM(分类)运行大约需要2个小时的实验。当我将class属性更改为连续,并运行SMOreg时,它花了一天时间才能运行。