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
classifier
svm
GNPPLib.h
Go to the documentation of this file.
1
/*-----------------------------------------------------------------------
2
*
3
* This program is free software; you can redistribute it and/or modify
4
* it under the terms of the GNU General Public License as published by
5
* the Free Software Foundation; either version 3 of the License, or
6
* (at your option) any later version.
7
*
8
* Library of solvers for Generalized Nearest Point Problem (GNPP).
9
*
10
* Written (W) 1999-2008 Vojtech Franc, xfrancv@cmp.felk.cvut.cz
11
* Copyright (C) 1999-2008 Center for Machine Perception, CTU FEL Prague
12
*
13
-------------------------------------------------------------------- */
14
15
#ifndef GNPPLIB_H__
16
#define GNPPLIB_H__
17
18
#include <math.h>
19
#include <limits.h>
20
21
#include <
shogun/base/SGObject.h
>
22
#include <
shogun/io/SGIO.h
>
23
#include <
shogun/lib/common.h
>
24
#include <
shogun/kernel/Kernel.h
>
25
26
namespace
shogun
27
{
31
class
CGNPPLib
:
public
CSGObject
32
{
33
public
:
35
CGNPPLib
();
36
44
CGNPPLib
(
float64_t
* vector_y,
CKernel
* kernel, int32_t num_data,
float64_t
reg_const);
45
virtual
~CGNPPLib
();
46
53
int8_t
gnpp_mdm
(
float64_t
*diag_H,
54
float64_t
*vector_c,
55
float64_t
*vector_y,
56
int32_t dim,
57
int32_t tmax,
58
float64_t
tolabs,
59
float64_t
tolrel,
60
float64_t
th,
61
float64_t
*alpha,
62
int32_t *ptr_t,
63
float64_t
*ptr_aHa11,
64
float64_t
*ptr_aHa22,
65
float64_t
**ptr_History,
66
int32_t verb);
67
74
int8_t
gnpp_imdm
(
float64_t
*diag_H,
75
float64_t
*vector_c,
76
float64_t
*vector_y,
77
int32_t dim,
78
int32_t tmax,
79
float64_t
tolabs,
80
float64_t
tolrel,
81
float64_t
th,
82
float64_t
*alpha,
83
int32_t *ptr_t,
84
float64_t
*ptr_aHa11,
85
float64_t
*ptr_aHa22,
86
float64_t
**ptr_History,
87
int32_t verb);
88
90
virtual
const
char
*
get_name
()
const
{
return
"GNPPLib"
; }
91
92
protected
:
99
float64_t
*
get_col
(int64_t a, int64_t b);
100
102
float64_t
**
kernel_columns
;
104
float64_t
*
cache_index
;
106
int32_t
first_kernel_inx
;
108
int64_t
Cache_Size
;
110
int32_t
m_num_data
;
112
float64_t
m_reg_const
;
114
float64_t
*
m_vector_y
;
116
CKernel
*
m_kernel
;
117
118
};
119
}
120
#endif // GNPPLIB_H__
SHOGUN
Machine Learning Toolbox - Documentation