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 doubleALF
-
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 intgetMaxIterations()doublegetStepMax()doubleoptimize(INDArray parameters, INDArray gradients, INDArray searchDirection, LayerWorkspaceMgr workspaceMgr)Line optimizervoidsetAbsTolx(double tolx)Sets the tolerance of absolute diff in function value.voidsetMaxIterations(int maxIterations)voidsetRelTolx(double tolx)Sets the tolerance of relative diff in function value.doublesetScoreFor(INDArray parameters, LayerWorkspaceMgr workspaceMgr)voidsetStepMax(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:LineOptimizerLine optimizer- Specified by:
optimizein 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
-
-