Common Parameter: casOptml

CASL Syntax

casOptml={
optmlOpt={
fConv=double
fConvWindow=64-bit-integer
gTol=double
maxEvals=64-bit-integer
maxIters=64-bit-integer
maxTime=double
regL1=double
regL2=double
},
sgdOpt={
adaptiveRate=TRUE | FALSE
commFreq=64-bit-integer
miniBatchSize=64-bit-integer
momentum=double
seed=64-bit-integer
useLocking=TRUE | FALSE
},
state={
checkpointFreq=64-bit-integer
saveBest=TRUE | FALSE
table={
caslib="string"
compress=TRUE | FALSE
label="string"
maxMemSize=64-bit-integer
name="table-name"
onDemand=TRUE | FALSE
promote=TRUE | FALSE
replace=TRUE | FALSE
replication=integer
timeStamp="string"
}
},
validate={
frequency=64-bit-integer
goal=double
stagnation=64-bit-integer
}
}

Parameter Descriptions

algorithm="HF" | "LBFGS" | "QUANEW" | "SGD"

Specifies the optimization solver to use, the default solver is LBFGS.

DefaultLBFGS
HF

Hessian free solver. (The Hessian free option is experimental in this release.)

LBFGS

Limited memory LBFGS solver.

QUANEW

Quasi-Newton solver.

SGD

SGD solver.

lbfgsOpt={lbfgsOptions}

LBFGS solver option set.

To simplify, you can specify only a value for the numCorrections parameter. In this case, the other parameters in the list use default values.

The lbfgsOptions value can be one or more of the following:
lineSearchMethod="ARMIJO" | "HYBRID" | "MORETHUENTE" | "STRONGWOLFE" | "WOLFE"

Specifies Line-search algorithms used in LBFGS solver.

DefaultMORETHUENTE
ARMIJO

Armijo backtracking line search method.

HYBRID

Hybrid line search method.

MORETHUENTE

More and Thuente line search method.

STRONGWOLFE

Line search method with strong wolfe condition.

WOLFE

Line search method with wolfe condition.

numCorrections=64-bit-integer

Specifies the number of corrections used in the LBFGS update.

Default20
Minimum value1
optmlOpt={optmlOptions}

Common option set.

To simplify, you can specify only a value for the regL1 parameter. In this case, the other parameters in the list use default values.

The optmlOptions value can be one or more of the following:
clipWeightMaxNorm=double

Specifies the value to rescale the weights when the L2-norm of the weights exceeds the value.

Default0
Minimum value0
fConv=double

Specifies a stopping value when the objective fails to change more than that value in at least fConvWindow iterations for LBFGS solver.

Default1e-05
Minimum value0
fConvWindow=64-bit-integer

Specifies an iteration window for application of fConv convergence criteria used by LBFGS solver.

Default1
Minimum value1
gTol=double

Specifies the stopping tolerance for the first-order optimality error.

Default1e-05
Minimum value0
maxEvals=64-bit-integer

Specifies the maximum number of function evaluations allowed for optimization.

Default0
Minimum value0
maxIters=64-bit-integer

Specifies the maximum iterations allowed for optimization.

Default10
Minimum value0
maxTime=double

Specifies the maximum time (in seconds) allowed for optimization,

Default0
Minimum value0
regL1=double

Specifies the L1 regularization parameter, the value must be nonnegative.

Default0
Minimum value0
regL2=double

Specifies the L2 regularization parameter, the value must be nonnegative.

Default0
Minimum value0
printOpt={optmlPrintOptions}

Print log and display output option set.

To simplify, you can specify only a value for the printLevel parameter. In this case, the other parameters in the list use default values.

The optmlPrintOptions value can be one or more of the following:
logLevel=64-bit-integer

Specifies output display level.

Default0
Minimum value0
printFreq=64-bit-integer

Specifies the frequency the iteration log is printed.

Default1
Minimum value1
printLevel="PRINTBASIC" | "PRINTDETAIL" | "PRINTNONE"

Specifies the level of verbosity of messages printed by the optimization algorithm.

DefaultPRINTBASIC
PRINTBASIC

Print basic message to the log.

PRINTDETAIL

Print detailed message to the log.

PRINTNONE

Disable printing.

sgdOpt={sgdOptions}

SGD solver option set.

To simplify, you can specify only a value for the learningRate parameter. In this case, the other parameters in the list use default values.

The sgdOptions value can be one or more of the following:
adaptiveRate=TRUE | FALSE

Specifies the adaptive rate parameter for SGD,

DefaultFALSE
annealingRate=double

Specifies the annealing parameter.

