SHOGUN  4.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules 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 
17 #include <shogun/labels/Labels.h>
18 
19 namespace shogun
20 {
21 
25 {
26 public:
29 
32 
40  void best_map(CLabels* predicted, CLabels* ground_truth);
41 
47  virtual float64_t evaluate(CLabels* predicted, CLabels* ground_truth) = 0;
48 protected:
58  int32_t find_match_count(SGVector<int32_t> l1, int32_t m1, SGVector<int32_t> l2, int32_t m2);
59 
63  int32_t find_mismatch_count(SGVector<int32_t> l1, int32_t m1, SGVector<int32_t> l2, int32_t m2);
64 };
65 
66 } // namespace shogun
67 
68 #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
all of classes and functions are contained in the shogun namespace
Definition: class_list.h:18
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