SHOGUN  v1.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
CCombinedDotFeatures Class Reference

Detailed Description

Features that allow stacking of a number of DotFeatures.

They transparently provide all the operations of DotFeatures, i.e.

Definition at line 44 of file CombinedDotFeatures.h.

Inheritance diagram for CCombinedDotFeatures:
Inheritance graph
[legend]

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 CFeaturesduplicate () const
void list_feature_objs ()
CDotFeaturesget_first_feature_obj ()
CDotFeaturesget_first_feature_obj (CListElement *&current)
CDotFeaturesget_next_feature_obj ()
CDotFeaturesget_next_feature_obj (CListElement *&current)
CDotFeaturesget_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_tget_computed_dot_feature_matrix ()
SGVector< float64_tget_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_tget_mean ()
virtual SGMatrix< float64_tget_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 CPreprocessordel_preprocessor (int32_t num)
 del current preprocessor
CPreprocessorget_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 CFeaturescopy_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)
SGIOget_global_io ()
void set_global_parallel (Parallel *parallel)
Parallelget_global_parallel ()
void set_global_version (Version *version)
Versionget_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

CListfeature_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
CSubsetm_subset

Additional Inherited Members

- Static Public Member Functions inherited from CDotFeatures
static void * dense_dot_range_helper (void *p)
- Public Attributes inherited from CSGObject
SGIOio
Parallelparallel
Versionversion
Parameterm_parameters
Parameterm_model_selection_parameters

Constructor & Destructor Documentation

constructor

Definition at line 18 of file CombinedDotFeatures.cpp.

copy constructor

Definition at line 26 of file CombinedDotFeatures.cpp.

~CCombinedDotFeatures ( )
virtual

destructor

Definition at line 40 of file CombinedDotFeatures.cpp.

Member Function Documentation

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

Parameters
alphascalar alpha
vec_idx1index of first vector
vec2pointer to real valued vector
vec2_lenlength of real valued vector
abs_valif true add the absolute value

Implements CDotFeatures.

Definition at line 215 of file CombinedDotFeatures.cpp.

bool append_feature_obj ( CDotFeatures obj)

append feature object

Parameters
objfeature object to append
Returns
if appending was successful

Definition at line 310 of file CombinedDotFeatures.cpp.

bool delete_feature_obj ( )

delete feature object

Returns
if deleting was successful

Definition at line 318 of file CombinedDotFeatures.cpp.

float64_t dense_dot ( int32_t  vec_idx1,
const float64_t vec2,
int32_t  vec2_len 
)
virtual

compute dot product between vector1 and a dense vector

Parameters
vec_idx1index of first vector
vec2pointer to real valued vector
vec2_lenlength of real valued vector

Implements CDotFeatures.

Definition at line 125 of file CombinedDotFeatures.cpp.

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

Parameters
outputresult for the given vector range
startstart vector range from this idx
stopstop vector range at this idx
alphasscalars to multiply with, may be NULL
vecdense vector to compute dot product with
dimlength of the dense vector
bbias

Reimplemented from CDotFeatures.

Definition at line 146 of file CombinedDotFeatures.cpp.

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

Parameters
sub_indexindex for which to compute outputs
numlength of index
outputresult for the given vector range
alphasscalars to multiply with, may be NULL
vecdense vector to compute dot product with
dimlength of the dense vector
bbias

Reimplemented from CDotFeatures.

Definition at line 181 of file CombinedDotFeatures.cpp.

float64_t dot ( int32_t  vec_idx1,
CDotFeatures df,
int32_t  vec_idx2 
)
virtual

compute dot product between vector1 and vector2, appointed by their indices

Parameters
vec_idx1index of first vector
dfDotFeatures (of same kind) to compute dot product with
vec_idx2index of second vector

Implements CDotFeatures.

Definition at line 92 of file CombinedDotFeatures.cpp.

CFeatures * duplicate ( ) const
virtual

duplicate feature object

Returns
feature object

Implements CFeatures.

Definition at line 35 of file CombinedDotFeatures.cpp.

void free_feature_iterator ( void *  iterator)
virtual

clean up iterator call this function with the iterator returned by get_first_feature

Parameters
iteratoras returned by get_first_feature

Implements CDotFeatures.

Definition at line 266 of file CombinedDotFeatures.cpp.