Default1e-06
Minimum value0
commFreq=64-bit-integer

Specifies the number of minibatches that each computational thread processes before weights are synchronized across all threads and nodes.

Minimum value0
learningRate=double

Specifies the learning rate parameter for SGD.

Default0.001
Minimum value0
miniBatchSize=64-bit-integer

Specifies the size of the minibatches used in SGD.

Default1
Minimum value1
momentum=double

Specifies the value for momentum for SGD.

Default0
Range0–1
seed=64-bit-integer

Specifies the seed for random access of observations on each thread for the SGD algorithm.

useLocking=TRUE | FALSE

If true, thread aggregation is performed using locks, otherwise, atomic (non-deterministic) operation.

DefaultFALSE
state={optmlState}

Save state option set.

To simplify, you can specify only a value for the table parameter. In this case, the other parameters in the list use default values.

The optmlState value can be one or more of the following:
checkpointFreq=64-bit-integer

Specifies the frequency of saving iteration state.

Default0
Minimum value0
saveBest=TRUE | FALSE

Specifies whether to save best solutions.

DefaultTRUE
table={casouttable}

Specifies save state table name.

To simplify, you can specify only a value for the name parameter. In this case, the other parameters in the list use default values.

caslib="string"

specifies the name of the caslib to use.

compress=TRUE | FALSE

when set to True, data compression is applied to the table.

DefaultFALSE
label="string"

specifies the descriptive label to associate with the table.

maxMemSize=64-bit-integer

specifies the maximum amount of physical memory, in bytes, to allocate for the table. After this threshold is reached, the server uses temporary files and operating system facilities for memory management.

TIPYou can enclose the value in quotation marks and specify B, K, M, G, or T as a suffix to indicate the units. For example, "8M" specifies eight megabytes.
name="table-name"

specifies the name to associate with the table.

onDemand=TRUE | FALSE

when set to True, table access is less aggressive with virtual memory use.

DefaultTRUE
promote=TRUE | FALSE

when set to True, the output table is added with a global scope. This enables other sessions to access the table, subject to access controls. The target caslib must also have a global scope.

DefaultFALSE
replace=TRUE | FALSE

specifies whether to overwrite an existing table with the same name.

DefaultFALSE
replication=integer

specifies the number of copies of the table to make for fault tolerance. Larger values result in slower performance and use more memory, but provide high availability for data in the event of a node failure.

Default1
Minimum value0
timeStamp="string"

specifies the timestamp to apply to the table. Specify the value in the form that is appropriate for your session locale.

validate={optmlValidate}

Validation option set.

To simplify, you can specify only a value for the frequency parameter. In this case, the other parameters in the list use default values.

The optmlValidate value can be one or more of the following:
frequency=64-bit-integer

Specifies how frequently (in epochs) that validation occurs.

Default0
Minimum value0
goal=double

Specifies a goal for the validation misclassification rate. When misclassification gets below this goal, the optimization will stop.

Default0
stagnation=64-bit-integer

Specifies a number of consecutive validations with increasing misclassification rates that are allowed before early termination of the optimization.

Default0
Minimum value0

Lua Syntax

casOptml={
optmlOpt={
fConv=double
fConvWindow=64-bit-integer
gTol=double
maxEvals=64-bit-integer
maxIters=64-bit-integer
maxTime=double
regL1=double
regL2=double
},
sgdOpt={
adaptiveRate=true | false
commFreq=64-bit-integer
miniBatchSize=64-bit-integer
momentum=double
seed=64-bit-integer
useLocking=true | false
},
state={
checkpointFreq=64-bit-integer
saveBest=true | false
table={
caslib="string"
compress=true | false
label="string"
maxMemSize=64-bit-integer
name="table-name"
onDemand=true | false
promote=true | false
replace=true | false
replication=integer
timeStamp="string"
}
},
validate={
frequency=64-bit-integer
goal=double
stagnation=64-bit-integer
}
}

Parameter Descriptions

algorithm="HF" | "LBFGS" | "QUANEW" | "SGD"

Specifies the optimization solver to use, the default solver is LBFGS.

DefaultLBFGS
HF

Hessian free solver. (The Hessian free option is experimental in this release.)

LBFGS

Limited memory LBFGS solver.

QUANEW

Quasi-Newton solver.

SGD

SGD solver.

lbfgsOpt={lbfgsOptions}

LBFGS solver option set.

To simplify, you can specify only a value for the numCorrections parameter. In this case, the other parameters in the list use default values.

The lbfgsOptions value can be one or more of the following:
lineSearchMethod="ARMIJO" | "HYBRID" | "MORETHUENTE" | "STRONGWOLFE" | "WOLFE"

