SHOGUN
4.1.0
|
The Weighted Degree Position String kernel (Weighted Degree kernel with shifts).
The WD-shift kernel of order d compares two sequences \({\bf x}\) and \({\bf x'}\) of length L by summing all contributions of k-mer matches of lengths \(k\in\{1,\dots,d\}\), weighted by coefficients \(\beta_k\) allowing for a positional tolerance of up to shift s.
It is formally defined as
\begin{eqnarray*} &&\!\!\!\!\!\!\!k({\bf x}_i,{\bf x}_j)=\sum_{k=1}^d\beta_k\sum_{l=1}^{\!\!\!\!L-k+1\!\!\!\!}\gamma_l\sum_{\begin{array}{c}s=0\\ \!\!\!\!s+l\leq L\!\!\!\!\end{array}}^{S(l)} \delta_s\;\mu_{k,l,s,{{\bf x}_i},{{\bf x}_j}},\\ &&\!\!\!\!\!\!\!\!\!\! {\footnotesize \mu_{k,l,s,{{\bf x}_i},{{\bf x}_j}}\!\!\! =\!\! I({\bf u}_{k,l+s}({\bf x}_i)\! =\!{\bf u}_{k,l}({\bf x}_j))\! +\!I({\bf u}_{k,l}({\bf x}_i)\! =\!{\bf u}_{k,l+s}({\bf x}_j))},\nonumber \end{eqnarray*}
where \(\beta_j\) are the weighting coefficients of the j-mers, \(\gamma_l\) is a weighting over the position in the sequence, \(\delta_s=1/(2(s+1))\) is the weight assigned to shifts (in either direction) of extent s, and S(l) determines the shift range at position l.
Definition at line 50 of file WeightedDegreePositionStringKernel.h.
Public Member Functions | |
CWeightedDegreePositionStringKernel () | |
CWeightedDegreePositionStringKernel (int32_t size, int32_t degree, int32_t max_mismatch=0, int32_t mkl_stepsize=1) | |
CWeightedDegreePositionStringKernel (int32_t size, SGVector< float64_t > weights, int32_t degree, int32_t max_mismatch, SGVector< int32_t > shifts, int32_t mkl_stepsize=1) | |
CWeightedDegreePositionStringKernel (CStringFeatures< char > *l, CStringFeatures< char > *r, int32_t degree) | |
virtual | ~CWeightedDegreePositionStringKernel () |
virtual bool | init (CFeatures *l, CFeatures *r) |
virtual void | cleanup () |
virtual EKernelType | get_kernel_type () |
virtual const char * | get_name () const |
virtual bool | init_optimization (int32_t p_count, int32_t *IDX, float64_t *alphas) |
virtual bool | init_optimization (int32_t count, int32_t *IDX, float64_t *alphas, int32_t tree_num, int32_t upto_tree=-1) |
virtual bool | delete_optimization () |
virtual float64_t | compute_optimized (int32_t idx) |
virtual void | compute_batch (int32_t num_vec, int32_t *vec_idx, float64_t *target, int32_t num_suppvec, int32_t *IDX, float64_t *alphas, float64_t factor=1.0) |
virtual void | clear_normal () |
virtual void | add_to_normal (int32_t idx, float64_t weight) |
virtual int32_t | get_num_subkernels () |
void | compute_by_subkernel (int32_t idx, float64_t *subkernel_contrib) |
const float64_t * | get_subkernel_weights (int32_t &num_weights) |
virtual void | set_subkernel_weights (SGVector< float64_t > w) |
float64_t * | compute_abs_weights (int32_t &len) |
bool | is_tree_initialized () |
int32_t | get_max_mismatch () |
int32_t | get_degree () |
float64_t * | get_degree_weights (int32_t &d, int32_t &len) |
float64_t * | get_weights (int32_t &num_weights) |
float64_t * | get_position_weights (int32_t &len) |
void | set_shifts (SGVector< int32_t > shifts) |
bool | set_weights (SGMatrix< float64_t > new_weights) |
virtual bool | set_wd_weights () |
virtual void | set_position_weights (SGVector< float64_t > pws) |
bool | set_position_weights_lhs (float64_t *pws, int32_t len, int32_t num) |
bool | set_position_weights_rhs (float64_t *pws, int32_t len, int32_t num) |
bool | init_block_weights () |
bool | init_block_weights_from_wd () |
bool | init_block_weights_from_wd_external () |
bool | init_block_weights_const () |
bool | init_block_weights_linear () |
bool | init_block_weights_sqpoly () |
bool | init_block_weights_cubicpoly () |
bool | init_block_weights_exp () |
bool | init_block_weights_log () |
bool | delete_position_weights () |
bool | delete_position_weights_lhs () |
bool | delete_position_weights_rhs () |
virtual float64_t | compute_by_tree (int32_t idx) |
virtual void | compute_by_tree (int32_t idx, float64_t *LevelContrib) |
float64_t * | compute_scoring (int32_t max_degree, int32_t &num_feat, int32_t &num_sym, float64_t *target, int32_t num_suppvec, int32_t *IDX, float64_t *weights) |
char * | compute_consensus (int32_t &num_feat, int32_t num_suppvec, int32_t *IDX, float64_t *alphas) |
float64_t * | extract_w (int32_t max_degree, int32_t &num_feat, int32_t &num_sym, float64_t *w_result, int32_t num_suppvec, int32_t *IDX, float64_t *alphas) |
float64_t * | compute_POIM (int32_t max_degree, int32_t &num_feat, int32_t &num_sym, float64_t *poim_result, int32_t num_suppvec, int32_t *IDX, float64_t *alphas, float64_t *distrib) |
void | prepare_POIM2 (SGMatrix< float64_t > distrib) |
void | compute_POIM2 (int32_t max_degree, CSVM *svm) |
SGVector< float64_t > | get_POIM2 () |
void | cleanup_POIM2 () |
cleanup POIM2 More... | |
virtual EFeatureClass | get_feature_class () |
virtual EFeatureType | get_feature_type () |
float64_t | kernel (int32_t idx_a, int32_t idx_b) |
SGMatrix< float64_t > | get_kernel_matrix () |
template<class T > | |
SGMatrix< T > | get_kernel_matrix () |
SGVector< float64_t > | get_kernel_diagonal (SGVector< float64_t > preallocated=SGVector< float64_t >()) |
virtual SGVector< float64_t > | get_kernel_col (int32_t j) |
virtual SGVector< float64_t > | get_kernel_row (int32_t i) |
void | get_kernel_row (int32_t docnum, int32_t *active2dnum, float64_t *buffer, bool full_line=false) |
virtual float64_t | sum_symmetric_block (index_t block_begin, index_t block_size, bool no_diag=true) |
virtual float64_t | sum_block (index_t block_begin_row, index_t block_begin_col, index_t block_size_row, index_t block_size_col, bool no_diag=false) |
virtual SGVector< float64_t > | row_wise_sum_symmetric_block (index_t block_begin, index_t block_size, bool no_diag=true) |
virtual SGMatrix< float64_t > | row_wise_sum_squared_sum_symmetric_block (index_t block_begin, index_t block_size, bool no_diag=true) |
virtual SGVector< float64_t > | row_col_wise_sum_block (index_t block_begin_row, index_t block_begin_col, index_t block_size_row, index_t block_size_col, bool no_diag=false) |
virtual bool | set_normalizer (CKernelNormalizer *normalizer) |
virtual CKernelNormalizer * | get_normalizer () |
virtual bool | init_normalizer () |
void | load (CFile *loader) |
void | save (CFile *writer) |
CFeatures * | get_lhs () |
CFeatures * | get_rhs () |
virtual int32_t | get_num_vec_lhs () |
virtual int32_t | get_num_vec_rhs () |
virtual bool | has_features () |
bool | get_lhs_equals_rhs () |
virtual void | remove_lhs_and_rhs () |
virtual void | remove_rhs () |
takes all necessary steps if the rhs is removed from kernel More... | |
void | set_cache_size (int32_t size) |
int32_t | get_cache_size () |
void | cache_reset () |
int32_t | get_max_elems_cache () |
int32_t | get_activenum_cache () |
void | cache_kernel_row (int32_t x) |
void | cache_multiple_kernel_rows (int32_t *key, int32_t varnum) |
void | kernel_cache_reset_lru () |
void | kernel_cache_shrink (int32_t totdoc, int32_t num_shrink, int32_t *after) |
void | resize_kernel_cache (KERNELCACHE_IDX size, bool regression_hack=false) |
void | set_time (int32_t t) |
int32_t | kernel_cache_touch (int32_t cacheidx) |
int32_t | kernel_cache_check (int32_t cacheidx) |
int32_t | kernel_cache_space_available () |
void | kernel_cache_init (int32_t size, bool regression_hack=false) |
void | kernel_cache_cleanup () |
void | list_kernel () |
bool | has_property (EKernelProperty p) |
EOptimizationType | get_optimization_type () |
virtual void | set_optimization_type (EOptimizationType t) |
bool | get_is_initialized () |
bool | init_optimization_svm (CSVM *svm) |
float64_t | get_combined_kernel_weight () |
void | set_combined_kernel_weight (float64_t nw) |
virtual SGVector< float64_t > | get_subkernel_weights () |
virtual SGMatrix< float64_t > | get_parameter_gradient (const TParameter *param, index_t index=-1) |
virtual SGVector< float64_t > | get_parameter_gradient_diagonal (const TParameter *param, index_t index=-1) |
virtual CSGObject * | shallow_copy () const |
virtual CSGObject * | deep_copy () const |
virtual bool | is_generic (EPrimitiveType *generic) const |
template<class T > | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
void | set_generic () |
template<> | |
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 () |
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 void | update_parameter_hash () |
virtual bool | parameter_hash_changed () |
virtual bool | equals (CSGObject *other, float64_t accuracy=0.0, bool tolerant=false) |
virtual CSGObject * | clone () |
Static Public Member Functions | |
static void * | compute_batch_helper (void *p) |
static CKernel * | obtain_from_generic (CSGObject *kernel) |
Public Attributes | |
SGIO * | io |
Parallel * | parallel |
Version * | version |
Parameter * | m_parameters |
Parameter * | m_model_selection_parameters |
Parameter * | m_gradient_parameters |
uint32_t | m_hash |
Protected Member Functions | |
void | create_empty_tries () |
virtual void | add_example_to_tree (int32_t idx, float64_t weight) |
void | add_example_to_single_tree (int32_t idx, float64_t weight, int32_t tree_num) |
virtual float64_t | compute (int32_t idx_a, int32_t idx_b) |
float64_t | compute_with_mismatch (char *avec, int32_t alen, char *bvec, int32_t blen) |
float64_t | compute_without_mismatch (char *avec, int32_t alen, char *bvec, int32_t blen) |
float64_t | compute_without_mismatch_matrix (char *avec, int32_t alen, char *bvec, int32_t blen) |
float64_t | compute_without_mismatch_position_weights (char *avec, float64_t *posweights_lhs, int32_t alen, char *bvec, float64_t *posweights_rhs, int32_t blen) |
virtual void | remove_lhs () |
virtual void | load_serializable_post () throw (ShogunException) |
void | set_property (EKernelProperty p) |
void | unset_property (EKernelProperty p) |
void | set_is_initialized (bool p_init) |
int32_t | compute_row_start (int64_t offs, int32_t n, bool symmetric) |
virtual void | save_serializable_pre () throw (ShogunException) |
virtual void | save_serializable_post () throw (ShogunException) |
virtual void | register_params () |
virtual void | load_serializable_pre () throw (ShogunException) |
Static Protected Member Functions | |
template<class T > | |
static void * | get_kernel_matrix_helper (void *p) |
CWeightedDegreePositionStringKernel | ( | void | ) |
default constructor
Definition at line 52 of file WeightedDegreePositionStringKernel.cpp.
CWeightedDegreePositionStringKernel | ( | int32_t | size, |
int32_t | degree, | ||
int32_t | max_mismatch = 0 , |
||
int32_t | mkl_stepsize = 1 |
||
) |
constructor
size | cache size |
degree | degree |
max_mismatch | maximum mismatch |
mkl_stepsize | MKL stepsize |
Definition at line 59 of file WeightedDegreePositionStringKernel.cpp.
CWeightedDegreePositionStringKernel | ( | int32_t | size, |
SGVector< float64_t > | weights, | ||
int32_t | degree, | ||
int32_t | max_mismatch, | ||
SGVector< int32_t > | shifts, | ||
int32_t | mkl_stepsize = 1 |
||
) |
constructor
size | cache size |
weights | weights |
degree | degree |
max_mismatch | maximum mismatch |
shifts | position shifts |
mkl_stepsize | MKL stepsize |
Definition at line 76 of file WeightedDegreePositionStringKernel.cpp.
CWeightedDegreePositionStringKernel | ( | CStringFeatures< char > * | l, |
CStringFeatures< char > * | r, | ||
int32_t | degree | ||
) |
constructor
l | features of left-hand side |
r | features of right-hand side |
degree | degree |
Definition at line 100 of file WeightedDegreePositionStringKernel.cpp.
|
virtual |
Definition at line 119 of file WeightedDegreePositionStringKernel.cpp.
|
protected |
add example to single tree
idx | index |
weight | weight |
tree_num | which tree |
Definition at line 695 of file WeightedDegreePositionStringKernel.cpp.
|
protectedvirtual |
add example to tree
idx | index |
weight | weight |
Definition at line 644 of file WeightedDegreePositionStringKernel.cpp.
|
virtual |
add to normal
idx | where to add |
weight | what to add |
Reimplemented from CKernel.
Definition at line 212 of file WeightedDegreePositionStringKernel.h.
|
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 597 of file SGObject.cpp.
|
inherited |
|
inherited |
|
virtual |
clean up kernel
Reimplemented from CKernel.
Definition at line 227 of file WeightedDegreePositionStringKernel.cpp.
void cleanup_POIM2 | ( | ) |
cleanup POIM2
Definition at line 1867 of file WeightedDegreePositionStringKernel.cpp.
|
virtual |
clear normal subkernel functionality
Reimplemented from CKernel.
Definition at line 186 of file WeightedDegreePositionStringKernel.h.
|
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 714 of file SGObject.cpp.
|
protectedvirtual |
compute kernel function for features a and b idx_{a,b} denote the index of the feature vectors in the corresponding feature object
idx_a | index a |
idx_b | index b |
Implements CKernel.
Definition at line 608 of file WeightedDegreePositionStringKernel.cpp.
float64_t * compute_abs_weights | ( | int32_t & | len | ) |
compute abs weights
len | len |
Definition at line 831 of file WeightedDegreePositionStringKernel.cpp.
|
virtual |
compute batch
num_vec | number of vectors |
vec_idx | vector index |
target | target |
num_suppvec | number of support vectors |
IDX | IDX |
alphas | alphas |
factor | factor |
Reimplemented from CKernel.
Definition at line 1230 of file WeightedDegreePositionStringKernel.cpp.
|
static |
helper for compute batch
p | thread parameter |
Definition at line 1172 of file WeightedDegreePositionStringKernel.cpp.
|
virtual |
compute by subkernel
idx | index |
subkernel_contrib | subkernel contribution |
Reimplemented from CKernel.
Definition at line 236 of file WeightedDegreePositionStringKernel.h.
|
virtual |
compute by tree
idx | index |
Definition at line 749 of file WeightedDegreePositionStringKernel.cpp.
|
virtual |
compute by tree
idx | index |
LevelContrib | level contribution |
Definition at line 788 of file WeightedDegreePositionStringKernel.cpp.
char * compute_consensus | ( | int32_t & | num_feat, |
int32_t | num_suppvec, | ||
int32_t * | IDX, | ||
float64_t * | alphas | ||
) |
compute consensus string
num_feat | number of features |
num_suppvec | number of support vectors |
IDX | IDX |
alphas | alphas |
Definition at line 1499 of file WeightedDegreePositionStringKernel.cpp.
|
virtual |
compute optimized
idx | index to compute |
Reimplemented from CKernel.
Definition at line 154 of file WeightedDegreePositionStringKernel.h.
float64_t * compute_POIM | ( | int32_t | max_degree, |
int32_t & | num_feat, | ||
int32_t & | num_sym, | ||
float64_t * | poim_result, | ||
int32_t | num_suppvec, | ||
int32_t * | IDX, | ||
float64_t * | alphas, | ||
float64_t * | distrib | ||
) |
compute POIM
max_degree | maximum degree |
num_feat | number of features |
num_sym | number of symbols |
poim_result | poim |
num_suppvec | number of support vectors |
IDX | IDX |
alphas | alphas |
distrib | distribution |
Definition at line 1679 of file WeightedDegreePositionStringKernel.cpp.
void compute_POIM2 | ( | int32_t | max_degree, |
CSVM * | svm | ||
) |
compute POIM2
max_degree | maximum degree |
svm | SVM |
Definition at line 1826 of file WeightedDegreePositionStringKernel.cpp.
|
protectedinherited |
float64_t * compute_scoring | ( | int32_t | max_degree, |
int32_t & | num_feat, | ||
int32_t & | num_sym, | ||
float64_t * | target, | ||
int32_t | num_suppvec, | ||
int32_t * | IDX, | ||
float64_t * | weights | ||
) |
compute positional scoring function, which assigns a weight per position, per symbol in the sequence
max_degree | maximum degree |
num_feat | number of features |
num_sym | number of symbols |
target | target |
num_suppvec | number of support vectors |
IDX | IDX |
weights | weights |
Definition at line 1343 of file WeightedDegreePositionStringKernel.cpp.
|
protected |
compute with mismatch
avec | vector a |
alen | length of vector a |
bvec | vector b |
blen | length of vector b |
Definition at line 318 of file WeightedDegreePositionStringKernel.cpp.
|
protected |
compute without mismatch
avec | vector a |
alen | length of vector a |
bvec | vector b |
blen | length of vector b |
Definition at line 398 of file WeightedDegreePositionStringKernel.cpp.
|
protected |
compute without mismatch matrix
avec | vector a |
alen | length of vector a |
bvec | vector b |
blen | length of vector b |
Definition at line 464 of file WeightedDegreePositionStringKernel.cpp.
|
protected |
compute without mismatch position weights
avec | vector a |
posweights_lhs | position weights left-hand side |
alen | length of vector a |
bvec | vector b |
posweights_rhs | position weights right-hand side |
blen | length of vector b |
Definition at line 528 of file WeightedDegreePositionStringKernel.cpp.
|
protected |
create emtpy tries
Definition at line 159 of file WeightedDegreePositionStringKernel.cpp.
|
virtualinherited |
A deep copy. All the instance variables will also be copied.
Definition at line 198 of file SGObject.cpp.
|
virtual |
delete optimization
Reimplemented from CKernel.
Definition at line 293 of file WeightedDegreePositionStringKernel.cpp.
bool delete_position_weights | ( | ) |
delete position weights
Definition at line 475 of file WeightedDegreePositionStringKernel.h.
bool delete_position_weights_lhs | ( | ) |
delete position weights left-hand side
Definition at line 486 of file WeightedDegreePositionStringKernel.h.
bool delete_position_weights_rhs | ( | ) |
delete position weights right-hand side
Definition at line 497 of file WeightedDegreePositionStringKernel.h.
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) |
tolerant | allows linient check on float equality (within accuracy) |
Definition at line 618 of file SGObject.cpp.
float64_t * extract_w | ( | int32_t | max_degree, |
int32_t & | num_feat, | ||
int32_t & | num_sym, | ||
float64_t * | w_result, | ||
int32_t | num_suppvec, | ||
int32_t * | IDX, | ||
float64_t * | alphas | ||
) |
extract w
max_degree | maximum degree |
num_feat | number of features |
num_sym | number of symbols |
w_result | w |
num_suppvec | number of support vectors |
IDX | IDX |
alphas | alphas |
Definition at line 1616 of file WeightedDegreePositionStringKernel.cpp.
|
inherited |
|
inherited |
|
inherited |
int32_t get_degree | ( | ) |
float64_t* get_degree_weights | ( | int32_t & | d, |
int32_t & | len | ||
) |
get degree weights
d | degree weights will be stored here |
len | number of degree weights will be stored here |
Definition at line 337 of file WeightedDegreePositionStringKernel.h.
|
virtualinherited |
return feature class the kernel can deal with
Implements CKernel.
Definition at line 71 of file StringKernel.h.
|
virtualinherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
staticprotectedinherited |
helper for computing the kernel matrix in a parallel way
p | thread parameters |
Definition at line 1292 of file Kernel.cpp.
|
inherited |
get kernel row
docnum | docnum |
active2dnum | active2dnum |
buffer | buffer |
full_line | full line |
Definition at line 238 of file Kernel.cpp.
|
virtual |
return what type of kernel we are
Implements CStringKernel< char >.
Definition at line 107 of file WeightedDegreePositionStringKernel.h.
|
inherited |
|
inherited |
|
inherited |
int32_t get_max_mismatch | ( | ) |
get maximum mismatch
Definition at line 324 of file WeightedDegreePositionStringKernel.h.
|
inherited |
Definition at line 498 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 522 of file SGObject.cpp.
|
inherited |
Returns index of model selection parameter with provided index
param_name | name of model selection parameter |
Definition at line 535 of file SGObject.cpp.
|
virtual |
return the kernel's name
Reimplemented from CStringKernel< char >.
Definition at line 113 of file WeightedDegreePositionStringKernel.h.
|
virtualinherited |
obtain the current kernel normalizer
Definition at line 162 of file Kernel.cpp.
|
virtual |
get number of subkernels
Reimplemented from CKernel.
Definition at line 222 of file WeightedDegreePositionStringKernel.h.
|
virtualinherited |
get number of vectors of lhs features
Reimplemented in CCustomKernel.
|
virtualinherited |
get number of vectors of rhs features
Reimplemented in CCustomKernel.
|
inherited |
|
virtualinherited |
return derivative with respect to specified parameter
param | the parameter |
index | the index of the element if parameter is a vector |
Reimplemented in CCombinedKernel, CProductKernel, CGaussianKernel, and CPeriodicKernel.
|
virtualinherited |
float64_t* get_position_weights | ( | int32_t & | len | ) |
get position weights
len | number of position weights will be stored here |
Definition at line 368 of file WeightedDegreePositionStringKernel.h.
|
inherited |
|
virtual |
get subkernel weights
num_weights | number of weights will be stored here |
Reimplemented from CKernel.
Definition at line 253 of file WeightedDegreePositionStringKernel.h.
get subkernel weights (swig compatible)
Reimplemented in CCombinedKernel.
Definition at line 880 of file Kernel.cpp.
float64_t* get_weights | ( | int32_t & | num_weights | ) |
get weights
num_weights | number of weights will be stored here |
Definition at line 349 of file WeightedDegreePositionStringKernel.h.
|
virtualinherited |
test whether features have been assigned to lhs and rhs
Reimplemented in CCustomKernel, CCombinedKernel, and CProductKernel.
|
inherited |
initialize kernel
l | features of left-hand side |
r | features of right-hand side |
Reimplemented from CStringKernel< char >.
Definition at line 178 of file WeightedDegreePositionStringKernel.cpp.
bool init_block_weights | ( | ) |
initialize block weights
Definition at line 1146 of file WeightedDegreePositionStringKernel.cpp.
bool init_block_weights_const | ( | ) |
initialize block weights constant
Definition at line 1050 of file WeightedDegreePositionStringKernel.cpp.
bool init_block_weights_cubicpoly | ( | ) |
initialize block weights cubic polynomial
Definition at line 1095 of file WeightedDegreePositionStringKernel.cpp.
bool init_block_weights_exp | ( | ) |
initialize block weights exponential
Definition at line 1112 of file WeightedDegreePositionStringKernel.cpp.
bool init_block_weights_from_wd | ( | ) |
initialize block weights from weighted degree
Definition at line 1002 of file WeightedDegreePositionStringKernel.cpp.
bool init_block_weights_from_wd_external | ( | ) |
initialize block weights from external weighted degree
Definition at line 1022 of file WeightedDegreePositionStringKernel.cpp.
bool init_block_weights_linear | ( | ) |
initialize block weights linear
Definition at line 1064 of file WeightedDegreePositionStringKernel.cpp.
bool init_block_weights_log | ( | ) |
initialize block weights logarithmic
Definition at line 1129 of file WeightedDegreePositionStringKernel.cpp.
bool init_block_weights_sqpoly | ( | ) |
initialize block weights squared polynomial
Definition at line 1078 of file WeightedDegreePositionStringKernel.cpp.
|
virtualinherited |
initialize the current kernel normalizer
Definition at line 168 of file Kernel.cpp.
|
virtual |
initialize optimization
p_count | count |
IDX | index |
alphas | alphas |
Reimplemented from CKernel.
Definition at line 122 of file WeightedDegreePositionStringKernel.h.
|
virtual |
initialize optimization do initialization for tree_num up to upto_tree, use tree_num=-1 to construct all trees
count | count |
IDX | IDX |
alphas | alphas |
tree_num | which tree |
upto_tree | up to this tree |
Definition at line 247 of file WeightedDegreePositionStringKernel.cpp.
|
inherited |
initialize optimization
svm | svm model |
Definition at line 910 of file Kernel.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 296 of file SGObject.cpp.
bool is_tree_initialized | ( | ) |
check if tree is initialized
Definition at line 318 of file WeightedDegreePositionStringKernel.h.
|
inherited |
|
inherited |
|
inherited |
cleanup kernel cache
Definition at line 567 of file Kernel.cpp.
|
inherited |
initialize kernel cache
size | size to initialize to |
regression_hack | if hack for regression shall be applied |
Definition at line 181 of file Kernel.cpp.
|
inherited |
kernel cache reset lru
Definition at line 554 of file Kernel.cpp.
|
inherited |
kernel cache shrink
totdoc | totdoc |
num_shrink | number of shrink |
after | after |
Definition at line 495 of file Kernel.cpp.
|
inherited |
|
inherited |
|
inherited |
list kernel
Definition at line 708 of file Kernel.cpp.
|
inherited |
load the kernel matrix
loader | File object via which to load data |
Definition at line 646 of file Kernel.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 |
Definition at line 369 of file SGObject.cpp.
|
protectedvirtual |
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 from CKernel.
Definition at line 1878 of file WeightedDegreePositionStringKernel.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 occurs. |
Reimplemented in CDynamicArray< T >, CDynamicArray< float64_t >, CDynamicArray< float32_t >, CDynamicArray< int32_t >, CDynamicArray< char >, CDynamicArray< bool >, and CDynamicObjectArray.
Definition at line 421 of file SGObject.cpp.
Obtains a kernel from a generic SGObject with error checking. Note that if passing NULL, result will be NULL
kernel | Object to cast to CKernel, is not SG_REFed |
Definition at line 896 of file Kernel.cpp.
|
virtualinherited |
Definition at line 262 of file SGObject.cpp.
prepare POIM2
distrib | distribution |
Definition at line 1815 of file WeightedDegreePositionStringKernel.cpp.
|
inherited |
prints all parameter registered for model selection and their type
Definition at line 474 of file SGObject.cpp.
|
virtualinherited |
prints registered parameters out
prefix | prefix for members |
Definition at line 308 of file SGObject.cpp.
|
protectedvirtualinherited |
Separate the function of parameter registration This can be the first stage of a general framework for cross-validation or other parameter-based operations
Reimplemented in CSpectrumMismatchRBFKernel, CSNPStringKernel, CANOVAKernel, CSubsequenceStringKernel, CGaussianMatchStringKernel, CGaussianShortRealKernel, CTensorProductPairKernel, CDistanceKernel, and CHistogramIntersectionKernel.
Definition at line 951 of file Kernel.cpp.
|
protectedvirtual |
remove lhs from kernel
Reimplemented from CKernel.
Definition at line 148 of file WeightedDegreePositionStringKernel.cpp.
|
virtualinherited |
remove lhs and rhs from kernel
Reimplemented in CCombinedKernel, and CProductKernel.
Definition at line 660 of file Kernel.cpp.
|
virtualinherited |
takes all necessary steps if the rhs is removed from kernel
remove rhs from kernel
Reimplemented in CCombinedKernel, CCommUlongStringKernel, and CProductKernel.
Definition at line 693 of file Kernel.cpp.
|
inherited |
resize kernel cache
size | new size |
regression_hack | hack for regression |
Definition at line 85 of file Kernel.cpp.
|
virtualinherited |
Computes row-wise/col-wise sum of kernel values. This method is useful while computing statistical estimation of mean/variance over kernel values but the kernel matrix is too huge to be fit inside memory.
block_begin_row | the row index at which the block starts |
block_begin_col | the col index at which the block starts |
block_size_row | the number of rows in the block |
block_size_col | the number of cols in the block |
For Example, block_begin_row 0, block_begin_col 4 and block_size_row 5, block_size_col 6 represents the block that starts at index (0,4) in the kernel matrix and goes upto (0+5-1,4+6-1) i.e. (4,9) both inclusive
no_diag | if true (default is false), the diagonal elements are excluded from the row/col-wise sum, provided that block_size_row and block_size_col are same (i.e. the block is square). Otherwise, these are always added |
\[ v[i]=\sum_{j}k(i+\text{block-begin-row}, j+\text{block-begin-col}) \]
and rest block_size_col entries col-wise sum of kernel values computed as\[ v[\text{block-size-row}+j]=\sum_{i}k(i+\text{block-begin-row}, j+\text{block-begin-col}) \]
where \(i\in[0,\text{block-size-row}-1]\) and \(j\in[0,\text{block-size-col}-1]\)Definition at line 1238 of file Kernel.cpp.
|
virtualinherited |
Computes row-wise/col-wise sum and squared sum of kernel values from a symmetric part of the kernel matrix that always is supposed to contain the main upper diagonal. This method is useful while computing statistical estimation of mean/variance over kernel values but the kernel matrix is too huge to be fit inside memory.
block_begin | the row and col index at which the block starts |
block_size | the number of rows and cols in the block |
For Example, block_begin 4 and block_size 5 represents the block that starts at index (4,4) in the kernel matrix and goes upto (4+5-1,4+5-1) i.e. (8,8) both inclusive
no_diag | if true (default), the diagonal elements are excluded from the row/col-wise sum |
\[ v_0[i]=\sum_{j}k(i+\text{block-begin}, j+\text{block-begin}) \]
and second column contains the row-wise sum of squared kernel values\[ v_1[i]=\sum_{j}^k^2(i+\text{block-begin}, j+\text{block-begin}) \]
where \(i,j\in[0,\text{block-size}-1]\)Definition at line 1179 of file Kernel.cpp.
|
virtualinherited |
Computes row-wise/col-wise sum from a symmetric part of the kernel matrix that always is supposed to contain the main upper diagonal. This method is useful while computing statistical estimation of mean/variance over kernel values but the kernel matrix is too huge to be fit inside memory.
block_begin | the row and col index at which the block starts |
block_size | the number of rows and cols in the block |
For Example, block_begin 4 and block_size 5 represents the block that starts at index (4,4) in the kernel matrix and goes upto (4+5-1,4+5-1) i.e. (8,8) both inclusive
no_diag | if true (default), the diagonal elements are excluded from the row/col-wise sum |
\[ v[i]=\sum_{j}k(i+\text{block-begin}, j+\text{block-begin}) \]
where \(i,j\in[0,\text{block-size}-1]\)Definition at line 1125 of file Kernel.cpp.
|
inherited |
save kernel matrix
writer | File object via which to save data |
Definition at line 652 of file Kernel.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 |
Definition at line 314 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 from CSGObject.
Definition at line 943 of file Kernel.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 from CSGObject.
Definition at line 935 of file Kernel.cpp.
|
inherited |
|
inherited |
|
inherited |
Definition at line 41 of file SGObject.cpp.
|
inherited |
Definition at line 46 of file SGObject.cpp.
|
inherited |
Definition at line 51 of file SGObject.cpp.
|
inherited |
Definition at line 56 of file SGObject.cpp.
|
inherited |
Definition at line 61 of file SGObject.cpp.
|
inherited |
Definition at line 66 of file SGObject.cpp.
|
inherited |
Definition at line 71 of file SGObject.cpp.
|
inherited |
Definition at line 76 of file SGObject.cpp.
|
inherited |
Definition at line 81 of file SGObject.cpp.
|
inherited |
Definition at line 86 of file SGObject.cpp.
|
inherited |
Definition at line 91 of file SGObject.cpp.
|
inherited |
Definition at line 96 of file SGObject.cpp.
|
inherited |
Definition at line 101 of file SGObject.cpp.
|
inherited |
Definition at line 106 of file SGObject.cpp.
|
inherited |
Definition at line 111 of file SGObject.cpp.
|
inherited |
set generic type to T
|
inherited |
|
inherited |
set the parallel object
parallel | parallel object to use |
Definition at line 241 of file SGObject.cpp.
|
inherited |
set the version object
version | version object to use |
Definition at line 283 of file SGObject.cpp.
|
protectedinherited |
|
virtualinherited |
set the current kernel normalizer
Reimplemented in CWeightedDegreeStringKernel.
Definition at line 150 of file Kernel.cpp.
|
virtualinherited |
set position weights
pws | new position weights |
Definition at line 928 of file WeightedDegreePositionStringKernel.cpp.
bool set_position_weights_lhs | ( | float64_t * | pws, |
int32_t | len, | ||
int32_t | num | ||
) |
set position weights for left-hand side
pws | new position weights |
len | len |
num | num |
Definition at line 945 of file WeightedDegreePositionStringKernel.cpp.
bool set_position_weights_rhs | ( | float64_t * | pws, |
int32_t | len, | ||
int32_t | num | ||
) |
set position weights for right-hand side
pws | new position weights |
len | len |
num | num |
Definition at line 973 of file WeightedDegreePositionStringKernel.cpp.
|
protectedinherited |
void set_shifts | ( | SGVector< int32_t > | shifts | ) |
set shifts
shifts | new shifts |
Definition at line 837 of file WeightedDegreePositionStringKernel.cpp.
set subkernel weights
w | weights |
Reimplemented from CKernel.
Definition at line 274 of file WeightedDegreePositionStringKernel.h.
|
inherited |
|
virtual |
set wd weights
Definition at line 858 of file WeightedDegreePositionStringKernel.cpp.
set weights
new_weights | new weights |
Definition at line 899 of file WeightedDegreePositionStringKernel.cpp.
|
virtualinherited |
A shallow copy. All the SGObject instance variables will be simply assigned and SG_REF-ed.
Reimplemented in CGaussianKernel.
Definition at line 192 of file SGObject.cpp.
|
virtualinherited |
Computes sum of kernel values from a specified block. This method is useful while computing statistical estimation of mean/variance over kernel values but the kernel matrix is too huge to be fit inside memory.
block_begin_row | the row index at which the block starts |
block_begin_col | the col index at which the block starts |
block_size_row | the number of rows in the block |
block_size_col | the number of cols in the block |
For example, block_begin_row 0, block_begin_col 4 and block_size_row 5, block_size_col 6 represents the block that starts at index (0,4) in the kernel matrix and goes upto (0+5-1,4+6-1) i.e. (4,9) both inclusive
no_diag | if true (default is false), the diagonal elements are excluded from the sum, provided that block_size_row and block_size_col are same (i.e. the block is square). Otherwise, these are always added |
\[ \sum_{i}\sum_{j}k(i+\text{block-begin-row}, j+\text{block-begin-col}) \]
where \(i\in[0,\text{block-size-row}-1]\) and \(j\in[0,\text{block-size-col}-1]\)Definition at line 1079 of file Kernel.cpp.
|
virtualinherited |
Computes sum from a symmetric part of the kernel matrix that always is supposed to contain the main upper diagonal. This method is useful while computing statistical estimation of mean/variance over kernel values but the kernel matrix is too huge to be fit inside memory.
block_begin | the row and col index at which the block starts |
block_size | the number of rows and cols in the block |
For example, block_begin 4 and block_size 5 represents the block that starts at index (4,4) in the kernel matrix and goes upto (4+5-1,4+5-1) i.e. (8,8) both inclusive
no_diag | if true (default), the diagonal elements are excluded from the sum |
\[ \sum_{i}\sum_{j}k(i+\text{block-begin}, j+\text{block-begin}) \]
where \(i,j\in[0,\text{block-size}-1]\)Definition at line 1026 of file Kernel.cpp.
|
inherited |
unset generic type
this has to be called in classes specializing a template class
Definition at line 303 of file SGObject.cpp.
|
protectedinherited |
|
virtualinherited |
Updates the hash of current parameter combination
Definition at line 248 of file SGObject.cpp.
|
protected |
alphabet of features
Definition at line 778 of file WeightedDegreePositionStringKernel.h.
|
protected |
if block computation is used
Definition at line 746 of file WeightedDegreePositionStringKernel.h.
|
protected |
(internal) block weights
Definition at line 749 of file WeightedDegreePositionStringKernel.h.
|
protectedinherited |
|
protected |
degree
Definition at line 729 of file WeightedDegreePositionStringKernel.h.
|
inherited |
io
Definition at line 369 of file SGObject.h.
|
protectedinherited |
|
protected |
length
Definition at line 731 of file WeightedDegreePositionStringKernel.h.
|
protectedinherited |
|
inherited |
parameters wrt which we can compute gradients
Definition at line 384 of file SGObject.h.
|
inherited |
Hash of parameter values
Definition at line 387 of file SGObject.h.
|
inherited |
model selection parameters
Definition at line 381 of file SGObject.h.
|
inherited |
parameters
Definition at line 378 of file SGObject.h.
|
protected |
temporary memory for the interface to the poim functions
Definition at line 768 of file WeightedDegreePositionStringKernel.h.
|
protected |
temporary memory for the interface to the poim functions
Definition at line 766 of file WeightedDegreePositionStringKernel.h.
|
protected |
length of string (==num_feat)
Definition at line 773 of file WeightedDegreePositionStringKernel.h.
|
protected |
number of symbols
Definition at line 771 of file WeightedDegreePositionStringKernel.h.
|
protected |
total size of poim array
Definition at line 775 of file WeightedDegreePositionStringKernel.h.
|
protected |
maximum mismatch
Definition at line 734 of file WeightedDegreePositionStringKernel.h.
|
protected |
maximum shift
Definition at line 743 of file WeightedDegreePositionStringKernel.h.
|
protected |
MKL stepsize
Definition at line 726 of file WeightedDegreePositionStringKernel.h.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
inherited |
parallel
Definition at line 372 of file SGObject.h.
|
protected |
POIM tries
Definition at line 758 of file WeightedDegreePositionStringKernel.h.
|
protected |
position mask
Definition at line 721 of file WeightedDegreePositionStringKernel.h.
|
protected |
position weights
Definition at line 708 of file WeightedDegreePositionStringKernel.h.
|
protected |
position weights len
Definition at line 710 of file WeightedDegreePositionStringKernel.h.
|
protected |
position weights left-hand side
Definition at line 713 of file WeightedDegreePositionStringKernel.h.
|
protected |
position weights len
Definition at line 715 of file WeightedDegreePositionStringKernel.h.
|
protected |
position weights right-hand side
Definition at line 717 of file WeightedDegreePositionStringKernel.h.
|
protected |
position weights len
Definition at line 719 of file WeightedDegreePositionStringKernel.h.
|
protectedinherited |
|
protected |
length of sequence
Definition at line 736 of file WeightedDegreePositionStringKernel.h.
|
protected |
shifts
Definition at line 739 of file WeightedDegreePositionStringKernel.h.
|
protected |
length of shifts
Definition at line 741 of file WeightedDegreePositionStringKernel.h.
|
protected |
if tree is initialized
Definition at line 761 of file WeightedDegreePositionStringKernel.h.
|
protected |
tries
Definition at line 756 of file WeightedDegreePositionStringKernel.h.
|
protected |
WeightedDegree kernel type
Definition at line 751 of file WeightedDegreePositionStringKernel.h.
|
protected |
makes add_example_to_tree (ONLY!) use POIMTrie
Definition at line 763 of file WeightedDegreePositionStringKernel.h.
|
inherited |
version
Definition at line 375 of file SGObject.h.
|
protected |
weights
Definition at line 701 of file WeightedDegreePositionStringKernel.h.
|
protected |
weights buffer
Definition at line 724 of file WeightedDegreePositionStringKernel.h.
|
protected |
degree
Definition at line 703 of file WeightedDegreePositionStringKernel.h.
|
protected |
length
Definition at line 705 of file WeightedDegreePositionStringKernel.h.
|
protected |
which degree
Definition at line 753 of file WeightedDegreePositionStringKernel.h.