squared loss for regression and classification More...
#include <shark/ObjectiveFunctions/Loss/SquaredLoss.h>
Public Member Functions | |
SquaredLoss () | |
Constructor. | |
std::string | name () const |
From INameable: return the class name. | |
double | eval (BatchLabelType const &labels, BatchOutputType const &predictions) const |
Evaluate the squared loss \( (label - prediction)^2 \). | |
double | evalDerivative (BatchLabelType const &label, BatchOutputType const &prediction, BatchOutputType &gradient) const |
virtual double | eval (BatchLabelType const &target, BatchOutputType const &prediction) const=0 |
evaluate the loss for a batch of targets and a prediction | |
virtual double | eval (ConstLabelReference target, ConstOutputReference prediction) const |
evaluate the loss for a target and a prediction | |
double | eval (Data< LabelType > const &targets, Data< OutputType > const &predictions) const |
Public Member Functions inherited from shark::AbstractLoss< LabelT, OutputT > | |
AbstractLoss () | |
virtual double | evalDerivative (ConstLabelReference target, ConstOutputReference prediction, OutputType &gradient) const |
evaluate the loss and its derivative for a target and a prediction | |
virtual double | evalDerivative (ConstLabelReference target, ConstOutputReference prediction, OutputType &gradient, MatrixType &hessian) const |
evaluate the loss and its first and second derivative for a target and a prediction | |
double | operator() (LabelType const &target, OutputType const &prediction) const |
evaluate the loss for a target and a prediction | |
double | operator() (BatchLabelType const &target, BatchOutputType const &prediction) const |
Public Member Functions inherited from shark::AbstractCost< LabelT, OutputT > | |
virtual | ~AbstractCost () |
const Features & | features () const |
virtual void | updateFeatures () |
bool | hasFirstDerivative () const |
returns true when the first parameter derivative is implemented | |
bool | isLossFunction () const |
returns true when the cost function is in fact a loss function | |
double | operator() (Data< LabelType > const &targets, Data< OutputType > const &predictions) const |
Public Member Functions inherited from shark::INameable | |
virtual | ~INameable () |
Additional Inherited Members | |
Protected Attributes inherited from shark::AbstractCost< LabelT, OutputT > | |
Features | m_features |
squared loss for regression and classification
The SquaredLoss computes the squared distance between target and prediction. It is defined for both vectorial as well as integral labels. In the case of integral labels, the label c is interpreted as unit-vector having the c-th component activated.
Definition at line 48 of file SquaredLoss.h.
typedef base_type::BatchLabelType shark::SquaredLoss< OutputType, LabelType >::BatchLabelType |
Definition at line 53 of file SquaredLoss.h.
typedef base_type::BatchOutputType shark::SquaredLoss< OutputType, LabelType >::BatchOutputType |
Definition at line 52 of file SquaredLoss.h.
|
inline |
Constructor.
Definition at line 56 of file SquaredLoss.h.
References shark::AbstractCost< LabelT, OutputT >::HAS_FIRST_DERIVATIVE, and shark::AbstractCost< LabelT, OutputT >::m_features.
|
inlinevirtual |
Evaluate the squared loss \( (label - prediction)^2 \).
Implements shark::AbstractLoss< LabelT, OutputT >.
Definition at line 69 of file SquaredLoss.h.
References SIZE_CHECK, and shark::sqr().
Referenced by shark::SquaredLoss< OutputType, LabelType >::evalDerivative(), shark::SquaredLoss< OutputType, unsigned int >::evalDerivative(), and main().
|
virtual |
evaluate the loss for a batch of targets and a prediction
target | target values |
prediction | predictions, typically made by a model |
Implements shark::AbstractLoss< LabelT, OutputT >.
|
inlinevirtual |
evaluate the loss for a target and a prediction
target | target value |
prediction | prediction, typically made by a model |
Reimplemented from shark::AbstractLoss< LabelT, OutputT >.
Definition at line 92 of file AbstractLoss.h.
|
inlinevirtual |
from AbstractCost
targets | target values |
predictions | predictions, typically made by a model |
Reimplemented from shark::AbstractLoss< LabelT, OutputT >.
Definition at line 149 of file AbstractLoss.h.
|
inlinevirtual |
Evaluate the squared loss \( (label - prediction)^2 \) and its deriative \( \frac{\partial}{\partial prediction} 1/2 (label - prediction)^2 = prediction - label \).
Reimplemented from shark::AbstractLoss< LabelT, OutputT >.
Definition at line 79 of file SquaredLoss.h.
References shark::SquaredLoss< OutputType, LabelType >::eval().
|
inlinevirtual |
From INameable: return the class name.
Reimplemented from shark::INameable.
Definition at line 63 of file SquaredLoss.h.