Logo ROOT   6.07/09
Reference Guide
List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
TMVA::RuleEnsemble Class Reference

Definition at line 67 of file RuleEnsemble.h.

Public Types

enum  ELearningModel { kFull =0, kRules =1, kLinear =2 }
 

Public Member Functions

 RuleEnsemble (RuleFit *rf)
 constructor More...
 
 RuleEnsemble (const RuleEnsemble &other)
 copy constructor More...
 
 RuleEnsemble ()
 constructor More...
 
virtual ~RuleEnsemble ()
 destructor More...
 
void AddOffset (Double_t v)
 
voidAddXMLTo (void *parent) const
 write rules to XML More...
 
void CalcImportance ()
 calculate the importance of each rule More...
 
Double_t CalcLinImportance ()
 calculate the linear importance for each rule More...
 
Double_t CalcLinNorm (Double_t stdev)
 
Int_t CalcNRules (const TMVA::DecisionTree *dtree)
 calculate the number of rules More...
 
Double_t CalcRuleImportance ()
 calculate importance of each rule More...
 
void CalcRuleSupport ()
 calculate the support for all rules More...
 
void CalcVarImportance ()
 Calculates variable importance using eq (35) in RuleFit paper by Friedman et.al. More...
 
void CleanupLinear ()
 cleanup linear model More...
 
void CleanupRules ()
 cleanup rules More...
 
void ClearCoefficients (Double_t val=0)
 
void ClearLinCoefficients (Double_t val=0)
 
void ClearLinNorm (Double_t val=1.0)
 
void ClearRuleMap ()
 
Double_t CoefficientRadius ()
 Calculates sqrt(Sum(a_i^2)), i=1..N (NOTE do not include a0) More...
 
Bool_t DoFull () const
 
Bool_t DoLinear () const
 
Bool_t DoOnlyLinear () const
 
Bool_t DoOnlyRules () const
 
Bool_t DoRules () const
 
Double_t EvalEvent () const
 
Double_t EvalEvent (const Event &e)
 
Double_t EvalEvent (Double_t ofs, const std::vector< Double_t > &coefs, const std::vector< Double_t > &lincoefs) const
 
Double_t EvalEvent (const Event &e, Double_t ofs, const std::vector< Double_t > &coefs, const std::vector< Double_t > &lincoefs)
 
Double_t EvalEvent (UInt_t evtidx) const
 
Double_t EvalEvent (UInt_t evtidx, Double_t ofs, const std::vector< Double_t > &coefs, const std::vector< Double_t > &lincoefs) const
 
Double_t EvalLinEvent () const
 
Double_t EvalLinEvent (const std::vector< Double_t > &coefs) const
 
Double_t EvalLinEvent (const Event &e)
 
Double_t EvalLinEvent (const Event &e, UInt_t vind)
 
Double_t EvalLinEvent (const Event &e, const std::vector< Double_t > &coefs)
 
Double_t EvalLinEvent (UInt_t evtidx) const
 
Double_t EvalLinEvent (UInt_t evtidx, const std::vector< Double_t > &coefs) const
 
Double_t EvalLinEvent (UInt_t evtidx, UInt_t vind) const
 
Double_t EvalLinEvent (UInt_t evtidx, UInt_t vind, Double_t coefs) const
 
Double_t EvalLinEventRaw (UInt_t vind, const Event &e, Bool_t norm) const
 
Double_t EvalLinEventRaw (UInt_t vind, UInt_t evtidx, Bool_t norm) const
 
void FindNEndNodes (const TMVA::Node *node, Int_t &nendnodes)
 find the number of leaf nodes More...
 
