The FOREST Procedure

AUTOTUNE Statement

  • AUTOTUNE <options>;

The AUTOTUNE statement searches for the best combination of values of the INBAGFRACTION=, MAXDEPTH=, MINLEAFSIZE=, NUMBIN=, NTREES=, and VARS_TO_TRY= options in the PROC FOREST statement. You cannot specify both the AUTOTUNE statement and the CROSSVALIDATION statement in the same procedure run.

Table 3 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 3.

Table 3: 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
EVALHISTORY= Specifies how to report the evaluation history of the tuner
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 parameters 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:

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

specifies information about the fraction of the training data to use for each bagged tree while tuning the forest model. For more information, see the INBAGFRACTION= option in the PROC FOREST statement.

You can specify the following additional suboptions:

LB=number

specifies the minimum fraction of training data to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=0.1.

UB=number

specifies the maximum fraction of training data to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=0.9.

VALUES=value-list

specifies a list of fractions of training data to consider during tuning, where value-list is a space-separated list of numbers greater than 0 and less than or equal to 1. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial fraction of training data for the tuner to use.

By default, INIT=0.6.

EXCLUDE

excludes the fraction of the training data to use for each bagged tree from the tuning process. If you specify this suboption, any specified LB=, UB=, VALUES=, and INIT= suboptions are ignored.

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

specifies information about the maximum depth to which to grow the trees in the forest. For more information, see the MAXDEPTH= option in the PROC FOREST statement.

You can specify the following additional suboptions:

LB=number

specifies a lower bound on the maximum depth to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=1.

UB=number

specifies an upper bound on the maximum depth to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=29.

VALUES=value-list

specifies a list of values to consider for the maximum depth of the trees in the forest, 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 maximum depth of trees in the forest.

By default, INIT=20.

EXCLUDE

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

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

specifies information about tuning the leaf size option for training the decision tree. This option is not tuned by default. If it is specified without any suboptions, then tuning uses the following values: 1, 5, 10, 20, 40, 80, 160, 320. For more information, see the MINLEAFSIZE= option in the PROC FOREST statement.

You can specify the following additional suboptions:

LB=number

specifies the minimum leaf size value to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=1.

UB=number

specifies the maximum leaf size value to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=320.

VALUES=value-list

specifies a list of leaf size values to consider during tuning, where value-list is a space-separated list of positive integers. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial leaf size for the tuner to use.

By default, INIT=5.

EXCLUDE

excludes the leaf size from the tuning process.

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

specifies information about the number of bins in which to bin the interval inputs while tuning the decision tree. For more information, see the NUMBIN= option in the PROC FOREST statement.

You can specify the following additional suboptions:

LB=number

specifies the minimum number of bins to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=20.

UB=number

specifies the maximum number of bins to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=100.

VALUES=value-list

specifies a list of numbers of bins to consider during tuning, where value-list is a space-separated list of positive integers. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial number of bins for the tuner to use.

By default, INIT=50.

EXCLUDE

excludes the number of bins from the tuning process.

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

specifies information about the number of trees in the forest to use for tuning the forest model. For more information, see the NTREES= option in the PROC FOREST statement.

You can specify the following additional suboptions:

LB=number

specifies the minimum number of trees to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=20.

UB=number

specifies the maximum number of trees to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=150.

VALUES=value-list

specifies a list of numbers of trees to consider during tuning, where value-list is a space-separated list of positive integers. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial number of trees for the tuner to use.

By default, INIT=100.

EXCLUDE

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

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

specifies information about the number of variables to consider at each split during tree growth while tuning the forest model. For more information, see the VARS_TO_TRY= option in the PROC FOREST statement.

You can specify the following additional suboptions:

LB=number

specifies the minimum number of variables to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=1.

UB=number

specifies the maximum number of variables to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=min(n,100), where n is the total number of input variables.

VALUES=value-list

specifies a list of numbers of variables to consider during tuning, where value-list is a space-separated list of positive integers. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial number of variables for the tuner to use.

By default, INIT is the square root of the number of the input variables, rounded up.

EXCLUDE

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

Last updated: November 11, 2020