virtual int32_t get_dim_feature_space ( ) const
virtual

obtain the dimensionality of the feature space

Returns
dimensionality

Implements CDotFeatures.

Definition at line 69 of file CombinedDotFeatures.h.

virtual EFeatureClass get_feature_class ( )
virtual

get feature class

Returns
feature class

Implements CFeatures.

Definition at line 152 of file CombinedDotFeatures.h.

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

Parameters
vector_indexthe index of the vector over whose components to iterate over
Returns
feature iterator (to be passed to get_next_feature)

Implements CDotFeatures.

Definition at line 232 of file CombinedDotFeatures.cpp.

virtual EFeatureType get_feature_type ( )
virtual

get feature type

Returns
templated feature type

Implements CFeatures.

Definition at line 143 of file CombinedDotFeatures.h.

CDotFeatures * get_first_feature_obj ( )

get first feature object

Returns
first feature object

Definition at line 277 of file CombinedDotFeatures.cpp.

CDotFeatures * get_first_feature_obj ( CListElement *&  current)

get first feature object

Parameters
currentlist of features
Returns
first feature object

Definition at line 282 of file CombinedDotFeatures.cpp.

CDotFeatures * get_last_feature_obj ( )

get last feature object

Returns
last feature object

Definition at line 297 of file CombinedDotFeatures.cpp.

virtual const char* get_name ( ) const
virtual
Returns
object name

Implements CSGObject.

Definition at line 294 of file CombinedDotFeatures.h.

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

Parameters
indexis returned by reference (-1 when not available)
valueis returned by reference
iteratoras returned by get_first_feature
Returns
true if a new non-zero feature got returned

Implements CDotFeatures.

Definition at line 243 of file CombinedDotFeatures.cpp.

CDotFeatures * get_next_feature_obj ( )

get next feature object

Returns
next feature object

Definition at line 287 of file CombinedDotFeatures.cpp.

CDotFeatures * get_next_feature_obj ( CListElement *&  current)

get next feature object

Parameters
currentlist of features
Returns
next feature object

Definition at line 292 of file CombinedDotFeatures.cpp.

int32_t get_nnz_features_for_vector ( int32_t  num)
virtual

get number of non-zero features in vector

Parameters
numwhich vector
Returns
number of non-zero features in vector

Implements CDotFeatures.

Definition at line 336 of file CombinedDotFeatures.cpp.

int32_t get_num_feature_obj ( )

get number of feature objects

Returns
number of feature objects

Definition at line 331 of file CombinedDotFeatures.cpp.

virtual int32_t get_num_vectors ( ) const
virtual

get the number of vectors

Returns
number of vectors

Implements CFeatures.

Definition at line 60 of file CombinedDotFeatures.h.

virtual int32_t get_size ( )
virtual

get the size of a single element

Returns
size of a element

Implements CFeatures.

Definition at line 161 of file CombinedDotFeatures.h.

void get_subfeature_weights ( float64_t **  weights,
int32_t *  num_weights 
)
virtual

get subfeature weights

Parameters
weightssubfeature weights
num_weightswhere number of weights is stored

Definition at line 353 of file CombinedDotFeatures.cpp.

bool insert_feature_obj ( CDotFeatures obj)

insert feature object

Parameters
objfeature object to insert
Returns
if inserting was successful

Definition at line 302 of file CombinedDotFeatures.cpp.

void list_feature_objs ( )

list feature objects

Definition at line 45 of file CombinedDotFeatures.cpp.

void set_subfeature_weights ( float64_t weights,
int32_t  num_weights 
)
virtual

set subfeature weights

Parameters
weightsnew subfeature weights
num_weightsnumber of subfeature weights

Definition at line 373 of file CombinedDotFeatures.cpp.

void update_dim_feature_space_and_num_vec ( )
protected

update total number of dimensions and vectors

Definition at line 63 of file CombinedDotFeatures.cpp.

Member Data Documentation

CList* feature_list
protected

feature list

Definition at line 305 of file CombinedDotFeatures.h.

int32_t num_dimensions
protected

total number of dimensions

Definition at line 310 of file CombinedDotFeatures.h.

int32_t num_vectors
protected

total number of vectors

Definition at line 308 of file CombinedDotFeatures.h.


The documentation for this class was generated from the following files:

SHOGUN Machine Learning Toolbox - Documentation