SVMACHINE Procedure

AUTOTUNE Statement

  • AUTOTUNE <options>;

The AUTOTUNE statement searches for the best combination of values of the C, DEGREE, KERNEL_METHOD, RBFPARAMETER, REGL2, SIGMOIDPARAMETER1, and SIGMOIDPARAMETER2 hyperparameters. You cannot specify both the AUTOTUNE statement and the CROSSVALIDATION statement in the same procedure run.

Table 1 summarizes the options that you can specify in the AUTOTUNE statement. For more information about all options except the TUNINGPARAMETERS= option, see the option’s description in the section AUTOTUNE Statement in Chapter 2, Shared Concepts. The TUNINGPARAMETERS= option is described following table Table 1.

Note: Processing the AUTOTUNE statement is computationally expensive and requires a significant amount of time.

Table 1: AUTOTUNE Statement Options

Option Description
APPENDLOOKUP Specifies that the table specified in the HISTORYTABLE= option contain the rows from the table specified in the LOOKUPTABLE= option
CONSTRAINTS= Specifies the constraints on the output metrics
EVALHISTORY= Specifies how to report the evaluation history of the tuner
FOLDCOLUMN= Specifies the column in the data table in which the cross validation fold value is indicated
FRACTION= Specifies the fraction of observations to use for validation
HISTORYTABLE= Specifies the CAS table that contains the evaluation history
KFOLD= Specifies the number of folds for k-fold cross validation
LIVEUPDATE Specifies that the table specified in the HISTORYTABLE= option be updated at every evaluation
LOOKUPTABLE= Specifies the CAS table to use for evaluation lookup
MAXBAYES= Specifies the maximum number of points in the kriging model
MAXEVALS= Specifies the maximum number of evaluations
MAXITER= Specifies the maximum number of iterations when SEARCHMETHOD=GA or SEARCHMETHOD=BAYESIAN
MAXTIME= Specifies the maximum time for all iterations
MAXTRAINTIME= Specifies the maximum time for a model training
NCONVITER= Specifies the number of convergence iterations
NOGRIDSHUFFLE Requests that the grid points not be shuffled
NOLOCALSEARCH Disables local search optimization
NPARALLEL= Specifies the number of parallel sessions
NSUBSESSIONWORKERS= Specifies the number of workers in parallel sessions
OBJECTIVE= Specifies the objective function
POPSIZE= Specifies the population size when SEARCHMETHOD=GA or SEARCHMETHOD=BAYESIAN
SAMPLESIZE= Specifies the sample size when SEARCHMETHOD=LHS or SEARCHMETHOD=RANDOM
SEARCHMETHOD= Specifies the search method that the optimizer uses
SECONDOBJECTIVE= Specifies the second objective to use for tuning
SELECTINITPOINT Specifies that the tuner select the best evaluation from the lookup table
TARGETEVENT= Specifies the target event for ROC-based calculations
TRAINFRACTION= Specifies the fraction of observations to use for training
TUNINGPARAMETERS= Specifies the custom tuning parameters
USEPARAMETERS= Specifies how to handle the TUNINGPARAMETERS= option


TUNINGPARAMETERS=(suboption |…|<suboption>)
TUNEPARMS=(suboption |…|<suboption>)

specifies which options to tune and which ranges to tune over. If USEPARAMETERS=STANDARD, this option is ignored.

You can specify one or more of the following suboptions:

C (LB=number UB=number VALUES=value-list INIT=number EXCLUDE)

specifies the penalty values to be used when tuning the SVM model, where number or any value in value-list is a real number greater than 0. For more information, see the C= option in the PROC SVMACHINE statement.

You can specify the following additional suboptions:

LB=number

specifies the minimum penalty value to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=1E-10.

UB=number

specifies the maximum penalty value to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=100.

VALUES=value-list

specifies a list of penalty values to consider when tuning the SVM model, where value-list is a space-separated list of numbers greater than 0. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial penalty value for the tuner to use.

By default, INIT=1.

EXCLUDE

excludes the penalty suboption from the tuning process. If you specify this suboption, any specified LB=, UB=, VALUES=, and INIT= suboptions are ignored.

DEGREE (LB=number UB=number VALUES=value-list INIT=number EXCLUDE)

specifies the degree that is used in a polynomial kernel when tuning the SVM model, where number and values in the value-list can be 2 or 3. This suboption applies only to the polynomial SVM kernel. Therefore its value is shown as missing in the output tables when the value of the KERNEL_METHOD suboption is not POLYNOMIAL_IPOINT or POLYNOMIAL_ACTIVESET. If the number of model features is greater than 32, the DEGREE suboption is not tuned. Instead its value is set to 2 when the polynomial kernel is specified by the tuner. The number of model features is calculated as the number of interval inputs plus the sum of all levels of all the nominal inputs.

You can specify the following additional suboptions:

LB=number

specifies a lower bound of the degree to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=2.

UB=number

specifies an upper bound of the degree to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=3.

VALUES=value-list

specifies a list of values to consider for the degree in the kernel, where value-list is a space-separated list of numbers. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial degree of the kernel in the SVM model.

By default, INIT=2.

EXCLUDE

excludes the degree from the tuning process. If you specify this suboption, any specified LB=, UB=, VALUES=, and INIT= suboptions are ignored.

KERNEL_METHOD (VALUES=value-list INIT=value EXCLUDE)

