FACTMAC Procedure

AUTOTUNE Statement

  • AUTOTUNE <options>;

The AUTOTUNE statement searches for the best combination of values of the NFACTORS=, LEARNSTEP=, and MAXITER= options in the PROC FACTMAC statement. You cannot specify both the OUTPUT and AUTOTUNE statements in the same run of PROC FACTMAC. You cannot specify both the AUTOTUNE statement and the CROSSVALIDATION statement in the same run of PROC FACTMAC.

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

Table 2: 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 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:

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

specifies information about the number of factors to use for tuning the factorization machine model. For more information, see the NFACTORS= option in the PROC FACTMAC statement.

You can specify the following additional suboptions:

LB=number

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

By default, LB=5.

UB=number

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

By default, UB=30.

VALUES=value-list

specifies a list of values to consider for the number of factors during tuning, where value-list is a space-separated list of integer numbers greater than or equal to 1. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

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

By default, INIT=5.

EXCLUDE

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

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

specifies information about the learning step to use for tuning the factorization machine model. For more information, see the LEARNSTEP= option in the PROC FACTMAC statement.

You can specify the following additional suboptions:

LB=number

specifies the minimum learning step to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=0.001.

UB=number

specifies the maximum learning step to consider during tuning. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=1.

VALUES=value-list

specifies a list of learning steps to consider during tuning, 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 learning step for the tuner to use.

By default, INIT=0.001.

EXCLUDE

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

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

specifies information about the maximum number of iterations to use for tuning the factorization machine model. For more information, see the MAXITER= option in the PROC FACTMAC statement.

You can specify the following additional suboptions:

LB=number

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

By default, LB=10.

UB=number

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

By default, UB=200.

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 iterations for the tuner to use.

By default, INIT=30.

EXCLUDE

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

Last updated: August 06, 2026