Thursday, September 3, 2009

Getting LibSVM to work with Weka on Mac

Somehow, the only way to use LibSVM with Weka is by using the bash command-line.

Step 1: Get Weka.
Assume the bleeding edge version 3.7.0. Unzip and put in /Applications folder.

Step 2: Get LibSVM.
a. Iowa State site (
If you use Safari to download, it will be unzipped in the Downloads directory. The files you need are ~/Downloads/WLSVM/lib/wlsvm.jar and /Downloads/WLSVM/lib/libsvm.jar
b. Taiwan site(
Using Safari to download, the file you need is ~/Downloads/libsvm-2.89/java/libsvm.jar

Step 3: Open Terminal and copy to Assume you have privileges to write into
a. Iowa State version:
$ cp ~/Downloads/WLSVM/lib/*.jar /Applications/Weka/
b. Taiwan version:
$ cp ~/Downloads/libsvm-2.89/java/libsvm.jar /Applications/Weka/

$ export CLASSPATH=$CLASSPATH:/Applications/Weka/

Step 5:Run Weka from Terminal!
$ java -classpath $CLASSPATH:weka.jar:libsvm.jar weka.gui.GUIChooser &

Conclusion: Bash sucks less!

1 comment:

  1. OR
    1.copy the libsvm.jar and wvsvm.jar into the app folder like told in the blog

    2.edit\info.plist file in textedit

    After ClassPath
    and the array start tag you'll see
    $JAVAROOT/weka.jar within string tags
    copy that whole line and make two copies directly below it
    edit the new copies to say
    $JAVAROOT/libsvm.jar in one
    $JAVAROOT/wlsvm.jar in the other

    3.(Optional)you can change the VMOptions also if you want to increase the heap Mem size

    After VMOptions key
    edit string tag to -Xmx512M

    that's all
    just run the app as usual without command line :)

    Bash sucks more :P

    funny to see you can't type tags in comments .. so the above steps may be a little hard to understand for novice users [:)]