Public Member Functions | Public Attributes | Protected Attributes

CTrie< Trie > Class Template Reference


Detailed Description

template<class Trie>
class shogun::CTrie< Trie >

Definition at line 156 of file Trie.h.

Inheritance diagram for CTrie< Trie >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 CTrie ()
 CTrie (int32_t d, bool p_use_compact_terminal_nodes=true)
 CTrie (const CTrie &to_copy)
virtual ~CTrie ()
const CTrieoperator= (const CTrie &to_copy)
bool compare_traverse (int32_t node, const CTrie &other, int32_t other_node)
bool compare (const CTrie &other)
bool find_node (int32_t node, int32_t *trace, int32_t &trace_len) const
int32_t find_deepest_node (int32_t start_node, int32_t &deepest_node) const
void display_node (int32_t node) const
void destroy ()
void set_degree (int32_t d)
void create (int32_t len, bool p_use_compact_terminal_nodes=true)
void delete_trees (bool p_use_compact_terminal_nodes=true)
void add_to_trie (int32_t i, int32_t seq_offset, int32_t *vec, float32_t alpha, float64_t *weights, bool degree_times_position_weights)
float64_t compute_abs_weights_tree (int32_t tree, int32_t depth)
float64_tcompute_abs_weights (int32_t &len)
float64_t compute_by_tree_helper (int32_t *vec, int32_t len, int32_t seq_pos, int32_t tree_pos, int32_t weight_pos, float64_t *weights, bool degree_times_position_weights)
void compute_by_tree_helper (int32_t *vec, int32_t len, int32_t seq_pos, int32_t tree_pos, int32_t weight_pos, float64_t *LevelContrib, float64_t factor, int32_t mkl_stepsize, float64_t *weights, bool degree_times_position_weights)
void compute_scoring_helper (int32_t tree, int32_t i, int32_t j, float64_t weight, int32_t d, int32_t max_degree, int32_t num_feat, int32_t num_sym, int32_t sym_offset, int32_t offs, float64_t *result)
void add_example_to_tree_mismatch_recursion (int32_t tree, int32_t i, float64_t alpha, int32_t *vec, int32_t len_rem, int32_t degree_rec, int32_t mismatch_rec, int32_t max_mismatch, float64_t *weights)
void traverse (int32_t tree, const int32_t p, struct TreeParseInfo info, const int32_t depth, int32_t *const x, const int32_t k)
void count (const float64_t w, const int32_t depth, const struct TreeParseInfo info, const int32_t p, int32_t *x, const int32_t k)
int32_t compact_nodes (int32_t start_node, int32_t depth, float64_t *weights)
float64_t get_cumulative_score (int32_t pos, uint64_t seq, int32_t deg, float64_t *weights)
void fill_backtracking_table_recursion (Trie *tree, int32_t depth, uint64_t seq, float64_t value, DynArray< ConsensusEntry > *table, float64_t *weights)
void fill_backtracking_table (int32_t pos, DynArray< ConsensusEntry > *prev, DynArray< ConsensusEntry > *cur, bool cumulative, float64_t *weights)
void POIMs_extract_W (float64_t *const *const W, const int32_t K)
void POIMs_precalc_SLR (const float64_t *const distrib)
void POIMs_get_SLR (const int32_t parentIdx, const int32_t sym, const int32_t depth, float64_t *S, float64_t *L, float64_t *R)
void POIMs_add_SLR (float64_t *const *const poims, const int32_t K, const int32_t debug)
bool get_use_compact_terminal_nodes ()
void set_use_compact_terminal_nodes (bool p_use_compact_terminal_nodes)
int32_t get_num_used_nodes ()
void set_position_weights (const float64_t *p_position_weights)
int32_t get_node (bool last_node=false)
void check_treemem ()
void set_weights_in_tree (bool weights_in_tree_)
bool get_weights_in_tree ()
void POIMs_extract_W_helper (const int32_t nodeIdx, const int32_t depth, const int32_t offset, const int32_t y0, float64_t *const *const W, const int32_t K)
void POIMs_calc_SLR_helper1 (const float64_t *const distrib, const int32_t i, const int32_t nodeIdx, int32_t left_tries_idx[4], const int32_t depth, int32_t const lastSym, float64_t *S, float64_t *L, float64_t *R)
void POIMs_calc_SLR_helper2 (const float64_t *const distrib, const int32_t i, const int32_t nodeIdx, int32_t left_tries_idx[4], const int32_t depth, float64_t *S, float64_t *L, float64_t *R)
void POIMs_add_SLR_helper1 (const int32_t nodeIdx, const int32_t depth, const int32_t i, const int32_t y0, float64_t *const *const poims, const int32_t K, const int32_t debug)
void POIMs_add_SLR_helper2 (float64_t *const *const poims, const int32_t K, const int32_t k, const int32_t i, const int32_t y, const float64_t valW, const float64_t valS, const float64_t valL, const float64_t valR, const int32_t debug)
virtual const char * get_name () const
template<>
void POIMs_extract_W_helper (const int32_t nodeIdx, const int32_t depth, const int32_t offset, const int32_t y0, float64_t *const *const W, const int32_t K)
template<>
void POIMs_extract_W (float64_t *const *const W, const int32_t K)
template<>
void POIMs_calc_SLR_helper1 (const float64_t *const distrib, const int32_t i, const int32_t nodeIdx, int32_t left_tries_idx[4], const int32_t depth, int32_t const lastSym, float64_t *S, float64_t *L, float64_t *R)
template<>
void POIMs_calc_SLR_helper2 (const float64_t *const distrib, const int32_t i, const int32_t nodeIdx, int32_t left_tries_idx[4], const int32_t depth, float64_t *S, float64_t *L, float64_t *R)
template<>
void POIMs_precalc_SLR (const float64_t *const distrib)
template<>
void POIMs_get_SLR (const int32_t parentIdx, const int32_t sym, const int32_t depth, float64_t *S, float64_t *L, float64_t *R)
template<>
void POIMs_add_SLR_helper2 (float64_t *const *const poims, const int32_t K, const int32_t k, const int32_t i, const int32_t y, const float64_t valW, const float64_t valS, const float64_t valL, const float64_t valR, const int32_t debug)
template<>
void POIMs_add_SLR_helper1 (const int32_t nodeIdx, const int32_t depth, const int32_t i, const int32_t y0, float64_t *const *const poims, const int32_t K, const int32_t debug)
template<>
void POIMs_add_SLR (float64_t *const *const poims, const int32_t K, const int32_t debug)

