From 7ed6c4ac3ea5c409c073f1db3e62d989ffe5f351 Mon Sep 17 00:00:00 2001 From: Gertjan van den Burg Date: Tue, 12 Dec 2017 20:18:28 -0500 Subject: added gridsearch and extended gensvm class --- src/wrapper.pxd | 47 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) (limited to 'src/wrapper.pxd') diff --git a/src/wrapper.pxd b/src/wrapper.pxd index be4d5f5..441c15b 100644 --- a/src/wrapper.pxd +++ b/src/wrapper.pxd @@ -21,7 +21,6 @@ cdef extern from "gensvm_sparse.h": GenSparse *gensvm_init_sparse() void gensvm_free_sparse(GenSparse *) - cdef extern from "gensvm_base.h": cdef struct GenData: @@ -64,6 +63,33 @@ cdef extern from "gensvm_base.h": GenData *gensvm_init_data() void gensvm_free_data(GenData *) + +cdef extern from "gensvm_task.h": + + cdef struct GenTask: + long ID + long folds + GenData *train_data + GenData *test_data + + KernelType kerneltype + int weight_idx + double p + double kappa + double lmd + double epsilon + double gamma + double coef + double degree + double max_iter + + double performance + double duration + long *predictions + + GenTask *gensvm_init_task() + gensvm_free_task(GenTask *) + cdef extern from "gensvm_train.h": void gensvm_train(GenModel *, GenData *, GenModel *) nogil @@ -72,12 +98,26 @@ cdef extern from "gensvm_sv.h": long gensvm_num_sv(GenModel *) +cdef extern from "gensvm_queue.h": + + cdef struct GenQueue: + GenTask **tasks + long N + long i + + GenQueue *gensvm_init_queue() + void gensvm_free_queue(GenQueue *) + 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_seed_model(GenModel *, double, double, double, double, int, int, + double, double, double, double, long, long, char *, long, long) void set_data(GenData *, char *, char *, np.npy_intp *, long) + void set_task(GenTask *, int, GenData *, int, double, double, double, + double, double, int, double, double, double, long) char_const_ptr check_model(GenModel *) void copy_V(void *, GenModel *) long get_iter_count(GenModel *) @@ -89,3 +129,8 @@ cdef extern from "gensvm_helper.c": void free_data(GenData *) void set_verbosity(int) void gensvm_predict(char *, char *, long, long, long, char *) nogil + void gensvm_train_q_helper(GenQueue *, char *, int) nogil + void set_queue(GenQueue *, long, GenTask **) + double get_task_duration(GenTask *) + double get_task_performance(GenTask *) + void copy_task_predictions(GenTask *, char *, long) -- cgit v1.2.3