new Updater()
Class used to perform steps (weight update) using Gradient Descent methods.
For general minimization problems, or for regularized problems of the form min L(w) + regParam * R(w),
the compute function performs the actual update step, when given some (e.g. stochastic) gradient direction
for the loss L(w), and a desired step-size (learning rate).The updater is responsible to also perform the
update coming from the regularization term R(w) (if any regularization is used).
Methods
(abstract) compute(weightsOld, gradient, stepSize, iter, regParam) → {module:eclairjs.Tuple2}
Compute an updated value for weights given the gradient, stepSize, iteration number and regularization parameter.
Also returns the regularization value regParam * R(w) computed using the *updated* weights.
Parameters:
Name | Type | Description |
---|---|---|
weightsOld |
module:eclairjs/mllib/linalg.Vector | - Column matrix of size dx1 where d is the number of features. |
gradient |
module:eclairjs/mllib/linalg.Vector | - Column matrix of size dx1 where d is the number of features. |
stepSize |
float | - step size across iterations |
iter |
integer | - Iteration number |
regParam |
float | - Regularization parameter |
Returns:
A tuple of 2 elements. The first element is a column matrix containing updated weights,
and the second element is the regularization value computed using updated weights.