Specifies Line-search algorithms used in LBFGS solver.

DefaultMORETHUENTE
ARMIJO

Armijo backtracking line search method.

HYBRID

Hybrid line search method.

MORETHUENTE

More and Thuente line search method.

STRONGWOLFE

Line search method with strong wolfe condition.

WOLFE

Line search method with wolfe condition.

numCorrections=64-bit-integer

Specifies the number of corrections used in the LBFGS update.

Default20
Minimum value1
optmlOpt={optmlOptions}

Common option set.

To simplify, you can specify only a value for the regL1 parameter. In this case, the other parameters in the list use default values.

The optmlOptions value can be one or more of the following:
clipWeightMaxNorm=double

Specifies the value to rescale the weights when the L2-norm of the weights exceeds the value.

Default0
Minimum value0
fConv=double

Specifies a stopping value when the objective fails to change more than that value in at least fConvWindow iterations for LBFGS solver.

Default1e-05
Minimum value0
fConvWindow=64-bit-integer

Specifies an iteration window for application of fConv convergence criteria used by LBFGS solver.

Default1
Minimum value1
gTol=double

Specifies the stopping tolerance for the first-order optimality error.

Default1e-05
Minimum value0
maxEvals=64-bit-integer

Specifies the maximum number of function evaluations allowed for optimization.

Default0
Minimum value0
maxIters=64-bit-integer

Specifies the maximum iterations allowed for optimization.

Default10
Minimum value0
maxTime=double

Specifies the maximum time (in seconds) allowed for optimization,

Default0
Minimum value0
regL1=double

Specifies the L1 regularization parameter, the value must be nonnegative.

Default0
Minimum value0
regL2=double

Specifies the L2 regularization parameter, the value must be nonnegative.

Default0
Minimum value0
printOpt={optmlPrintOptions}

Print log and display output option set.

To simplify, you can specify only a value for the printLevel parameter. In this case, the other parameters in the list use default values.

The optmlPrintOptions value can be one or more of the following:
logLevel=64-bit-integer

Specifies output display level.

Default0
Minimum value0
printFreq=64-bit-integer

Specifies the frequency the iteration log is printed.

Default1
Minimum value1
printLevel="PRINTBASIC" | "PRINTDETAIL" | "PRINTNONE"

Specifies the level of verbosity of messages printed by the optimization algorithm.

DefaultPRINTBASIC
PRINTBASIC

Print basic message to the log.

PRINTDETAIL

Print detailed message to the log.

PRINTNONE

Disable printing.

sgdOpt={sgdOptions}

SGD solver option set.

To simplify, you can specify only a value for the learningRate parameter. In this case, the other parameters in the list use default values.

The sgdOptions value can be one or more of the following:
adaptiveRate=true | false

Specifies the adaptive rate parameter for SGD,

Defaultfalse
annealingRate=double

Specifies the annealing parameter.

Default1e-06
Minimum value0
commFreq=64-bit-integer

Specifies the number of minibatches that each computational thread processes before weights are synchronized across all threads and nodes.

Minimum value0
learningRate=double

Specifies the learning rate parameter for SGD.

Default0.001
Minimum value0
miniBatchSize=64-bit-integer

Specifies the size of the minibatches used in SGD.

Default1
Minimum value1
momentum=double

Specifies the value for momentum for SGD.

Default0
Range0–1
seed=64-bit-integer

Specifies the seed for random access of observations on each thread for the SGD algorithm.

useLocking=true | false

If true, thread aggregation is performed using locks, otherwise, atomic (non-deterministic) operation.

Defaultfalse
state={optmlState}

Save state option set.

To simplify, you can specify only a value for the table parameter. In this case, the other parameters in the list use default values.

The optmlState value can be one or more of the following:
checkpointFreq=64-bit-integer

Specifies the frequency of saving iteration state.

Default0
Minimum value0
saveBest=true | false

Specifies whether to save best solutions.

Defaulttrue
table={casouttable}

Specifies save state table name.

To simplify, you can specify only a value for the name parameter. In this case, the other parameters in the list use default values.

caslib="string"

specifies the name of the caslib to use.

compress=true | false

when set to True, data compression is applied to the table.

Defaultfalse
label="string"

specifies the descriptive label to associate with the table.

maxMemSize=64-bit-integer

specifies the maximum amount of physical memory, in bytes, to allocate for the table. After this threshold is reached, the server uses temporary files and operating system facilities for memory management.

