>  Docs Center  >  ENVI API  >  Classification Framework  >  ENVICreateSVMClassifierTask

ENVICreateSVMClassifierTask

ENVICreateSVMClassifierTask

This task creates a Support Vector Machine (SVM) classifier. See Support Vector Machine Background for details on this algorithm.

This classifier should be used with the ENVICreateIterativeTrainerTask trainer. Set the MAXIMUM_ITERATIONS property to 1 in that task. In general, ENVI classifiers are updated by a trainer over a number of iterations. ENVICreateSVMClassifierTask, however, calls a previously existing algorithm that performs its own iterative loop. Setting the MAXIMUM_ITERATIONS keyword to 1 prevents the trainer from performing a redundant second iteration.

The following diagram shows a typical workflow where this task is used:

 

Note: SVM classification can take several hours to complete with training data that uses large regions of interest (ROIs).

Example


See Code Example: Support Vector Machine Classification using ENVITasks.

Syntax


Result = ENVITask('CreateSVMClassifier')

Input properties (Set, Get): CLASS_NAMES, KERNEL_BIAS, KERNEL_DEGREE, KERNEL_GAMMA, KERNEL_TYPE, NATTRIBUTES, NCLASSES, PENALTY, OUTPUT_CLASSIFIER_URI

Output properties (Get only): OUTPUT_CLASSIFIER

Properties marked as "Set" are those that you can set to specific values. You can also retrieve their current values any time. Properties marked as "Get" are those whose values you can retrieve but not set.

Methods


This task inherits the following methods from ENVITask:

AddParameter

Execute

Parameter

ParameterNames

RemoveParameter

Properties


This task inherits the following properties from ENVITask:

COMMUTE_ON_DOWNSAMPLE

COMMUTE_ON_SUBSET

DESCRIPTION

DISPLAY_NAME

NAME

REVISION

TAGS

This task also contains the following properties:

CLASS_NAMES (optional)

Specify a string array with the class names.

KERNEL_BIAS (optional)

Specify a bias term when KERNEL_TYPE is set to Polynomial or Sigmoid. The default value is 1.0.

KERNEL_DEGREE (optional)

Specify a value greater than or equal to 1, indicating the degree of the polynomial when KERNEL_TYPE is set to Polynomial. The default value is 2.

KERNEL_GAMMA (optional)

Specify a gamma term when KERNEL_TYPE is set to Polynomial, Radial Basis Function, or Sigmoid. The default value is 1 / NATTRIBUTES, but the optimal value for any particular classifier is highly variable and will likely need to be adjusted. You should perform a grid search for parameter selection as described in Hsu, Chang, and Lin (2010).

KERNEL_TYPE (optional)

Set this keyword to one of the following strings to indicate the kernel type:

  • Linear
  • Polynomial
  • Radial Basis Function (default)
  • Sigmoid

NATTRIBUTES (required)

Specify the number of attributes that the input data will be required to have.

NCLASSES (required)

Specify the number of unique classes that the classifier will have.

PENALTY (optional)

Specify a value indicating the penalty parameter. The default value is 100.0. The optimal value for any particular classifier is highly variable and will most likely need to be adjusted. You should perform a grid search for parameter selection as described in Hsu, Chang, and Lin (2010).

OUTPUT_CLASSIFIER

This is a reference to the initialized ENVISVMClassifier object.

OUTPUT_CLASSIFIER_URI (optional)

Specify a string with the fully qualified filename and path of the output object. If you do not specify this property, the output object (.epo) is only temporary. Once ENVI is closed, it deletes the temporary file. Restore the object later using ENVIRestoreObject.ENVISVMClassifier is a persistable object that can be saved and restored.

Version History


ENVI 5.4

Introduced

API Version


3.3

See Also


ENVITask, ENVISVMClassifier, ENVICreateSoftmaxRegressionClassifierTask, ENVIRestoreObject

 



© 2019 Harris Geospatial Solutions, Inc. |  Legal
My Account    |    Store    |    Contact Us