gov.sandia.cognition.learning.algorithm
Interface BatchCostMinimizationLearner<CostParametersType,ResultType>

Type Parameters:
CostParametersType - The type of parameters that the cost function takes. For example, a Collection of InputOutputPairs.
ResultType - The type of object created by the learning algorithm. For example, a FeedforwardNeuralNetwork.
All Superinterfaces:
BatchLearner<CostParametersType,ResultType>, Cloneable, CloneableSerializable, Serializable
All Known Subinterfaces:
ParameterCostMinimizer<ResultType>
All Known Implementing Classes:
AbstractMinimizerBasedParameterCostMinimizer, AbstractParameterCostMinimizer, FletcherXuHybridEstimation, GaussNewtonAlgorithm, GeneticAlgorithm, LeastSquaresEstimator, LevenbergMarquardtEstimation, ParallelizedGeneticAlgorithm, ParameterDerivativeFreeCostMinimizer, ParameterDifferentiableCostMinimizer, SimulatedAnnealer

@CodeReviews(reviews={@CodeReview(reviewer="Kevin R. Dixon",date="2008-07-22",changesNeeded=false,comments={"Moved previous code review to annotation.","Interface looks fine."}),@CodeReview(reviewer="Justin Basilico",date="2006-10-03",changesNeeded=false,comments={"Added some missing documentation.","Interface looks fine."})})
public interface BatchCostMinimizationLearner<CostParametersType,ResultType>
extends BatchLearner<CostParametersType,ResultType>

The BatchCostMinimizationLearner interface defines the functionality of a cost-minimization learning algorithm should follow. (These algorithms typically fall into the categories of "supervised" and "reinforcement" learning algorithms, but I don't like anthropomorphic terms.) A BatchLearner takes two generics to parameterize it: LearnableType is the class of thing we're going to minimize and the second parameter CostFunctionType is a class of CostFunction that can evaluate the LearnableType.

Since:
1.0
Author:
Justin Basilico, Kevin R. Dixon

Method Summary
 CostFunction<? super ResultType,? super CostParametersType> getCostFunction()
          Gets the cost function that the learner is minimizing.
 ResultType learn(CostParametersType minimizationParameters)
          Invokes the minimization (learning) call using the given cost function parameters.
 
Methods inherited from interface gov.sandia.cognition.util.CloneableSerializable
clone
 

Method Detail

learn

ResultType learn(CostParametersType minimizationParameters)
Invokes the minimization (learning) call using the given cost function parameters.

Specified by:
learn in interface BatchLearner<CostParametersType,ResultType>
Parameters:
minimizationParameters - The parameters for the cost function to minimize against.
Returns:
The object learned by the learning algorithm.

getCostFunction

CostFunction<? super ResultType,? super CostParametersType> getCostFunction()
Gets the cost function that the learner is minimizing.

Returns:
The CostFunction that the learner's algorithm is minimizing.