SHOGUN  v3.0.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HistogramIntersectionKernel.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) 2010 Koen van de Sande
8  * Copyright (C) 2010 Koen van de Sande / University of Amsterdam
9  */
10 
11 #ifndef _HISTOGRAMINTERSECTIONKERNEL_H___
12 #define _HISTOGRAMINTERSECTIONKERNEL_H___
13 
14 #include <shogun/lib/common.h>
17 
18 namespace shogun
19 {
32 {
33  public:
36 
41  CHistogramIntersectionKernel(int32_t size);
42 
52  float64_t beta=1.0, int32_t size=10);
53 
55 
62  virtual bool init(CFeatures* l, CFeatures* r);
63  /* register the parameters
64  */
65  virtual void register_params();
66 
72 
77  virtual const char* get_name() const { return "HistogramIntersectionKernel"; }
78 
82  inline float64_t get_beta() { return m_beta; }
83 
87  inline void set_beta(float64_t beta) { m_beta = beta; }
88 
89  protected:
90 
93 
102  virtual float64_t compute(int32_t idx_a, int32_t idx_b);
103 
104 };
105 }
106 #endif /* _HISTOGRAMINTERSECTIONKERNEL_H__ */

SHOGUN Machine Learning Toolbox - Documentation