TIPYou can enclose the value in quotation marks and specify B, K, M, G, or T as a suffix to indicate the units. For example, "8M" specifies eight megabytes.
name="table-name"

specifies the name to associate with the table.

onDemand=true | false

when set to True, table access is less aggressive with virtual memory use.

Defaulttrue
promote=true | false

when set to True, the output table is added with a global scope. This enables other sessions to access the table, subject to access controls. The target caslib must also have a global scope.

Defaultfalse
replace=true | false

specifies whether to overwrite an existing table with the same name.

Defaultfalse
replication=integer

specifies the number of copies of the table to make for fault tolerance. Larger values result in slower performance and use more memory, but provide high availability for data in the event of a node failure.

Default1
Minimum value0
timeStamp="string"

specifies the timestamp to apply to the table. Specify the value in the form that is appropriate for your session locale.

validate={optmlValidate}

Validation option set.

To simplify, you can specify only a value for the frequency parameter. In this case, the other parameters in the list use default values.

The optmlValidate value can be one or more of the following:
frequency=64-bit-integer

Specifies how frequently (in epochs) that validation occurs.

Default0
Minimum value0
goal=double

Specifies a goal for the validation misclassification rate. When misclassification gets below this goal, the optimization will stop.

Default0
stagnation=64-bit-integer

Specifies a number of consecutive validations with increasing misclassification rates that are allowed before early termination of the optimization.

Default0
Minimum value0

Python Syntax

casOptml={
"optmlOpt":{
"fConv":double
"fConvWindow":64-bit-integer
"gTol":double
"maxEvals":64-bit-integer
"maxIters":64-bit-integer
"maxTime":double
"regL1":double
"regL2":double
},
"printOpt":{
"logLevel":64-bit-integer
"printFreq":64-bit-integer
},
"sgdOpt":{
"adaptiveRate":True | False
"annealingRate":double
"commFreq":64-bit-integer
"learningRate":double
"miniBatchSize":64-bit-integer
"momentum":double
"seed":64-bit-integer
"useLocking":True | False
},
"state":{
"checkpointFreq":64-bit-integer
"saveBest":True | False
"table":{
"caslib":"string"
"compress":True | False
"label":"string"
"maxMemSize":64-bit-integer
"name":"table-name"
"onDemand":True | False
"promote":True | False
"replace":True | False
"replication":integer
"timeStamp":"string"
}
},
"validate":{
"frequency":64-bit-integer
"goal":double
"stagnation":64-bit-integer
}
}

Parameter Descriptions

"algorithm":"HF" | "LBFGS" | "QUANEW" | "SGD"

Specifies the optimization solver to use, the default solver is LBFGS.

DefaultLBFGS
HF

Hessian free solver. (The Hessian free option is experimental in this release.)

LBFGS

Limited memory LBFGS solver.

QUANEW

Quasi-Newton solver.

SGD

SGD solver.

"lbfgsOpt"={lbfgsOptions}

LBFGS solver option set.

To simplify, you can specify only a value for the numCorrections parameter. In this case, the other parameters in the list use default values.

The lbfgsOptions value can be one or more of the following:
"lineSearchMethod":"ARMIJO" | "HYBRID" | "MORETHUENTE" | "STRONGWOLFE" | "WOLFE"

Specifies Line-search algorithms used in LBFGS solver.

DefaultMORETHUENTE
ARMIJO

Armijo backtracking line search method.

HYBRID

Hybrid line search method.

MORETHUENTE

More and Thuente line search method.

STRONGWOLFE

Line search method with strong wolfe condition.

WOLFE

Line search method with wolfe condition.

"numCorrections":64-bit-integer

Specifies the number of corrections used in the LBFGS update.

Default20
Minimum value1
"optmlOpt"={optmlOptions}

Common option set.

To simplify, you can specify only a value for the regL1 parameter. In this case, the other parameters in the list use default values.

The optmlOptions value can be one or more of the following:
"clipWeightMaxNorm":double

Specifies the value to rescale the weights when the L2-norm of the weights exceeds the value.

Default0
Minimum value0
"fConv":double

Specifies a stopping value when the objective fails to change more than that value in at least fConvWindow iterations for LBFGS solver.

Default1e-05
Minimum value0
"fConvWindow":64-bit-integer

Specifies an iteration window for application of fConv convergence criteria used by LBFGS solver.

Default1
Minimum value1
"gTol":double

Specifies the stopping tolerance for the first-order optimality error.

Default1e-05
Minimum value0
"maxEvals":64-bit-integer

Specifies the maximum number of function evaluations allowed for optimization.

Default0
Minimum value0
"maxIters":64-bit-integer

