public class LBFGS extends Object implements Optimizer, Logging
http://en.wikipedia.org/wiki/Limited-memory_BFGS
Constructor and Description |
---|
LBFGS(Gradient gradient,
Updater updater) |
Modifier and Type | Method and Description |
---|---|
Vector |
optimize(RDD<scala.Tuple2<Object,Vector>> data,
Vector initialWeights)
Solve the provided convex optimization problem.
|
static scala.Tuple2<Vector,double[]> |
runLBFGS(RDD<scala.Tuple2<Object,Vector>> data,
Gradient gradient,
Updater updater,
int numCorrections,
double convergenceTol,
int maxNumIterations,
double regParam,
Vector initialWeights)
Run Limited-memory BFGS (L-BFGS) in parallel.
|
LBFGS |
setConvergenceTol(double tolerance)
Set the convergence tolerance of iterations for L-BFGS.
|
LBFGS |
setGradient(Gradient gradient)
Set the gradient function (of the loss function of one single data example)
to be used for L-BFGS.
|
LBFGS |
setMaxNumIterations(int iters)
Deprecated.
use
setNumIterations(int) instead |
LBFGS |
setNumCorrections(int corrections)
Set the number of corrections used in the LBFGS update.
|
LBFGS |
setNumIterations(int iters)
Set the maximal number of iterations for L-BFGS.
|
LBFGS |
setRegParam(double regParam)
Set the regularization parameter.
|
LBFGS |
setUpdater(Updater updater)
Set the updater function to actually perform a gradient step in a given direction.
|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
initialized, initializeIfNecessary, initializeLogging, initLock, isTraceEnabled, log_, log, logDebug, logDebug, logError, logError, logInfo, logInfo, logName, logTrace, logTrace, logWarning, logWarning
public static scala.Tuple2<Vector,double[]> runLBFGS(RDD<scala.Tuple2<Object,Vector>> data, Gradient gradient, Updater updater, int numCorrections, double convergenceTol, int maxNumIterations, double regParam, Vector initialWeights)
data
- - Input data for L-BFGS. RDD of the set of data examples, each of
the form (label, [feature values]).gradient
- - Gradient object (used to compute the gradient of the loss function of
one single data example)updater
- - Updater function to actually perform a gradient step in a given direction.numCorrections
- - The number of corrections used in the L-BFGS update.convergenceTol
- - The convergence tolerance of iterations for L-BFGSmaxNumIterations
- - Maximal number of iterations that L-BFGS can be run.regParam
- - Regularization parameter
public LBFGS setNumCorrections(int corrections)
public LBFGS setConvergenceTol(double tolerance)
public LBFGS setMaxNumIterations(int iters)
setNumIterations(int)
insteadpublic LBFGS setNumIterations(int iters)
public LBFGS setRegParam(double regParam)
public LBFGS setGradient(Gradient gradient)
public LBFGS setUpdater(Updater updater)