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

dot product between feature vectors:
dot product between feature vector and a dense vector
:
multiplication with a scalar
and addition on to a dense vector
:
Definition at line 44 of file CombinedDotFeatures.h.

Public Member Functions | |
| CCombinedDotFeatures () | |
| CCombinedDotFeatures (const CCombinedDotFeatures &orig) | |
| virtual | ~CCombinedDotFeatures () |
| virtual int32_t | get_num_vectors () const |
| virtual int32_t | get_dim_feature_space () const |
| virtual float64_t | dot (int32_t vec_idx1, CDotFeatures *df, 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 *¤t) |
| CDotFeatures * | get_next_feature_obj () |
| CDotFeatures * | get_next_feature_obj (CListElement *¤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 |
Public Member Functions inherited from CDotFeatures | |
| CDotFeatures (int32_t size=0) | |
| CDotFeatures (const CDotFeatures &orig) | |
| CDotFeatures (CFile *loader) | |
| virtual | ~CDotFeatures () |
| float64_t | get_combined_feature_weight () |
| void | set_combined_feature_weight (float64_t nw) |
| SGMatrix< float64_t > | get_computed_dot_feature_matrix () |
| SGVector< float64_t > | get_computed_dot_feature_vector (int32_t num) |
| void | benchmark_add_to_dense_vector (int32_t repeats=5) |
| void | benchmark_dense_dot_range (int32_t repeats=5) |
| virtual SGVector< float64_t > | get_mean () |
| virtual SGMatrix< float64_t > | get_cov () |
Public Member Functions inherited from CFeatures | |
| CFeatures (int32_t size=0) | |
| CFeatures (const CFeatures &orig) | |
| CFeatures (CFile *loader) | |
| virtual | ~CFeatures () |
| virtual int32_t | add_preprocessor (CPreprocessor *p) |
| set preprocessor | |
| virtual CPreprocessor * | del_preprocessor (int32_t num) |
| del current preprocessor | |
| CPreprocessor * | get_preprocessor (int32_t num) |
| get current preprocessor | |
| void | set_preprocessed (int32_t num) |
| bool | is_preprocessed (int32_t num) |
| int32_t | get_num_preprocessed () |
| get whether specified preprocessor (or all if num=1) was/were already applied | |
| int32_t | get_num_preprocessors () const |
| void | clean_preprocessors () |
| int32_t | get_cache_size () |
| virtual bool | reshape (int32_t num_features, int32_t num_vectors) |
| void | list_feature_obj () |
| virtual void | load (CFile *loader) |
| virtual void | save (CFile *writer) |
| bool | check_feature_compatibility (CFeatures *f) |
| bool | has_property (EFeatureProperty p) |
| void | set_property (EFeatureProperty p) |
| void | unset_property (EFeatureProperty p) |
| virtual void | set_subset (CSubset *subset) |
| virtual void | remove_subset () |
| virtual void | subset_changed_post () |
| index_t | subset_idx_conversion (index_t idx) const |
| bool | has_subset () const |
| virtual CFeatures * | copy_subset (SGVector< index_t > indices) |
Public Member Functions inherited from CSGObject | |
| CSGObject () | |
| CSGObject (const CSGObject &orig) | |
| virtual | ~CSGObject () |
| virtual bool | is_generic (EPrimitiveType *generic) const |
| template<class T > | |
| void | set_generic () |
| void | unset_generic () |
| virtual void | print_serializable (const char *prefix="") |
| virtual bool | save_serializable (CSerializableFile *file, const char *prefix="") |
| virtual bool | load_serializable (CSerializableFile *file, const char *prefix="") |
| void | set_global_io (SGIO *io) |
| SGIO * | get_global_io () |
| void | set_global_parallel (Parallel *parallel) |
| Parallel * | get_global_parallel () |
| void | set_global_version (Version *version) |
| Version * | get_global_version () |
| SGVector< char * > | get_modelsel_names () |
| char * | get_modsel_param_descr (const char *param_name) |
| index_t | get_modsel_param_index (const char *param_name) |
Protected Member Functions | |
| void | update_dim_feature_space_and_num_vec () |
Protected Member Functions inherited from CDotFeatures | |
| void | display_progress (int32_t start, int32_t stop, int32_t v) |
Protected Attributes | |
| CList * | feature_list |
| int32_t | num_vectors |
| total number of vectors | |
| int32_t | num_dimensions |
| total number of dimensions | |
Protected Attributes inherited from CDotFeatures | |
| float64_t | combined_weight |
| feature weighting in combined dot features | |
Protected Attributes inherited from CFeatures | |
| CSubset * | m_subset |
Additional Inherited Members | |
Static Public Member Functions inherited from CDotFeatures | |
| static void * | dense_dot_range_helper (void *p) |
Public Attributes inherited from CSGObject | |
| SGIO * | io |
| Parallel * | parallel |
| Version * | version |
| Parameter * | m_parameters |
| Parameter * | m_model_selection_parameters |
constructor
Definition at line 18 of file CombinedDotFeatures.cpp.
| CCombinedDotFeatures | ( | const CCombinedDotFeatures & | orig | ) |
copy constructor
Definition at line 26 of file CombinedDotFeatures.cpp.
|
virtual |
destructor
Definition at line 40 of file CombinedDotFeatures.cpp.
|
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 |
Implements CDotFeatures.
Definition at line 215 of file CombinedDotFeatures.cpp.
| bool append_feature_obj | ( | CDotFeatures * | obj | ) |
append feature object
| obj | feature object to append |
Definition at line 310 of file CombinedDotFeatures.cpp.
| bool delete_feature_obj | ( | ) |
delete feature object
Definition at line 318 of file CombinedDotFeatures.cpp.
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 |
Implements CDotFeatures.
Definition at line 125 of file CombinedDotFeatures.cpp.
|
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 |
Reimplemented from CDotFeatures.
Definition at line 146 of file CombinedDotFeatures.cpp.
|
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 |
Reimplemented from CDotFeatures.
Definition at line 181 of file CombinedDotFeatures.cpp.
|
virtual |
compute dot product between vector1 and vector2, appointed by their indices
| vec_idx1 | index of first vector |
| df | DotFeatures (of same kind) to compute dot product with |
| vec_idx2 | index of second vector |
Implements CDotFeatures.
Definition at line 92 of file CombinedDotFeatures.cpp.
|
virtual |
duplicate feature object
Implements CFeatures.
Definition at line 35 of file CombinedDotFeatures.cpp.
|
virtual |
clean up iterator call this function with the iterator returned by get_first_feature
| iterator | as returned by get_first_feature |
Implements CDotFeatures.
Definition at line 266 of file CombinedDotFeatures.cpp.
|
virtual |
obtain the dimensionality of the feature space
Implements CDotFeatures.
Definition at line 69 of file CombinedDotFeatures.h.
|
virtual |
get feature class
Implements CFeatures.
Definition at line 152 of file CombinedDotFeatures.h.
|
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 |
Implements CDotFeatures.
Definition at line 232 of file CombinedDotFeatures.cpp.
|
virtual |
get feature type
Implements CFeatures.
Definition at line 143 of file CombinedDotFeatures.h.
| CDotFeatures * get_first_feature_obj | ( | ) |
get first feature object
Definition at line 277 of file CombinedDotFeatures.cpp.
| CDotFeatures * get_first_feature_obj | ( | CListElement *& | current | ) |
get first feature object
| current | list of features |
Definition at line 282 of file CombinedDotFeatures.cpp.
| CDotFeatures * get_last_feature_obj | ( | ) |
get last feature object
Definition at line 297 of file CombinedDotFeatures.cpp.
|
virtual |
|
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 |
Implements CDotFeatures.
Definition at line 243 of file CombinedDotFeatures.cpp.
| CDotFeatures * get_next_feature_obj | ( | ) |
get next feature object
Definition at line 287 of file CombinedDotFeatures.cpp.
| CDotFeatures * get_next_feature_obj | ( | CListElement *& | current | ) |
get next feature object
| current | list of features |
Definition at line 292 of file CombinedDotFeatures.cpp.
|
virtual |
get number of non-zero features in vector
| num | which vector |
Implements CDotFeatures.
Definition at line 336 of file CombinedDotFeatures.cpp.
| int32_t get_num_feature_obj | ( | ) |
get number of feature objects
Definition at line 331 of file CombinedDotFeatures.cpp.
|
virtual |
get the number of vectors
Implements CFeatures.
Definition at line 60 of file CombinedDotFeatures.h.
|
virtual |
get the size of a single element
Implements CFeatures.
Definition at line 161 of file CombinedDotFeatures.h.
|
virtual |
get subfeature weights
| weights | subfeature weights |
| num_weights | where number of weights is stored |
Definition at line 353 of file CombinedDotFeatures.cpp.
| bool insert_feature_obj | ( | CDotFeatures * | obj | ) |
insert feature object
| obj | feature object to insert |
Definition at line 302 of file CombinedDotFeatures.cpp.
| void list_feature_objs | ( | ) |
list feature objects
Definition at line 45 of file CombinedDotFeatures.cpp.
|
virtual |
set subfeature weights
| weights | new subfeature weights |
| num_weights | number of subfeature weights |
Definition at line 373 of file CombinedDotFeatures.cpp.
|
protected |
update total number of dimensions and vectors
Definition at line 63 of file CombinedDotFeatures.cpp.
|
protected |
feature list
Definition at line 305 of file CombinedDotFeatures.h.
|
protected |
total number of dimensions
Definition at line 310 of file CombinedDotFeatures.h.
|
protected |
total number of vectors
Definition at line 308 of file CombinedDotFeatures.h.