[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]

| VariableImportanceVisitor Class Reference |

`#include <vigra/random_forest/rf_visitors.hxx>`

Inheritance diagram for VariableImportanceVisitor:

## Public Member Functions
template<class RF , class PR , class SM , class ST >
void | after_tree_ip_impl (RF &rf, PR &pr, SM &sm, ST &, int index)
template<class Tree , class Split , class Region , class Feature_t , class Label_t >
void | visit_after_split (Tree &tree, Split &split, Region &, Region &, Region &, Feature_t &, Label_t &)
template<class RF , class PR , class SM , class ST >
void | visit_after_tree (RF &rf, PR &pr, SM &sm, ST &st, int index)
template<class RF , class PR >
void | visit_at_end (RF &rf, PR &)
Public Member Functions inherited from VisitorBase
double | return_val ()
template<class Tree , class Split , class Region , class Feature_t , class Label_t >
void | visit_after_split (Tree &tree, Split &split, Region &parent, Region &leftChild, Region &rightChild, Feature_t &features, Label_t &labels)
template<class RF , class PR , class SM , class ST >
void | visit_after_tree (RF &rf, PR &pr, SM &sm, ST &st, int index)
template<class RF , class PR >
void | visit_at_beginning (RF const &rf, PR const &pr)
template<class RF , class PR >
void | visit_at_end (RF const &rf, PR const &pr)
template<class TR , class IntT , class TopT , class Feat >
void | visit_external_node (TR &tr, IntT index, TopT node_t, Feat &features)
template<class TR , class IntT , class TopT , class Feat >
void | visit_internal_node (TR &, IntT, TopT, Feat &)

## Public Attributes
MultiArray< 2, double > | variable_importance_

## Detailed Description

calculate variable importance while learning.

## Member Function Documentation

void visit_after_split | ( | Tree & | tree,
|  | Split & | split,
|  | Region & | ,
|  | Region & | ,
|  | Region & | ,
|  | Feature_t & | ,
|  | Label_t & |
| ) |  |

calculates impurity decrease based variable importance after every split.

void after_tree_ip_impl | ( | RF & | rf,
|  | PR & | pr,
|  | SM & | sm,
|  | ST & | ,
|  | int | index
| ) |  |

compute permutation based var imp. (Only an Array of size oob_sample_count x 1 is created.

- apposed to oob_sample_count x feature_count in the other method.

See Also
  FieldProxy

void visit_after_tree | ( | RF & | rf,
|  | PR & | pr,
|  | SM & | sm,
|  | ST & | st,
|  | int | index
| ) |  |

calculate permutation based impurity after every tree has been learned default behaviour is that this happens out of place. If you have very big data sets and want to avoid copying of data set the in_place_ flag to true.

void visit_at_end | ( | RF & | rf,
|  | PR & |
| ) |  |

Normalise variable importance after the number of trees is known.

## Member Data Documentation

MultiArray<2, double> variable_importance_

This Array has the same entries as the R - random forest variable importance. Matrix is featureCount by (classCount +2) variable_importance_(ii,jj) is the variable importance measure of the ii-th variable according to: jj = 0 - (classCount-1) classwise permutation importance jj = rowCount(variable_importance_) -2 permutation importance jj = rowCount(variable_importance_) -1 gini decrease importance.

permutation importance: The difference between the fraction of OOB samples classified correctly before and after permuting (randomizing) the ii-th column is calculated. The ii-th column is permuted rep_cnt times.

class wise permutation importance: same as permutation importance. We only look at those OOB samples whose response corresponds to class jj.

gini decrease importance: row ii corresponds to the sum of all gini decreases induced by variable ii in each node of the random forest.

The documentation for this class was generated from the following file:

- vigra/random_forest/rf_visitors.hxx

© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) Heidelberg Collaboratory for Image Processing, University of Heidelberg, Germany | html generated using doxygen and Python vigra 1.11.1 (Fri May 19 2017)