Public Attributes

int32_t NUM_SYMS

Protected Attributes

int32_t length
int32_t * trees
int32_t degree
float64_t const * position_weights
Trie * TreeMem
int32_t TreeMemPtr
int32_t TreeMemPtrMax
bool use_compact_terminal_nodes
bool weights_in_tree
int32_t * nofsKmers

Constructor & Destructor Documentation

CTrie (  ) 

default constructor

Definition at line 663 of file Trie.h.

CTrie ( int32_t  d,
bool  p_use_compact_terminal_nodes = true 
)

constructor

Parameters:
d degree
p_use_compact_terminal_nodes if compact terminal nodes shall be used

Definition at line 680 of file Trie.h.

CTrie ( const CTrie< Trie > &  to_copy  ) 

copy constructor

Definition at line 696 of file Trie.h.

~CTrie (  )  [virtual]

Definition at line 1129 of file Trie.h.


Member Function Documentation

void add_example_to_tree_mismatch_recursion ( int32_t  tree,
int32_t  i,
float64_t  alpha,
int32_t *  vec,
int32_t  len_rem,
int32_t  degree_rec,
int32_t  mismatch_rec,
int32_t  max_mismatch,
float64_t weights 
)

add example to tree mismatch recursion

Parameters:
tree tree
i i
alpha alpha
vec vector
len_rem length of rem
degree_rec degree rec
mismatch_rec mismatch rec
max_mismatch maximum mismatch
weights weights

Definition at line 1235 of file Trie.h.

void add_to_trie ( int32_t  i,
int32_t  seq_offset,
int32_t *  vec,
float32_t  alpha,
float64_t weights,
bool  degree_times_position_weights 
)

add to trie

Parameters:
i i
seq_offset sequence offset
vec vector
alpha alpha
weights weights
degree_times_position_weights if degree times position weights shall be applied

Definition at line 1497 of file Trie.h.

void check_treemem (  ) 

check tree memory usage

Definition at line 517 of file Trie.h.

int32_t compact_nodes ( int32_t  start_node,
int32_t  depth,
float64_t weights 
)

compact nodes

