views:

1832

answers:

6

Hi all,

I have been trying to grasp the basics of Support Vector Machines, and downloaded and read many online articles. But still am not able to grasp it.

I would like to know, if there are some

  • nice tutorial
  • sample code which can be used for understanding

or something, that you can think of, and that will enable me to learn SVM Basics easily.

PS: I somehow managed to learn PCA (Principal Component Analysis). BTW, you guys would have guessed that I am working on Machine Learning.

+3  A: 

A practical guide to SVM classification for libsvm
PyML Tutorial for PyML I think [1] is practical for use, [3] is clear for understanding.

sunqiang
+9  A: 

The standard recommendation for a tutorial in SVMs is A Tutorial on Support Vector Machines for Pattern Recognition by Christopher Burges. Another good place to learn about SVMs is the Machine Learning Course at Stanford (SVMs are covered in lectures 6-8). Both these are quite theoretical and heavy on the maths.

As for source code; SVMLight, libsvm and TinySVM are all open-source, but the code is not very easy to follow. I haven't looked at each of them very closely, but the source for TinySVM is probably the is easiest to understand.

StompChicken
I only wish I can give you 2 up-votes. A very nice tutorial, I am already on my way ... thanks.
Alphaneo
+1  A: 

Assuming you know the basics (eg max margin classifiers, constructing a kernel), solve Problem Set 2 (handout #5) of that stanford machine learning course. There's answer keys & he holds your hand through the whole process. Use Lecture notes 3 & video #7-8 as references.

If you don't know the basics, watch earlier videos.

MercerKernel
+3  A: 

I would grab a copy of R, install the e1071 package which nicely wraps libsvm, and try to get good results on your favorite data sets.

If you just figured out PCA, it might be informative to look at data with many more predictors than cases (e.g., microarray gene expression profiles, time series, spectra from analytical chemistry, etc.) and compare linear regression on the PCA'd predictors with SVM on the raw predictors.

There are a lot of great references in the other answers, but I think there's value in playing around with the black box before you read what's inside.

othercriteria
I agree, it good to "play with the black box before poking into the basics" ...
Alphaneo
+3  A: 

Lots of video lectures on SVM:
http://videolectures.net/Top/Computer_Science/Machine_Learning/Kernel_Methods/Support_Vector_Machines/

I found the one by Colin Campbell to be very useful.

Amro
+1  A: 

This is a very good beginner's tutorial on SVM:

http://www.tristanfletcher.co.uk/SVM%20Explained.pdf

I always thought StompChicken's recommended tutorial was a bit confusing in the way that they jump right into talking about bounds and VC statistics and trying to find the optimal machine and such. It's good if you already understand the basics, though.

temp2290