Objective function for supervised learning. More...
#include <shark/ObjectiveFunctions/ErrorFunction.h>
 Inheritance diagram for shark::ErrorFunction< SearchPointType >:
 Inheritance diagram for shark::ErrorFunction< SearchPointType >:| Public Types | |
| typedef FunctionType::ResultType | ResultType | 
| typedef FunctionType::FirstOrderDerivative | FirstOrderDerivative | 
|  Public Types inherited from shark::AbstractObjectiveFunction< PointType, ResultT > | |
| enum | Feature { HAS_VALUE = 1 , HAS_FIRST_DERIVATIVE = 2 , HAS_SECOND_DERIVATIVE = 4 , CAN_PROPOSE_STARTING_POINT = 8 , IS_CONSTRAINED_FEATURE = 16 , HAS_CONSTRAINT_HANDLER = 32 , CAN_PROVIDE_CLOSEST_FEASIBLE = 64 , IS_THREAD_SAFE = 128 , IS_NOISY = 256 } | 
| List of features that are supported by an implementation.  More... | |
| typedef PointType | SearchPointType | 
| typedef ResultT | ResultType | 
| typedef boost::mpl::if_< std::is_arithmetic< ResultT >, SearchPointType, RealMatrix >::type | FirstOrderDerivative | 
| typedef TypedFlags< Feature > | Features | 
| This statement declares the member m_features. See Core/Flags.h for details. | |
| typedef TypedFeatureNotAvailableException< Feature > | FeatureNotAvailableException | 
| Public Member Functions | |
| template<class InputType , class LabelType , class OutputType > | |
| ErrorFunction (LabeledData< InputType, LabelType > const &dataset, AbstractModel< InputType, OutputType, SearchPointType > *model, AbstractLoss< LabelType, OutputType > *loss, bool useMiniBatches=false) | |
| template<class InputType , class LabelType , class OutputType > | |
| ErrorFunction (WeightedLabeledData< InputType, LabelType > const &dataset, AbstractModel< InputType, OutputType, SearchPointType > *model, AbstractLoss< LabelType, OutputType > *loss) | |
| ErrorFunction (ErrorFunction const &op) | |
| ErrorFunction & | operator= (ErrorFunction const &op) | 
| std::string | name () const | 
| returns the name of the object | |
| void | setRegularizer (double factor, FunctionType *regularizer) | 
| SearchPointType | proposeStartingPoint () const | 
| Proposes a starting point in the feasible search space of the function. | |
| std::size_t | numberOfVariables () const | 
| Accesses the number of variables. | |
| void | init () | 
| double | eval (SearchPointType const &input) const | 
| Evaluates the objective function for the supplied argument. | |
| ResultType | evalDerivative (SearchPointType const &input, FirstOrderDerivative &derivative) const | 
|  Public Member Functions inherited from shark::AbstractObjectiveFunction< PointType, ResultT > | |
| const Features & | features () const | 
| virtual void | updateFeatures () | 
| bool | hasValue () const | 
| returns whether this function can calculate it's function value | |
| bool | hasFirstDerivative () const | 
| returns whether this function can calculate the first derivative | |
| bool | hasSecondDerivative () const | 
| returns whether this function can calculate the second derivative | |
| bool | canProposeStartingPoint () const | 
| returns whether this function can propose a starting point. | |
| bool | isConstrained () const | 
| returns whether this function can return | |
| bool | hasConstraintHandler () const | 
| returns whether this function can return | |
| bool | canProvideClosestFeasible () const | 
| Returns whether this function can calculate thee closest feasible to an infeasible point. | |
| bool | isThreadSafe () const | 
| Returns true, when the function can be usd in parallel threads. | |
| bool | isNoisy () const | 
| Returns true, when the function can be usd in parallel threads. | |
| AbstractObjectiveFunction () | |
| Default ctor. | |
| virtual | ~AbstractObjectiveFunction () | 
| Virtual destructor. | |
| void | setRng (random::rng_type *rng) | 
| Sets the Rng used by the objective function. | |
| virtual bool | hasScalableDimensionality () const | 
| virtual void | setNumberOfVariables (std::size_t numberOfVariables) | 
| Adjusts the number of variables if the function is scalable. | |
| virtual std::size_t | numberOfObjectives () const | 
| virtual bool | hasScalableObjectives () const | 
| virtual void | setNumberOfObjectives (std::size_t numberOfObjectives) | 
| Adjusts the number of objectives if the function is scalable. | |
| std::size_t | evaluationCounter () const | 
| Accesses the evaluation counter of the function. | |
| AbstractConstraintHandler< SearchPointType > const & | getConstraintHandler () const | 
| Returns the constraint handler of the function if it has one. | |
| virtual bool | isFeasible (const SearchPointType &input) const | 
| Tests whether a point in SearchSpace is feasible, e.g., whether the constraints are fulfilled. | |
| virtual void | closestFeasible (SearchPointType &input) const | 
| If supported, the supplied point is repaired such that it satisfies all of the function's constraints. | |
| ResultType | operator() (SearchPointType const &input) const | 
| Evaluates the function. Useful together with STL-Algorithms like std::transform. | |
| virtual ResultType | evalDerivative (SearchPointType const &input, FirstOrderDerivative &derivative) const | 
| Evaluates the objective function and calculates its gradient. | |
| virtual ResultType | evalDerivative (SearchPointType const &input, SecondOrderDerivative &derivative) const | 
| Evaluates the objective function and calculates its gradient. | |
|  Public Member Functions inherited from shark::INameable | |
| virtual | ~INameable () | 
| Additional Inherited Members | |
|  Protected Member Functions inherited from shark::AbstractObjectiveFunction< PointType, ResultT > | |
| void | announceConstraintHandler (AbstractConstraintHandler< SearchPointType > const *handler) | 
| helper function which is called to announce the presence of an constraint handler. | |
|  Protected Attributes inherited from shark::AbstractObjectiveFunction< PointType, ResultT > | |
| Features | m_features | 
| std::size_t | m_evaluationCounter | 
| Evaluation counter, default value: 0. | |
| AbstractConstraintHandler< SearchPointType > const * | m_constraintHandler | 
| random::rng_type * | mep_rng | 
Objective function for supervised learning.
Definition at line 69 of file ErrorFunction.h.
| typedef FunctionType::FirstOrderDerivative shark::ErrorFunction< SearchPointType >::FirstOrderDerivative | 
Definition at line 75 of file ErrorFunction.h.
| typedef FunctionType::ResultType shark::ErrorFunction< SearchPointType >::ResultType | 
Definition at line 74 of file ErrorFunction.h.
| 
 | inline | 
