bwaldvogel / liblinear-weka

Weka wrapper class for the Liblinear Java classifier
7 stars 13 forks source link

ArrayIndexOutOfBoundsException 44458 #3

Open andresgs77 opened 8 years ago

andresgs77 commented 8 years ago

LibLINEAR 1.9.8

weka.classifiers.functions.LibLINEAR -S 1 -C 1.0 -E 0.001 -B 1.0 -L 0.1 -I 1000

In the Weka Explorer when evaluating a liblinear classifier with default parameters, and using as data an arff file containing sparse instances I received the following exception in the console:

java.lang.ArrayIndexOutOfBoundsException: 44458 weka.classifiers.functions.LibLINEAR.toString(LibLINEAR.java:1041) weka.gui.explorer.ClassifierPanel$18.run(ClassifierPanel.java:1406)

Note that I have evaluated the same classifier with the same arff file using the JAVA api and everthing is working fine.

I'm attaching the arff file, it has 1416 Instances, 44457 attributes.

data.txt

hack-r commented 8 years ago

The problem is that you don't have enough attributes. Only 44,000! Good models these days have like 15 million attributes and 5 instances.

OK, sorry, I couldn't resist. I don't think there's any point in having more attributes than instances because you won't have enough degrees of freedom to estimate your model, though (if the software completes its build the results would still be junk).

That being said, could you provide the Java code from where this worked so that we can better understand what went wrong in the GUI?