⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 svm.h

📁 libsvm-demo,支持向量机的演示程序,对初学者很有用!
💻 H
字号:
#ifndef _LIBSVM_H#define _LIBSVM_H#ifdef __cplusplusextern "C" {#endifstruct svm_node{	int index;	double value;};struct svm_problem{	int l;	double *y;	struct svm_node **x;};enum { C_SVC, NU_SVC, ONE_CLASS, EPSILON_SVR, NU_SVR };	/* svm_type */enum { LINEAR, POLY, RBF, SIGMOID };	/* kernel_type */struct svm_parameter{	int svm_type;	int kernel_type;	double 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 */};struct svm_model{	struct svm_parameter param;	// parameter	int nr_class;		// number of classes, = 2 in regression/one class svm	int l;			// total #SV	struct svm_node **SV;		// SVs (SV[l])	double **sv_coef;	// coefficients for SVs in decision functions (sv_coef[n-1][l])	double *rho;		// constants in decision functions (rho[n*(n-1)/2])	double *probA;          // pariwise probability information	double *probB;	// for classification only	int *label;		// label of each class (label[n])	int *nSV;		// number of SVs for each class (nSV[n])				// nSV[0] + nSV[1] + ... + nSV[n-1] = l	// XXX	int free_sv;		// 1 if svm_model is created by svm_load_model				// 0 if svm_model is created by svm_train};struct svm_model *svm_train(const struct svm_problem *prob, const struct svm_parameter *param);void svm_cross_validation(const struct svm_problem *prob, const struct svm_parameter *param, int nr_fold, double *target);int svm_save_model(const char *model_file_name, const struct svm_model *model);struct svm_model *svm_load_model(const char *model_file_name);int svm_get_svm_type(const struct svm_model *model);int svm_get_nr_class(const struct svm_model *model);void svm_get_labels(const struct svm_model *model, int *label);double svm_get_svr_probability(const struct svm_model *model);void svm_predict_values(const struct svm_model *model, const struct svm_node *x, double* dec_values);double svm_predict(const struct svm_model *model, const struct svm_node *x);double svm_predict_probability(const struct svm_model *model, const struct svm_node *x, double* prob_estimates);void svm_destroy_model(struct svm_model *model);void svm_destroy_param(struct svm_parameter *param);const char *svm_check_parameter(const struct svm_problem *prob, const struct svm_parameter *param);int svm_check_probability_model(const struct svm_model *model);#ifdef __cplusplus}#endif#endif /* _LIBSVM_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -