1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
cimport numpy as np
# Includes
cdef extern from "gensvm_globals.h":
# Stuff for kerneltype
ctypedef enum KernelType:
pass
cdef extern from "gensvm_sparse.h":
# stuff for GenSparse
cdef struct GenSparse:
long nnz
long n_row
long n_col
double *values
long *ia
long *ja
GenSparse *gensvm_init_sparse()
void gensvm_free_sparse(GenSparse *)
cdef extern from "gensvm_base.h":
cdef struct GenData:
long K
long n
long m
long r
long *y
double *Z
GenSparse *spZ
double *RAW
double *Sigma
KernelType kerneltype
double *kernelparam
cdef struct GenModel:
int weight_idx
long K
long n
long m
double epsilon
double p
double kappa
double lmd
double *V
double *Vbar
double *U
double *UU
double *Q
double *H
double *rho
double training_error
KernelType kerneltype
double *kernelparam
double kernel_eigen_cutoff
GenModel *gensvm_init_model()
void gensvm_free_model(GenModel *)
GenData *gensvm_init_data()
void gensvm_free_data(GenData *)
cdef extern from "gensvm_train.h":
void gensvm_train(GenModel *, GenData *, GenModel *) nogil
cdef extern from "gensvm_sv.h":
long gensvm_num_sv(GenModel *)
cdef extern from "gensvm_helper.c":
ctypedef char* char_const_ptr "char const *"
void set_model(GenModel *, double, double, double, double, int, int,
double, double, double, double, long, long)
void set_data(GenData *, char *, char *, np.npy_intp *, long)
char_const_ptr check_model(GenModel *)
void copy_V(void *, GenModel *)
long get_iter_count(GenModel *)
double get_training_error(GenModel *)
int get_status(GenModel *)
long get_n(GenModel *)
long get_m(GenModel *)
long get_K(GenModel *)
void free_data(GenData *)
void set_verbosity(int)
void gensvm_predict(char *, char *, long, long, long, char *) nogil
|