This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Need help with Support Vector Machines.

I've read many thorough explanations of SVM's that focus on the mathematical theory behind SVM's. I'm new to machine learning, though, and have no clue what software to use to run my own SVM binary classifier. I plan to program entirely in Java. Could anyone give me a how-to about what to do next? I'm familiar with Weka, but I don't want to apply "ready made" algorithms to my data. I need to go behind the scenes and get involved with some heavy duty programming. What software will allow me to do this? Thanks!

machine learning algorithms

If you don't want to apply "ready made algorithms", I take it you want to implement algorithms yourself. So, for a given algorithm, you should read its description (in papers, reviews, tutorials...) and make sure you understand how it works then you can start working on an implementation in your favorite language. You can also look at existing code to get ideas. Finally, before trusting your code, test it against established software. Note that your code is unlikely to be better than software that has stood the test of time because the later would have had bugs removed and optimization added over time.

1 answer

Jason Brownlee have a nice post on machine learning using Java: http://machinelearningmastery.com/java-machine-learning/

Weka have a variant of SVM called SMO, you can run libsvm via Weka to get the standard SVM http://weka.sourceforge.net/doc.dev/weka/classifiers/functions/SMO.html

Here is link to SVM on Java-ML http://java-ml.sourceforge.net/api/0.1.2/external/libsvm/svm.html

You can use Mahout to develop scalable implementation of your algorithms https://mahout.apache.org/users/classification/support-vector-machines.html

To create your own algorithm, you can start in native Java and create your Java classess similar to Java-ML, Weka or Spaklib / Mahout.

Log in to answer this question.