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

📄 vector.h

📁 使用具有增量学习的监控式学习方法。包括几个不同的分类算法。
💻 H
字号:
#ifndef VECTOR_H#define VECTOR_H#include <stdio.h>#include "darray.h"#include "iarray.h"#define VECTOR_TYPE float#define VECTOR_TYPE_MAX FLT_MAX/** * Vector. */typedef struct {    VECTOR_TYPE *value;	/**< Array of values */    int *name;		/**< Array of names */    int size;		/**< Number of allocated places */    int nel;		/**< Number of non-zero ELements */} vector;typedef struct {    int num;    VECTOR_TYPE val;} vv;/** * Vector for each function. */typedef void (* vfe_func) (int, VECTOR_TYPE, void *);vector *vector_new (int size);vector *vector_copy (vector *v);voidvector_free (vector *v);intvector_dim (vector *v);voidvector_set_size (vector *v, int size);voidvector_zero (vector *v);VECTOR_TYPEvector_get_value (vector *v, int name);intvector_set_value (vector *v, int name, VECTOR_TYPE value);intvector_put_value (vector *v, int name, VECTOR_TYPE value);intvector_add_value (vector *v, int name, VECTOR_TYPE value);intvector_inc_value (vector *v, int name);voidvector_append (vector *v, VECTOR_TYPE d);voidvector_neg (vector *v);intvector_add (vector *u, vector *v);intvector_add_v (vector *u, vector *v, double d);intvector_add_w (vector *u, vector *v, double d);intvector_sub (vector *u, vector *v);VECTOR_TYPEvector_remove_v (vector *u, vector *v);doublevector_sum (vector *v);doublevector_square (vector *v);intvector_mean (vector *u, vector *v);intvector_n_mean (vector *u, vector *v, int n);doublevector_euclidian_dist (vector *u, vector *v);doublevector_manhattan_dist (vector *u, vector *v);doublevector_dot_product (vector *u, vector *v);doublevector_cosine_similarity (vector *u, vector *v);doublevector_dice_similarity (vector *u, vector *v);doublevector_jaccard_similarity (vector *u, vector *v);doublevector_relative_entropy (vector *u, vector *v, int dim);doublevector_length (vector *v);voidvector_cosine_normalize (vector *v);voidvector_sum_normalize (vector *v);voidvector_max_normalize (vector *v);voidvector_bool_normalize (vector *v);voidvector_scale (vector *v, double w);voidvector_tfidf (vector *tf, vector *df, int nod);intvector_equals (vector *u, vector *v);voidvector_print (vector *v);voidvector_save (vector *v, FILE *f);vector *vector_load (FILE *f);voidvector_remove (vector *v, int name);voidvector_elem_mul (vector *u, vector *v);voidvector_exp_mul (vector *u, vector *v, double d);doublevector_dot_product_nonzero (vector *u, vector *v, double d);doublevector_p_norm (vector *v, float p);voidvector_f (vector *v, float p);vector*vector_copy_iarray (iarray *a);vector*vector_copy_darray (darray *a);double *vector_to_mxarray (vector *v, int n);intvector_find_minimum (vector *v);intvector_find_abs_max_eq (vector *u, vector *v, VECTOR_TYPE d);vv *vector_sort (vector *v);voidvector_for_each (vector *v, vfe_func func, void *data);#endif

⌨️ 快捷键说明

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