ATLAS Offline Software
|
Implement a Forest with weighted nodes This a general Forest class which implement the strategy used by TMVA in some cases. More...
#include <ForestTMVA.h>
Public Member Functions | |
ForestWeighted () | |
float | GetTreeResponseWeighted (const std::vector< float > &values, unsigned int itree) const |
float | GetTreeResponseWeighted (const std::vector< float * > &pointers, unsigned int itree) const |
float | GetWeightedResponse (const std::vector< float > &values) const |
float | GetWeightedResponse (const std::vector< float * > &pointers) const |
void | newTree (const std::vector< Node_t > &nodes, float weight) |
float | GetTreeWeight (unsigned int itree) const |
float | GetSumWeights () const |
virtual float | GetOffset () const override |
Return the offset of the forest. More... | |
virtual void | PrintTree (unsigned int itree) const override |
virtual float | GetTreeResponse (const std::vector< float > &values, unsigned int itree) const override final |
Return the response of one tree Must pass the features in a std::vector<float> values and the index of the tree. More... | |
virtual float | GetTreeResponse (const std::vector< float * > &pointers, unsigned int itree) const override final |
virtual float | GetRawResponse (const std::vector< float > &values) const override final |
Return the response of the whole Forest. More... | |
virtual float | GetRawResponse (const std::vector< float * > &pointers) const override final |
virtual float | GetResponse (const std::vector< float > &values) const override |
Compute the prediction for regression. More... | |
virtual float | GetResponse (const std::vector< float * > &pointers) const override |
virtual std::vector< float > | GetMultiResponse (const std::vector< float > &values, unsigned int numClasses) const override |
Compute the prediction for multiclassification (a score for each class). More... | |
virtual std::vector< float > | GetMultiResponse (const std::vector< float * > &pointers, unsigned int numClasses) const override |
virtual unsigned int | GetNTrees () const override final |
virtual void | PrintForest () const override |
std::vector< Node_t > | GetTree (unsigned int itree) const |
Return the vector of nodes for the tree itree. More... | |
virtual float | GetClassification (const std::vector< float > &values) const =0 |
Compute the prediction of a classification. More... | |
virtual float | GetClassification (const std::vector< float * > &pointers) const =0 |
virtual TTree * | WriteTree (TString) const =0 |
Return a TTree representing the BDT. More... | |
virtual int | GetNVars () const =0 |
Get the number of input variable to be passed with std::vector to Get* methods. More... | |
Protected Member Functions | |
float | GetTreeResponseFromNode (const std::vector< float > &values, index_t index) const |
Get the response of a tree. More... | |
float | GetTreeResponseFromNode (const std::vector< float * > &pointers, index_t index) const |
void | newTree (const std::vector< Node_t > &nodes) |
append a new tree (defined by a vector of nodes serialized in preorder) to the forest More... | |
Private Attributes | |
std::vector< float > | m_weights |
boost weights More... | |
float | m_sumWeights |
the sumOfBoostWeights–no need to recompute each call More... | |
std::vector< index_t > | m_forest |
indices of the top-level nodes of each tree More... | |
std::vector< Node_t > | m_nodes |
where the nodes of the forest are stored More... | |
Implement a Forest with weighted nodes This a general Forest class which implement the strategy used by TMVA in some cases.
Each node has a weight that can be used to compute GetTreeResponseWeighted In some cases an offset is needed, which is just the first weight (actually in TMVA all the weights are identical when the offset is used).
Definition at line 23 of file ForestTMVA.h.
|
inline |
Definition at line 26 of file ForestTMVA.h.
|
pure virtualinherited |
|
pure virtualinherited |
Compute the prediction of a classification.
Implemented in MVAUtils::ForestTMVA, MVAUtils::ForestXGBoostBase< Node_t >, MVAUtils::ForestXGBoostBase< NodeXGBoost >, MVAUtils::ForestLGBMBase< Node_t >, MVAUtils::ForestLGBMBase< NodeLGBM >, and MVAUtils::ForestLGBMBase< NodeLGBMSimple >.
|
overridevirtualinherited |
Implements MVAUtils::IForest.
|
overridevirtualinherited |
Compute the prediction for multiclassification (a score for each class).
In addition to the input values need to pass the number of classes
Implements MVAUtils::IForest.
|
inlinefinaloverridevirtualinherited |
Implements MVAUtils::IForest.
|
pure virtualinherited |
Get the number of input variable to be passed with std::vector to Get* methods.
Implemented in MVAUtils::ForestTMVA, MVAUtils::ForestLGBM, MVAUtils::ForestXGBoost, and MVAUtils::ForestLGBMSimple.
|
inlineoverridevirtual |
Return the offset of the forest.
Since by default there is no offset, return 0
Reimplemented from MVAUtils::Forest< Node_t >.
Definition at line 41 of file ForestTMVA.h.
|
finaloverridevirtualinherited |
Implements MVAUtils::IForest.
|
finaloverridevirtualinherited |
Return the response of the whole Forest.
Raw is just the sum of all the trees
Implements MVAUtils::IForest.
|
overridevirtualinherited |
Implements MVAUtils::IForest.
Reimplemented in MVAUtils::ForestTMVA.
|
overridevirtualinherited |
Compute the prediction for regression.
Implements MVAUtils::IForest.
Reimplemented in MVAUtils::ForestTMVA.
|
inline |
Definition at line 39 of file ForestTMVA.h.
|
inherited |
Return the vector of nodes for the tree itree.
|
finaloverridevirtualinherited |
Implements MVAUtils::IForest.
|
finaloverridevirtualinherited |
Return the response of one tree Must pass the features in a std::vector<float> values and the index of the tree.
Implements MVAUtils::IForest.
|
protectedinherited |
|
protectedinherited |
Get the response of a tree.
Instead of specifying the index of the tree (as in GetTreeResponse) the index of the top node of the tree should be specified
float MVAUtils::ForestWeighted< Node_t >::GetTreeResponseWeighted | ( | const std::vector< float * > & | pointers, |
unsigned int | itree | ||
) | const |
float MVAUtils::ForestWeighted< Node_t >::GetTreeResponseWeighted | ( | const std::vector< float > & | values, |
unsigned int | itree | ||
) | const |
|
inline |
Definition at line 38 of file ForestTMVA.h.
float MVAUtils::ForestWeighted< Node_t >::GetWeightedResponse | ( | const std::vector< float * > & | pointers | ) | const |
float MVAUtils::ForestWeighted< Node_t >::GetWeightedResponse | ( | const std::vector< float > & | values | ) | const |
|
protectedinherited |
append a new tree (defined by a vector of nodes serialized in preorder) to the forest
void MVAUtils::ForestWeighted< Node_t >::newTree | ( | const std::vector< Node_t > & | nodes, |
float | weight | ||
) |
|
overridevirtualinherited |
Implements MVAUtils::IForest.
|
inlineoverridevirtual |
|
pure virtualinherited |
Return a TTree representing the BDT.
The called is the owner of the returned TTree
Implemented in MVAUtils::ForestTMVA, MVAUtils::ForestLGBM, MVAUtils::ForestXGBoost, and MVAUtils::ForestLGBMSimple.
|
privateinherited |
|
privateinherited |
|
private |
the sumOfBoostWeights–no need to recompute each call
Definition at line 50 of file ForestTMVA.h.
|
private |
boost weights
Definition at line 49 of file ForestTMVA.h.