Features that allow stacking of a number of DotFeatures.
They transparently provide all the operations of DotFeatures, i.e.

:
and addition on to a dense vector
:
在文件CombinedDotFeatures.h第45行定义。

组合类型 | |
| struct | combined_feature_iterator |
公有成员 | |
| CCombinedDotFeatures () | |
| CCombinedDotFeatures (const CCombinedDotFeatures &orig) | |
| virtual | ~CCombinedDotFeatures () |
| virtual int32_t | get_num_vectors () |
| virtual int32_t | get_dim_feature_space () |
| virtual float64_t | dot (int32_t vec_idx1, int32_t vec_idx2) |
| virtual float64_t | dense_dot (int32_t vec_idx1, const float64_t *vec2, int32_t vec2_len) |
| virtual void | dense_dot_range (float64_t *output, int32_t start, int32_t stop, float64_t *alphas, float64_t *vec, int32_t dim, float64_t b) |
| virtual void | dense_dot_range_subset (int32_t *sub_index, int32_t num, float64_t *output, float64_t *alphas, float64_t *vec, int32_t dim, float64_t b) |
| virtual void | add_to_dense_vec (float64_t alpha, int32_t vec_idx1, float64_t *vec2, int32_t vec2_len, bool abs_val=false) |
| virtual int32_t | get_nnz_features_for_vector (int32_t num) |
| virtual EFeatureType | get_feature_type () |
| virtual EFeatureClass | get_feature_class () |
| virtual int32_t | get_size () |
| virtual void * | get_feature_iterator (int32_t vector_index) |
| virtual bool | get_next_feature (int32_t &index, float64_t &value, void *iterator) |
| virtual void | free_feature_iterator (void *iterator) |
| virtual CFeatures * | duplicate () const |
| void | list_feature_objs () |
| CDotFeatures * | get_first_feature_obj () |
| CDotFeatures * | get_first_feature_obj (CListElement< CDotFeatures * > *¤t) |
| CDotFeatures * | get_next_feature_obj () |
| CDotFeatures * | get_next_feature_obj (CListElement< CDotFeatures * > *¤t) |
| CDotFeatures * | get_last_feature_obj () |
| bool | insert_feature_obj (CDotFeatures *obj) |
| bool | append_feature_obj (CDotFeatures *obj) |
| bool | delete_feature_obj () |
| int32_t | get_num_feature_obj () |
| virtual void | get_subfeature_weights (float64_t **weights, int32_t *num_weights) |
| virtual void | set_subfeature_weights (float64_t *weights, int32_t num_weights) |
| virtual const char * | get_name () const |
保护成员 | |
| void | update_dim_feature_space_and_num_vec () |
保护属性 | |
| CList< CDotFeatures * > * | feature_list |
| int32_t | num_vectors |
| total number of vectors | |
| int32_t | num_dimensions |
| total number of dimensions | |
constructor
在文件CombinedDotFeatures.cpp第18行定义。
| CCombinedDotFeatures | ( | const CCombinedDotFeatures & | orig | ) |
copy constructor
在文件CombinedDotFeatures.cpp第24行定义。
| ~CCombinedDotFeatures | ( | ) | [virtual] |
destructor
在文件CombinedDotFeatures.cpp第35行定义。
| void add_to_dense_vec | ( | float64_t | alpha, | |
| int32_t | vec_idx1, | |||
| float64_t * | vec2, | |||
| int32_t | vec2_len, | |||
| bool | abs_val = false | |||
| ) | [virtual] |
add vector 1 multiplied with alpha to dense vector2
| alpha | scalar alpha | |
| vec_idx1 | index of first vector | |
| vec2 | pointer to real valued vector | |
| vec2_len | length of real valued vector | |
| abs_val | if true add the absolute value |
实现了CDotFeatures。
在文件CombinedDotFeatures.cpp第185行定义。
| bool append_feature_obj | ( | CDotFeatures * | obj | ) |
append feature object
| obj | feature object to append |
在文件CombinedDotFeatures.h第328行定义。
| bool delete_feature_obj | ( | ) |
compute dot product between vector1 and a dense vector
| vec_idx1 | index of first vector | |
| vec2 | pointer to real valued vector | |
| vec2_len | length of real valued vector |
实现了CDotFeatures。
在文件CombinedDotFeatures.cpp第101行定义。
| void dense_dot_range | ( | float64_t * | output, | |
| int32_t | start, | |||
| int32_t | stop, | |||
| float64_t * | alphas, | |||
| float64_t * | vec, | |||
| int32_t | dim, | |||
| float64_t | b | |||
| ) | [virtual] |
Compute the dot product for a range of vectors. This function makes use of dense_dot alphas[i] * sparse[i]^T * w + b
| output | result for the given vector range | |
| start | start vector range from this idx | |
| stop | stop vector range at this idx | |
| alphas | scalars to multiply with, may be NULL | |
| vec | dense vector to compute dot product with | |
| dim | length of the dense vector | |
| b | bias |
重载CDotFeatures。
在文件CombinedDotFeatures.cpp第120行定义。
| void dense_dot_range_subset | ( | int32_t * | sub_index, | |
| int32_t | num, | |||
| float64_t * | output, | |||
| float64_t * | alphas, | |||
| float64_t * | vec, | |||
| int32_t | dim, | |||
| float64_t | b | |||
| ) | [virtual] |
Compute the dot product for a subset of vectors. This function makes use of dense_dot alphas[i] * sparse[i]^T * w + b
| sub_index | index for which to compute outputs | |
| num | length of index | |
| output | result for the given vector range | |
| alphas | scalars to multiply with, may be NULL | |
| vec | dense vector to compute dot product with | |
| dim | length of the dense vector | |
| b | bias |
重载CDotFeatures。
在文件CombinedDotFeatures.cpp第153行定义。
| float64_t dot | ( | int32_t | vec_idx1, | |
| int32_t | vec_idx2 | |||
| ) | [virtual] |
compute dot product between vector1 and vector2, appointed by their indices
| vec_idx1 | index of first vector | |
| vec_idx2 | index of second vector |
实现了CDotFeatures。
在文件CombinedDotFeatures.cpp第85行定义。
| CFeatures * duplicate | ( | ) | const [virtual] |
| virtual void free_feature_iterator | ( | void * | iterator | ) | [virtual] |
clean up iterator call this function with the iterator returned by get_first_feature
| iterator | as returned by get_first_feature |
实现了CDotFeatures。
在文件CombinedDotFeatures.h第232行定义。
| virtual int32_t get_dim_feature_space | ( | ) | [virtual] |
obtain the dimensionality of the feature space
实现了CDotFeatures。
在文件CombinedDotFeatures.h第70行定义。
| virtual EFeatureClass get_feature_class | ( | ) | [virtual] |
| virtual void* get_feature_iterator | ( | int32_t | vector_index | ) | [virtual] |
iterate over the non-zero features
call get_feature_iterator first, followed by get_next_feature and free_feature_iterator to cleanup
| vector_index | the index of the vector over whose components to iterate over |
实现了CDotFeatures。
在文件CombinedDotFeatures.h第183行定义。
| virtual EFeatureType get_feature_type | ( | ) | [virtual] |
| CDotFeatures* get_first_feature_obj | ( | ) |
| CDotFeatures* get_first_feature_obj | ( | CListElement< CDotFeatures * > *& | current | ) |
get first feature object
| current | list of features |
在文件CombinedDotFeatures.h第268行定义。
| CDotFeatures* get_last_feature_obj | ( | ) |
| virtual const char* get_name | ( | ) | const [virtual] |
| virtual bool get_next_feature | ( | int32_t & | index, | |
| float64_t & | value, | |||
| void * | iterator | |||
| ) | [virtual] |
iterate over the non-zero features
call this function with the iterator returned by get_first_feature and call free_feature_iterator to cleanup
| index | is returned by reference (-1 when not available) | |
| value | is returned by reference | |
| iterator | as returned by get_first_feature |
实现了CDotFeatures。
在文件CombinedDotFeatures.h第204行定义。
| CDotFeatures* get_next_feature_obj | ( | CListElement< CDotFeatures * > *& | current | ) |
get next feature object
| current | list of features |
在文件CombinedDotFeatures.h第291行定义。
| CDotFeatures* get_next_feature_obj | ( | ) |
| int32_t get_nnz_features_for_vector | ( | int32_t | num | ) | [virtual] |
get number of non-zero features in vector
| num | which vector |
实现了CDotFeatures。
在文件CombinedDotFeatures.cpp第201行定义。
| int32_t get_num_feature_obj | ( | ) |
| virtual int32_t get_num_vectors | ( | ) | [virtual] |
| virtual int32_t get_size | ( | ) | [virtual] |
get the size of a single element
实现了CFeatures。
在文件CombinedDotFeatures.h第156行定义。
| void get_subfeature_weights | ( | float64_t ** | weights, | |
| int32_t * | num_weights | |||
| ) | [virtual] |
get subfeature weights
| weights | subfeature weights | |
| num_weights | where number of weights is stored |
在文件CombinedDotFeatures.cpp第216行定义。
| bool insert_feature_obj | ( | CDotFeatures * | obj | ) |
insert feature object
| obj | feature object to insert |
在文件CombinedDotFeatures.h第314行定义。
| void list_feature_objs | ( | ) |
list feature objects
在文件CombinedDotFeatures.cpp第40行定义。
| void set_subfeature_weights | ( | float64_t * | weights, | |
| int32_t | num_weights | |||
| ) | [virtual] |
set subfeature weights
| weights | new subfeature weights | |
| num_weights | number of subfeature weights |
在文件CombinedDotFeatures.cpp第234行定义。
| void update_dim_feature_space_and_num_vec | ( | ) | [protected] |
update total number of dimensions and vectors
在文件CombinedDotFeatures.cpp第58行定义。
CList<CDotFeatures*>* feature_list [protected] |
feature list
在文件CombinedDotFeatures.h第387行定义。
int32_t num_dimensions [protected] |
total number of dimensions
在文件CombinedDotFeatures.h第392行定义。
int32_t num_vectors [protected] |
total number of vectors
在文件CombinedDotFeatures.h第390行定义。