GPREG Procedure

AUTOTUNE Statement

  • AUTOTUNE <options>;

The AUTOTUNE statement searches for the best combination of some option values in the PROC GPREG, KERNEL, and OPTIMIZATION statement.

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:

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

specifies the optimization algorithm. You can specify the following additional suboptions:

VALUES=value-list

specifies a list of algorithm types to use in the tuning process, where value-list is a space-separated list of ADAM and SGD.

INIT=ADAM|SGD

specifies the initial algorithm type in the tuning process.

By default, INIT=SGD.

EXCLUDE

excludes the algorithm type from the tuning process. If you specify this suboption, the VALUES= and INIT= suboptions are ignored.

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

uses automatic relevance determination in the kernel function. You can specify the following additional suboptions:

VALUES=value-list

specifies a list of values to use in the tuning process, where value-list is a space-separated list of FALSE and TRUE.

INIT=FALSE|TRUE

specifies the initial automatic relevance determination value in the tuning process.

By default, INIT=FALSE.

EXCLUDE

excludes the automatic relevance determination from the tuning process. If you specify this suboption, the VALUES= and INIT= suboptions are ignored.

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

specifies the maximum number of iterations for jitter Cholesky decomposition.

You can specify the following additional suboptions:

LB=number

specifies the minimum jitter iterations to use in the tuning process, where number is a nonnegative integer. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=5.

UB=number

specifies the maximum jitter iterations to use in the tuning process, where number is a nonnegative integer. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=15.

VALUES=value-list

specifies a list of jitter iterations to use in the tuning process, where value-list is a space-separated list of nonnegative integers. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial jitter iterations in the tuning process.

By default, INIT=10.

EXCLUDE

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

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

specifies the kernel type to be used in the Gaussian process. For more information about the available kernel types, see the section KERNEL Statement. You can specify the following additional suboptions:

VALUES=value-list

specifies a list of kernel types to use in the tuning process, where value-list is a space-separated list of LINEAR, MATERN32, MATERN52, PERIODIC, and RBF.

INIT=LINEAR|MATERN32|MATERN52|PERIODIC|RBF

specifies the initial kernel type in the tuning process.

By default, INIT=RBF.

EXCLUDE

excludes the kernel from the tuning process. If you specify this suboption, the VALUES= and INIT= suboptions are ignored.

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

specifies the learning rate parameter that the optimizaton algorithm uses.

You can specify the following additional suboptions:

LB=number

specifies the minimum learning rate to use in the tuning process, where number is a nonnegative double. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=1E-7.

UB=number

specifies the maximum learning rate to use in the tuning process, where number is a nonnegative double. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=2.

VALUES=value-list

specifies a list of learning rate to use in the tuning process, where value-list is a space-separated list of nonnegative doubles. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial learning rate in the tuning process.

By default, INIT=1E-3.

EXCLUDE

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

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

specifies the value for size of the minibatch in the gradient descent.

You can specify the following additional suboptions:

LB=number

specifies the minimum minibatch size to use in the tuning process, where number is a nonnegative integer. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=1.

UB=number

specifies the maximum minibatch size to use in the tuning process, where number is a nonnegative integer. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=64.

VALUES=value-list

specifies a list of minibatch sizes to use in the tuning process, where value-list is a space-separated list of nonnegative integers. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial minibatch size in the tuning process.

By default, INIT=1.

EXCLUDE

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

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

specifies the value for momentum in the optimization.

You can specify the following additional suboptions:

LB=number

specifies the minimum momentum to use in the tuning process, where number is a nonnegative double. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=0.

UB=number

specifies the maximum momentum to use in the tuning process, where number is a nonnegative double. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=0.99.

VALUES=value-list

specifies a list of momentum to use in the tuning process, where value-list is a space-separated list of nonnegative doubles. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the momentum rate in the tuning process.

By default, INIT=0.1.

EXCLUDE

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

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

specifies the number of inducing points in the Gaussian process.

You can specify the following additional suboptions:

LB=number

specifies the minimum number of inducing points to use in the tuning process, where number is a nonnegative integer. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=25.

UB=number

specifies the maximum number of inducing points to use in the tuning process, where number is a nonnegative integer. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=150.

VALUES=value-list

specifies a list of number of inducing points to use in the tuning process, where value-list is a space-separated list of nonnegative integers. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial number of inducing points in the tuning process.

By default, INIT=100.

EXCLUDE

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

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

specifies the rate at which the second moment of the gradient is decayed. You can specify the following additional suboptions:

LB=number

specifies the minimum adaptive decay to use in the tuning process, where number is a nonnegative double. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, LB=0.

UB=number

specifies the maximum adaptive decay to use in the tuning process, where number is a nonnegative double. If you specify this suboption, you cannot specify the VALUES= suboption.

By default, UB=0.99.

VALUES=value-list

specifies a list of adaptive decays to use in the tuning process, where value-list is a space-separated list of nonnegative doubles. If you specify this suboption, you cannot specify either the LB= or UB= suboption.

INIT=number

specifies the initial adaptive decay in the tuning process.

By default, INIT=0.95.

EXCLUDE

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

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

uses an adaptive learning rate in the gradient descent. You can specify the following additional suboptions:

VALUES=value-list

specifies a list of values to use in the tuning process, where value-list is a space-separated list of the values FALSE and TRUE.

INIT=FALSE|TRUE

specifies the initial adaptive rate value in the tuning process.

By default, INIT=FALSE.

EXCLUDE

excludes the adaptive rate from the tuning process. If you specify this suboption, the VALUES= and INIT= suboptions are ignored.

Last updated: October 13, 2026