SHOGUN
v3.0.0
|
Template class StringFeatures implements a list of strings.
As this class is a template the underlying storage type is quite arbitrary and not limited to character strings, but could also be sequences of floating point numbers etc. Strings differ from matrices (cf. CDenseFeatures) in a way that the dimensionality of the feature vectors (i.e. the strings) is not fixed; it may vary between strings.
Most string kernels require StringFeatures but a number of them actually requires strings to have same length.
When preprocessors are attached to string features they may shorten the string, but are not allowed to return strings longer than max_string_length, as some algorithms depend on this.
Also note that string features cannot currently be computed on-the-fly.
(Partly) subset access is supported for this feature type. Simple use the (inherited) add_subset(), remove_subset() functions. If done, all calls that work with features are translated to the subset. See comments to find out whether it is supported for that method. See also CFeatures class documentation
Definition at line 72 of file StringFeatures.h.
Public Member Functions | |
CStringFeatures () | |
CStringFeatures (EAlphabet alpha) | |
CStringFeatures (SGStringList< ST > string_list, EAlphabet alpha) | |
CStringFeatures (SGStringList< ST > string_list, CAlphabet *alpha) | |
CStringFeatures (CAlphabet *alpha) | |
CStringFeatures (const CStringFeatures &orig) | |
CStringFeatures (CFile *loader, EAlphabet alpha=DNA) | |
virtual | ~CStringFeatures () |
virtual void | cleanup () |
virtual void | cleanup_feature_vector (int32_t num) |
virtual void | cleanup_feature_vectors (int32_t start, int32_t stop) |
virtual EFeatureClass | get_feature_class () const |
virtual EFeatureType | get_feature_type () const |
CAlphabet * | get_alphabet () |
virtual CFeatures * | duplicate () const |
SGVector< ST > | get_feature_vector (int32_t num) |
void | set_feature_vector (SGVector< ST > vector, int32_t num) |
void | enable_on_the_fly_preprocessing () |
void | disable_on_the_fly_preprocessing () |
ST * | get_feature_vector (int32_t num, int32_t &len, bool &dofree) |
CStringFeatures< ST > * | get_transposed () |
SGString< ST > * | get_transposed (int32_t &num_feat, int32_t &num_vec) |
void | free_feature_vector (ST *feat_vec, int32_t num, bool dofree) |
void | free_feature_vector (SGVector< ST > feat_vec, int32_t num) |
virtual ST | get_feature (int32_t vec_num, int32_t feat_num) |
virtual int32_t | get_vector_length (int32_t vec_num) |
virtual int32_t | get_max_vector_length () |
virtual int32_t | get_num_vectors () const |
floatmax_t | get_num_symbols () |
floatmax_t | get_max_num_symbols () |
floatmax_t | get_original_num_symbols () |
int32_t | get_order () |
ST | get_masked_symbols (ST symbol, uint8_t mask) |
ST | shift_offset (ST offset, int32_t amount) |
ST | shift_symbol (ST symbol, int32_t amount) |
virtual void | load (CFile *loader) |
void | load_ascii_file (char *fname, bool remap_to_bin=true, EAlphabet ascii_alphabet=DNA, EAlphabet binary_alphabet=RAWDNA) |
bool | load_fasta_file (const char *fname, bool ignore_invalid=false) |
bool | load_fastq_file (const char *fname, bool ignore_invalid=false, bool bitremap_in_single_string=false) |
bool | load_from_directory (char *dirname) |
void | set_features (SGStringList< ST > feats) |
bool | set_features (SGString< ST > *p_features, int32_t p_num_vectors, int32_t p_max_string_length) |
bool | append_features (CStringFeatures< ST > *sf) |
bool | append_features (SGString< ST > *p_features, int32_t p_num_vectors, int32_t p_max_string_length) |
SGStringList< ST > | get_features () |
virtual SGString< ST > * | get_features (int32_t &num_str, int32_t &max_str_len) |
virtual SGString< ST > * | copy_features (int32_t &num_str, int32_t &max_str_len) |
virtual void | get_features (SGString< ST > **dst, int32_t *num_str) |
virtual void | save (CFile *writer) |
virtual bool | load_compressed (char *src, bool decompress) |
virtual bool | save_compressed (char *dest, E_COMPRESSION_TYPE compression, int level) |
virtual bool | apply_preprocessor (bool force_preprocessing=false) |
int32_t | obtain_by_sliding_window (int32_t window_size, int32_t step_size, int32_t skip=0) |
int32_t | obtain_by_position_list (int32_t window_size, CDynamicArray< int32_t > *positions, int32_t skip=0) |
bool | obtain_from_char (CStringFeatures< char > *sf, int32_t start, int32_t p_order, int32_t gap, bool rev) |
template<class CT > | |
bool | obtain_from_char_features (CStringFeatures< CT > *sf, int32_t start, int32_t p_order, int32_t gap, bool rev) |
bool | have_same_length (int32_t len=-1) |
void | embed_features (int32_t p_order) |
void | compute_symbol_mask_table (int64_t max_val) |
void | unembed_word (ST word, uint8_t *seq, int32_t len) |
ST | embed_word (ST *seq, int32_t len) |
void | determine_maximum_string_length () |
virtual void | set_feature_vector (int32_t num, ST *string, int32_t len) |
virtual void | get_histogram (float64_t **hist, int32_t *rows, int32_t *cols, bool normalize=true) |
virtual void | create_random (float64_t *hist, int32_t rows, int32_t cols, int32_t num_vec) |
virtual CFeatures * | copy_subset (SGVector< index_t > indices) |
virtual const char * | get_name () const |
virtual void | subset_changed_post () |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
EFeatureType | get_feature_type () const |
template<> | |
bool | get_masked_symbols (bool symbol, uint8_t mask) |
template<> | |
float32_t | get_masked_symbols (float32_t symbol, uint8_t mask) |
template<> | |
float64_t | get_masked_symbols (float64_t symbol, uint8_t mask) |
template<> | |
floatmax_t | get_masked_symbols (floatmax_t symbol, uint8_t mask) |
template<> | |
bool | shift_offset (bool symbol, int32_t amount) |
template<> | |
float32_t | shift_offset (float32_t symbol, int32_t amount) |
template<> | |
float64_t | shift_offset (float64_t symbol, int32_t amount) |
template<> | |
floatmax_t | shift_offset (floatmax_t symbol, int32_t amount) |
template<> | |
bool | shift_symbol (bool symbol, int32_t amount) |
template<> | |
float32_t | shift_symbol (float32_t symbol, int32_t amount) |
template<> | |
float64_t | shift_symbol (float64_t symbol, int32_t amount) |
template<> | |
floatmax_t | shift_symbol (floatmax_t symbol, int32_t amount) |
template<> | |
bool | obtain_from_char_features (CStringFeatures< CT > *sf, int32_t start, int32_t p_order, int32_t gap, bool rev) |
template<> | |
bool | obtain_from_char_features (CStringFeatures< CT > *sf, int32_t start, int32_t p_order, int32_t gap, bool rev) |
template<> | |
bool | obtain_from_char_features (CStringFeatures< CT > *sf, int32_t start, int32_t p_order, int32_t gap, bool rev) |
template<> | |
void | embed_features (int32_t p_order) |
template<> | |
void | embed_features (int32_t p_order) |
template<> | |
void | embed_features (int32_t p_order) |
template<> | |
void | compute_symbol_mask_table (int64_t max_val) |
template<> | |
void | compute_symbol_mask_table (int64_t max_val) |
template<> | |
void | compute_symbol_mask_table (int64_t max_val) |
template<> | |
float32_t | embed_word (float32_t *seq, int32_t len) |
template<> | |
float64_t | embed_word (float64_t *seq, int32_t len) |
template<> | |
floatmax_t | embed_word (floatmax_t *seq, int32_t len) |
template<> | |
void | unembed_word (float32_t word, uint8_t *seq, int32_t len) |
template<> | |
void | unembed_word (float64_t word, uint8_t *seq, int32_t len) |
template<> | |
void | unembed_word (floatmax_t word, uint8_t *seq, int32_t len) |
virtual void | add_preprocessor (CPreprocessor *p) |
virtual void | del_preprocessor (int32_t num) |
CPreprocessor * | get_preprocessor (int32_t num) const |
void | set_preprocessed (int32_t num) |
bool | is_preprocessed (int32_t num) const |
int32_t | get_num_preprocessed () const |
int32_t | get_num_preprocessors () const |
void | clean_preprocessors () |
void | list_preprocessors () |
int32_t | get_cache_size () const |
virtual bool | reshape (int32_t num_features, int32_t num_vectors) |
void | list_feature_obj () const |
bool | check_feature_compatibility (CFeatures *f) const |
bool | has_property (EFeatureProperty p) const |
void | set_property (EFeatureProperty p) |
void | unset_property (EFeatureProperty p) |
virtual CFeatures * | create_merged_copy (CList *others) |
virtual CFeatures * | create_merged_copy (CFeatures *other) |
virtual void | add_subset (SGVector< index_t > subset) |
virtual void | remove_subset () |
virtual void | remove_all_subsets () |
virtual CSubsetStack * | get_subset_stack () |
virtual CSGObject * | shallow_copy () const |
virtual CSGObject * | deep_copy () const |
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="", int32_t param_version=Version::get_version_parameter()) |
virtual bool | load_serializable (CSerializableFile *file, const char *prefix="", int32_t param_version=Version::get_version_parameter()) |
DynArray< TParameter * > * | load_file_parameters (const SGParamInfo *param_info, int32_t file_version, CSerializableFile *file, const char *prefix="") |
DynArray< TParameter * > * | load_all_file_parameters (int32_t file_version, int32_t current_version, CSerializableFile *file, const char *prefix="") |
void | map_parameters (DynArray< TParameter * > *param_base, int32_t &base_version, DynArray< const SGParamInfo * > *target_param_infos) |
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 () |
SGStringList< char > | get_modelsel_names () |
void | print_modsel_params () |
char * | get_modsel_param_descr (const char *param_name) |
index_t | get_modsel_param_index (const char *param_name) |
void | build_gradient_parameter_dictionary (CMap< TParameter *, CSGObject * > *dict) |
virtual bool | update_parameter_hash () |
virtual bool | equals (CSGObject *other, float64_t accuracy=0.0) |
virtual CSGObject * | clone () |
Static Public Member Functions | |
static ST * | get_zero_terminated_string_copy (SGString< ST > str) |
Public Attributes | |
SGIO * | io |
Parallel * | parallel |
Version * | version |
Parameter * | m_parameters |
Parameter * | m_model_selection_parameters |
Parameter * | m_gradient_parameters |
ParameterMap * | m_parameter_map |
uint32_t | m_hash |
Protected Member Functions | |
virtual ST * | compute_feature_vector (int32_t num, int32_t &len) |
virtual TParameter * | migrate (DynArray< TParameter * > *param_base, const SGParamInfo *target) |
virtual void | one_to_one_migration_prepare (DynArray< TParameter * > *param_base, const SGParamInfo *target, TParameter *&replacement, TParameter *&to_migrate, char *old_name=NULL) |
virtual void | load_serializable_pre () throw (ShogunException) |
virtual void | load_serializable_post () throw (ShogunException) |
virtual void | save_serializable_pre () throw (ShogunException) |
virtual void | save_serializable_post () throw (ShogunException) |
Protected Attributes | |
CAlphabet * | alphabet |
int32_t | num_vectors |
SGString< ST > * | features |
ST * | single_string |
int32_t | length_of_single_string |
length of prior single string | |
int32_t | max_string_length |
floatmax_t | num_symbols |
number of used symbols | |
floatmax_t | original_num_symbols |
original number of used symbols (before higher order mapping) | |
int32_t | order |
order used in higher order mapping | |
ST * | symbol_mask_table |
order used in higher order mapping | |
int32_t | symbol_mask_table_len |
order used in higher order mapping | |
bool | preprocess_on_get |
preprocess on-the-fly? | |
CCache< ST > * | feature_cache |
CSubsetStack * | m_subset_stack |
CStringFeatures | ( | ) |
default constructor
Definition at line 20 of file StringFeatures.cpp.
CStringFeatures | ( | EAlphabet | alpha | ) |
constructor
alpha | alphabet (type) to use for string features |
Definition at line 26 of file StringFeatures.cpp.
CStringFeatures | ( | SGStringList< ST > | string_list, |
EAlphabet | alpha | ||
) |
constructor
string_list | |
alpha | alphabet (type) to use for string features |
Definition at line 36 of file StringFeatures.cpp.
CStringFeatures | ( | SGStringList< ST > | string_list, |
CAlphabet * | alpha | ||
) |
constructor
string_list | |
alpha | an actual alphabet |
Definition at line 48 of file StringFeatures.cpp.
CStringFeatures | ( | CAlphabet * | alpha | ) |
constructor
alpha | alphabet to use for string features |
Definition at line 60 of file StringFeatures.cpp.
CStringFeatures | ( | const CStringFeatures< ST > & | orig | ) |
copy constructor
Definition at line 72 of file StringFeatures.cpp.
CStringFeatures | ( | CFile * | loader, |
EAlphabet | alpha = DNA |
||
) |
constructor
loader | File object via which to load data |
alpha | alphabet (type) to use for string features |
Definition at line 114 of file StringFeatures.cpp.
|
virtual |
Definition at line 129 of file StringFeatures.cpp.
|
virtualinherited |
adds a subset of indices on top of the current subsets (possibly subset o subset. Calls subset_changed_post() afterwards
subset | subset of indices to add |
Reimplemented in CCombinedFeatures.
Definition at line 307 of file Features.cpp.
bool append_features | ( | CStringFeatures< ST > * | sf | ) |
append features If the given string features have a subset, only this will be copied
not possible with subset
sf | features to append |
Definition at line 891 of file StringFeatures.cpp.
bool append_features | ( | SGString< ST > * | p_features, |
int32_t | p_num_vectors, | ||
int32_t | p_max_string_length | ||
) |
append features
not possible with subset
p_features | features to append |
p_num_vectors | number of vectors |
p_max_string_length | maximum string length |
note that p_features will be SG_FREE()'d on success
Definition at line 913 of file StringFeatures.cpp.
|
virtual |
apply preprocessor
force_preprocessing | if preprocssing shall be forced |
Definition at line 1169 of file StringFeatures.cpp.
|
inherited |
Builds a dictionary of all parameters in SGObject as well of those of SGObjects that are parameters of this object. Dictionary maps parameters to the objects that own them.
dict | dictionary of parameters to be built. |
Definition at line 1196 of file SGObject.cpp.
|
inherited |
check feature compatibility
f | features to check for compatibility |
Definition at line 280 of file Features.cpp.
|
inherited |
clears all preprocs
Definition at line 113 of file Features.cpp.
|
virtual |
cleanup string features.
removes any subset before
Reimplemented in CStringFileFeatures< ST >.
Definition at line 136 of file StringFeatures.cpp.
|
virtual |
cleanup a single feature vector
possible with subset
num | number of the vector |
Reimplemented in CStringFileFeatures< ST >.
Definition at line 174 of file StringFeatures.cpp.
|
virtual |
cleanup multiple feature vectors
possible with subset
start | index of first vector to be cleaned |
stop | index of the last vector to be cleaned |
Definition at line 189 of file StringFeatures.cpp.
|
virtualinherited |
Creates a clone of the current object. This is done via recursively traversing all parameters, which corresponds to a deep copy. Calling equals on the cloned object always returns true although none of the memory of both objects overlaps.
Definition at line 1313 of file SGObject.cpp.
|
protectedvirtual |
compute feature vector for sample num if target is set the vector is written to target len is returned by reference
possible with subset
num | which vector |
len | length of vector |
Definition at line 1643 of file StringFeatures.cpp.
void compute_symbol_mask_table | ( | int64_t | max_val | ) |
compute symbol mask table
required to access bit-based symbols
not implemented for subset
Definition at line 1366 of file StringFeatures.cpp.
void compute_symbol_mask_table | ( | int64_t | max_val | ) |
Definition at line 1881 of file StringFeatures.cpp.
void compute_symbol_mask_table | ( | int64_t | max_val | ) |
Definition at line 1884 of file StringFeatures.cpp.
void compute_symbol_mask_table | ( | int64_t | max_val | ) |
Definition at line 1887 of file StringFeatures.cpp.
|
virtual |
copy_features
possible with subset
num_str | number of strings (returned) |
max_str_len | maximal string length (returned) |
Definition at line 984 of file StringFeatures.cpp.
Creates a new CFeatures instance containing copies of the elements which are specified by the provided indices.
possible with subset
indices | indices of feature elements to copy |
Reimplemented from CFeatures.
Definition at line 1602 of file StringFeatures.cpp.
Takes a list of feature instances and returns a new instance being a concatenation of a copy of this instace's data and the given instancess data. Note that the feature types have to be equal.
NOT IMPLEMENTED!
others | list of feature objects to append |
Reimplemented in CDenseFeatures< ST >, CDenseFeatures< uint32_t >, CDenseFeatures< float64_t >, CDenseFeatures< T >, and CDenseFeatures< uint16_t >.
Definition at line 229 of file Features.h.
Convenience method for method with same name and list as parameter.
NOT IMPLEMENTED!
other | feature object to append |
Reimplemented in CDenseFeatures< ST >, CDenseFeatures< uint32_t >, CDenseFeatures< float64_t >, CDenseFeatures< T >, CDenseFeatures< uint16_t >, and CCombinedFeatures.
Definition at line 243 of file Features.h.
|
virtual |
create some random strings based on normalized histogram
not possible with subset
Definition at line 1500 of file StringFeatures.cpp.
|
virtualinherited |
A deep copy. All the instance variables will also be copied.
Definition at line 160 of file SGObject.h.
|
virtualinherited |
delete preprocessor from list
num | index of preprocessor in list |
Definition at line 119 of file Features.cpp.
void determine_maximum_string_length | ( | ) |
determine new maximum string length
possible with subset
Definition at line 1423 of file StringFeatures.cpp.
void disable_on_the_fly_preprocessing | ( | ) |
call this to disable on the fly feature preprocessing on get_feature_vector. Useful when you manually apply preprocessors.
Definition at line 269 of file StringFeatures.cpp.
|
virtual |
duplicate feature object
Implements CFeatures.
Definition at line 217 of file StringFeatures.cpp.
void embed_features | ( | int32_t | p_order | ) |
embed string features in bit representation in-place
not implemented for subset
Definition at line 1312 of file StringFeatures.cpp.
void embed_features | ( | int32_t | p_order | ) |
Definition at line 1871 of file StringFeatures.cpp.
void embed_features | ( | int32_t | p_order | ) |
Definition at line 1874 of file StringFeatures.cpp.
void embed_features | ( | int32_t | p_order | ) |
Definition at line 1877 of file StringFeatures.cpp.
ST embed_word | ( | ST * | seq, |
int32_t | len | ||
) |
embed a single word
seq | sequence of size len in a bitfield |
len |
Definition at line 1410 of file StringFeatures.cpp.
Definition at line 1891 of file StringFeatures.cpp.
Definition at line 1895 of file StringFeatures.cpp.
floatmax_t embed_word | ( | floatmax_t * | seq, |
int32_t | len | ||
) |
Definition at line 1899 of file StringFeatures.cpp.
void enable_on_the_fly_preprocessing | ( | ) |
call this to preprocess string features upon get_feature_vector
Definition at line 264 of file StringFeatures.cpp.
Recursively compares the current SGObject to another one. Compares all registered numerical parameters, recursion upon complex (SGObject) parameters. Does not compare pointers!
May be overwritten but please do with care! Should not be necessary in most cases.
other | object to compare with |
accuracy | accuracy to use for comparison (optional) |
Definition at line 1217 of file SGObject.cpp.
void free_feature_vector | ( | ST * | feat_vec, |
int32_t | num, | ||
bool | dofree | ||
) |
free feature vector
possible with subset
feat_vec | feature vector to free |
num | index in feature cache, possibly from subset |
dofree | if vector should be really deleted |
Definition at line 356 of file StringFeatures.cpp.
void free_feature_vector | ( | SGVector< ST > | feat_vec, |
int32_t | num | ||
) |
free feature vector
possible with subset
feat_vec | feature vector to free |
num | index in feature cache, possibly from subset |
Definition at line 374 of file StringFeatures.cpp.
CAlphabet * get_alphabet | ( | ) |
get alphabet used in string features
Definition at line 211 of file StringFeatures.cpp.
|
inherited |
|
virtual |
get feature
possible with subset
vec_num | which vector |
feat_num | which feature, possibly from subset |
Definition at line 389 of file StringFeatures.cpp.
|
virtual |
get feature class
Implements CFeatures.
Definition at line 207 of file StringFeatures.cpp.
|
virtual |
get feature type
Implements CFeatures.
Definition at line 209 of file StringFeatures.cpp.
|
virtual |
get feature type the char feature can deal with
Implements CFeatures.
Definition at line 1701 of file StringFeatures.cpp.
|
virtual |
get feature type the char feature can deal with
Implements CFeatures.
Definition at line 1710 of file StringFeatures.cpp.
|
virtual |
get feature type the BYTE feature can deal with
Implements CFeatures.
Definition at line 1719 of file StringFeatures.cpp.
|
virtual |
get feature type the SHORT feature can deal with
Implements CFeatures.
Definition at line 1728 of file StringFeatures.cpp.
|
virtual |
get feature type the WORD feature can deal with
Implements CFeatures.
Definition at line 1737 of file StringFeatures.cpp.
|
virtual |
get feature type the INT feature can deal with
Implements CFeatures.
Definition at line 1746 of file StringFeatures.cpp.
|
virtual |
get feature type the INT feature can deal with
Implements CFeatures.
Definition at line 1755 of file StringFeatures.cpp.
|
virtual |
get feature type the LONG feature can deal with
Implements CFeatures.
Definition at line 1764 of file StringFeatures.cpp.
|
virtual |
get feature type the ULONG feature can deal with
Implements CFeatures.
Definition at line 1773 of file StringFeatures.cpp.
|
virtual |
get feature type the SHORTREAL feature can deal with
Implements CFeatures.
Definition at line 1782 of file StringFeatures.cpp.
|
virtual |
get feature type the DREAL feature can deal with
Implements CFeatures.
Definition at line 1791 of file StringFeatures.cpp.
|
virtual |
get feature type the LONGREAL feature can deal with
Implements CFeatures.
Definition at line 1800 of file StringFeatures.cpp.
SGVector< ST > get_feature_vector | ( | int32_t | num | ) |
get string for selected example num
possible with subset
num | index of the string |
Definition at line 222 of file StringFeatures.cpp.
ST * get_feature_vector | ( | int32_t | num, |
int32_t & | len, | ||
bool & | dofree | ||
) |
get feature vector for sample num
possible with subset
num | index of feature vector |
len | length is returned by reference |
dofree | whether returned vector must be freed by caller via free_feature_vector |
Definition at line 274 of file StringFeatures.cpp.
SGStringList< ST > get_features | ( | ) |
|
virtual |
get_features
not possible with subset
num_str | number of strings (returned) |
max_str_len | maximal string length (returned) |
Definition at line 974 of file StringFeatures.cpp.
|
virtual |
get_features (swig compatible)
possible with subset
dst | string features (returned) |
num_str | number of strings (returned) |
Definition at line 1006 of file StringFeatures.cpp.
|
inherited |
|
inherited |
|
inherited |
|
virtual |
compute histogram over strings
possible with subset
Definition at line 1458 of file StringFeatures.cpp.
ST get_masked_symbols | ( | ST | symbol, |
uint8_t | mask | ||
) |
a higher order mapped symbol will be shaped such that the symbols specified by bits in the mask will be returned.
symbol | symbol to mask |
mask | mask to apply |
Definition at line 432 of file StringFeatures.cpp.
bool get_masked_symbols | ( | bool | symbol, |
uint8_t | mask | ||
) |
Definition at line 1805 of file StringFeatures.cpp.
Definition at line 1809 of file StringFeatures.cpp.
Definition at line 1813 of file StringFeatures.cpp.
floatmax_t get_masked_symbols | ( | floatmax_t | symbol, |
uint8_t | mask | ||
) |
Definition at line 1817 of file StringFeatures.cpp.
floatmax_t get_max_num_symbols | ( | ) |
get maximum number of symbols
Note: floatmax_t sounds weird, but int64_t is not long enough (and there is no int128_t type)
Definition at line 426 of file StringFeatures.cpp.
|
virtual |
get maximum vector length
this one is updated when a subset is set
Definition at line 414 of file StringFeatures.cpp.
|
inherited |
Definition at line 1100 of file SGObject.cpp.
|
inherited |
Returns description of a given parameter string, if it exists. SG_ERROR otherwise
param_name | name of the parameter |
Definition at line 1124 of file SGObject.cpp.
|
inherited |
Returns index of model selection parameter with provided index
param_name | name of model selection parameter |
Definition at line 1137 of file SGObject.cpp.
|
virtual |
Implements CSGObject.
Reimplemented in CStringFileFeatures< ST >.
Definition at line 643 of file StringFeatures.h.
|
inherited |
get the number of applied preprocs
Definition at line 100 of file Features.cpp.
|
inherited |
get number of preprocessors
Definition at line 152 of file Features.cpp.
floatmax_t get_num_symbols | ( | ) |
get number of symbols
Note: floatmax_t sounds weird, but LONG is not long enough
Definition at line 424 of file StringFeatures.cpp.
|
virtual |
Implements CFeatures.
Definition at line 419 of file StringFeatures.cpp.
int32_t get_order | ( | ) |
floatmax_t get_original_num_symbols | ( | ) |
number of symbols before higher order mapping
Definition at line 428 of file StringFeatures.cpp.
|
inherited |
get specified preprocessor
num | index of preprocessor in list |
Definition at line 90 of file Features.cpp.
|
virtualinherited |
CStringFeatures< ST > * get_transposed | ( | ) |
get a transposed copy of the features
possible with subset
Definition at line 312 of file StringFeatures.cpp.
SGString< ST > * get_transposed | ( | int32_t & | num_feat, |
int32_t & | num_vec | ||
) |
compute and return the transpose of string features matrix which will be prepocessed. num_feat, num_vectors are returned by reference caller has to clean up
note that strings all have to have same length
possible with subset
num_feat | number of features in matrix |
num_vec | number of vectors in matrix |
Definition at line 325 of file StringFeatures.cpp.
|
virtual |
get vector length
possible with subset
vec_num | which vector, possibly from subset |
Definition at line 403 of file StringFeatures.cpp.
|
static |
get a zero terminated copy of the string
str | the string to copy |
note that this function is only sensible for character strings
Definition at line 1435 of file StringFeatures.cpp.
|
inherited |
check if features have given property
p | feature property |
Definition at line 292 of file Features.cpp.
bool have_same_length | ( | int32_t | len = -1 | ) |
check if length of each vector in this feature object equals the given length. if existant, only subset is checked
possible for subset
len | vector length to check against |
Definition at line 1293 of file StringFeatures.cpp.
|
virtualinherited |
If the SGSerializable is a class template then TRUE will be returned and GENERIC is set to the type of the generic.
generic | set to the type of the generic if returning TRUE |
Definition at line 268 of file SGObject.cpp.
|
inherited |
get whether specified preprocessor was already applied
num | index of preprocessor in list |
Definition at line 146 of file Features.cpp.
|
inherited |
list feature object
Definition at line 168 of file Features.cpp.
|
inherited |
print preprocessors
Definition at line 128 of file Features.cpp.
|
virtual |
load features from file
loader | File object via which to load data |
Reimplemented from CFeatures.
|
inherited |
maps all parameters of this instance to the provided file version and loads all parameter data from the file into an array, which is sorted (basically calls load_file_parameter(...) for all parameters and puts all results into a sorted array)
file_version | parameter version of the file |
current_version | version from which mapping begins (you want to use Version::get_version_parameter() for this in most cases) |
file | file to load from |
prefix | prefix for members |
Definition at line 673 of file SGObject.cpp.
void load_ascii_file | ( | char * | fname, |
bool | remap_to_bin = true , |
||
EAlphabet | ascii_alphabet = DNA , |
||
EAlphabet | binary_alphabet = RAWDNA |
||
) |
load ascii line-based string features from file.
any subset is removed before
fname | filename to load from |
remap_to_bin | if translation to other binary alphabet should be performed |
ascii_alphabet | src alphabet |
binary_alphabet | alphabet to translate to |
Definition at line 450 of file StringFeatures.cpp.
|
virtual |
load compressed features from file
any subset is removed before
src | filename to load from |
decompress | whether to decompress on loading |
Definition at line 1014 of file StringFeatures.cpp.
bool load_fasta_file | ( | const char * | fname, |
bool | ignore_invalid = false |
||
) |
load fasta file as string features
any subset is removed before
fname | filename to load from |
ignore_invalid | if set to true, characters other than A,C,G,T are converted to A |
Definition at line 583 of file StringFeatures.cpp.
bool load_fastq_file | ( | const char * | fname, |
bool | ignore_invalid = false , |
||
bool | bitremap_in_single_string = false |
||
) |
load fastq file as string features
removes subset beforehand
fname | filename to load from |
ignore_invalid | if set to true, characters other than A,C,G,T are converted to A |
bitremap_in_single_string | if set to true, do binary embedding of symbols |
Definition at line 676 of file StringFeatures.cpp.
|
inherited |
loads some specified parameters from a file with a specified version The provided parameter info has a version which is recursively mapped until the file parameter version is reached. Note that there may be possibly multiple parameters in the mapping, therefore, a set of TParameter instances is returned
param_info | information of parameter |
file_version | parameter version of the file, must be <= provided parameter version |
file | file to load from |
prefix | prefix for members |
Definition at line 514 of file SGObject.cpp.
bool load_from_directory | ( | char * | dirname | ) |
load features from directory
*removes subset before
dirname | directory name to load from |
Definition at line 777 of file StringFeatures.cpp.
|
virtualinherited |
Load this object from file. If it will fail (returning FALSE) then this object will contain inconsistent data and should not be used!
file | where to load from |
prefix | prefix for members |
param_version | (optional) a parameter version different to (this is mainly for testing, better do not use) |
Definition at line 345 of file SGObject.cpp.
|
protectedvirtualinherited |
Can (optionally) be overridden to post-initialize some member variables which are not PARAMETER::ADD'ed. Make sure that at first the overridden method BASE_CLASS::LOAD_SERIALIZABLE_POST is called.
ShogunException | Will be thrown if an error occurres. |
Reimplemented in CKernel, CWeightedDegreePositionStringKernel, CList, CAlphabet, CLinearHMM, CGaussianKernel, CInverseMultiQuadricKernel, CCircularKernel, and CExponentialKernel.
Definition at line 1029 of file SGObject.cpp.
|
protectedvirtualinherited |
Can (optionally) be overridden to pre-initialize some member variables which are not PARAMETER::ADD'ed. Make sure that at first the overridden method BASE_CLASS::LOAD_SERIALIZABLE_PRE is called.
ShogunException | Will be thrown if an error occurres. |
Reimplemented in CDynamicArray< T >, CDynamicArray< float64_t >, CDynamicArray< float32_t >, CDynamicArray< int32_t >, CDynamicArray< char >, CDynamicArray< bool >, CDynamicArray< uint64_t >, and CDynamicObjectArray.
Definition at line 1024 of file SGObject.cpp.
|
inherited |
Takes a set of TParameter instances (base) with a certain version and a set of target parameter infos and recursively maps the base level wise to the current version using CSGObject::migrate(...). The base is replaced. After this call, the base version containing parameters should be of same version/type as the initial target parameter infos. Note for this to work, the migrate methods and all the internal parameter mappings have to match
param_base | set of TParameter instances that are mapped to the provided target parameter infos |
base_version | version of the parameter base |
target_param_infos | set of SGParamInfo instances that specify the target parameter base |
Definition at line 711 of file SGObject.cpp.
|
protectedvirtualinherited |
creates a new TParameter instance, which contains migrated data from the version that is provided. The provided parameter data base is used for migration, this base is a collection of all parameter data of the previous version. Migration is done FROM the data in param_base TO the provided param info Migration is always one version step. Method has to be implemented in subclasses, if no match is found, base method has to be called.
If there is an element in the param_base which equals the target, a copy of the element is returned. This represents the case when nothing has changed and therefore, the migrate method is not overloaded in a subclass
param_base | set of TParameter instances to use for migration |
target | parameter info for the resulting TParameter |
Definition at line 918 of file SGObject.cpp.
int32_t obtain_by_position_list | ( | int32_t | window_size, |
CDynamicArray< int32_t > * | positions, | ||
int32_t | skip = 0 |
||
) |
extracts windows of size window_size from first string using the positions in list
not implemented for subset
window_size | window size |
positions | positions |
skip | skip |
Definition at line 1230 of file StringFeatures.cpp.
int32_t obtain_by_sliding_window | ( | int32_t | window_size, |
int32_t | step_size, | ||
int32_t | skip = 0 |
||
) |
slides a window of size window_size over the current single string step_size is the amount by which the window is shifted. creates (string_len-window_size)/step_size many feature obj if skip is nonzero, skip the first 'skip' characters of each string
not implemented for subset
window_size | window size |
step_size | step size |
skip | skip |
Definition at line 1193 of file StringFeatures.cpp.
bool obtain_from_char | ( | CStringFeatures< char > * | sf, |
int32_t | start, | ||
int32_t | p_order, | ||
int32_t | gap, | ||
bool | rev | ||
) |
obtain string features from char features
wrapper for template method
any subset is removed before, subset of parameter sf is possible
sf | string features |
start | start |
p_order | order |
gap | gap |
rev | reverse |
Definition at line 1288 of file StringFeatures.cpp.
bool obtain_from_char_features | ( | CStringFeatures< CT > * | sf, |
int32_t | start, | ||
int32_t | p_order, | ||
int32_t | gap, | ||
bool | rev | ||
) |
template obtain from char features
any subset is removed before, subset of parameter sf is possible
sf | string features |
start | start |
p_order | order |
gap | gap |
rev | reverse |
Definition at line 1969 of file StringFeatures.cpp.
bool obtain_from_char_features | ( | CStringFeatures< CT > * | sf, |
int32_t | start, | ||
int32_t | p_order, | ||
int32_t | gap, | ||
bool | rev | ||
) |
Definition at line 1857 of file StringFeatures.cpp.
bool obtain_from_char_features | ( | CStringFeatures< CT > * | sf, |
int32_t | start, | ||
int32_t | p_order, | ||
int32_t | gap, | ||
bool | rev | ||
) |
Definition at line 1861 of file StringFeatures.cpp.
bool obtain_from_char_features | ( | CStringFeatures< CT > * | sf, |
int32_t | start, | ||
int32_t | p_order, | ||
int32_t | gap, | ||
bool | rev | ||
) |
Definition at line 1865 of file StringFeatures.cpp.
|
protectedvirtualinherited |
This method prepares everything for a one-to-one parameter migration. One to one here means that only ONE element of the parameter base is needed for the migration (the one with the same name as the target). Data is allocated for the target (in the type as provided in the target SGParamInfo), and a corresponding new TParameter instance is written to replacement. The to_migrate pointer points to the single needed TParameter instance needed for migration. If a name change happened, the old name may be specified by old_name. In addition, the m_delete_data flag of to_migrate is set to true. So if you want to migrate data, the only thing to do after this call is converting the data in the m_parameter fields. If unsure how to use - have a look into an example for this. (base_migration_type_conversion.cpp for example)
param_base | set of TParameter instances to use for migration |
target | parameter info for the resulting TParameter |
replacement | (used as output) here the TParameter instance which is returned by migration is created into |
to_migrate | the only source that is used for migration |
old_name | with this parameter, a name change may be specified |
Definition at line 858 of file SGObject.cpp.
|
inherited |
prints all parameter registered for model selection and their type
Definition at line 1076 of file SGObject.cpp.
|
virtualinherited |
prints registered parameters out
prefix | prefix for members |
Definition at line 280 of file SGObject.cpp.
|
virtualinherited |
removes all subsets Calls subset_changed_post() afterwards
Reimplemented in CCombinedFeatures.
Definition at line 319 of file Features.cpp.
|
virtualinherited |
removes that last added subset from subset stack, if existing Calls subset_changed_post() afterwards
Reimplemented in CCombinedFeatures.
Definition at line 313 of file Features.cpp.
|
virtualinherited |
in case there is a feature matrix allow for reshaping
NOT IMPLEMENTED!
num_features | new number of features |
num_vectors | new number of vectors |
Reimplemented in CDenseFeatures< ST >, CDenseFeatures< uint32_t >, CDenseFeatures< float64_t >, CDenseFeatures< T >, and CDenseFeatures< uint16_t >.
Definition at line 162 of file Features.cpp.
|
virtual |
save features to file
not possible with subset
writer | File object via which to save data |
Reimplemented from CFeatures.
|
virtual |
save compressed features to file
not possible with subset
dest | filename to save to |
compression | compressor to use |
level | compression level to use (1-9) |
Definition at line 1109 of file StringFeatures.cpp.
|
virtualinherited |
Save this object to file.
file | where to save the object; will be closed during returning if PREFIX is an empty string. |
prefix | prefix for members |
param_version | (optional) a parameter version different to (this is mainly for testing, better do not use) |
Definition at line 286 of file SGObject.cpp.
|
protectedvirtualinherited |
Can (optionally) be overridden to post-initialize some member variables which are not PARAMETER::ADD'ed. Make sure that at first the overridden method BASE_CLASS::SAVE_SERIALIZABLE_POST is called.
ShogunException | Will be thrown if an error occurres. |
Reimplemented in CKernel.
Definition at line 1039 of file SGObject.cpp.
|
protectedvirtualinherited |
Can (optionally) be overridden to pre-initialize some member variables which are not PARAMETER::ADD'ed. Make sure that at first the overridden method BASE_CLASS::SAVE_SERIALIZABLE_PRE is called.
ShogunException | Will be thrown if an error occurres. |
Reimplemented in CKernel, CDynamicArray< T >, CDynamicArray< float64_t >, CDynamicArray< float32_t >, CDynamicArray< int32_t >, CDynamicArray< char >, CDynamicArray< bool >, CDynamicArray< uint64_t >, and CDynamicObjectArray.
Definition at line 1034 of file SGObject.cpp.
void set_feature_vector | ( | SGVector< ST > | vector, |
int32_t | num | ||
) |
set string for selected example num
not possible with subset
vector | |
num | index of the string |
Definition at line 240 of file StringFeatures.cpp.
|
virtual |
set feature vector for sample num
possible with subset
num | index of feature vector |
string | string with the feature vector's content |
len | length of the string |
Definition at line 1444 of file StringFeatures.cpp.
void set_features | ( | SGStringList< ST > | feats | ) |
bool set_features | ( | SGString< ST > * | p_features, |
int32_t | p_num_vectors, | ||
int32_t | p_max_string_length | ||
) |
set features
not possible with subset
p_features | new features |
p_num_vectors | number of vectors |
p_max_string_length | maximum string length |
Definition at line 852 of file StringFeatures.cpp.
|
inherited |
set generic type to T
Definition at line 41 of file SGObject.cpp.
|
inherited |
|
inherited |
set the parallel object
parallel | parallel object to use |
Definition at line 220 of file SGObject.cpp.
|
inherited |
set the version object
version | version object to use |
Definition at line 255 of file SGObject.cpp.
|
inherited |
set applied flag for preprocessor
num | index of preprocessor in list |
Definition at line 140 of file Features.cpp.
|
inherited |
|
virtualinherited |
A shallow copy. All the SGObject instance variables will be simply assigned and SG_REF-ed.
Reimplemented in CGaussianKernel.
Definition at line 151 of file SGObject.h.
ST shift_offset | ( | ST | offset, |
int32_t | amount | ||
) |
shift offset to the left by amount
offset | offset to shift |
amount | amount to shift the offset |
Definition at line 438 of file StringFeatures.cpp.
bool shift_offset | ( | bool | symbol, |
int32_t | amount | ||
) |
Definition at line 1822 of file StringFeatures.cpp.
Definition at line 1826 of file StringFeatures.cpp.
Definition at line 1830 of file StringFeatures.cpp.
floatmax_t shift_offset | ( | floatmax_t | symbol, |
int32_t | amount | ||
) |
Definition at line 1834 of file StringFeatures.cpp.
ST shift_symbol | ( | ST | symbol, |
int32_t | amount | ||
) |
shift symbol to the right by amount (taking care of custom symbol sizes)
symbol | symbol to shift |
amount | amount to shift the symbol |
Definition at line 444 of file StringFeatures.cpp.
bool shift_symbol | ( | bool | symbol, |
int32_t | amount | ||
) |
Definition at line 1839 of file StringFeatures.cpp.
Definition at line 1843 of file StringFeatures.cpp.
Definition at line 1847 of file StringFeatures.cpp.
floatmax_t shift_symbol | ( | floatmax_t | symbol, |
int32_t | amount | ||
) |
Definition at line 1851 of file StringFeatures.cpp.
|
virtual |
post method when subset is changed
Reimplemented from CFeatures.
Definition at line 1637 of file StringFeatures.cpp.
void unembed_word | ( | ST | word, |
uint8_t * | seq, | ||
int32_t | len | ||
) |
remap bit-based word to character sequence
word | word to remap |
seq | sequence of size len that remapped characters are written to |
len | length of sequence and word |
Definition at line 1394 of file StringFeatures.cpp.
void unembed_word | ( | float32_t | word, |
uint8_t * | seq, | ||
int32_t | len | ||
) |
Definition at line 1904 of file StringFeatures.cpp.
void unembed_word | ( | float64_t | word, |
uint8_t * | seq, | ||
int32_t | len | ||
) |
Definition at line 1907 of file StringFeatures.cpp.
void unembed_word | ( | floatmax_t | word, |
uint8_t * | seq, | ||
int32_t | len | ||
) |
Definition at line 1910 of file StringFeatures.cpp.
|
inherited |
unset generic type
this has to be called in classes specializing a template class
Definition at line 275 of file SGObject.cpp.
|
inherited |
|
virtualinherited |
Updates the hash of current parameter combination.
Definition at line 227 of file SGObject.cpp.
|
protected |
alphabet
Definition at line 667 of file StringFeatures.h.
|
protected |
feature cache
Definition at line 703 of file StringFeatures.h.
|
protected |
this contains the array of features
Definition at line 673 of file StringFeatures.h.
|
inherited |
io
Definition at line 514 of file SGObject.h.
|
protected |
length of prior single string
Definition at line 679 of file StringFeatures.h.
|
inherited |
parameters wrt which we can compute gradients
Definition at line 529 of file SGObject.h.
|
inherited |
Hash of parameter values
Definition at line 535 of file SGObject.h.
|
inherited |
model selection parameters
Definition at line 526 of file SGObject.h.
|
inherited |
map for different parameter versions
Definition at line 532 of file SGObject.h.
|
inherited |
parameters
Definition at line 523 of file SGObject.h.
|
protectedinherited |
subset used for index transformations
Definition at line 302 of file Features.h.
|
protected |
length of longest string (for subset, is updated)
Definition at line 682 of file StringFeatures.h.
|
protected |
number of used symbols
Definition at line 685 of file StringFeatures.h.
|
protected |
number of string vectors (for subset, is updated)
Definition at line 670 of file StringFeatures.h.
|
protected |
order used in higher order mapping
Definition at line 691 of file StringFeatures.h.
|
protected |
original number of used symbols (before higher order mapping)
Definition at line 688 of file StringFeatures.h.
|
inherited |
parallel
Definition at line 517 of file SGObject.h.
|
protected |
preprocess on-the-fly?
Definition at line 700 of file StringFeatures.h.
|
protected |
true when single string / created by sliding window
Definition at line 676 of file StringFeatures.h.
|
protected |
order used in higher order mapping
Definition at line 694 of file StringFeatures.h.
|
protected |
order used in higher order mapping
Definition at line 697 of file StringFeatures.h.
|
inherited |
version
Definition at line 520 of file SGObject.h.