2013-09-28 8 views
5

Ich versuche zu laufen einen Klassifikator in WEKA, unter Verwendung eines J48 Klassifikator mit der folgenden Befehlszeile zu vermeiden und ich aumented den Heap-Speicher zu 2048m, erhielt ich noch die folgenden Fehler:Zunahme Heap Nicht genügend Speicher Fehler bei WEKA

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space 
    at java.util.ArrayList.<init>(ArrayList.java:132) 
    at weka.core.Instances.initialize(Instances.java:196) 
    at weka.core.Instances.<init>(Instances.java:177) 
    at weka.classifiers.trees.j48.ClassifierSplitModel.split(ClassifierSplitModel.java:252) 
    at weka.classifiers.trees.j48.ClassifierTree.buildTree(ClassifierTree.java:159) 
    at weka.classifiers.trees.j48.C45PruneableClassifierTree.buildClassifier(C45PruneableClassifierTree.java:126) 
    at weka.classifiers.trees.J48.buildClassifier(J48.java:249) 
    at weka.classifiers.evaluation.Evaluation.evaluateModel(Evaluation.java:1485) 
    at weka.classifiers.Evaluation.evaluateModel(Evaluation.java:649) 
    at weka.classifiers.AbstractClassifier.runClassifier(AbstractClassifier.java:297) 
    at weka.classifiers.trees.J48.main(J48.java:1062) 

Hat jemand wissen, ob ich etwas falsch mache? Oder kann ich auf eine andere Lösung hinweisen, um den Heap zu erhöhen?

Vielen Dank im Voraus.

Antwort

13

Kurzanleitung für die Ubuntu-Benutzer: Der Heap kann durch Ändern der Zeile MEMORY="256m" in der Datei /usr/bin/weka mit Ihrem bevorzugten Editor eingestellt werden.

+1

Diese Lösung funktioniert auch für MacOSx-Benutzer. – owwoow14

2

Wekas ​​instructions Zustand, dass der Befehl "-Xmx ..." nicht über die einfache Befehlszeilenschnittstelle funktioniert. Ich glaube, Sie sollten die Größe des Heapspeichers erhöhen, indem Sie die RunWeka.ini-Datei bearbeiten. Der von mir angegebene Link sollte Sie in die richtige Richtung weisen.