SHOGUN  v3.0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
LabelsFactory.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) 2013 Evgeniy Andreev (gsomix)
8  */
9 
10 #ifndef _LABELS_FACTORY__H__
11 #define _LABELS_FACTORY__H__
12 
13 #include <shogun/base/SGObject.h>
14 
15 namespace shogun
16 {
17  class SGObject;
18  class CLabels;
19  class CBinaryLabels;
20  class CLatentLabels;
21  class CMulticlassLabels;
22  class CRegressionLabels;
23  class CStructuredLabels;
24  class CMulticlassMultipleOutputLabels;
25 
28 class CLabelsFactory : public CSGObject
29 {
30 public:
35  static CBinaryLabels* to_binary(CLabels* base_labels);
36 
41  static CLatentLabels* to_latent(CLabels* base_labels);
42 
47  static CMulticlassLabels* to_multiclass(CLabels* base_labels);
48 
53  static CRegressionLabels* to_regression(CLabels* base_labels);
54 
59  static CStructuredLabels* to_structured(CLabels* base_labels);
60 
66 
68  virtual const char* get_name() const { return "LabelsFactory"; }
69 };
70 
71 }
72 
73 #endif /* _LABELS_FACTORY__H__ */
74 
static CRegressionLabels * to_regression(CLabels *base_labels)
Base class of the labels used in Structured Output (SO) problems.
Real Labels are real-valued labels.
The class Labels models labels, i.e. class assignments of objects.
Definition: Labels.h:35
Multiclass Labels for multi-class classification with multiple labels.
virtual const char * get_name() const
Definition: LabelsFactory.h:68
Multiclass Labels for multi-class classification.
static CBinaryLabels * to_binary(CLabels *base_labels)
The helper class to specialize base class instances of labels.
Definition: LabelsFactory.h:28
Class SGObject is the base class of all shogun objects.
Definition: SGObject.h:114
static CMulticlassMultipleOutputLabels * to_multiclass_multiple_output(CLabels *base_labels)
Binary Labels for binary classification.
Definition: BinaryLabels.h:36
static CStructuredLabels * to_structured(CLabels *base_labels)
static CLatentLabels * to_latent(CLabels *base_labels)
abstract class for latent labels As latent labels always depends on the given application, this class only defines the API that the user has to implement for latent labels.
Definition: LatentLabels.h:24
static CMulticlassLabels * to_multiclass(CLabels *base_labels)

SHOGUN Machine Learning Toolbox - Documentation