Parameters:
start_node start node
depth depth
weights weights

Definition at line 815 of file Trie.h.

bool compare ( const CTrie< Trie > &  other  ) 

compare

Parameters:
other other trie
Returns:
if comparison was successful
bool compare_traverse ( int32_t  node,
const CTrie< Trie > &  other,
int32_t  other_node 
)

compare traverse

Parameters:
node node
other other trie
other_node other node
Returns:
if comparison was successful
float64_t * compute_abs_weights ( int32_t &  len  ) 

compute absolute weights

Parameters:
len length
Returns:
computed absolute weights

Definition at line 1215 of file Trie.h.

float64_t compute_abs_weights_tree ( int32_t  tree,
int32_t  depth 
)

compute absolute weights tree

Parameters:
tree tree to compute for
depth depth
Returns:
computed absolute weights tree

Definition at line 1186 of file Trie.h.

float64_t compute_by_tree_helper ( int32_t *  vec,
int32_t  len,
int32_t  seq_pos,
int32_t  tree_pos,
int32_t  weight_pos,
float64_t weights,
bool  degree_times_position_weights 
)

compute by tree helper

Parameters:
vec vector
len length
seq_pos sequence position
tree_pos tree position
weight_pos weight position
weights 
degree_times_position_weights if degree times position weights shall be applied
Returns:
a computed value

Definition at line 1723 of file Trie.h.

void compute_by_tree_helper ( int32_t *  vec,
int32_t  len,
int32_t  seq_pos,
int32_t  tree_pos,
int32_t  weight_pos,
float64_t LevelContrib,
float64_t  factor,
int32_t  mkl_stepsize,
float64_t weights,
bool  degree_times_position_weights 
)

compute by tree helper

Parameters:
vec vector
len length
seq_pos sequence position
tree_pos tree position
weight_pos weight position
LevelContrib level contribution
factor factor
mkl_stepsize MKL stepsize
weights 
degree_times_position_weights if degree times position weights shall be applied

Definition at line 1798 of file Trie.h.

void compute_scoring_helper ( int32_t  tree,
int32_t  i,
int32_t  j,
float64_t  weight,
int32_t  d,
int32_t  max_degree,
int32_t  num_feat,
int32_t  num_sym,
int32_t  sym_offset,
int32_t  offs,
float64_t result 
)

compute scoring helper

Parameters:
tree tree
i i
j j
weight weight
d degree
max_degree maximum degree
num_feat number of features
num_sym number of symbols
sym_offset symbol offset
offs offsets
result result

Definition at line 1348 of file Trie.h.

void count ( const float64_t  w,
const int32_t  depth,
const struct TreeParseInfo  info,
const int32_t  p,
int32_t *  x,
const int32_t  k 
)

count

Parameters:
w w
depth depth
info tree parse info
p p
x x
k 

Definition at line 1443 of file Trie.h.

void create ( int32_t  len,
bool  p_use_compact_terminal_nodes = true 
)

create

Parameters:
len length of new trie
p_use_compact_terminal_nodes if compact terminal nodes shall be used

Definition at line 1157 of file Trie.h.

void delete_trees ( bool  p_use_compact_terminal_nodes = true  ) 

delete trees

Parameters:
p_use_compact_terminal_nodes if compact terminal nodes shall be used

Definition at line 1172 of file Trie.h.

void destroy (  ) 

destroy

Definition at line 1136 of file Trie.h.

void display_node ( int32_t  node  )  const

display node

Parameters:
node node to display

Definition at line 1065 of file Trie.h.

void fill_backtracking_table ( int32_t  pos,
DynArray< ConsensusEntry > *  prev,
DynArray< ConsensusEntry > *  cur,
bool  cumulative,
float64_t weights 
)

fill backtracking table

Parameters:
pos position
prev previous concencus entry
cur current concensus entry
cumulative if is cumulative
weights weights

Definition at line 2088 of file Trie.h.

void fill_backtracking_table_recursion ( Trie *  tree,
int32_t  depth,
uint64_t  seq,
float64_t  value,
DynArray< ConsensusEntry > *  table,
float64_t weights 
)

fill backtracking table recursion

Parameters:
tree tree
depth depth
seq sequence
value value
table table of concensus entries
weights weights

Definition at line 2014 of file Trie.h.

int32_t find_deepest_node ( int32_t  start_node,
int32_t &  deepest_node 
) const

