📄 svm_learn.h
字号:
// svm_learn.h: interface for the CT1 class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_T1_H__3DFC931B_5F03_4DEA_9A58_5378E7CEC738__INCLUDED_)
#define AFX_T1_H__3DFC931B_5F03_4DEA_9A58_5378E7CEC738__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "svm_common.h"
void svm_learn(DOC *, long *, long, long, LEARN_PARM *, KERNEL_PARM *,
KERNEL_CACHE *, MODEL *);
long optimize_to_convergence(DOC *, long *, long, long, LEARN_PARM *,
KERNEL_PARM *, KERNEL_CACHE *, SHRINK_STATE *,
MODEL *, long *, long *, double *, double *,
TIMING *, double *, long, long);
double compute_objective_function(double *, double *, long *, long *);
void clear_index(long *);
void add_to_index(long *, long);
long compute_index(long *,long, long *);
void optimize_svm(DOC *, long *, long *, long *, long *, MODEL *, long,
long *, long, double *, double *, LEARN_PARM *, CFLOAT *,
KERNEL_PARM *, QP *, double *);
void compute_matrices_for_optimization(DOC *, long *, long *, long *,
long *, long *, MODEL *, double *,
double *, long, long, LEARN_PARM *,
CFLOAT *, KERNEL_PARM *, QP *);
long calculate_svm_model(DOC *, long *, long *, double *, double *,
double *, LEARN_PARM *, long *, MODEL *);
long check_optimality(MODEL *, long *, long *, double *, double *,long,
LEARN_PARM *,double *, double, long *, long *, long *,
long *, long, KERNEL_PARM *);
long identify_inconsistent(double *, long *, long *, long, LEARN_PARM *,
long *, long *);
long identify_misclassified(double *, long *, long *, long,
MODEL *, long *, long *);
long identify_one_misclassified(double *, long *, long *, long,
MODEL *, long *, long *);
long incorporate_unlabeled_examples(MODEL *, long *,long *, long *,
double *, double *, long, double *,
long *, long *, long, KERNEL_PARM *,
LEARN_PARM *);
void update_linear_component(DOC *, long *, long *, double *, double *,
long *, long, long, KERNEL_PARM *,
KERNEL_CACHE *, double *,
CFLOAT *, double *);
long select_next_qp_subproblem_grad(long *, long *, double *, double *, long,
long, LEARN_PARM *, long *, long *,
long *, double *, long *, KERNEL_CACHE *,
long *, long *);
long select_next_qp_subproblem_grad_cache(long *, long *, double *, double *,
long, long, LEARN_PARM *, long *,
long *, long *, double *, long *,
KERNEL_CACHE *, long *, long *);
void select_top_n(double *, long, long *, long);
void init_shrink_state(SHRINK_STATE *, long, long);
void shrink_state_cleanup(SHRINK_STATE *);
long shrink_problem(
/* shrink some variables away */
/* do the shrinking only if at least minshrink variables can be removed */
LEARN_PARM *learn_parm,
SHRINK_STATE *shrink_state,
long *active2dnum,long iteration,long* last_suboptimal_at,
long totdoc,long minshrink,
double *a,
long *inconsistent);
void reactivate_inactive_examples(long *, long *, double *, SHRINK_STATE *,
double *, long, long, long, LEARN_PARM *,
long *, DOC *, KERNEL_PARM *,
KERNEL_CACHE *, MODEL *, CFLOAT *,
double *, double *);
/* cache kernel evalutations to improve speed */
void get_kernel_row(KERNEL_CACHE *,DOC *, long, long, long *, CFLOAT *,
KERNEL_PARM *);
void cache_kernel_row(KERNEL_CACHE *,DOC *, long, KERNEL_PARM *);
void cache_multiple_kernel_rows(KERNEL_CACHE *,DOC *, long *, long,
KERNEL_PARM *);
void kernel_cache_shrink(KERNEL_CACHE *,long, long, long *);
void kernel_cache_init(KERNEL_CACHE *,long, long);
void kernel_cache_reset_lru(KERNEL_CACHE *);
void kernel_cache_cleanup(KERNEL_CACHE *);
long kernel_cache_malloc(KERNEL_CACHE *);
void kernel_cache_free(KERNEL_CACHE *,long);
long kernel_cache_free_lru(KERNEL_CACHE *);
CFLOAT *kernel_cache_clean_and_malloc(KERNEL_CACHE *,long);
long kernel_cache_touch(KERNEL_CACHE *,long);
long kernel_cache_check(KERNEL_CACHE *,long);
void compute_xa_estimates(
MODEL *model, /* xa-estimate of error rate, */
long *label,long *unlabeled,long totdoc, /* recall, and precision */
DOC *docs,
double *lin,double *a,
KERNEL_PARM *kernel_parm,
LEARN_PARM *learn_parm,
double *error,double *recall,double *precision);
double xa_estimate_error(MODEL *, long *, long *, long, DOC *,
double *, double *, KERNEL_PARM *,
LEARN_PARM *);
double xa_estimate_recall(MODEL *, long *, long *, long, DOC *,
double *, double *, KERNEL_PARM *,
LEARN_PARM *);
double xa_estimate_precision(MODEL *, long *, long *, long, DOC *,
double *, double *, KERNEL_PARM *,
LEARN_PARM *);
void avg_similarity_of_sv_of_one_class(MODEL *, DOC *, double *, long *, KERNEL_PARM *, double *, double *);
double most_similar_sv_of_same_class(MODEL *, DOC *, double *, long, long *, KERNEL_PARM *, LEARN_PARM *);
double distribute_alpha_t_greedily(long *, long, DOC *, double *, long, long *, KERNEL_PARM *, LEARN_PARM *, double);
double distribute_alpha_t_greedily_noindex(MODEL *, DOC *, double *, long, long *, KERNEL_PARM *, LEARN_PARM *, double);
void estimate_transduction_quality(MODEL *, long *, long *, long, DOC *, double *);
double estimate_margin_vcdim(MODEL *, double, double, KERNEL_PARM *);
double estimate_sphere(MODEL *, KERNEL_PARM *);
double estimate_r_delta_average(DOC *, long, KERNEL_PARM *);
double estimate_r_delta(DOC *, long, KERNEL_PARM *);
double length_of_longest_document_vector(DOC *, long, KERNEL_PARM *);
void write_model(char *, MODEL *);
void write_prediction(char *, MODEL *, double *, double *, long *, long *,
long, LEARN_PARM *);
void write_alphas(char *, double *, long *, long);
typedef struct cache_parm_s {
KERNEL_CACHE *kernel_cache;
CFLOAT *cache;
DOC *docs;
long m;
KERNEL_PARM *kernel_parm;
long offset,stepsize;
} cache_parm_t;
#endif // !defined(AFX_T1_H__3DFC931B_5F03_4DEA_9A58_5378E7CEC738__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -