The class FKFeatures implements Fischer kernel features obtained from two Hidden Markov models.
It was used in
K. Tsuda, M. Kawanabe, G. Raetsch, S. Sonnenburg, and K.R. Mueller. A new discriminative kernel from probabilistic models. Neural Computation, 14:2397-2414, 2002.
which also has the details.
Note that FK-features are computed on the fly, so to be effective feature caching should be enabled.
It inherits its functionality from CSimpleFeatures, which should be consulted for further reference.
Definition at line 41 of file FKFeatures.h.
Public Member Functions |
| CFKFeatures () |
| CFKFeatures (int32_t size, CHMM *p, CHMM *n) |
| CFKFeatures (const CFKFeatures &orig) |
virtual | ~CFKFeatures () |
void | set_models (CHMM *p, CHMM *n) |
void | set_a (float64_t a) |
float64_t | get_a () |
virtual float64_t * | set_feature_matrix () |
float64_t | set_opt_a (float64_t a=-1) |
float64_t | get_weight_a () |
virtual const char * | get_name () const |
| CSimpleFeatures (int32_t size=0) |
| CSimpleFeatures (const CSimpleFeatures &orig) |
| CSimpleFeatures (SGMatrix< float64_t > matrix) |
| CSimpleFeatures (float64_t *src, int32_t num_feat, int32_t num_vec) |
| CSimpleFeatures (CFile *loader) |
virtual CFeatures * | duplicate () const |
virtual | ~CSimpleFeatures () |
void | free_feature_matrix () |
void | free_features () |
float64_t * | get_feature_vector (int32_t num, int32_t &len, bool &dofree) |
SGVector< float64_t > | get_feature_vector (int32_t num) |
void | set_feature_vector (SGVector< float64_t > vector, int32_t num) |
void | free_feature_vector (float64_t *feat_vec, int32_t num, bool dofree) |
void | free_feature_vector (SGVector< float64_t > vec, int32_t num) |
void | vector_subset (int32_t *idx, int32_t idx_len) |
void | feature_subset (int32_t *idx, int32_t idx_len) |
void | get_feature_matrix (float64_t **dst, int32_t *num_feat, int32_t *num_vec) |
SGMatrix< float64_t > | get_feature_matrix () |
float64_t * | get_feature_matrix (int32_t &num_feat, int32_t &num_vec) |
SGMatrix< float64_t > | steal_feature_matrix () |
void | set_feature_matrix (SGMatrix< float64_t > matrix) |
virtual void | set_feature_matrix (float64_t *fm, int32_t num_feat, int32_t num_vec) |
CSimpleFeatures< float64_t > * | get_transposed () |
float64_t * | get_transposed (int32_t &num_feat, int32_t &num_vec) |
virtual void | copy_feature_matrix (SGMatrix< float64_t > src) |
void | obtain_from_dot (CDotFeatures *df) |
virtual bool | apply_preprocessor (bool force_preprocessing=false) |
virtual int32_t | get_size () |
virtual int32_t | get_num_vectors () const |
int32_t | get_num_features () |
void | set_num_features (int32_t num) |
void | set_num_vectors (int32_t num) |
void | initialize_cache () |
virtual EFeatureClass | get_feature_class () |
virtual EFeatureType | get_feature_type () |
virtual bool | reshape (int32_t p_num_features, int32_t p_num_vectors) |
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 bool | Align_char_features (CStringFeatures< char > *cf, CStringFeatures< char > *Ref, float64_t gapCost) |
virtual void | load (CFile *loader) |
virtual void | save (CFile *saver) |
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 * | copy_subset (SGVector< index_t > indices) |
| CDotFeatures (int32_t size=0) |
| CDotFeatures (const CDotFeatures &orig) |
| CDotFeatures (CFile *loader) |
virtual | ~CDotFeatures () |
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) |
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 () |
| 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 () |
void | list_feature_obj () |
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 |
| 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) |