SHOGUN  3.2.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ClusteringEvaluation.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  * Written (W) 2012 Chiyuan Zhang
8  * Copyright (C) 2012 Chiyuan Zhang
9  */
10 
11 #ifndef __CLUSTERINGEVALUATION_H__
12 #define __CLUSTERINGEVALUATION_H__
13 
14 #include <shogun/lib/config.h>
15 
16 #include <vector>
17 
19 #include <shogun/labels/Labels.h>
20 
21 namespace shogun
22 {
23 
27 {
28 public:
31 
34 
42  void best_map(CLabels* predicted, CLabels* ground_truth);
43 
49  virtual float64_t evaluate(CLabels* predicted, CLabels* ground_truth) = 0;
50 protected:
60  int32_t find_match_count(SGVector<int32_t> l1, int32_t m1, SGVector<int32_t> l2, int32_t m2);
61 
65  int32_t find_mismatch_count(SGVector<int32_t> l1, int32_t m1, SGVector<int32_t> l2, int32_t m2);
66 };
67 
68 } // namespace shogun
69 
70 #endif /* end of include guard: __CLUSTERINGEVALUATION_H__ */
void best_map(CLabels *predicted, CLabels *ground_truth)
The class Labels models labels, i.e. class assignments of objects.
Definition: Labels.h:43
The base class used to evaluate clustering.
virtual float64_t evaluate(CLabels *predicted, CLabels *ground_truth)=0
int32_t find_mismatch_count(SGVector< int32_t > l1, int32_t m1, SGVector< int32_t > l2, int32_t m2)
double float64_t
Definition: common.h:50
int32_t find_match_count(SGVector< int32_t > l1, int32_t m1, SGVector< int32_t > l2, int32_t m2)
Class Evaluation, a base class for other classes used to evaluate labels, e.g. accuracy of classifica...
Definition: Evaluation.h:40

SHOGUN Machine Learning Toolbox - Documentation