SHOGUN  v1.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Protected Member Functions | Protected Attributes
CImplicitWeightedSpecFeatures Class Reference

Detailed Description

Features that compute the Weighted Spectrum Kernel feature space explicitly.

See also:
CWeightedCommWordStringKernel

Definition at line 30 of file ImplicitWeightedSpecFeatures.h.

Inheritance diagram for CImplicitWeightedSpecFeatures:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 CImplicitWeightedSpecFeatures ()
 CImplicitWeightedSpecFeatures (CStringFeatures< uint16_t > *str, bool normalize=true)
 CImplicitWeightedSpecFeatures (const CImplicitWeightedSpecFeatures &orig)
virtual ~CImplicitWeightedSpecFeatures ()
virtual CFeaturesduplicate () 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 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_num_vectors () const
virtual int32_t get_size ()
bool set_wd_weights ()
bool set_weights (float64_t *w, int32_t d)
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 const char * get_name () const

Protected Member Functions

void compute_normalization_const ()

Protected Attributes

CStringFeatures< uint16_t > * strings
float64_tnormalization_factors
int32_t num_strings
int32_t alphabet_size
int32_t degree
int32_t spec_size
float64_tspec_weights

Constructor & Destructor Documentation

default constructor

Definition at line 16 of file ImplicitWeightedSpecFeatures.cpp.

CImplicitWeightedSpecFeatures ( CStringFeatures< uint16_t > *  str,
bool  normalize = true 
)

constructor

Parameters:
strstringfeatures (of words)
normalizewhether to use sqrtdiag normalization

Definition at line 32 of file ImplicitWeightedSpecFeatures.cpp.

copy constructor

Definition at line 94 of file ImplicitWeightedSpecFeatures.cpp.

Definition at line 102 of file ImplicitWeightedSpecFeatures.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 211 of file ImplicitWeightedSpecFeatures.cpp.

void compute_normalization_const ( ) [protected]

compute the sqrt diag normalization constant per string

See also:
CSqrtDiagKernelNormalization

Definition at line 51 of file ImplicitWeightedSpecFeatures.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 172 of file ImplicitWeightedSpecFeatures.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 109 of file ImplicitWeightedSpecFeatures.cpp.

CFeatures * duplicate ( ) const [virtual]

duplicate feature object

Returns:
feature object

Implements CFeatures.

Definition at line 243 of file ImplicitWeightedSpecFeatures.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 304 of file ImplicitWeightedSpecFeatures.cpp.

int32_t get_dim_feature_space ( ) const [virtual]

obtain the dimensionality of the feature space

(not mix this up with the dimensionality of the input space, usually obtained via get_num_features())

Returns:
dimensionality

Implements CDotFeatures.

Definition at line 248 of file ImplicitWeightedSpecFeatures.cpp.

get feature class

Returns:
feature class

Implements CFeatures.

Definition at line 330 of file ImplicitWeightedSpecFeatures.cpp.

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 253 of file ImplicitWeightedSpecFeatures.cpp.

get feature type

Returns:
templated feature type

Implements CFeatures.

Definition at line 325 of file ImplicitWeightedSpecFeatures.cpp.

virtual const char* get_name ( ) const [virtual]
Returns:
object name

Implements CSGObject.

Definition at line 193 of file ImplicitWeightedSpecFeatures.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 274 of file ImplicitWeightedSpecFeatures.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 313 of file ImplicitWeightedSpecFeatures.cpp.

int32_t get_num_vectors ( ) const [virtual]

get number of strings

Returns:
number of strings

Implements CFeatures.

Definition at line 335 of file ImplicitWeightedSpecFeatures.cpp.

int32_t get_size ( ) [virtual]

get size of one element

Returns:
size of one element

Implements CFeatures.

Definition at line 340 of file ImplicitWeightedSpecFeatures.cpp.

bool set_wd_weights ( )

set weighted degree weights

Returns:
if setting was successful

Definition at line 62 of file ImplicitWeightedSpecFeatures.cpp.

bool set_weights ( float64_t w,
int32_t  d 
)

set custom weights (swig compatible)

Parameters:
wweights
ddegree (must match number of weights)
Returns:
if setting was successful

Definition at line 83 of file ImplicitWeightedSpecFeatures.cpp.


Member Data Documentation

int32_t alphabet_size [protected]

size of alphabet

Definition at line 211 of file ImplicitWeightedSpecFeatures.h.

int32_t degree [protected]

degree

Definition at line 214 of file ImplicitWeightedSpecFeatures.h.

use sqrtdiag normalization

Definition at line 207 of file ImplicitWeightedSpecFeatures.h.

int32_t num_strings [protected]

number of strings

Definition at line 209 of file ImplicitWeightedSpecFeatures.h.

int32_t spec_size [protected]

size of k-mer spectrum

Definition at line 216 of file ImplicitWeightedSpecFeatures.h.

float64_t* spec_weights [protected]

weights for each of the subkernels of degree 1...d

Definition at line 219 of file ImplicitWeightedSpecFeatures.h.

CStringFeatures<uint16_t>* strings [protected]

reference to strings

Definition at line 204 of file ImplicitWeightedSpecFeatures.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

SHOGUN Machine Learning Toolbox - Documentation