Class BackTrackLineSearch
- java.lang.Object
-
- org.deeplearning4j.optimize.solvers.BackTrackLineSearch
-
- All Implemented Interfaces:
Serializable
,LineOptimizer
public class BackTrackLineSearch extends Object implements LineOptimizer
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected double
ALF
-
Constructor Summary
Constructors Constructor Description BackTrackLineSearch(Model optimizable, ConvexOptimizer optimizer)
BackTrackLineSearch(Model layer, StepFunction stepFunction, ConvexOptimizer optimizer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getMaxIterations()
double
getStepMax()
double
optimize(INDArray parameters, INDArray gradients, INDArray searchDirection, LayerWorkspaceMgr workspaceMgr)
Line optimizervoid
setAbsTolx(double tolx)
Sets the tolerance of absolute diff in function value.void
setMaxIterations(int maxIterations)
void
setRelTolx(double tolx)
Sets the tolerance of relative diff in function value.double
setScoreFor(INDArray parameters, LayerWorkspaceMgr workspaceMgr)
void
setStepMax(double stepMax)
-
-
-
Field Detail
-
ALF
protected final double ALF
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
BackTrackLineSearch
public BackTrackLineSearch(Model layer, StepFunction stepFunction, ConvexOptimizer optimizer)
- Parameters:
layer
-stepFunction
-optimizer
-
-
BackTrackLineSearch
public BackTrackLineSearch(Model optimizable, ConvexOptimizer optimizer)
- Parameters:
optimizable
-optimizer
-
-
-
Method Detail
-
setStepMax
public void setStepMax(double stepMax)
-
getStepMax
public double getStepMax()
-
setRelTolx
public void setRelTolx(double tolx)
Sets the tolerance of relative diff in function value. Line search converges if abs(delta x / x) < tolx for all coordinates.
-
setAbsTolx
public void setAbsTolx(double tolx)
Sets the tolerance of absolute diff in function value. Line search converges if abs(delta x) < tolx for all coordinates.
-
getMaxIterations
public int getMaxIterations()
-
setMaxIterations
public void setMaxIterations(int maxIterations)
-
setScoreFor
public double setScoreFor(INDArray parameters, LayerWorkspaceMgr workspaceMgr)
-
optimize
public double optimize(INDArray parameters, INDArray gradients, INDArray searchDirection, LayerWorkspaceMgr workspaceMgr) throws InvalidStepException
Description copied from interface:LineOptimizer
Line optimizer- Specified by:
optimize
in interfaceLineOptimizer
- Parameters:
parameters
- the parameters to optimizegradients
- the line/rate of changesearchDirection
- the point for the line search to go in- Returns:
- the next step size
- Throws:
InvalidStepException
-
-