NAME
pkoptsvm - program to optimize parameters for SVM classification
SYNOPSIS
FCpkoptsvmF[0] FC-tF[0] training [options] [advanced options]
DESCRIPTION
pkoptsvm The support vector machine depends on several parameters. Ideally, these parameters should be optimized for each classification problem. In case of a radial basis kernel function, two important parameters are {cost} and {gamma}. The utility pkoptsvm can optimize these two parameters, based on an accuracy assessment (the Kappa value). If an input test set (FC-iF[0]) is provided, it is used for the accuracy assessment. If not, the accuracy assessment is based on a cross validation (FC-cvF[0]) of the training sample.
The optimization routine uses a grid search. The initial and final values of the parameters can be set with FC-ccF[0] startvalue FC-ccF[0] endvalue and FC-gF[0] startvalue FC-gF[0] endvalue for cost and gamma respectively. The search uses a multiplicative step for iterating the parameters (set with the options FC-stepccF[0] and FC-stepgF[0]). An often used approach is to define a relatively large multiplicative step first (e.g 10) to obtain an initial estimate for both parameters. The estimate can then be optimized by defining a smaller step (>1) with constrained start and end values for the parameters cost and gamma.
OPTIONS
- FC-tF[0] filename, FC--trainingF[0] filename
-
training vector file. A single vector file contains all training features (must be set as: b0, b1, b2,...) for all classes (class numbers identified by label option).
- FC-iF[0] filename, FC--inputF[0] filename
-
input test vector file
- FC-ccF[0] startvalue FC-ccF[0] endvalue, FC--ccostF[0] startvalue FC--ccostF[0] endvalue
-
min and max boundaries the parameter C of C-SVC, epsilon-SVR, and nu-SVR (optional: initial value)
- FC-gF[0] startvalue FC-gF[0] endvalue, FC--gammaF[0] startvalue FC--gammaF[0] endvalue
-
min max boundaries for gamma in kernel function (optional: initial value)
- FC-stepF[0] stepsize, FC--stepF[0] stepsize
-
multiplicative step for ccost and gamma in GRID search
- FC-vF[0] level, FC--verboseF[0] level
-
use 1 to output intermediate results for plotting
Advanced options
- FC-tlnF[0] layer, FC--tlnF[0] layer
-
training layer name(s)
- FC-labelF[0] attribute, FC--labelF[0] attribute
-
identifier for class label in training vector file. (default: label)
- FC-balF[0] size, FC--balanceF[0] size
-
balance the input data to this number of samples for each class (default: 0)
- FC-randomF[0], FC--randomF[0]
-
in case of balance, randomize input data
- FC-minF[0] number, FC--minF[0] number
-
if number of training pixels is less then min, do not take this class into account
- FC-bF[0] band, FC--bandF[0] band
-
band index (starting from 0, either use band option or use start to end)
- FC-sbandF[0] band, FC--startbandF[0] band
-
start band sequence number
- FC-ebandF[0] band, FC--endbandF[0] band
-
end band sequence number
- FC-offsetF[0] value, FC--offsetF[0] value
-
offset value for each spectral band input features: FCrefl[band]=(DN[band]-offset[band])/scale[band]F[0]
- FC-scaleF[0] value, FC--scaleF[0] value
-
scale value for each spectral band input features: FCrefl=(DN[band]-offset[band])/scale[band]F[0] (use FC0F[0] if scale min and max in each band to FC-1.0F[0] and FC1.0F[0])
- FC-svmtF[0] type, FC--svmtypeF[0] type
-
type of SVM (C_SVC, nu_SVC,one_class, epsilon_SVR, nu_SVR)
- FC-ktF[0] type, FC--kerneltypeF[0] type
-
type of kernel function (linear,polynomial,radial,sigmoid)
- FC-kdF[0] value, FC--kdF[0] value
-
degree in kernel function
- FC-c0F[0] value, FC--coef0F[0] value
-
coef0 in kernel function
- FC-nuF[0] value, FC--nuF[0] value
-
the parameter nu of nu-SVC, one-class SVM, and nu-SVR
- FC-elossF[0] value, FC--elossF[0] value
-
the epsilon in loss function of epsilon-SVR
- FC-cacheF[0] number, FC--cacheF[0] number
-
cache memory size in MB (default: 100)
- FC-etolF[0] value, FC--etolF[0] value
-
the tolerance of termination criterion (default: 0.001)
- FC-shrinkF[0], FC--shrinkF[0]
-
whether to use the shrinking heuristics
- FC-cvF[0] value, FC--cvF[0] value
-
n-fold cross validation mode (default: 0)
- FC-cfF[0], FC--cfF[0]
-
use Overall Accuracy instead of kappa
- FC-maxitF[0] number, FC--maxitF[0] number
-
maximum number of iterations
- FC-tolF[0] value, FC--toleranceF[0] value
-
relative tolerance for stopping criterion (default: 0.0001)
- FC-aF[0] value, FC--algorithmF[0] value
-
GRID, or any optimization algorithm from http://ab-initio.mit.edu/wiki/index.php/NLopt_Algorithms
- FC-cF[0] name, FC--classF[0] name
-
list of class names.
- FC-rF[0] value, FC--reclassF[0] value
-
list of class values (use same order as in FC--classF[0] option).