SHOGUN  v3.2.0
GradientCriterion.h
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or modify
3  * it under the terms of the GNU General Public License as published by
4  * the Free Software Foundation; either version 3 of the License, or
5  * (at your option) any later version.
6  *
7  * Copyright (C) 2012 Jacob Walker
8  */
9 
10 #ifndef CGRADIENTCRITERION_H_
11 #define CGRADIENTCRITERION_H_
12 
14 
15 namespace shogun
16 {
17 
23 {
24 public:
27 
28  virtual ~CGradientCriterion() { }
29 
37  virtual float64_t evaluate(CLabels* predicted, CLabels* ground_truth)
38  {
39  return 0.0;
40  }
41 
44  {
45  return m_direction;
46  }
47 
53  {
54  m_direction=direction;
55  }
56 
61  virtual const char* get_name() const { return "GradientCriterion"; }
62 
63 private:
65  EEvaluationDirection m_direction;
66 };
67 }
68 #endif /* CGRADIENTCRITERION_H_ */
The class Labels models labels, i.e. class assignments of objects.
Definition: Labels.h:35
virtual void set_evaluation_direction(EEvaluationDirection direction)
Simple class which specifies the direction of gradient search.
EEvaluationDirection
Definition: Evaluation.h:24
double float64_t
Definition: common.h:48
virtual float64_t evaluate(CLabels *predicted, CLabels *ground_truth)
all of classes and functions are contained in the shogun namespace
Definition: class_list.h:16
virtual EEvaluationDirection get_evaluation_direction() const
virtual const char * get_name() const
Class Evaluation, a base class for other classes used to evaluate labels, e.g. accuracy of classifica...
Definition: Evaluation.h:35

SHOGUN Machine Learning Toolbox - Documentation