Double_t FStar () const
 We want to estimate F* = argmin Eyx( L(y,F(x) ), min wrt F(x) F(x) = FL(x) + FR(x) , linear and rule part. More...
 
Double_t FStar (const TMVA::Event &e)
 We want to estimate F* = argmin Eyx( L(y,F(x) ), min wrt F(x) F(x) = FL(x) + FR(x) , linear and rule part. More...
 
Double_t GetAverageRuleSigma () const
 
Double_t GetAverageSupport () const
 
void GetCoefficients (std::vector< Double_t > &v)
 Retrieve all rule coefficients. More...
 
const EventGetEvent () const
 
Double_t GetEventLinearVal (UInt_t i) const
 
Double_t GetEventLinearValNorm (UInt_t i) const
 
const std::vector< UInt_t > & GetEventRuleMap (UInt_t evtidx) const
 
Double_t GetEventRuleVal (UInt_t i) const
 
Double_t GetImportanceCut () const
 
Double_t GetImportanceRef () const
 
ELearningModel GetLearningModel () const
 
const std::vector< Double_t > & GetLinCoefficients () const
 
Double_t GetLinCoefficients (int i) const
 
Double_t GetLinDM (int i) const
 
Double_t GetLinDP (int i) const
 
const std::vector< Double_t > & GetLinImportance () const
 
Double_t GetLinImportance (int i) const
 
const std::vector< Double_t > & GetLinNorm () const
 
Double_t GetLinNorm (int i) const
 
Double_t GetLinQuantile () const
 
const MethodBaseGetMethodBase () const
 Get a pointer to the original MethodRuleFit. More...
 
const MethodRuleFitGetMethodRuleFit () const
 Get a pointer to the original MethodRuleFit. More...
 
UInt_t GetNLinear () const
 
UInt_t GetNRules () const
 
Double_t GetOffset () const
 
const RuleFitGetRuleFit () const
 
const TMVA::EventGetRuleMapEvent (UInt_t evtidx) const
 
Double_t GetRuleMinDist () const
 
Double_t GetRulePBB (int i) const
 
Double_t GetRulePBS (int i) const
 
Double_t GetRulePSB (int i) const
 
Double_t GetRulePSS (int i) const
 
Double_t GetRulePTag (int i) const
 
std::vector< TMVA::Rule * > & GetRules ()
 
RuleGetRules (int i)
 
const std::vector< TMVA::Rule * > & GetRulesConst () const
 
const RuleGetRulesConst (int i) const
 
UInt_t GetRulesNCuts (int i) const
 
const EventGetTrainingEvent (UInt_t i) const
 get the training event from the rule fitter More...
 
const std::vector< const TMVA::Event * > * GetTrainingEvents () const
 get list of training events from the rule fitter More...
 
const std::vector< Double_t > & GetVarImportance () const
 
Double_t GetVarImportance (int i) const
 
void Initialize (const RuleFit *rf)
 Initializes all member variables with default values. More...
 
Bool_t IsLinTermOK (int i) const
 
Bool_t IsRuleMapOK () const
 
void MakeLinearTerms ()
 Make the linear terms as in eq 25, ref 2 For this the b and (1-b) quatiles are needed. More...
 
void MakeModel ()
 create model More...
 
void MakeRuleMap (const std::vector< const TMVA::Event * > *events=0, UInt_t ifirst=0, UInt_t ilast=0)
 Makes rule map for all events. More...
 
void MakeRules (const std::vector< const TMVA::DecisionTree * > &forest)
 Makes rules from the given decision tree. More...
 
void operator= (const RuleEnsemble &other)
 
Double_t PdfLinear (Double_t &nsig, Double_t &ntot) const
 This function returns Pr( y = 1 | x ) for the linear terms. More...
 
Double_t PdfRule (Double_t &nsig, Double_t &ntot) const
 This function returns Pr( y = 1 | x ) for rules. More...
 
void Print () const
 print function More...
 
void PrintRaw (std::ostream &os) const
 write rules to stream More...
 
void PrintRuleGen () const
 print rule generation info More...
 
void ReadFromXML (void *wghtnode)
 read rules from XML More...
 
void ReadRaw (std::istream &istr)
 read rule ensemble from stream More...
 
void RemoveSimilarRules ()
 remove rules that behave similar More...
 
void RuleResponseStats ()
 calculate various statistics for this rule More...
 
void RuleStatistics ()
 calculate various statistics for this rule More...
 
void SetAverageRuleSigma (Double_t v)
 
void SetCoefficient (UInt_t i, Double_t v)
 
void SetCoefficients (const std::vector< Double_t > &v)
 set all rule coefficients More...
 
void SetEvent (const Event &e)
 
void SetImportanceCut (Double_t minimp=0)
 
void SetImportanceRef (Double_t impref)
 set reference importance More...
 
void SetLinCoefficient (UInt_t i, Double_t v)
 
void SetLinCoefficients (const std::vector< Double_t > &v)
 
void SetLinDM (const std::vector< Double_t > &xmin)
 
void SetLinDP (const std::vector< Double_t > &xmax)
 
void SetLinNorm (const std::vector< Double_t > &norm)
 
void SetLinQuantile (Double_t q)
 
void SetModelFull ()
 
void SetModelLinear ()
 
void SetModelRules ()
 
void SetMsgType (EMsgType t)
 
void SetOffset (Double_t v=0.0)
 
void SetRuleFit (const RuleFit *rf)
 
void SetRuleMinDist (Double_t d)
 
void SetRules (const std::vector< TMVA::Rule * > &rules)
 set rules More...
 
void UpdateEventVal ()
 

Private Member Functions

void AddRule (const Node *node)
 add a new rule to the tree More...
 
void Copy (RuleEnsemble const &other)
 copy function More...
 
void DeleteRules ()
 
MsgLoggerLog () const
 message logger More...
 
void MakeRulesFromTree (const DecisionTree *dtree)
 create rules from the decsision tree structure More...
 
RuleMakeTheRule (const Node *node)
 Make a Rule from a given Node. More...
 
void ResetCoefficients ()
 reset all rule coefficients More...
 

Private Attributes

Double_t fAverageRuleSigma
 
Double_t fAverageSupport
 
const EventfEvent
 
Bool_t fEventCacheOK
 
std::vector< Double_tfEventLinearVal
 
std::vector< Char_tfEventRuleVal
 
Double_t fImportanceCut
 
Double_t fImportanceRef
 
ELearningModel fLearningModel
 
std::vector< Double_tfLinCoefficients
 
std::vector< Double_tfLinDM
 
std::vector< Double_tfLinDP
 
std::vector< Double_tfLinImportance
 
std::vector< Double_tfLinNorm
 
std::vector< TH1F * > fLinPDFB
 
std::vector< TH1F * > fLinPDFS
 
Double_t fLinQuantile
 
std::vector< Char_tfLinTermOK
 
MsgLoggerfLogger
 
UInt_t fNRulesGenerated
 
Double_t fOffset
 
const RuleFitfRuleFit
 
Double_t fRuleFSig
 
std::vector< std::vector< UInt_t > > fRuleMap
 
const std::vector< const TMVA::Event * > * fRuleMapEvents
 
UInt_t fRuleMapInd0
 
UInt_t fRuleMapInd1
 
Bool_t fRuleMapOK
 
Double_t fRuleMinDist
 
Double_t fRuleNCave
 
Double_t fRuleNCsig
 
std::vector< Double_tfRulePBB
 
std::vector< Double_tfRulePBS
 
std::vector< Double_tfRulePSB
 
std::vector< Double_tfRulePSS
 
std::vector< Double_tfRulePTag
 
std::vector< TMVA::Rule * > fRules
 
std::vector< Double_tfRuleVarFrac
 
std::vector< Double_tfVarImportance
 

Friends

std::ostream & operator<< (std::ostream &os, const RuleEnsemble &rules)
 

#include <TMVA/RuleEnsemble.h>

Member Enumeration Documentation

Enumerator
kFull 
kRules 
kLinear 

Definition at line 74 of file RuleEnsemble.h.

Constructor & Destructor Documentation

TMVA::RuleEnsemble::RuleEnsemble ( RuleFit rf)

constructor

Definition at line 52 of file RuleEnsemble.cxx.

TMVA::RuleEnsemble::RuleEnsemble ( const RuleEnsemble other)

copy constructor

Definition at line 78 of file RuleEnsemble.cxx.

TMVA::RuleEnsemble::RuleEnsemble ( )

constructor

Definition at line 91 of file RuleEnsemble.cxx.

TMVA::RuleEnsemble::~RuleEnsemble ( )
virtual

destructor

Definition at line 118 of file RuleEnsemble.cxx.

Member Function Documentation

void TMVA::RuleEnsemble::AddOffset ( Double_t  v)
inline

Definition at line 123 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::AddRule ( const Node node)
private

add a new rule to the tree

Definition at line 1323 of file RuleEnsemble.cxx.

void * TMVA::RuleEnsemble::AddXMLTo ( void parent) const

write rules to XML

Definition at line 1115 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::CalcImportance ( )

calculate the importance of each rule

Definition at line 428 of file RuleEnsemble.cxx.

Double_t TMVA::RuleEnsemble::CalcLinImportance ( )

calculate the linear importance for each rule

Definition at line 469 of file RuleEnsemble.cxx.

Double_t TMVA::RuleEnsemble::CalcLinNorm ( Double_t  stdev)
inline

Definition at line 130 of file RuleEnsemble.h.

Int_t TMVA::RuleEnsemble::CalcNRules ( const TMVA::DecisionTree dtree)

calculate the number of rules

Definition at line 1286 of file RuleEnsemble.cxx.

Double_t TMVA::RuleEnsemble::CalcRuleImportance ( )

calculate importance of each rule

Definition at line 449 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::CalcRuleSupport ( )

calculate the support for all rules

Definition at line 377 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::CalcVarImportance ( )

Calculates variable importance using eq (35) in RuleFit paper by Friedman et.al.

Definition at line 497 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::CleanupLinear ( )

cleanup linear model

Definition at line 362 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::CleanupRules ( )

cleanup rules

Definition at line 331 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::ClearCoefficients ( Double_t  val = 0)
inline

Definition at line 133 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::ClearLinCoefficients ( Double_t  val = 0)
inline

Definition at line 134 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::ClearLinNorm ( Double_t  val = 1.0)
inline

Definition at line 135 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::ClearRuleMap ( )
inline

Definition at line 164 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::CoefficientRadius ( )

Calculates sqrt(Sum(a_i^2)), i=1..N (NOTE do not include a0)

Definition at line 198 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::Copy ( RuleEnsemble const &  other)
private

copy function

Definition at line 1259 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::DeleteRules ( )
inlineprivate

Definition at line 333 of file RuleEnsemble.h.

Bool_t TMVA::RuleEnsemble::DoFull ( ) const
inline

Definition at line 271 of file RuleEnsemble.h.

Bool_t TMVA::RuleEnsemble::DoLinear ( ) const
inline

Definition at line 267 of file RuleEnsemble.h.

Bool_t TMVA::RuleEnsemble::DoOnlyLinear ( ) const
inline

Definition at line 270 of file RuleEnsemble.h.

Bool_t TMVA::RuleEnsemble::DoOnlyRules ( ) const
inline

Definition at line 269 of file RuleEnsemble.h.

Bool_t TMVA::RuleEnsemble::DoRules ( ) const
inline

Definition at line 268 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalEvent ( ) const
inline

Definition at line 426 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalEvent ( const Event e)
inline

Definition at line 481 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalEvent ( Double_t  ofs,
const std::vector< Double_t > &  coefs,
const std::vector< Double_t > &  lincoefs 
) const
inline

Definition at line 453 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalEvent ( const Event e,
Double_t  ofs,
const std::vector< Double_t > &  coefs,
const std::vector< Double_t > &  lincoefs 
)
inline

Definition at line 490 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalEvent ( UInt_t  evtidx) const
inline

Definition at line 502 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalEvent ( UInt_t  evtidx,
Double_t  ofs,
const std::vector< Double_t > &  coefs,
const std::vector< Double_t > &  lincoefs 
) const
inline

Definition at line 528 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEvent ( ) const
inline

Definition at line 574 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEvent ( const std::vector< Double_t > &  coefs) const
inline

Definition at line 587 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEvent ( const Event e)
inline

Definition at line 600 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEvent ( const Event e,
UInt_t  vind 
)
inline

Definition at line 610 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEvent ( const Event e,
const std::vector< Double_t > &  coefs 
)
inline

Definition at line 620 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEvent ( UInt_t  evtidx) const
inline

Definition at line 645 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEvent ( UInt_t  evtidx,
const std::vector< Double_t > &  coefs 
) const
inline

Definition at line 630 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEvent ( UInt_t  evtidx,
UInt_t  vind 
) const
inline

Definition at line 660 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEvent ( UInt_t  evtidx,
UInt_t  vind,
Double_t  coefs 
) const
inline

Definition at line 670 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEventRaw ( UInt_t  vind,
const Event e,
Bool_t  norm 
) const
inline

Definition at line 552 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::EvalLinEventRaw ( UInt_t  vind,
UInt_t  evtidx,
Bool_t  norm 
) const
inline

Definition at line 563 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::FindNEndNodes ( const TMVA::Node node,
Int_t nendnodes 
)

find the number of leaf nodes

Definition at line 1298 of file RuleEnsemble.cxx.

Double_t TMVA::RuleEnsemble::FStar ( ) const

We want to estimate F* = argmin Eyx( L(y,F(x) ), min wrt F(x) F(x) = FL(x) + FR(x) , linear and rule part.

Definition at line 813 of file RuleEnsemble.cxx.

Double_t TMVA::RuleEnsemble::FStar ( const TMVA::Event e)

We want to estimate F* = argmin Eyx( L(y,F(x) ), min wrt F(x) F(x) = FL(x) + FR(x) , linear and rule part.

Definition at line 799 of file RuleEnsemble.cxx.

Double_t TMVA::RuleEnsemble::GetAverageRuleSigma ( ) const
inline

Definition at line 306 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetAverageSupport ( ) const
inline

Definition at line 305 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::GetCoefficients ( std::vector< Double_t > &  v)

Retrieve all rule coefficients.

Definition at line 242 of file RuleEnsemble.cxx.

const Event* TMVA::RuleEnsemble::GetEvent ( ) const
inline

Definition at line 265 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetEventLinearVal ( UInt_t  i) const
inline

Definition at line 308 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetEventLinearValNorm ( UInt_t  i) const
inline

Definition at line 309 of file RuleEnsemble.h.

const std::vector<UInt_t>& TMVA::RuleEnsemble::GetEventRuleMap ( UInt_t  evtidx) const
inline

Definition at line 311 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetEventRuleVal ( UInt_t  i) const
inline

Definition at line 307 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetImportanceCut ( ) const
inline

Definition at line 273 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetImportanceRef ( ) const
inline

Definition at line 274 of file RuleEnsemble.h.

ELearningModel TMVA::RuleEnsemble::GetLearningModel ( ) const
inline

Definition at line 272 of file RuleEnsemble.h.

const std::vector< Double_t >& TMVA::RuleEnsemble::GetLinCoefficients ( ) const
inline

Definition at line 279 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetLinCoefficients ( int  i) const
inline

Definition at line 291 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetLinDM ( int  i) const
inline

Definition at line 293 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetLinDP ( int  i) const
inline

Definition at line 294 of file RuleEnsemble.h.

const std::vector< Double_t >& TMVA::RuleEnsemble::GetLinImportance ( ) const
inline

Definition at line 281 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetLinImportance ( int  i) const
inline

Definition at line 295 of file RuleEnsemble.h.

const std::vector< Double_t >& TMVA::RuleEnsemble::GetLinNorm ( ) const
inline

Definition at line 280 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetLinNorm ( int  i) const
inline

Definition at line 292 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetLinQuantile ( ) const
inline

Definition at line 284 of file RuleEnsemble.h.

const TMVA::MethodBase * TMVA::RuleEnsemble::GetMethodBase ( ) const

Get a pointer to the original MethodRuleFit.

Definition at line 170 of file RuleEnsemble.cxx.

const TMVA::MethodRuleFit * TMVA::RuleEnsemble::GetMethodRuleFit ( ) const

Get a pointer to the original MethodRuleFit.

Definition at line 160 of file RuleEnsemble.cxx.

UInt_t TMVA::RuleEnsemble::GetNLinear ( ) const
inline

Definition at line 283 of file RuleEnsemble.h.

UInt_t TMVA::RuleEnsemble::GetNRules ( ) const
inline

Definition at line 276 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetOffset ( ) const
inline

Definition at line 275 of file RuleEnsemble.h.

const RuleFit* TMVA::RuleEnsemble::GetRuleFit ( ) const
inline

Definition at line 261 of file RuleEnsemble.h.

const TMVA::Event* TMVA::RuleEnsemble::GetRuleMapEvent ( UInt_t  evtidx) const
inline

Definition at line 312 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetRuleMinDist ( ) const
inline

Definition at line 290 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetRulePBB ( int  i) const
inline

Definition at line 301 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetRulePBS ( int  i) const
inline

Definition at line 300 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetRulePSB ( int  i) const
inline

Definition at line 299 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetRulePSS ( int  i) const
inline

Definition at line 298 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetRulePTag ( int  i) const
inline

Definition at line 297 of file RuleEnsemble.h.

std::vector<TMVA::Rule*>& TMVA::RuleEnsemble::GetRules ( )
inline

Definition at line 278 of file RuleEnsemble.h.

Rule* TMVA::RuleEnsemble::GetRules ( int  i)
inline

Definition at line 287 of file RuleEnsemble.h.

const std::vector<TMVA::Rule*>& TMVA::RuleEnsemble::GetRulesConst ( ) const
inline

Definition at line 277 of file RuleEnsemble.h.

const Rule* TMVA::RuleEnsemble::GetRulesConst ( int  i) const
inline

Definition at line 286 of file RuleEnsemble.h.

UInt_t TMVA::RuleEnsemble::GetRulesNCuts ( int  i) const
inline

Definition at line 289 of file RuleEnsemble.h.

const TMVA::Event * TMVA::RuleEnsemble::GetTrainingEvent ( UInt_t  i) const

get the training event from the rule fitter

Definition at line 264 of file RuleEnsemble.cxx.

const std::vector< const TMVA::Event * > * TMVA::RuleEnsemble::GetTrainingEvents ( ) const

get list of training events from the rule fitter

Definition at line 256 of file RuleEnsemble.cxx.

const std::vector< Double_t >& TMVA::RuleEnsemble::GetVarImportance ( ) const
inline

Definition at line 282 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::GetVarImportance ( int  i) const
inline

Definition at line 296 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::Initialize ( const RuleFit rf)

Initializes all member variables with default values.

Definition at line 130 of file RuleEnsemble.cxx.

Bool_t TMVA::RuleEnsemble::IsLinTermOK ( int  i) const
inline

Definition at line 303 of file RuleEnsemble.h.

Bool_t TMVA::RuleEnsemble::IsRuleMapOK ( ) const
inline

Definition at line 313 of file RuleEnsemble.h.

MsgLogger& TMVA::RuleEnsemble::Log ( ) const
inlineprivate

message logger

Definition at line 396 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::MakeLinearTerms ( )

Make the linear terms as in eq 25, ref 2 For this the b and (1-b) quatiles are needed.

Definition at line 619 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::MakeModel ( )

create model

Definition at line 178 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::MakeRuleMap ( const std::vector< const TMVA::Event * > *  events = 0,
UInt_t  ifirst = 0,
UInt_t  ilast = 0 
)

Makes rule map for all events.

Definition at line 1390 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::MakeRules ( const std::vector< const TMVA::DecisionTree * > &  forest)

Makes rules from the given decision tree.

First node in all rules is ALWAYS the root node.

Definition at line 564 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::MakeRulesFromTree ( const DecisionTree dtree)
private

create rules from the decsision tree structure

Definition at line 1314 of file RuleEnsemble.cxx.

TMVA::Rule * TMVA::RuleEnsemble::MakeTheRule ( const Node node)
private

Make a Rule from a given Node.

The root node (ie no parent) does not generate a Rule. The first node in a rule is always the root node => fNodes.size()>=2 Each node corresponds to a cut and the cut value is given by the parent node.

Definition at line 1352 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::operator= ( const RuleEnsemble other)
inline

Definition at line 250 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::PdfLinear ( Double_t nsig,
Double_t ntot 
) const

This function returns Pr( y = 1 | x ) for the linear terms.

Definition at line 740 of file RuleEnsemble.cxx.

Double_t TMVA::RuleEnsemble::PdfRule ( Double_t nsig,
Double_t ntot 
) const

This function returns Pr( y = 1 | x ) for rules.

The probability returned is normalized against the number of rules which are actually passed

Definition at line 766 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::Print ( ) const

print function

Definition at line 963 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::PrintRaw ( std::ostream &  os) const

write rules to stream

Definition at line 1081 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::PrintRuleGen ( ) const

print rule generation info

Definition at line 944 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::ReadFromXML ( void wghtnode)

read rules from XML

Definition at line 1146 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::ReadRaw ( std::istream &  istr)

read rule ensemble from stream

Definition at line 1201 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::RemoveSimilarRules ( )

remove rules that behave similar

Definition at line 272 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::ResetCoefficients ( )
private

reset all rule coefficients

Definition at line 215 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::RuleResponseStats ( )

calculate various statistics for this rule

Definition at line 835 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::RuleStatistics ( )

calculate various statistics for this rule

Definition at line 922 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::SetAverageRuleSigma ( Double_t  v)
inline

Definition at line 147 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetCoefficient ( UInt_t  i,
Double_t  v 
)
inline

Definition at line 120 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetCoefficients ( const std::vector< Double_t > &  v)

set all rule coefficients

Definition at line 227 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::SetEvent ( const Event e)
inline

Definition at line 155 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetImportanceCut ( Double_t  minimp = 0)
inline

Definition at line 141 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetImportanceRef ( Double_t  impref)

set reference importance

Definition at line 439 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::SetLinCoefficient ( UInt_t  i,
Double_t  v 
)
inline

Definition at line 125 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetLinCoefficients ( const std::vector< Double_t > &  v)
inline

Definition at line 124 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetLinDM ( const std::vector< Double_t > &  xmin)
inline

Definition at line 126 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetLinDP ( const std::vector< Double_t > &  xmax)
inline

Definition at line 127 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetLinNorm ( const std::vector< Double_t > &  norm)
inline

Definition at line 128 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetLinQuantile ( Double_t  q)
inline

Definition at line 144 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetModelFull ( )
inline

Definition at line 110 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetModelLinear ( )
inline

Definition at line 104 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetModelRules ( )
inline

Definition at line 107 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetMsgType ( EMsgType  t)

Definition at line 150 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::SetOffset ( Double_t  v = 0.0)
inline

Definition at line 122 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetRuleFit ( const RuleFit rf)
inline

Definition at line 116 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetRuleMinDist ( Double_t  d)
inline

Definition at line 138 of file RuleEnsemble.h.

void TMVA::RuleEnsemble::SetRules ( const std::vector< TMVA::Rule * > &  rules)

set rules

first clear all

Definition at line 547 of file RuleEnsemble.cxx.

void TMVA::RuleEnsemble::UpdateEventVal ( )
inline

Definition at line 401 of file RuleEnsemble.h.

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const RuleEnsemble rules 
)
friend

Member Data Documentation

Double_t TMVA::RuleEnsemble::fAverageRuleSigma
private

Definition at line 367 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::fAverageSupport
private

Definition at line 366 of file RuleEnsemble.h.

const Event* TMVA::RuleEnsemble::fEvent
private

Definition at line 382 of file RuleEnsemble.h.

Bool_t TMVA::RuleEnsemble::fEventCacheOK
private

Definition at line 383 of file RuleEnsemble.h.

std::vector<Double_t> TMVA::RuleEnsemble::fEventLinearVal
private

Definition at line 385 of file RuleEnsemble.h.

std::vector<Char_t> TMVA::RuleEnsemble::fEventRuleVal
private

Definition at line 384 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::fImportanceCut
private

Definition at line 352 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::fImportanceRef
private

Definition at line 365 of file RuleEnsemble.h.

ELearningModel TMVA::RuleEnsemble::fLearningModel
private

Definition at line 351 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fLinCoefficients
private

Definition at line 359 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fLinDM
private

Definition at line 358 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fLinDP
private

Definition at line 357 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fLinImportance
private

Definition at line 363 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fLinNorm
private

Definition at line 360 of file RuleEnsemble.h.

std::vector< TH1F* > TMVA::RuleEnsemble::fLinPDFB
private

Definition at line 361 of file RuleEnsemble.h.

std::vector< TH1F* > TMVA::RuleEnsemble::fLinPDFS
private

Definition at line 362 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::fLinQuantile
private

Definition at line 353 of file RuleEnsemble.h.

std::vector< Char_t > TMVA::RuleEnsemble::fLinTermOK
private

Definition at line 356 of file RuleEnsemble.h.

MsgLogger* TMVA::RuleEnsemble::fLogger
mutableprivate

Definition at line 395 of file RuleEnsemble.h.

UInt_t TMVA::RuleEnsemble::fNRulesGenerated
private

Definition at line 380 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::fOffset
private

Definition at line 354 of file RuleEnsemble.h.

const RuleFit* TMVA::RuleEnsemble::fRuleFit
private

Definition at line 393 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::fRuleFSig
private

Definition at line 375 of file RuleEnsemble.h.

std::vector< std::vector<UInt_t> > TMVA::RuleEnsemble::fRuleMap
private

Definition at line 388 of file RuleEnsemble.h.

const std::vector<const TMVA::Event *>* TMVA::RuleEnsemble::fRuleMapEvents
private

Definition at line 391 of file RuleEnsemble.h.

UInt_t TMVA::RuleEnsemble::fRuleMapInd0
private

Definition at line 389 of file RuleEnsemble.h.

UInt_t TMVA::RuleEnsemble::fRuleMapInd1
private

Definition at line 390 of file RuleEnsemble.h.

Bool_t TMVA::RuleEnsemble::fRuleMapOK
private

Definition at line 387 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::fRuleMinDist
private

Definition at line 379 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::fRuleNCave
private

Definition at line 376 of file RuleEnsemble.h.

Double_t TMVA::RuleEnsemble::fRuleNCsig
private

Definition at line 377 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fRulePBB
private

Definition at line 373 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fRulePBS
private

Definition at line 372 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fRulePSB
private

Definition at line 371 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fRulePSS
private

Definition at line 370 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fRulePTag
private

Definition at line 374 of file RuleEnsemble.h.

std::vector< TMVA::Rule* > TMVA::RuleEnsemble::fRules
private

Definition at line 355 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fRuleVarFrac
private

Definition at line 369 of file RuleEnsemble.h.

std::vector< Double_t > TMVA::RuleEnsemble::fVarImportance
private

Definition at line 364 of file RuleEnsemble.h.


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