Check if the input control parameters are allowed and set them to default values if they are not. Returns a list of well-defined control parameters.
set.control.block.sgd(
normalize = TRUE,
maxiter = 1000,
eps = 1e-08,
nafill = 10,
tol = 1e-08,
size = c(100, 100),
burn = 1,
rate0 = 0.01,
decay = 0.01,
damping = 0.001,
rate1 = 0.1,
rate2 = 0.01,
verbose = FALSE,
frequency = 250,
progress = FALSE
)
A list
of control parameters for the adaptive SGD algorithm with block-wise sub-sampling
if TRUE
, normalize U
and V
to uncorrelated Gaussian U
and upper triangular V
with positive diagonal
maximum number of iterations
how much shrinkage has to be introduced on extreme predictions lying outside of the data range
how frequently the NA
values are filled, by default NA
values are filled at each iteration of the algorithm
tolerance threshold for the stopping criterion
mini-batch size, the first value is for row sub-sample, the second value is for column sub-sample
percentage of iterations to ignore before performing Polyak averaging
initial learning rate
learning rate decay
regularization parameter which is added to the Hessian to ensure numerical stability
exponential decay rate for the moment estimate of the gradient
exponential decay rate for the moment estimate of the Hessian
if TRUE
, print the optimization status
how often the optimization status is printed (only if verbose=TRUE
)
if TRUE
, print a compact progress-bar instead of a full-report of the optimization status (only if verbose=TRUE
)
library(sgdGMF)
# Empty call
set.control.block.sgd()
# Parametrized call
set.control.block.sgd(maxiter = 2000, rate0 = 0.01, decay = 0.01)
Run the code above in your browser using DataLab