SHOGUN  4.2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
SplittingStrategy.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) 2011 Heiko Strathmann
8  * Copyright (C) 2011 Berlin Institute of Technology and Max-Planck-Society
9  */
10 
11 #ifndef __SPLITTINGSTRATEGY_H_
12 #define __SPLITTINGSTRATEGY_H_
13 
14 #include <shogun/lib/config.h>
15 
16 #include <shogun/base/SGObject.h>
19 
20 namespace shogun
21 {
22 
23 class CLabels;
24 
43 {
44 public:
47 
53  CSplittingStrategy(CLabels* labels, index_t num_subsets);
54 
56  virtual ~CSplittingStrategy();
57 
68 
79 
81  index_t get_num_subsets() const;
82 
88  virtual void build_subsets()=0;
89 
90 protected:
93  void reset_subsets();
94 
95 private:
96  void init();
97 
98 
99 protected:
100 
103 
106 
109 
113 };
114 }
115 
116 #endif /* __SPLITTINGSTRATEGY_H_ */
virtual void build_subsets()=0
int32_t index_t
Definition: common.h:62
The class Labels models labels, i.e. class assignments of objects.
Definition: Labels.h:43
Abstract base class for all splitting types. Takes a CLabels instance and generates a desired number ...
Class SGObject is the base class of all shogun objects.
Definition: SGObject.h:112
SGVector< index_t > generate_subset_inverse(index_t subset_idx)
Dynamic array class for CSGObject pointers that creates an array that can be used like a list or an a...
all of classes and functions are contained in the shogun namespace
Definition: class_list.h:18
CDynamicObjectArray * m_subset_indices
SGVector< index_t > generate_subset_indices(index_t subset_idx)

SHOGUN Machine Learning Toolbox - Documentation