SHOGUN
v3.0.0
Main Page
Related Pages
Modules
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
src
shogun
statistics
MMDKernelSelectionComb.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) 2012-2013 Heiko Strathmann
8
*/
9
10
#ifndef __MMDKERNELSELECTIONCOMB_H_
11
#define __MMDKERNELSELECTIONCOMB_H_
12
13
#include <
shogun/lib/config.h
>
14
15
#include <
shogun/statistics/MMDKernelSelection.h
>
16
#include <
shogun/lib/SGMatrix.h
>
17
#include <shogun/lib/external/libqp.h>
18
19
namespace
shogun
20
{
21
22
class
CLinearTimeMMD;
23
28
class
CMMDKernelSelectionComb
:
public
CMMDKernelSelection
29
{
30
public
:
31
33
CMMDKernelSelectionComb
();
34
40
CMMDKernelSelectionComb
(
CKernelTwoSampleTestStatistic
* mmd);
41
43
virtual
~CMMDKernelSelectionComb
();
44
45
#ifdef HAVE_LAPACK
46
50
virtual
SGVector<float64_t>
compute_measures
()=0;
51
#else
52
57
virtual
SGVector<float64_t>
compute_measures
();
58
#endif
59
65
virtual
CKernel
*
select_kernel
();
66
68
const
char
*
get_name
()
const
=0;
69
70
protected
:
83
virtual
SGVector<float64_t>
solve_optimization
(
SGVector<float64_t>
mmds);
84
85
#ifdef HAVE_LAPACK
86
87
static
const
float64_t
*
get_Q_col
(uint32_t i);
88
90
static
void
print_state
(libqp_state_T state);
91
93
index_t
m_opt_max_iterations
;
94
96
float64_t
m_opt_epsilon
;
97
99
float64_t
m_opt_low_cut
;
100
102
static
SGMatrix<float64_t>
m_Q
;
103
#endif
104
105
private
:
107
void
init();
108
};
109
110
}
111
112
#endif
/* __MMDKERNELSELECTIONCOMB_H_ */
SHOGUN
Machine Learning Toolbox - Documentation