3RNN/Lib/site-packages/sklearn/svm/_libsvm.pxi
2024-05-26 19:49:15 +02:00

76 lines
3.1 KiB
Cython

################################################################################
# Includes
from ..utils._typedefs cimport intp_t
cdef extern from "_svm_cython_blas_helpers.h":
ctypedef double (*dot_func)(int, const double*, int, const double*, int)
cdef struct BlasFunctions:
dot_func dot
cdef extern from "svm.h":
cdef struct svm_node
cdef struct svm_model
cdef struct svm_parameter:
int svm_type
int kernel_type
int degree # for poly
double gamma # for poly/rbf/sigmoid
double coef0 # for poly/sigmoid
# these are for training only
double cache_size # in MB
double eps # stopping criteria
double C # for C_SVC, EPSILON_SVR and NU_SVR
int nr_weight # for C_SVC
int *weight_label # for C_SVC
double* weight # for C_SVC
double nu # for NU_SVC, ONE_CLASS, and NU_SVR
double p # for EPSILON_SVR
int shrinking # use the shrinking heuristics
int probability # do probability estimates
int max_iter # ceiling on Solver runtime
int random_seed # seed for random generator in probability estimation
cdef struct svm_problem:
int l
double *y
svm_node *x
double *W # instance weights
char *svm_check_parameter(svm_problem *, svm_parameter *)
svm_model *svm_train(svm_problem *, svm_parameter *, int *, BlasFunctions *) nogil
void svm_free_and_destroy_model(svm_model** model_ptr_ptr)
void svm_cross_validation(svm_problem *, svm_parameter *, int nr_fold, double *target, BlasFunctions *) nogil
cdef extern from "libsvm_helper.c":
# this file contains methods for accessing libsvm 'hidden' fields
svm_node **dense_to_sparse (char *, intp_t *)
void set_parameter (svm_parameter *, int , int , int , double, double ,
double , double , double , double,
double, int, int, int, char *, char *, int,
int)
void set_problem (svm_problem *, char *, char *, char *, intp_t *, int)
svm_model *set_model (svm_parameter *, int, char *, intp_t *,
char *, intp_t *, intp_t *, char *,
char *, char *, char *, char *)
void copy_sv_coef (char *, svm_model *)
void copy_n_iter (char *, svm_model *)
void copy_intercept (char *, svm_model *, intp_t *)
void copy_SV (char *, svm_model *, intp_t *)
int copy_support (char *data, svm_model *model)
int copy_predict (char *, svm_model *, intp_t *, char *, BlasFunctions *) nogil
int copy_predict_proba (char *, svm_model *, intp_t *, char *, BlasFunctions *) nogil
int copy_predict_values(char *, svm_model *, intp_t *, char *, int, BlasFunctions *) nogil
void copy_nSV (char *, svm_model *)
void copy_probA (char *, svm_model *, intp_t *)
void copy_probB (char *, svm_model *, intp_t *)
intp_t get_l (svm_model *)
intp_t get_nr (svm_model *)
int free_problem (svm_problem *)
int free_model (svm_model *)
void set_verbosity(int)