gov.sandia.cognition.learning.algorithm.regression
Class ParameterDerivativeFreeCostMinimizer
java.lang.Object
gov.sandia.cognition.util.AbstractCloneableSerializable
gov.sandia.cognition.algorithm.AbstractIterativeAlgorithm
gov.sandia.cognition.algorithm.AnytimeAlgorithmWrapper<ResultType,FunctionMinimizer<Vector,Double,? super EvaluatorType>>
gov.sandia.cognition.learning.algorithm.regression.AbstractMinimizerBasedParameterCostMinimizer<VectorizableVectorFunction,DifferentiableEvaluator<Vector,Double,Vector>>
gov.sandia.cognition.learning.algorithm.regression.ParameterDerivativeFreeCostMinimizer
- All Implemented Interfaces:
- AnytimeAlgorithm<VectorizableVectorFunction>, IterativeAlgorithm, IterativeAlgorithmListener, MeasurablePerformanceAlgorithm, StoppableAlgorithm, BatchCostMinimizationLearner<Collection<? extends InputOutputPair<? extends Vector,Vector>>,VectorizableVectorFunction>, BatchLearner<Collection<? extends InputOutputPair<? extends Vector,Vector>>,VectorizableVectorFunction>, ParameterCostMinimizer<VectorizableVectorFunction>, SupervisedBatchLearner<Vector,Vector,VectorizableVectorFunction>, CloneableSerializable, Serializable, Cloneable
public class ParameterDerivativeFreeCostMinimizer
- extends AbstractMinimizerBasedParameterCostMinimizer<VectorizableVectorFunction,DifferentiableEvaluator<Vector,Double,Vector>>
Implementation of a class of objects that uses a derivative-free
minimization algorithm. That is, this class estimates locally minimum-cost
parameter sets without needing first-order derivative information.
- Since:
- 2.1
- Author:
- Kevin R. Dixon
- See Also:
- Serialized Form
Methods inherited from class gov.sandia.cognition.algorithm.AnytimeAlgorithmWrapper |
algorithmEnded, algorithmStarted, getAlgorithm, getIteration, getMaxIterations, isResultValid, readResolve, setAlgorithm, setMaxIterations, stepEnded, stepStarted, stop |
DEFAULT_FUNCTION_MINIMIZER
public static final FunctionMinimizer<Vector,Double,Evaluator<? super Vector,Double>> DEFAULT_FUNCTION_MINIMIZER
- Default function minimizer, FunctionMinimizerDirectionSetPowell
ParameterDerivativeFreeCostMinimizer
public ParameterDerivativeFreeCostMinimizer()
- Creates a new instance of ParameterDerivativeFreeCostMinimizer
ParameterDerivativeFreeCostMinimizer
public ParameterDerivativeFreeCostMinimizer(FunctionMinimizer<Vector,Double,? super DifferentiableEvaluator<Vector,Double,Vector>> minimizer)
- Creates a new instance of ParameterDerivativeFreeCostMinimizer
- Parameters:
minimizer
- Minimization algorithm used to find locally optimal parameters
clone
public ParameterDerivativeFreeCostMinimizer clone()
- Description copied from class:
AbstractCloneableSerializable
- This makes public the clone method on the
Object
class and
removes the exception that it throws. Its default behavior is to
automatically create a clone of the exact type of object that the
clone is called on and to copy all primitives but to keep all references,
which means it is a shallow copy.
Extensions of this class may want to override this method (but call
super.clone()
to implement a "smart copy". That is, to target
the most common use case for creating a copy of the object. Because of
the default behavior being a shallow copy, extending classes only need
to handle fields that need to have a deeper copy (or those that need to
be reset). Some of the methods in ObjectUtil
may be helpful in
implementing a custom clone method.
Note: The contract of this method is that you must use
super.clone()
as the basis for your implementation.
- Specified by:
clone
in interface CloneableSerializable
- Overrides:
clone
in class AbstractMinimizerBasedParameterCostMinimizer<VectorizableVectorFunction,DifferentiableEvaluator<Vector,Double,Vector>>
- Returns:
- A clone of this object.
createInternalFunction
public ParameterDerivativeFreeCostMinimizer.ParameterCostEvaluatorDerivativeFree createInternalFunction()
- Description copied from class:
AbstractMinimizerBasedParameterCostMinimizer
- Creates the internal function that maps the parameter set of
result as the input to the function, so that the minimization
algorithms can perturb this input in their minimization schemes.
- Specified by:
createInternalFunction
in class AbstractMinimizerBasedParameterCostMinimizer<VectorizableVectorFunction,DifferentiableEvaluator<Vector,Double,Vector>>
- Returns:
- Evaluator to use internally.