Tutorial – Support Vector Machine
8 Dec 2010
Support Vector Machine (SVM) is a very popular technique for data classification. It finds the
optimal separation boundary by searching the maximum margin between the classes.
To make the computer artificial intelligent, we would like the computer to be able to classify
things into different categories. The first job is to teach the computer what the target objects
are. We usually take the discriminative attributes of the target objects first, such as colour,
shape, regions in computer vision. The extracted data will form a data set called training set.
SVM will take the training set for a supervised learning and find the optimal boundary to
separate different classes.
The next job is to classify new coming data. This step is usually called testing. A new coming
sample will be classified into a class by judging what side of the boundary the sample point sits
1. read libsvm website and download the libsvm
2. scale the training set and testing set by svm-scale.exe
svm-scale.exe -l -1 -u 1 -s range train.avi_dataset_dim_576.libsvm > train.scaled
svm-scale.exe -r range test.avi_dataset_dim_576.libsvm > test.scaled
3. train SVM
svm-predict.exe test.scaled train.scaled.model predict.txt > result.txt
5. for more details, read “a practical guide to svm classification” pdf file