find deepest node

Parameters:
start_node start node
deepest_node deepest node will be stored in here
Returns:
depth of deepest node

Definition at line 758 of file Trie.h.

bool find_node ( int32_t  node,
int32_t *  trace,
int32_t &  trace_len 
) const

find node

Parameters:
node node to find
trace trace
trace_len length of trace

Definition at line 1024 of file Trie.h.

float64_t get_cumulative_score ( int32_t  pos,
uint64_t  seq,
int32_t  deg,
float64_t weights 
)

get cumulative score

Parameters:
pos position
seq sequence
deg degree
weights weights
Returns:
cumulative score

Definition at line 2056 of file Trie.h.

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

Implements CSGObject.

Definition at line 630 of file Trie.h.

int32_t get_node ( bool  last_node = false  ) 

get node

Returns:
node

Definition at line 493 of file Trie.h.

int32_t get_num_used_nodes (  ) 

get number of used nodes

Returns:
number of used nodes

Definition at line 475 of file Trie.h.

bool get_use_compact_terminal_nodes (  ) 

get use compact terminal nodes

Returns:
if compact terminal nodes are used

Definition at line 455 of file Trie.h.

bool get_weights_in_tree (  ) 

get weights in tree

Returns:
if weights are in tree

Definition at line 543 of file Trie.h.

const CTrie& operator= ( const CTrie< Trie > &  to_copy  ) 

overload operator =

void POIMs_add_SLR ( float64_t *const *const   poims,
const int32_t  K,
const int32_t  debug 
)

Definition at line 412 of file Trie.cpp.

void POIMs_add_SLR ( float64_t *const *const   poims,
const int32_t  K,
const int32_t  debug 
)

POIMs add SLR

Parameters:
poims POIMs
K K
debug debug level
void POIMs_add_SLR_helper1 ( const int32_t  nodeIdx,
const int32_t  depth,
const int32_t  i,
const int32_t  y0,
float64_t *const *const   poims,
const int32_t  K,
const int32_t  debug 
)

POIMs add SLR helper 1

Parameters:
nodeIdx node index
depth depth
i i
y0 y0
poims POIMs
K K
debug debug level
void POIMs_add_SLR_helper1 ( const int32_t  nodeIdx,
const int32_t  depth,
const int32_t  i,
const int32_t  y0,
float64_t *const *const   poims,
const int32_t  K,
const int32_t  debug 
)

Definition at line 355 of file Trie.cpp.

void POIMs_add_SLR_helper2 ( float64_t *const *const   poims,
const int32_t  K,
const int32_t  k,
const int32_t  i,
const int32_t  y,
const float64_t  valW,
const float64_t  valS,
const float64_t  valL,
const float64_t  valR,
const int32_t  debug 
)

Definition at line 294 of file Trie.cpp.

void POIMs_add_SLR_helper2 ( float64_t *const *const   poims,
const int32_t  K,
const int32_t  k,
const int32_t  i,
const int32_t  y,
const float64_t  valW,
const float64_t  valS,
const float64_t  valL,
const float64_t  valR,
const int32_t  debug 
)

POIMs add SLR helper 2

Parameters:
poims POIMs
K K
k k
i i
y y
valW value W
valS value S
valL value L
valR value R
debug debug level
void POIMs_calc_SLR_helper1 ( const float64_t *const   distrib,
const int32_t  i,
const int32_t  nodeIdx,
int32_t  left_tries_idx[4],
const int32_t  depth,
int32_t const   lastSym,
float64_t S,
float64_t L,
float64_t R 
)

POIMs calc SLR helper

Parameters:
distrib distribution
i i
nodeIdx node index
left_tries_idx left tries index
depth depth
lastSym last symbol
S S
L L
R R
void POIMs_calc_SLR_helper1 ( const float64_t *const   distrib,
const int32_t  i,
const int32_t  nodeIdx,
int32_t  left_tries_idx[4],
const int32_t  depth,
int32_t const   lastSym,
float64_t S,
float64_t L,
float64_t R 
)

Definition at line 74 of file Trie.cpp.

void POIMs_calc_SLR_helper2 ( const float64_t *const   distrib,
const int32_t  i,
const int32_t  nodeIdx,
int32_t  left_tries_idx[4],
const int32_t  depth,
float64_t S,
float64_t L,
float64_t R 
)

