SHOGUN  5.0.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules
KernelMeanMatching.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 (W) 2012 Sergey Lisitsyn
8  */
9 
10 #ifndef KERNELMEANMATCHING_H_
11 #define KERNELMEANMATCHING_H_
12 
13 #include <shogun/lib/config.h>
14 #ifdef USE_GPL_SHOGUN
15 
16 #include <shogun/base/SGObject.h>
17 #include <shogun/kernel/Kernel.h>
18 
19 namespace shogun
20 {
21 
23 class CKernelMeanMatching: public CSGObject
24 {
25 public:
26 
28  CKernelMeanMatching();
29 
31  CKernelMeanMatching(CKernel* kernel, SGVector<index_t> training_indices, SGVector<index_t> test_indices);
32 
34  CKernel* get_kernel() const { SG_REF(m_kernel); return m_kernel; }
36  void set_kernel(CKernel* kernel) { SG_REF(kernel); SG_UNREF(m_kernel); m_kernel = kernel; }
38  SGVector<index_t> get_training_indices() const { return m_training_indices; }
40  void set_training_indices(SGVector<index_t> training_indices) { m_training_indices = training_indices; }
42  SGVector<index_t> get_test_indices() const { return m_test_indices; }
44  void set_test_indices(SGVector<index_t> test_indices) { m_test_indices = test_indices; }
45 
47  SGVector<float64_t> compute_weights();
48 
49  virtual const char* get_name() const { return "KernelMeanMatching"; }
50 
51 protected:
52 
54  CKernel* m_kernel;
56  SGVector<index_t> m_training_indices;
58  SGVector<index_t> m_test_indices;
59 };
60 
61 }
62 #endif //USE_GPL_SHOGUN
63 #endif
#define SG_REF(x)
Definition: SGObject.h:54
#define SG_UNREF(x)
Definition: SGObject.h:55
all of classes and functions are contained in the shogun namespace
Definition: class_list.h:18

SHOGUN Machine Learning Toolbox - Documentation