Specifies the maximum iterations allowed for optimization.

Default10
Minimum value0
"maxTime":double

Specifies the maximum time (in seconds) allowed for optimization,

Default0
Minimum value0
"regL1":double

Specifies the L1 regularization parameter, the value must be nonnegative.

Default0
Minimum value0
"regL2":double

Specifies the L2 regularization parameter, the value must be nonnegative.

Default0
Minimum value0
"printOpt"={optmlPrintOptions}

Print log and display output option set.

To simplify, you can specify only a value for the printLevel parameter. In this case, the other parameters in the list use default values.

The optmlPrintOptions value can be one or more of the following:
"logLevel":64-bit-integer

Specifies output display level.

Default0
Minimum value0
"printFreq":64-bit-integer

Specifies the frequency the iteration log is printed.

Default1
Minimum value1
"printLevel":"PRINTBASIC" | "PRINTDETAIL" | "PRINTNONE"

Specifies the level of verbosity of messages printed by the optimization algorithm.

DefaultPRINTBASIC
PRINTBASIC

Print basic message to the log.

PRINTDETAIL

Print detailed message to the log.

PRINTNONE

Disable printing.

"sgdOpt"={sgdOptions}

SGD solver option set.

To simplify, you can specify only a value for the learningRate parameter. In this case, the other parameters in the list use default values.

The sgdOptions value can be one or more of the following:
"adaptiveRate":True | False

Specifies the adaptive rate parameter for SGD,

DefaultFalse
"annealingRate":double

Specifies the annealing parameter.

Default1e-06
Minimum value0
"commFreq":64-bit-integer

Specifies the number of minibatches that each computational thread processes before weights are synchronized across all threads and nodes.

Minimum value0
"learningRate":double

Specifies the learning rate parameter for SGD.

Default0.001
Minimum value0
"miniBatchSize":64-bit-integer

Specifies the size of the minibatches used in SGD.

Default1
Minimum value1
"momentum":double

Specifies the value for momentum for SGD.

Default0
Range0–1
"seed":64-bit-integer

Specifies the seed for random access of observations on each thread for the SGD algorithm.

"useLocking":True | False

If true, thread aggregation is performed using locks, otherwise, atomic (non-deterministic) operation.

DefaultFalse
"state"={optmlState}

Save state option set.

To simplify, you can specify only a value for the table parameter. In this case, the other parameters in the list use default values.

The optmlState value can be one or more of the following:
"checkpointFreq":64-bit-integer

Specifies the frequency of saving iteration state.

Default0
Minimum value0
"saveBest":True | False

Specifies whether to save best solutions.

DefaultTrue
"table"={casouttable}

Specifies save state table name.

To simplify, you can specify only a value for the name parameter. In this case, the other parameters in the list use default values.

"caslib":"string"

specifies the name of the caslib to use.

"compress":True | False

when set to True, data compression is applied to the table.

DefaultFalse
"label":"string"

specifies the descriptive label to associate with the table.

"maxMemSize":64-bit-integer

specifies the maximum amount of physical memory, in bytes, to allocate for the table. After this threshold is reached, the server uses temporary files and operating system facilities for memory management.

TIPYou can enclose the value in quotation marks and specify B, K, M, G, or T as a suffix to indicate the units. For example, "8M" specifies eight megabytes.
"name":"table-name"

specifies the name to associate with the table.

"onDemand":True | False

when set to True, table access is less aggressive with virtual memory use.

DefaultTrue
"promote":True | False

when set to True, the output table is added with a global scope. This enables other sessions to access the table, subject to access controls. The target caslib must also have a global scope.

DefaultFalse
"replace":True | False

specifies whether to overwrite an existing table with the same name.

DefaultFalse
"replication":integer

specifies the number of copies of the table to make for fault tolerance. Larger values result in slower performance and use more memory, but provide high availability for data in the event of a node failure.

Default1
Minimum value0
"timeStamp":"string"

specifies the timestamp to apply to the table. Specify the value in the form that is appropriate for your session locale.

"validate"={optmlValidate}

Validation option set.

To simplify, you can specify only a value for the frequency parameter. In this case, the other parameters in the list use default values.

The optmlValidate value can be one or more of the following:
"frequency":64-bit-integer

Specifies how frequently (in epochs) that validation occurs.

Default0
Minimum value0
"goal":double

Specifies a goal for the validation misclassification rate. When misclassification gets below this goal, the optimization will stop.

Default0
"stagnation":64-bit-integer

Specifies a number of consecutive validations with increasing misclassification rates that are allowed before early termination of the optimization.

Default0
Minimum value0