Definition at line 78 of file ErrorFunction.h.
References shark::AbstractObjectiveFunction< PointType, ResultT >::features(), and shark::AbstractObjectiveFunction< PointType, ResultT >::m_features.
| 
 | inline | 
Definition at line 90 of file ErrorFunction.h.
References shark::AbstractObjectiveFunction< PointType, ResultT >::features(), and shark::AbstractObjectiveFunction< PointType, ResultT >::m_features.
| 
 | inline | 
Definition at line 99 of file ErrorFunction.h.
References shark::AbstractObjectiveFunction< PointType, ResultT >::features(), and shark::AbstractObjectiveFunction< PointType, ResultT >::m_features.
| 
 | inlinevirtual | 
Evaluates the objective function for the supplied argument.
| [in] | input | The argument for which the function shall be evaluated. | 
| FeatureNotAvailableException | in the default implementation and if a function does not support this feature. | 
Reimplemented from shark::AbstractObjectiveFunction< PointType, ResultT >.
Definition at line 130 of file ErrorFunction.h.
References shark::AbstractObjectiveFunction< PointType, ResultT >::eval(), shark::ErrorFunction< SearchPointType >::eval(), and shark::AbstractObjectiveFunction< PointType, ResultT >::m_evaluationCounter.
Referenced by shark::ErrorFunction< SearchPointType >::eval().
| 
 | inline | 
Definition at line 137 of file ErrorFunction.h.
References shark::AbstractObjectiveFunction< PointType, ResultT >::evalDerivative(), shark::ErrorFunction< SearchPointType >::evalDerivative(), and shark::AbstractObjectiveFunction< PointType, ResultT >::m_evaluationCounter.
Referenced by shark::ErrorFunction< SearchPointType >::evalDerivative().
| 
 | inlinevirtual | 
Reimplemented from shark::AbstractObjectiveFunction< PointType, ResultT >.
Definition at line 125 of file ErrorFunction.h.
References shark::ErrorFunction< SearchPointType >::init(), and shark::AbstractObjectiveFunction< PointType, ResultT >::mep_rng.
Referenced by shark::ErrorFunction< SearchPointType >::init(), main(), main(), shark::OptimizationTrainer< Model, LabelTypeT >::train(), and trainProblem().
| 
 | inlinevirtual | 
returns the name of the object
Reimplemented from shark::INameable.
Definition at line 110 of file ErrorFunction.h.
| 
 | inlinevirtual | 
Accesses the number of variables.
Implements shark::AbstractObjectiveFunction< PointType, ResultT >.
Definition at line 121 of file ErrorFunction.h.
References shark::ErrorFunction< SearchPointType >::numberOfVariables().
Referenced by main(), main(), and shark::ErrorFunction< SearchPointType >::numberOfVariables().
| 
 | inline | 
Definition at line 103 of file ErrorFunction.h.
References shark::AbstractObjectiveFunction< PointType, ResultT >::m_features, and shark::swap().
| 
 | inlinevirtual | 
Proposes a starting point in the feasible search space of the function.
| FeatureNotAvailableException | in the default implementation and if a function does not support this feature. | 
Reimplemented from shark::AbstractObjectiveFunction< PointType, ResultT >.
Definition at line 118 of file ErrorFunction.h.
References shark::ErrorFunction< SearchPointType >::proposeStartingPoint().
Referenced by shark::ErrorFunction< SearchPointType >::proposeStartingPoint().
| 
 | inline | 
Definition at line 113 of file ErrorFunction.h.
Referenced by main(), main(), and trainProblem().