00001 /* File: svector.h 00002 * 00003 * Time-stamp: <Thu 28 Jul 2005-- 03:21:40 Paolo Frasconi> 00004 * $Id: svector.h,v 1.1 2006/05/31 09:21:19 andrea Exp $ 00005 * 00006 * Description: Moved this declaration to make it visible to plugin 00007 * 00008 */ 00009 # ifndef SVECTOR_H_INCLUDED 00010 # define SVECTOR_H_INCLUDED 00011 00012 typedef struct svector { 00013 void *words; /* The features/values in the vector by 00014 increasing feature-number. Feature 00015 numbers that are skipped are 00016 interpreted as having value zero. */ 00017 double twonorm_sq; /* The squared euclidian length of the 00018 vector. Used to speed up the RBF kernel. */ 00019 char *userdefined; /* You can put additional information 00020 here. This can be useful, if you are 00021 implementing your own kernel that 00022 does not work with feature/values 00023 representations (for example a 00024 string kernel). By default, 00025 svm-light will put here the string 00026 after the # sign from each line of 00027 the input file. */ 00028 long kernel_id; /* Feature vectors with different 00029 kernel_id's are orthogonal (ie. the 00030 feature number do not match). This 00031 is used for computing component 00032 kernels for linear constraints which 00033 are a sum of several different 00034 weight vectors. (currently not 00035 implemented). */ 00036 struct svector *next; /* Let's you set up a list of SVECTOR's 00037 for linear constraints which are a 00038 sum of multiple feature 00039 vectors. List is terminated by 00040 NULL. */ 00041 double factor; /* Factor by which this feature vector 00042 is multiplied in the sum. */ 00043 } SVECTOR; 00044 00045 00046 00047 # endif
1.5.1