Support Vector Machine Classification |
![]() |
A Support
Vector Machine (SVM) is a classification and regression technique based on
statistical learning theory that has been proved very effective in solving
complex classification problems in many different application domains. The
success of SVMs is due to the important properties of this approach, which
integrated with the effectiveness of the classification procedure and the
elegance of the theoretical developments, result in a very solid classification
methodology in many different remote sensing data analyses domains.
SVM focuses
classification decisions on the boundary between classes and not on mean and
variances of classes. The SVM attempts to divide the feature space using a
hyperplane such that each class will reside entirely on its own side of the
plane. Using a kernel function, SVMs map the input space of independent
variables to a higher dimensional space where complex nonlinear decision
boundaries between classes become linear. Popular kernel functions include
linear, polynomial, radial basis, and sigmoid. SVM Regression is used to define
a real-valued output function given the independent input variables. SVM
Regression applies the concept of a ε-insensitive loss function that ignores point
errors within a distance of ε from the true value by weighting them with zero.
The solution is obtained through a small subset of training points and the
support vectors (vectors from points nearest to decision boundary) contain all
the required information to define the function and results in extremely
efficient algorithms.
All input
parameters should be scaled to have zero mean and unit variance before
training.
Classification
accuracy can be measured using stratified 10-fold cross-validation wherein the
data are randomly split into ten different groups, or folds, each containing an
approximately equal number of valid and invalid samples. The SVM is run ten
times, using each fold once for testing, and the remaining nine folds for
training.