specifies the combined values of the KERNEL and METHOD suboptions that are used when tuning the SVM model. The tuner uses the KERNEL_METHOD suboption instead of two separate suboptions, because the KERNEL and METHOD suboptions can be combined in only a few very specific combinations, and setting their values independently during the tuning would result in a large number of invalid combinations. For targets of nominal type, the value of the KERNEL_METHOD suboption is one of the following seven strings: LINEAR_IPOINT, POLYNOMIAL_IPOINT, LINEAR_CD, LINEAR_ACTIVESET, POLYNOMIAL_ACTIVESET, RBF_ACTIVESET, or SIGMOID_ACTIVESET. For targets of interval type, the value of the KERNEL_METHOD suboption is one of the following two strings: LINEAR_IPOINT or POLYNOMIAL_IPOINT. If the number of model features exceeds 100, the polynomial kernel is excluded from tuning. In that case the following values of the KERNEL_METHOD suboption are not used: POLYNOMIAL_IPOINT and POLYNOMIAL_ACTIVESET.

You can specify the following additional suboptions:

VALUES=value-list

specifies a list of values to consider for the KERNEL_METHOD suboption, where value-list is a space-separated list of strings.

INIT=value

specifies the initial value of the KERNEL_METHOD suboption.

By default, INIT=LINEAR_IPOINT.

EXCLUDE

excludes the KERNEL_METHOD suboption from the tuning process. If you specify this suboption, any specified VALUES= or INIT= suboptions are ignored.

RBFPARAMETER (LB=number UB=number VALUES=value-list INIT=number EXCLUDE)

specifies the RBFPARAMETER (K_PAR) suboption values to be used when tuning the SVM model, where number or any value in the value-list is a real number greater than 0. This suboption applies only to the RBF kernel. Therefore its value is shown as missing in the output tables when the value of the KERNEL_METHOD suboption is not RBF_ACTIVESET. For more information about the RBFPARAMETER (K_PAR) suboption, see the RBF option in the KERNEL statement.

You can specify the following additional suboptions:

LB=number

specifies the minimum RBFPARAMETER suboption value to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=0.1.

UB=number

specifies the maximum RBFPARAMETER suboption value to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=100.

VALUES=value-list

specifies a list of RBFPARAMETER suboption values to consider when tuning the SVM model, where value-list is a space-separated list of numbers greater than 0. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial RBFPARAMETER suboption value for the tuner to use.

By default, INIT=0.1.

EXCLUDE

excludes the RBFPARAMETER suboption from the tuning process. If you specify this suboption, any specified LB=, UB=, VALUES=, and INIT= suboptions are ignored.

REGL2 (LB=number UB=number VALUES=value-list INIT=number EXCLUDE)

specifies the REGL2 suboption values to be used when tuning the SVM model, where number or any value in the value-list is a real number greater than 0. For more information about this suboption, see the REGL2 section.

You can specify the following additional suboptions:

LB=number

specifies the minimum REGL2 suboption value to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=0.1.

UB=number

specifies the maximum REGL2 suboption value to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=100.

VALUES=value-list

specifies a list of REGL2 suboption values to consider when tuning the SVM model, where value-list is a space-separated list of numbers greater than 0. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial REGL2 suboption value for the tuner to use.

By default, INIT=0.1.

EXCLUDE

excludes the REGL2 suboption from the tuning process. If you specify this suboption, any specified LB=, UB=, VALUES=, and INIT= suboptions are ignored.

SIGMOIDPARAMETER1 (LB=number UB=number VALUES=value-list INIT=number EXCLUDE)

specifies the SIGMOIDPARAMETER1 (K_PAR1) suboption values to be used when tuning the SVM model, where number or any value in the value-list is a real number greater than 0. This suboption applies only to the sigmoid kernel. Therefore its value is shown as missing in the output tables when the value of the KERNEL_METHOD suboption is not SIGMOID_ACTIVESET. For more information about the SIGMOIDPARAMETER1 suboption, see the SIGMOID option in the KERNEL statement.

You can specify the following additional suboptions:

LB=number

specifies the minimum SIGMOIDPARAMETER1 suboption value to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=0.1.

UB=number

specifies the maximum SIGMOIDPARAMETER1 suboption value to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=10.

VALUES=value-list

specifies a list of SIGMOIDPARAMETER1 suboption values to consider when tuning the SVM model, where value-list is a space-separated list of numbers greater than 0. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial SIGMOIDPARAMETER1 suboption value for the tuner to use.

By default, INIT=0.1.

EXCLUDE

excludes the SIGMOIDPARAMETER1 suboption from the tuning process. If you specify this suboption, any specified LB=, UB=, VALUES=, and INIT= suboptions are ignored.

SIGMOIDPARAMETER2 (LB=number UB=number VALUES=value-list INIT=number EXCLUDE)

specifies the SIGMOIDPARAMETER2 (K_PAR2) suboption values to be used when tuning the SVM model, where number or any value in the value-list is a real number. This suboption applies only to the sigmoid kernel. Therefore its value is shown as missing in the output tables when the value of the KERNEL_METHOD suboption is not SIGMOID_ACTIVESET. For more information about the SIGMOIDPARAMETER2 suboption, see the SIGMOID option in the KERNEL statement.

You can specify the following additional suboptions:

LB=number

specifies the minimum SIGMOIDPARAMETER2 suboption value to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=–10.

UB=number

specifies the maximum SIGMOIDPARAMETER2 suboption value to consider when tuning the SVM model. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=–0.1.

VALUES=value-list

specifies a list of SIGMOIDPARAMETER2 suboption values to consider when you are tuning the SVM model, where value-list is a space-separated list of real numbers. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial SIGMOIDPARAMETER2 suboption value for the tuner to use.

By default, INIT=–0.1.

EXCLUDE

excludes the SIGMOIDPARAMETER2 suboption from the tuning process. If you specify this suboption, any specified LB=, UB=, VALUES=, or INIT= suboptions are ignored.

Last updated: September 04, 2026