shark::ZeroOneLoss< unsigned int, RealVector > Class Template Reference

0-1-loss for classification. More...

#include <shark/ObjectiveFunctions/Loss/ZeroOneLoss.h>

+ Inheritance diagram for shark::ZeroOneLoss< unsigned int, RealVector >:
+ Collaboration diagram for shark::ZeroOneLoss< unsigned int, RealVector >:

Public Types

typedef base_type::BatchLabelType BatchLabelType
 
typedef base_type::BatchOutputType BatchOutputType
 
- Public Types inherited from shark::AbstractLoss< unsigned int, RealVector >
typedef RealVector OutputType
 
typedef unsigned int LabelType
 
typedef VectorMatrixTraits
< OutputType >
::DenseMatrixType 
MatrixType
 
typedef Batch< OutputType >::type BatchOutputType
 
typedef Batch< LabelType >::type BatchLabelType
 
- Public Types inherited from shark::AbstractCost< unsigned int, RealVector >
enum  Feature
 list of features a cost function can have More...
 
typedef RealVector OutputType
 
typedef unsigned int LabelType
 
typedef Batch< OutputType >::type BatchOutputType
 
typedef Batch< LabelType >::type BatchLabelType
 
typedef TypedFlags< FeatureFeatures
 
typedef
TypedFeatureNotAvailableException
< Feature
FeatureNotAvailableException
 

Public Member Functions

 ZeroOneLoss (double threshold=0.0)
 
std::string name () const
 From INameable: return the class name. More...
 
double eval (BatchLabelType const &labels, BatchOutputType const &predictions) const
 
- Public Member Functions inherited from shark::AbstractLoss< unsigned int, RealVector >
 AbstractLoss ()
 
virtual double eval (LabelType const &target, OutputType const &prediction) const
 evaluate the loss for a target and a prediction More...
 
double eval (Data< LabelType > const &targets, Data< OutputType > const &predictions) const
 
virtual double evalDerivative (BatchLabelType const &target, BatchOutputType const &prediction, BatchOutputType &gradient) const
 evaluate the loss and the derivative w.r.t. the prediction More...
 
double evalDerivative (Data< LabelType > const &targets, Data< OutputType > const &predictions, Data< OutputType > &gradient) const
 
double operator() (LabelType const &target, OutputType const &prediction) const
 evaluate the loss for a target and a prediction More...
 
double operator() (BatchLabelType const &target, BatchOutputType const &prediction) const
 
- Public Member Functions inherited from shark::AbstractCost< unsigned int, RealVector >
virtual ~AbstractCost ()
 
const Featuresfeatures () const
 
virtual void updateFeatures ()
 
bool hasFirstDerivative () const
 returns true when the first parameter derivative is implemented More...
 
bool isLossFunction () const
 returns true when the cost function is in fact a loss function More...
 
void configure (PropertyTree const &node)
 configures the loss using informations in the property tree More...
 
double operator() (Data< LabelType > const &targets, Data< OutputType > const &predictions) const
 
- Public Member Functions inherited from shark::INameable
virtual ~INameable ()
 
- Public Member Functions inherited from shark::IConfigurable
virtual ~IConfigurable ()
 Virtual d'tor. More...
 

Additional Inherited Members

- Protected Attributes inherited from shark::AbstractCost< unsigned int, RealVector >
Features m_features
 

Detailed Description

template<>
class shark::ZeroOneLoss< unsigned int, RealVector >

0-1-loss for classification.

Definition at line 76 of file ZeroOneLoss.h.

Member Typedef Documentation

typedef base_type::BatchLabelType shark::ZeroOneLoss< unsigned int, RealVector >::BatchLabelType

Definition at line 80 of file ZeroOneLoss.h.

typedef base_type::BatchOutputType shark::ZeroOneLoss< unsigned int, RealVector >::BatchOutputType

Definition at line 81 of file ZeroOneLoss.h.

Constructor & Destructor Documentation

shark::ZeroOneLoss< unsigned int, RealVector >::ZeroOneLoss ( double  threshold = 0.0)
inline

constructor

Parameters
threshold,:in the case dim(predictions) == 1, predictions strictly larger than this parameter are regarded as belonging to the positive class

Definition at line 86 of file ZeroOneLoss.h.

Member Function Documentation

double shark::ZeroOneLoss< unsigned int, RealVector >::eval ( BatchLabelType const &  labels,
BatchOutputType const &  predictions 
) const
inlinevirtual

Return zero if labels == arg max { predictions_i } and one otherwise, where the index i runs over the components of the predictions vector. A special version of dim(predictions) == 1 computes the predicted labels by thresholding at zero. Shark's label convention is used, saying that a positive value encodes class 0, a negative value encodes class 1.

Implements shark::AbstractLoss< unsigned int, RealVector >.

Definition at line 105 of file ZeroOneLoss.h.

References shark::size(), and SIZE_CHECK.

Referenced by main(), run_one_trial(), and shark::CARTTrainer::train().

std::string shark::ZeroOneLoss< unsigned int, RealVector >::name ( ) const
inlinevirtual

From INameable: return the class name.

Reimplemented from shark::INameable.

Definition at line 92 of file ZeroOneLoss.h.


The documentation for this class was generated from the following file: