Klasse QNMinimizer
java.lang.Object
opennlp.tools.ml.maxent.quasinewton.QNMinimizer
Implementation of L-BFGS which supports L1-, L2-regularization
and Elastic Net for solving convex optimization problems.
Usage example:
// Quadratic function f(x) = (x-1)^2 + 10 // f obtains its minimum value 10 at x = 1 Function f = new Function() { @Override public int getDimension() { return 1; } @Override public double valueAt(double[] x) { return StrictMath.pow(x[0]-1, 2) + 10; } @Override public double[] gradientAt(double[] x) { return new double[] { 2*(x[0]-1) }; } }; QNMinimizer minimizer = new QNMinimizer(); double[] x = minimizer.minimize(f); double min = f.valueAt(x);
-
Verschachtelte Klassen - Übersicht
Verschachtelte KlassenModifizierer und TypKlasseBeschreibungstatic interface
Evaluate quality of training parameters.static class
L2-regularized objectiveFunction
. -
Feldübersicht
FelderModifizierer und TypFeldBeschreibungstatic final double
static final double
static final double
static final double
static final int
static final int
static final double
static final int
static final double
-
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungInitializes aQNMinimizer
with default parameters.QNMinimizer
(double l1Cost, double l2Cost) Initializes aQNMinimizer
.QNMinimizer
(double l1Cost, double l2Cost, int iterations) Initializes aQNMinimizer
.QNMinimizer
(double l1Cost, double l2Cost, int iterations, int m, int maxFctEval) Initializes aQNMinimizer
. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungdouble[]
Finds the parameters that minimize the objective function.void
setEvaluator
(QNMinimizer.Evaluator evaluator)
-
Felddetails
-
CONVERGE_TOLERANCE
public static final double CONVERGE_TOLERANCE- Siehe auch:
-
REL_GRAD_NORM_TOL
public static final double REL_GRAD_NORM_TOL- Siehe auch:
-
INITIAL_STEP_SIZE
public static final double INITIAL_STEP_SIZE- Siehe auch:
-
MIN_STEP_SIZE
public static final double MIN_STEP_SIZE- Siehe auch:
-
L1COST_DEFAULT
public static final double L1COST_DEFAULT- Siehe auch:
-
L2COST_DEFAULT
public static final double L2COST_DEFAULT- Siehe auch:
-
NUM_ITERATIONS_DEFAULT
public static final int NUM_ITERATIONS_DEFAULT- Siehe auch:
-
M_DEFAULT
public static final int M_DEFAULT- Siehe auch:
-
MAX_FCT_EVAL_DEFAULT
public static final int MAX_FCT_EVAL_DEFAULT- Siehe auch:
-
-
Konstruktordetails
-
QNMinimizer
public QNMinimizer()Initializes aQNMinimizer
with default parameters. -
QNMinimizer
public QNMinimizer(double l1Cost, double l2Cost) Initializes aQNMinimizer
.- Parameter:
l1Cost
- The L1-regularization cost.l2Cost
- The L2-regularization cost.
-
QNMinimizer
public QNMinimizer(double l1Cost, double l2Cost, int iterations) Initializes aQNMinimizer
.- Parameter:
l1Cost
- The L1-regularization cost.l2Cost
- The L2-regularization cost.iterations
- The maximum number of iterations.
-
QNMinimizer
public QNMinimizer(double l1Cost, double l2Cost, int iterations, int m, int maxFctEval) Initializes aQNMinimizer
.- Parameter:
l1Cost
- The L1-regularization cost.l2Cost
- The L2-regularization cost.iterations
- The maximum number of iterations.m
- The number of Hessian updates to store.maxFctEval
- The maximum number of function evaluations.
-
-
Methodendetails
-
getEvaluator
-
setEvaluator
-
minimize
Finds the parameters that minimize the objective function.- Parameter:
function
- The objectiveFunction
.- Gibt zurück:
- The minimizing parameters.
-