SHOGUN  3.2.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
WeightedDegreeRBFKernel.h
Go to the documentation of this file.
1 #ifndef _WEIGHTEDDEGREERBFKERNEL_H___
2 #define _WEIGHTEDDEGREERBFKERNEL_H___
3 
4 #include <shogun/lib/config.h>
5 
6 #include <shogun/lib/common.h>
9 
10 namespace shogun
11 {
12 
15 {
16  public:
21 
29  CWeightedDegreeRBFKernel(int32_t size, float64_t width, int32_t degree, int32_t nof_properties);
30 
41  float64_t width, int32_t degree, int32_t nof_properties, int32_t size=10);
42 
43  virtual ~CWeightedDegreeRBFKernel();
44 
51  virtual bool init(CFeatures* l, CFeatures* r);
52 
57  //virtual EKernelType get_kernel_type() { return K_UNKNOWN; }
59 
64  virtual const char* get_name() const { return "WeightedDegreeRBFKernel"; }
65 
66 
71  virtual EFeatureClass get_feature_class() { return C_DENSE; }
72 
77  virtual EFeatureType get_feature_type() { return F_DREAL; }
78 
79 
85  inline bool set_degree(int32_t deg) { degree=deg; return true; }
86 
91  inline int32_t get_degree() { return degree; }
92 
93  protected:
102  virtual float64_t compute(int32_t idx_a, int32_t idx_b);
103 
108  bool init_wd_weights();
109 
110  protected:
113 
115  int32_t degree;
116 
118  int32_t nof_properties;
119 
123 
124 };
125 }
126 #endif /* _WEIGHTEDDEGREERBFKERNEL_H__ */

SHOGUN Machine Learning Toolbox - Documentation