Go to the documentation of this file.00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef VL_SVMDATASET_H
00017 #define VL_SVMDATASET_H
00018
00019 #include "generic.h"
00020 #include "homkermap.h"
00021
00022 struct VlSvm_ ;
00023
00035 #ifndef __DOXYGEN__
00036 struct VlSvmDataset_ ;
00037 typedef struct VlSvmDataset_ VlSvmDataset ;
00038 #else
00039 typedef OPAQUE VlSvmDataset ;
00040 #endif
00041
00044 typedef void (*VlSvmDiagnosticFunction) (struct VlSvm_ *svm, void *data) ;
00045 typedef double (*VlSvmLossFunction) (double inner, double label) ;
00046 typedef double (*VlSvmDcaUpdateFunction) (double alpha, double inner, double norm2, double label) ;
00047 typedef double (*VlSvmInnerProductFunction)(const void *data, vl_uindex element, double *model) ;
00048 typedef void (*VlSvmAccumulateFunction) (const void *data, vl_uindex element, double *model, double multiplier) ;
00049
00055 VL_EXPORT VlSvmDataset* vl_svmdataset_new (vl_type dataType, void *data, vl_size dimension, vl_size numData) ;
00056 VL_EXPORT void vl_svmdataset_delete (VlSvmDataset * dataset) ;
00062 VL_EXPORT void vl_svmdataset_set_homogeneous_kernel_map (VlSvmDataset * self,
00063 VlHomogeneousKernelMap * hom) ;
00069 VL_EXPORT void* vl_svmdataset_get_data (VlSvmDataset const *self) ;
00070 VL_EXPORT vl_size vl_svmdataset_get_num_data (VlSvmDataset const *self) ;
00071 VL_EXPORT vl_size vl_svmdataset_get_dimension (VlSvmDataset const *self) ;
00072 VL_EXPORT void* vl_svmdataset_get_map (VlSvmDataset const *self) ;
00073 VL_EXPORT vl_size vl_svmdataset_get_mapDim (VlSvmDataset const *self) ;
00074 VL_EXPORT VlSvmAccumulateFunction vl_svmdataset_get_accumulate_function (VlSvmDataset const *self) ;
00075 VL_EXPORT VlSvmInnerProductFunction vl_svmdataset_get_inner_product_function (VlSvmDataset const * self) ;
00076 VL_EXPORT VlHomogeneousKernelMap * vl_svmdataset_get_homogeneous_kernel_map (VlSvmDataset const * self) ;
00079
00080 #endif
00081
00082