Definition at line 134 of file Trie.cpp.

void POIMs_calc_SLR_helper2 ( const float64_t *const   distrib,
const int32_t  i,
const int32_t  nodeIdx,
int32_t  left_tries_idx[4],
const int32_t  depth,
float64_t S,
float64_t L,
float64_t R 
)

POIMs calc SLR helper 2

Parameters:
distrib distribution
i i
nodeIdx node index
left_tries_idx left tries index
depth depth
S S
L L
R R
void POIMs_extract_W ( float64_t *const *const   W,
const int32_t  K 
)

POIMs extract W

Parameters:
W W
K K
void POIMs_extract_W ( float64_t *const *const   W,
const int32_t  K 
)

Definition at line 60 of file Trie.cpp.

void POIMs_extract_W_helper ( const int32_t  nodeIdx,
const int32_t  depth,
const int32_t  offset,
const int32_t  y0,
float64_t *const *const   W,
const int32_t  K 
)

Definition at line 19 of file Trie.cpp.

void POIMs_extract_W_helper ( const int32_t  nodeIdx,
const int32_t  depth,
const int32_t  offset,
const int32_t  y0,
float64_t *const *const   W,
const int32_t  K 
)

POIMs extract W helper

Parameters:
nodeIdx node index
depth depth
offset offset
y0 y0
W W
K K
void POIMs_get_SLR ( const int32_t  parentIdx,
const int32_t  sym,
const int32_t  depth,
float64_t S,
float64_t L,
float64_t R 
)

Definition at line 272 of file Trie.cpp.

void POIMs_get_SLR ( const int32_t  parentIdx,
const int32_t  sym,
const int32_t  depth,
float64_t S,
float64_t L,
float64_t R 
)

POIMs get SLR

Parameters:
parentIdx parent index
sym symbol
depth depth
S will point to S
L will point to L
R will point to R
void POIMs_precalc_SLR ( const float64_t *const   distrib  ) 

Definition at line 245 of file Trie.cpp.

void POIMs_precalc_SLR ( const float64_t *const   distrib  ) 

POIMs precalc SLR

Parameters:
distrib distribution
void set_degree ( int32_t  d  ) 

set degree

Parameters:
d new degree

Definition at line 1151 of file Trie.h.

void set_position_weights ( const float64_t p_position_weights  ) 

set position weights

Parameters:
p_position_weights new position weights

Definition at line 484 of file Trie.h.

void set_use_compact_terminal_nodes ( bool  p_use_compact_terminal_nodes  ) 

set use compact terminal nodes

Parameters:
p_use_compact_terminal_nodes if compact terminal nodes shall be used

Definition at line 465 of file Trie.h.

void set_weights_in_tree ( bool  weights_in_tree_  ) 

set weights in tree

Parameters:
weights_in_tree_ if weights shall be in tree

Definition at line 534 of file Trie.h.

void traverse ( int32_t  tree,
const int32_t  p,
struct TreeParseInfo  info,
const int32_t  depth,
int32_t *const   x,
const int32_t  k 
)

traverse

Parameters:
tree tree
p p
info tree parse info
depth depth
x x
k k

Definition at line 1393 of file Trie.h.


Member Data Documentation

int32_t degree [protected]

degree

Definition at line 643 of file Trie.h.

int32_t length [protected]

length

Definition at line 638 of file Trie.h.

int32_t* nofsKmers [protected]

nofsKmers

Definition at line 660 of file Trie.h.

int32_t NUM_SYMS

number of symbols

Definition at line 634 of file Trie.h.

float64_t const* position_weights [protected]

position weights

Definition at line 645 of file Trie.h.

Trie* TreeMem [protected]

tree memory

Definition at line 648 of file Trie.h.

int32_t TreeMemPtr [protected]

tree memory pointer

Definition at line 650 of file Trie.h.

int32_t TreeMemPtrMax [protected]

tree memory pointer maximum

Definition at line 652 of file Trie.h.

int32_t* trees [protected]

trees

Definition at line 640 of file Trie.h.

bool use_compact_terminal_nodes [protected]

if compact terminal nodes are used

Definition at line 654 of file Trie.h.

bool weights_in_tree [protected]

if weights are in tree

Definition at line 657 of file Trie.h.


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

SHOGUN Machine Learning Toolbox - Documentation