Logo ROOT  
Reference Guide
TMVA::MethodPDERS Class Reference

This is a generalization of the above Likelihood methods to \( N_{var} \) dimensions, where \( N_{var} \) is the number of input variables used in the MVA.

If the multi-dimensional probability density functions (PDFs) for signal and background were known, this method contains the entire physical information, and is therefore optimal. Usually, kernel estimation methods are used to approximate the PDFs using the events from the training sample.

A very simple probability density estimator (PDE) has been suggested in hep-ex/0211019. The PDE for a given test event is obtained from counting the (normalized) number of signal and background (training) events that occur in the "vicinity" of the test event. The volume that describes "vicinity" is user-defined. A search method based on binary-trees is used to effectively reduce the selection time for the range search. Three different volume definitions are optional:

  • MinMax: the volume is defined in each dimension with respect to the full variable range found in the training sample.
  • RMS: the volume is defined in each dimensions with respect to the RMS estimated from the training sample.
  • Adaptive: a volume element is defined in each dimensions with respect to the RMS estimated from the training sample. The overall scale of the volume element is then determined for each event so that the total number of events confined in the volume be within a user-defined range.

The adaptive range search is used by default.

Definition at line 59 of file MethodPDERS.h.

Public Member Functions

 MethodPDERS (const TString &jobName, const TString &methodTitle, DataSetInfo &theData, const TString &theOption)
 standard constructor for the PDERS method More...
 
 MethodPDERS (DataSetInfo &theData, const TString &theWeightFile)
 construct MethodPDERS through from file More...
 
virtual ~MethodPDERS (void)
 destructor More...
 
void AddWeightsXMLTo (void *parent) const
 write weights to xml file More...
 
Double_t GetMvaValue (Double_t *err=0, Double_t *errUpper=0)
 init the size of a volume element using a defined fraction of the volume containing the entire events More...
 
const std::vector< Float_t > & GetRegressionValues ()
 
Double_t GetVolumeContentForRoot (Double_t)
 count number of events in rescaled volume More...
 
virtual Bool_t HasAnalysisType (Types::EAnalysisType type, UInt_t numberClasses, UInt_t numberTargets)
 PDERS can handle classification with 2 classes and regression with one or more regression-targets. More...
 
void ReadWeightsFromStream (std::istream &istr)
 read weight info from file More...
 
void ReadWeightsFromStream (TFile &istr)
 read training sample from file More...
 
void ReadWeightsFromXML (void *wghtnode)
 
void Train (void)
 this is a dummy training: the preparation work to do is the construction of the binary tree as a pointer chain. More...
 
void WriteWeightsToStream (TFile &rf) const
 write training sample (TTree) to file More...
 
- Public Member Functions inherited from TMVA::MethodBase
 MethodBase (const TString &jobName, Types::EMVA methodType, const TString &methodTitle, DataSetInfo &dsi, const TString &theOption="")
 standard constructor More...
 
 MethodBase (Types::EMVA methodType, DataSetInfo &dsi, const TString &weightFile)
 constructor used for Testing + Application of the MVA, only (no training), using given WeightFiles More...
 
virtual ~MethodBase ()
 destructor More...
 
void AddOutput (Types::ETreeType type, Types::EAnalysisType analysisType)
 
TDirectoryBaseDir () const
 returns the ROOT directory where info/histograms etc of the corresponding MVA method instance are stored More...
 
virtual void CheckSetup ()
 check may be overridden by derived class (sometimes, eg, fitters are used which can only be implemented during training phase) More...
 
virtual const RankingCreateRanking ()=0
 
DataSetData () const
 
DataSetInfoDataInfo () const
 
virtual void DeclareCompatibilityOptions ()
 options that are used ONLY for the READER to ensure backward compatibility they are hence without any effect (the reader is only reading the training options that HAD been used at the training of the .xml weight file at hand More...
 
virtual void DeclareOptions ()=0
 
void DisableWriting (Bool_t setter)
 
Bool_t DoMulticlass () const
 
Bool_t DoRegression () const
 
void ExitFromTraining ()
 
Types::EAnalysisType GetAnalysisType () const
 
UInt_t GetCurrentIter ()
 
virtual Double_t GetEfficiency (const TString &, Types::ETreeType, Double_t &err)
 fill background efficiency (resp. More...
 
const EventGetEvent () const
 
const EventGetEvent (const TMVA::Event *ev) const
 
const EventGetEvent (Long64_t ievt) const
 
const EventGetEvent (Long64_t ievt, Types::ETreeType type) const
 
const std::vector< TMVA::Event * > & GetEventCollection (Types::ETreeType type)
 returns the event collection (i.e. More...
 
TFileGetFile () const
 
const TStringGetInputLabel (Int_t i) const
 
const char * GetInputTitle (Int_t i) const
 
const TStringGetInputVar (Int_t i) const
 
TMultiGraphGetInteractiveTrainingError ()
 
const TStringGetJobName () const
 
virtual Double_t GetKSTrainingVsTest (Char_t SorB, TString opt="X")
 
virtual Double_t GetMaximumSignificance (Double_t SignalEvents, Double_t BackgroundEvents, Double_t &optimal_significance_value) const
 plot significance, \( \frac{S}{\sqrt{S^2 + B^2}} \), curve for given number of signal and background events; returns cut for maximum significance also returned via reference is the maximum significance More...
 
UInt_t GetMaxIter ()
 
Double_t GetMean (Int_t ivar) const
 
const TStringGetMethodName () const
 
Types::EMVA GetMethodType () const
 
TString GetMethodTypeName () const
 
virtual TMatrixD GetMulticlassConfusionMatrix (Double_t effB, Types::ETreeType type)
 Construct a confusion matrix for a multiclass classifier. More...
 
virtual std::vector< Float_tGetMulticlassEfficiency (std::vector< std::vector< Float_t > > &purity)
 
virtual std::vector< Float_tGetMulticlassTrainingEfficiency (std::vector< std::vector< Float_t > > &purity)
 
virtual const std::vector< Float_t > & GetMulticlassValues ()
 
Double_t GetMvaValue (const TMVA::Event *const ev, Double_t *err=0, Double_t *errUpper=0)
 
virtual Double_t GetMvaValue (Double_t *errLower=0, Double_t *errUpper=0)=0
 
const char * GetName () const
 
UInt_t GetNEvents () const
 temporary event when testing on a different DataSet than the own one More...
 
UInt_t GetNTargets () const
 
UInt_t GetNvar () const
 
UInt_t GetNVariables () const
 
virtual Double_t GetProba (const Event *ev)
 
virtual Double_t GetProba (Double_t mvaVal, Double_t ap_sig)
 compute likelihood ratio More...
 
const TString GetProbaName () const
 
virtual Double_t GetRarity (Double_t mvaVal, Types::ESBType reftype=Types::kBackground) const
 compute rarity: More...
 
virtual void GetRegressionDeviation (UInt_t tgtNum, Types::ETreeType type, Double_t &stddev, Double_t &stddev90Percent) const
 
virtual const std::vector< Float_t > & GetRegressionValues ()
 
const std::vector< Float_t > & GetRegressionValues (const TMVA::Event *const ev)
 
Double_t GetRMS (Int_t ivar) const
 
virtual Double_t GetROCIntegral (PDF *pdfS=0, PDF *pdfB=0) const
 calculate the area (integral) under the ROC curve as a overall quality measure of the classification More...
 
virtual Double_t GetROCIntegral (TH1D *histS, TH1D *histB) const
 calculate the area (integral) under the ROC curve as a overall quality measure of the classification More...
 
virtual Double_t GetSeparation (PDF *pdfS=0, PDF *pdfB=0) const
 compute "separation" defined as More...
 
virtual Double_t GetSeparation (TH1 *, TH1 *) const
 compute "separation" defined as More...
 
Double_t GetSignalReferenceCut () const
 
Double_t GetSignalReferenceCutOrientation () const
 
virtual Double_t GetSignificance () const
 compute significance of mean difference More...
 
const EventGetTestingEvent (Long64_t ievt) const
 
Double_t GetTestTime () const
 
const TStringGetTestvarName () const
 
virtual Double_t GetTrainingEfficiency (const TString &)
 
const EventGetTrainingEvent (Long64_t ievt) const
 
virtual const std::vector< Float_t > & GetTrainingHistory (const char *)
 
UInt_t GetTrainingROOTVersionCode () const
 
TString GetTrainingROOTVersionString () const
 calculates the ROOT version string from the training version code on the fly More...
 
UInt_t GetTrainingTMVAVersionCode () const
 
TString GetTrainingTMVAVersionString () const
 calculates the TMVA version string from the training version code on the fly More...
 
Double_t GetTrainTime () const
 
TransformationHandlerGetTransformationHandler (Bool_t takeReroutedIfAvailable=true)
 
const TransformationHandlerGetTransformationHandler (Bool_t takeReroutedIfAvailable=true) const
 
TString GetWeightFileName () const
 retrieve weight file name More...
 
Double_t GetXmax (Int_t ivar) const
 
Double_t GetXmin (Int_t ivar) const
 
Bool_t HasMVAPdfs () const
 
virtual void Init ()=0
 
void InitIPythonInteractive ()
 
Bool_t IsModelPersistence () const
 
virtual Bool_t IsSignalLike ()
 uses a pre-set cut on the MVA output (SetSignalReferenceCut and SetSignalReferenceCutOrientation) for a quick determination if an event would be selected as signal or background More...
 
virtual Bool_t IsSignalLike (Double_t mvaVal)
 uses a pre-set cut on the MVA output (SetSignalReferenceCut and SetSignalReferenceCutOrientation) for a quick determination if an event with this mva output value would be selected as signal or background More...
 
Bool_t IsSilentFile () const
 
virtual void MakeClass (const TString &classFileName=TString("")) const
 create reader class for method (classification only at present) More...
 
TDirectoryMethodBaseDir () const
 returns the ROOT directory where all instances of the corresponding MVA method are stored More...
 
virtual std::map< TString, Double_tOptimizeTuningParameters (TString fomType="ROCIntegral", TString fitType="FitGA")
 call the Optimizer with the set of parameters and ranges that are meant to be tuned. More...
 
void PrintHelpMessage () const
 prints out method-specific help method More...
 
virtual void ProcessOptions ()=0
 
void ProcessSetup ()
 process all options the "CheckForUnusedOptions" is done in an independent call, since it may be overridden by derived class (sometimes, eg, fitters are used which can only be implemented during training phase) More...
 
void ReadStateFromFile ()
 Function to write options and weights to file. More...
 
void ReadStateFromStream (std::istream &tf)
 read the header from the weight files of the different MVA methods More...
 
void ReadStateFromStream (TFile &rf)
 write reference MVA distributions (and other information) to a ROOT type weight file More...
 
void ReadStateFromXMLString (const char *xmlstr)
 for reading from memory More...
 
void RerouteTransformationHandler (TransformationHandler *fTargetTransformation)
 
virtual void Reset ()
 
virtual void SetAnalysisType (Types::EAnalysisType type)
 
void SetBaseDir (TDirectory *methodDir)
 
void SetFile (TFile *file)
 
void SetMethodBaseDir (TDirectory *methodDir)
 
void SetMethodDir (TDirectory *methodDir)
 
void SetModelPersistence (Bool_t status)
 
void SetSignalReferenceCut (Double_t cut)
 
void SetSignalReferenceCutOrientation (Double_t cutOrientation)
 
void SetSilentFile (Bool_t status)
 
void SetTestTime (Double_t testTime)
 
void SetTestvarName (const TString &v="")
 
void SetTrainTime (Double_t trainTime)
 
virtual void SetTuneParameters (std::map< TString, Double_t > tuneParameters)
 set the tuning parameters according to the argument This is just a dummy . More...
 
void SetupMethod ()
 setup of methods More...
 
virtual void TestClassification ()
 initialization More...
 
virtual void TestMulticlass ()
 test multiclass classification More...
 
virtual void TestRegression (Double_t &bias, Double_t &biasT, Double_t &dev, Double_t &devT, Double_t &rms, Double_t &rmsT, Double_t &mInf, Double_t &mInfT, Double_t &corr, Types::ETreeType type)
 calculate <sum-of-deviation-squared> of regression output versus "true" value from test sample More...
 
virtual void Train ()=0
 
bool TrainingEnded ()
 
void TrainMethod ()
 
virtual void WriteEvaluationHistosToFile (Types::ETreeType treetype)
 writes all MVA evaluation histograms to file More...
 
virtual void WriteMonitoringHistosToFile () const
 write special monitoring histograms to file dummy implementation here --------------— More...
 
void WriteStateToFile () const
 write options and weights to file note that each one text file for the main configuration information and one ROOT file for ROOT objects are created More...
 
- Public Member Functions inherited from TMVA::IMethod
 IMethod ()
 
virtual ~IMethod ()
 
virtual const RankingCreateRanking ()=0
 
virtual void DeclareOptions ()=0
 
virtual Double_t GetMvaValue (Double_t *err=0, Double_t *errUpper=0)=0
 
virtual const char * GetName () const =0
 
virtual Bool_t HasAnalysisType (Types::EAnalysisType type, UInt_t numberClasses, UInt_t numberTargets)=0
 
virtual void Init ()=0
 
virtual void MakeClass (const TString &classFileName=TString("")) const =0
 
virtual void PrintHelpMessage () const =0
 
virtual void ProcessOptions ()=0
 
virtual void ReadWeightsFromStream (std::istream &)=0
 
virtual void Train (void)=0
 
virtual void WriteMonitoringHistosToFile (void) const =0
 
- Public Member Functions inherited from TMVA::Configurable
 Configurable (const TString &theOption="")
 constructor More...
 
virtual ~Configurable ()
 default destructor More...
 
void AddOptionsXMLTo (void *parent) const
 write options to XML file More...
 
template<class T >
void AddPreDefVal (const T &)
 
template<class T >
void AddPreDefVal (const TString &optname, const T &)
 
void CheckForUnusedOptions () const
 checks for unused options in option string More...
 
template<class T >
TMVA::OptionBaseDeclareOptionRef (T &ref, const TString &name, const TString &desc)
 
template<class T >
OptionBaseDeclareOptionRef (T &ref, const TString &name, const TString &desc="")
 
template<class T >
TMVA::OptionBaseDeclareOptionRef (T *&ref, Int_t size, const TString &name, const TString &desc)
 
template<class T >
OptionBaseDeclareOptionRef (T *&ref, Int_t size, const TString &name, const TString &desc="")
 
const char * GetConfigDescription () const
 
const char * GetConfigName () const
 
const TStringGetOptions () const
 
MsgLoggerLog () const
 
virtual void ParseOptions ()
 options parser More...
 
void PrintOptions () const
 prints out the options set in the options string and the defaults More...
 
void ReadOptionsFromStream (std::istream &istr)
 read option back from the weight file More...
 
void ReadOptionsFromXML (void *node)
 
void SetConfigDescription (const char *d)
 
void SetConfigName (const char *n)
 
void SetMsgType (EMsgType t)
 
void SetOptions (const TString &s)
 
void WriteOptionsToStream (std::ostream &o, const TString &prefix) const
 write options to output stream (e.g. in writing the MVA weight files More...
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor. More...
 
 TNamed (const TString &name, const TString &title)
 
virtual ~TNamed ()
 TNamed destructor. More...
 
virtual void Clear (Option_t *option="")
 Set name and title to empty strings (""). More...
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare two TNamed objects. More...
 
virtual void Copy (TObject &named) const
 Copy this to obj. More...
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
virtual Bool_t IsSortable () const
 
virtual void ls (Option_t *option="") const
 List TNamed name and title. More...
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator. More...
 
virtual void Print (Option_t *option="") const
 Print TNamed name and title. More...
 
virtual void SetName (const char *name)
 Set the name of the TNamed. More...
 
virtual void SetNameTitle (const char *name, const char *title)
 Set all the TNamed parameters (name and title). More...
 
virtual void SetTitle (const char *title="")
 Set the title of the TNamed. More...
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject. More...
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method. More...
 
virtual void Copy (TObject &object) const
 Copy this to obj. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad). More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py). More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. More...
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
void InvertBit (UInt_t f)
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout. More...
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 

Static Public Member Functions

static Double_t IGetVolumeContentForRoot (Double_t)
 Interface to RootFinder. More...
 
static MethodPDERSThisPDERS (void)
 static pointer to this object More...
 
- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 

Protected Member Functions

Double_t ApplyKernelFunction (Double_t normalized_distance)
 from the normalized euclidean distance calculate the distance for a certain kernel More...
 
Double_t CKernelEstimate (const Event &, std::vector< const BinarySearchTreeNode * > &, Volume &)
 normalization factors so we can work with radius 1 hyperspheres More...
 
const RankingCreateRanking ()
 
BinarySearchTreeGetBinaryTree (void) const
 
void GetHelpMessage () const
 get help message text More...
 
Double_t GetNormalizedDistance (const TMVA::Event &base_event, const BinarySearchTreeNode &sample_event, Double_t *dim_normalization)
 We use Euclidian metric here. Might not be best or most efficient. More...
 
Double_t KernelNormalization (Double_t pdf)
 Calculating the normalization factor only once (might need a reset at some point. More...
 
Double_t LanczosFilter (Int_t level, Double_t x)
 Lanczos Filter. More...
 
void MakeClassSpecific (std::ostream &, const TString &) const
 write specific classifier response More...
 
Double_t NormSinc (Double_t x)
 NormSinc. More...
 
void RKernelEstimate (const Event &, std::vector< const BinarySearchTreeNode * > &, Volume &, std::vector< Float_t > *pdfSum)
 normalization factors so we can work with radius 1 hyperspheres More...
 
- Protected Member Functions inherited from TMVA::MethodBase
virtual void AddWeightsXMLTo (void *parent) const =0
 
const TStringGetInternalVarName (Int_t ivar) const
 
virtual std::vector< Double_tGetMvaValues (Long64_t firstEvt=0, Long64_t lastEvt=-1, Bool_t logProgress=false)
 get all the MVA values for the events of the current Data type More...
 
const TStringGetOriginalVarName (Int_t ivar) const
 
const TStringGetWeightFileDir () const
 
Bool_t HasTrainingTree () const
 
Bool_t Help () const
 
Bool_t IgnoreEventsWithNegWeightsInTraining () const
 
Bool_t IsConstructedFromWeightFile () const
 
Bool_t IsNormalised () const
 
virtual void MakeClassSpecific (std::ostream &, const TString &="") const
 
virtual void MakeClassSpecificHeader (std::ostream &, const TString &="") const
 
void NoErrorCalc (Double_t *const err, Double_t *const errUpper)
 
virtual void ReadWeightsFromStream (std::istream &)=0
 
virtual void ReadWeightsFromStream (TFile &)
 
virtual void ReadWeightsFromXML (void *wghtnode)=0
 
void SetNormalised (Bool_t norm)
 
void SetWeightFileDir (TString fileDir)
 set directory of weight file More...
 
void SetWeightFileName (TString)
 set the weight file name (depreciated) More...
 
void Statistics (Types::ETreeType treeType, const TString &theVarName, Double_t &, Double_t &, Double_t &, Double_t &, Double_t &, Double_t &)
 calculates rms,mean, xmin, xmax of the event variable this can be either done for the variables as they are or for normalised variables (in the range of 0-1) if "norm" is set to kTRUE More...
 
Bool_t TxtWeightsOnly () const
 
Bool_t Verbose () const
 
virtual void GetHelpMessage () const =0
 
virtual void MakeClassSpecific (std::ostream &, const TString &) const =0
 
- Protected Member Functions inherited from TMVA::Configurable
void EnableLooseOptions (Bool_t b=kTRUE)
 
const TStringGetReferenceFile () const
 
Bool_t LooseOptionCheckingEnabled () const
 
void ResetSetFlag ()
 resets the IsSet flag for all declare options to be called before options are read from stream More...
 
void WriteOptionsReferenceToFile ()
 write complete options to output stream More...
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 
void MakeZombie ()
 

Protected Attributes

Int_t fFcnCall
 
VolumefHelpVolume
 
- Protected Attributes inherited from TMVA::MethodBase
Types::EAnalysisType fAnalysisType
 
UInt_t fBackgroundClass
 
bool fExitFromTraining = false
 
std::vector< TString > * fInputVars
 
IPythonInteractivefInteractive = nullptr
 
UInt_t fIPyCurrentIter = 0
 
UInt_t fIPyMaxIter = 0
 
std::vector< Float_t > * fMulticlassReturnVal
 
Int_t fNbins
 
Int_t fNbinsH
 
Int_t fNbinsMVAoutput
 
RankingfRanking
 
std::vector< Float_t > * fRegressionReturnVal
 
ResultsfResults
 
UInt_t fSignalClass
 
- Protected Attributes inherited from TMVA::Configurable
MsgLoggerfLogger
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 

Private Types

enum  EKernelEstimator {
  kBox = 0 , kSphere , kTeepee , kGauss ,
  kSinc3 , kSinc5 , kSinc7 , kSinc9 ,
  kSinc11 , kLanczos2 , kLanczos3 , kLanczos5 ,
  kLanczos8 , kTrim
}
 
enum  EVolumeRangeMode {
  kUnsupported = 0 , kMinMax , kRMS , kAdaptive ,
  kUnscaled , kkNN
}
 

Private Member Functions

void CalcAverages ()
 compute also average RMS values required for adaptive Gaussian More...
 
void CreateBinarySearchTree (Types::ETreeType type)
 create binary search trees for signal and background More...
 
Double_t CRScalc (const Event &)
 
void DeclareOptions ()
 define the options (their key words) that can be set in the option string. More...
 
Float_t GetError (Float_t countS, Float_t countB, Float_t sumW2S, Float_t sumW2B) const
 statistical error estimate for RS estimator More...
 
void GetSample (const Event &e, std::vector< const BinarySearchTreeNode * > &events, Volume *volume)
 
void Init (void)
 default initialisation routine called by all constructors More...
 
void ProcessOptions ()
 process the options specified by the user More...
 
void RRScalc (const Event &, std::vector< Float_t > *count)
 
void SetVolumeElement (void)
 defines volume dimensions More...
 
void UpdateThis ()
 update static this pointer More...
 

Static Private Member Functions

static MethodPDERS *& GetMethodPDERSThreadLocal ()
 

Private Attributes

std::vector< Float_tfAverageRMS
 
BinarySearchTreefBinaryTree
 
std::vector< Float_t > * fDelta
 
Float_t fDeltaFrac
 
Double_t fGaussSigma
 
Double_t fGaussSigmaNorm
 
Bool_t fInitializedVolumeEle
 
Float_t fInitialScale
 
enum TMVA::MethodPDERS::EKernelEstimator fKernelEstimator
 
TString fKernelString
 
Int_t fkNNMax
 
Int_t fkNNMin
 
Double_t fMax_distance
 
Float_t fMaxVIterations
 
Float_t fNEventsMax
 
Float_t fNEventsMin
 
Bool_t fNormTree
 
Double_t fNRegOut
 
Bool_t fPrinted
 
Float_t fScaleB
 
Float_t fScaleS
 
std::vector< Float_t > * fShift
 
TString fVolumeRange
 
enum TMVA::MethodPDERS::EVolumeRangeMode fVRangeMode
 

Additional Inherited Members

- Public Types inherited from TMVA::MethodBase
enum  EWeightFileType { kROOT =0 , kTEXT }
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0) , kOverwrite = BIT(1) , kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0) , kMustCleanup = BIT(3) , kIsReferenced = BIT(4) , kHasUUID = BIT(5) ,
  kCannotPick = BIT(6) , kNoContextMenu = BIT(8) , kInvalidObject = BIT(13)
}
 
- Public Attributes inherited from TMVA::MethodBase
Bool_t fSetupCompleted
 
const EventfTmpEvent
 
TrainingHistory fTrainHistory
 

#include <TMVA/MethodPDERS.h>

Inheritance diagram for TMVA::MethodPDERS:
[legend]

Member Enumeration Documentation

◆ EKernelEstimator

Enumerator
kBox 
kSphere 
kTeepee 
kGauss 
kSinc3 
kSinc5 
kSinc7 
kSinc9 
kSinc11 
kLanczos2 
kLanczos3 
kLanczos5 
kLanczos8 
kTrim 

Definition at line 158 of file MethodPDERS.h.

◆ EVolumeRangeMode

Enumerator
kUnsupported 
kMinMax 
kRMS 
kAdaptive 
kUnscaled 
kkNN 

Definition at line 149 of file MethodPDERS.h.

Constructor & Destructor Documentation

◆ MethodPDERS() [1/2]

TMVA::MethodPDERS::MethodPDERS ( const TString jobName,
const TString methodTitle,
DataSetInfo theData,
const TString theOption 
)

standard constructor for the PDERS method

Definition at line 102 of file MethodPDERS.cxx.

◆ MethodPDERS() [2/2]

TMVA::MethodPDERS::MethodPDERS ( DataSetInfo theData,
const TString theWeightFile 
)

construct MethodPDERS through from file

Definition at line 136 of file MethodPDERS.cxx.

◆ ~MethodPDERS()

TMVA::MethodPDERS::~MethodPDERS ( void  )
virtual

destructor

Definition at line 210 of file MethodPDERS.cxx.

Member Function Documentation

◆ AddWeightsXMLTo()

void TMVA::MethodPDERS::AddWeightsXMLTo ( void parent) const
virtual

write weights to xml file

Implements TMVA::MethodBase.

Definition at line 1101 of file MethodPDERS.cxx.

◆ ApplyKernelFunction()

Double_t TMVA::MethodPDERS::ApplyKernelFunction ( Double_t  normalized_distance)
protected

from the normalized euclidean distance calculate the distance for a certain kernel

Definition at line 924 of file MethodPDERS.cxx.

◆ CalcAverages()

void TMVA::MethodPDERS::CalcAverages ( )
private

compute also average RMS values required for adaptive Gaussian

Definition at line 435 of file MethodPDERS.cxx.

◆ CKernelEstimate()

Double_t TMVA::MethodPDERS::CKernelEstimate ( const Event event,
std::vector< const BinarySearchTreeNode * > &  events,
Volume v 
)
protected

normalization factors so we can work with radius 1 hyperspheres

Definition at line 836 of file MethodPDERS.cxx.

◆ CreateBinarySearchTree()

void TMVA::MethodPDERS::CreateBinarySearchTree ( Types::ETreeType  type)
private

create binary search trees for signal and background

Definition at line 457 of file MethodPDERS.cxx.

◆ CreateRanking()

const Ranking * TMVA::MethodPDERS::CreateRanking ( )
inlineprotectedvirtual

Implements TMVA::MethodBase.

Definition at line 128 of file MethodPDERS.h.

◆ CRScalc()

Double_t TMVA::MethodPDERS::CRScalc ( const Event e)
private

Definition at line 780 of file MethodPDERS.cxx.

◆ DeclareOptions()

void TMVA::MethodPDERS::DeclareOptions ( )
privatevirtual

define the options (their key words) that can be set in the option string.

know options:

  • VolumeRangeMode <string> Method to determine volume range available values are:
    • MinMax
    • Unscaled
    • RMS
    • kNN
    • Adaptive <default>
  • KernelEstimator <string> Kernel estimation function available values are:
    • Box <default>
    • Sphere
    • Teepee
    • Gauss
    • Sinc3
    • Sinc5
    • Sinc7
    • Sinc9
    • Sinc11
    • Lanczos2
    • Lanczos3
    • Lanczos5
    • Lanczos8
    • Trim
  • DeltaFrac <float> Ratio of #EventsMin/#EventsMax for MinMax and RMS volume range
  • NEventsMin <int> Minimum number of events for adaptive volume range
  • NEventsMax <int> Maximum number of events for adaptive volume range
  • MaxVIterations <int> Maximum number of iterations for adaptive volume range
  • InitialScale <float> Initial scale for adaptive volume range
  • GaussSigma <float> Width with respect to the volume size of Gaussian kernel estimator

Implements TMVA::MethodBase.

Definition at line 254 of file MethodPDERS.cxx.

◆ GetBinaryTree()

BinarySearchTree * TMVA::MethodPDERS::GetBinaryTree ( void  ) const
inlineprotected

Definition at line 114 of file MethodPDERS.h.

◆ GetError()

Float_t TMVA::MethodPDERS::GetError ( Float_t  countS,
Float_t  countB,
Float_t  sumW2S,
Float_t  sumW2B 
) const
private

statistical error estimate for RS estimator

Definition at line 1082 of file MethodPDERS.cxx.

◆ GetHelpMessage()

void TMVA::MethodPDERS::GetHelpMessage ( ) const
protectedvirtual

get help message text

typical length of text line: "|--------------------------------------------------------------|"

Implements TMVA::IMethod.

Definition at line 1211 of file MethodPDERS.cxx.

◆ GetMethodPDERSThreadLocal()

static MethodPDERS *& TMVA::MethodPDERS::GetMethodPDERSThreadLocal ( )
inlinestaticprivate

Definition at line 214 of file MethodPDERS.h.

◆ GetMvaValue()

Double_t TMVA::MethodPDERS::GetMvaValue ( Double_t err = 0,
Double_t errUpper = 0 
)
virtual

init the size of a volume element using a defined fraction of the volume containing the entire events

Implements TMVA::MethodBase.

Definition at line 372 of file MethodPDERS.cxx.

◆ GetNormalizedDistance()

Double_t TMVA::MethodPDERS::GetNormalizedDistance ( const TMVA::Event base_event,
const BinarySearchTreeNode sample_event,
Double_t dim_normalization 
)
protected

We use Euclidian metric here. Might not be best or most efficient.

Definition at line 1024 of file MethodPDERS.cxx.

◆ GetRegressionValues()

const std::vector< Float_t > & TMVA::MethodPDERS::GetRegressionValues ( )
virtual

Reimplemented from TMVA::MethodBase.

Definition at line 392 of file MethodPDERS.cxx.

◆ GetSample()

void TMVA::MethodPDERS::GetSample ( const Event e,
std::vector< const BinarySearchTreeNode * > &  events,
Volume volume 
)
private

Definition at line 550 of file MethodPDERS.cxx.

◆ GetVolumeContentForRoot()

Double_t TMVA::MethodPDERS::GetVolumeContentForRoot ( Double_t  scale)

count number of events in rescaled volume

Definition at line 539 of file MethodPDERS.cxx.

◆ HasAnalysisType()

Bool_t TMVA::MethodPDERS::HasAnalysisType ( Types::EAnalysisType  type,
UInt_t  numberClasses,
UInt_t  numberTargets 
)
virtual

PDERS can handle classification with 2 classes and regression with one or more regression-targets.

Implements TMVA::IMethod.

Definition at line 168 of file MethodPDERS.cxx.

◆ IGetVolumeContentForRoot()

Double_t TMVA::MethodPDERS::IGetVolumeContentForRoot ( Double_t  scale)
static

Interface to RootFinder.

Definition at line 531 of file MethodPDERS.cxx.

◆ Init()

void TMVA::MethodPDERS::Init ( void  )
privatevirtual

default initialisation routine called by all constructors

Implements TMVA::MethodBase.

Definition at line 178 of file MethodPDERS.cxx.

◆ KernelNormalization()

Double_t TMVA::MethodPDERS::KernelNormalization ( Double_t  pdf)
protected

Calculating the normalization factor only once (might need a reset at some point.

Can the method be restarted with different params?)

Definition at line 976 of file MethodPDERS.cxx.

◆ LanczosFilter()

Double_t TMVA::MethodPDERS::LanczosFilter ( Int_t  level,
Double_t  x 
)
protected

Lanczos Filter.

Definition at line 1062 of file MethodPDERS.cxx.

◆ MakeClassSpecific()

void TMVA::MethodPDERS::MakeClassSpecific ( std::ostream &  fout,
const TString className 
) const
protectedvirtual

write specific classifier response

Reimplemented from TMVA::MethodBase.

Definition at line 1199 of file MethodPDERS.cxx.

◆ NormSinc()

Double_t TMVA::MethodPDERS::NormSinc ( Double_t  x)
protected

NormSinc.

Definition at line 1041 of file MethodPDERS.cxx.

◆ ProcessOptions()

void TMVA::MethodPDERS::ProcessOptions ( )
privatevirtual

process the options specified by the user

Implements TMVA::MethodBase.

Definition at line 291 of file MethodPDERS.cxx.

◆ ReadWeightsFromStream() [1/2]

void TMVA::MethodPDERS::ReadWeightsFromStream ( std::istream &  istr)
virtual

read weight info from file

Implements TMVA::MethodBase.

Definition at line 1140 of file MethodPDERS.cxx.

◆ ReadWeightsFromStream() [2/2]

void TMVA::MethodPDERS::ReadWeightsFromStream ( TFile istr)
virtual

read training sample from file

Reimplemented from TMVA::MethodBase.

Definition at line 1177 of file MethodPDERS.cxx.

◆ ReadWeightsFromXML()

void TMVA::MethodPDERS::ReadWeightsFromXML ( void wghtnode)
virtual

Implements TMVA::MethodBase.

Definition at line 1113 of file MethodPDERS.cxx.

◆ RKernelEstimate()

void TMVA::MethodPDERS::RKernelEstimate ( const Event event,
std::vector< const BinarySearchTreeNode * > &  events,
Volume v,
std::vector< Float_t > *  pdfSum 
)
protected

normalization factors so we can work with radius 1 hyperspheres

Definition at line 877 of file MethodPDERS.cxx.

◆ RRScalc()

void TMVA::MethodPDERS::RRScalc ( const Event e,
std::vector< Float_t > *  count 
)
private

Definition at line 809 of file MethodPDERS.cxx.

◆ SetVolumeElement()

void TMVA::MethodPDERS::SetVolumeElement ( void  )
private

defines volume dimensions

Definition at line 483 of file MethodPDERS.cxx.

◆ ThisPDERS()

TMVA::MethodPDERS * TMVA::MethodPDERS::ThisPDERS ( void  )
static

static pointer to this object

Definition at line 1184 of file MethodPDERS.cxx.

◆ Train()

void TMVA::MethodPDERS::Train ( void  )
virtual

this is a dummy training: the preparation work to do is the construction of the binary tree as a pointer chain.

It is easier to directly save the trainingTree in the weight file, and to rebuild the binary tree in the test phase from scratch

Implements TMVA::MethodBase.

Definition at line 352 of file MethodPDERS.cxx.

◆ UpdateThis()

void TMVA::MethodPDERS::UpdateThis ( void  )
private

update static this pointer

Definition at line 1191 of file MethodPDERS.cxx.

◆ WriteWeightsToStream()

void TMVA::MethodPDERS::WriteWeightsToStream ( TFile rf) const

write training sample (TTree) to file

Definition at line 1170 of file MethodPDERS.cxx.

Member Data Documentation

◆ fAverageRMS

std::vector<Float_t> TMVA::MethodPDERS::fAverageRMS
private

Definition at line 179 of file MethodPDERS.h.

◆ fBinaryTree

BinarySearchTree* TMVA::MethodPDERS::fBinaryTree
private

Definition at line 175 of file MethodPDERS.h.

◆ fDelta

std::vector<Float_t>* TMVA::MethodPDERS::fDelta
private

Definition at line 177 of file MethodPDERS.h.

◆ fDeltaFrac

Float_t TMVA::MethodPDERS::fDeltaFrac
private

Definition at line 183 of file MethodPDERS.h.

◆ fFcnCall

Int_t TMVA::MethodPDERS::fFcnCall
protected

Definition at line 111 of file MethodPDERS.h.

◆ fGaussSigma

Double_t TMVA::MethodPDERS::fGaussSigma
private

Definition at line 184 of file MethodPDERS.h.

◆ fGaussSigmaNorm

Double_t TMVA::MethodPDERS::fGaussSigmaNorm
private

Definition at line 185 of file MethodPDERS.h.

◆ fHelpVolume

Volume* TMVA::MethodPDERS::fHelpVolume
protected

Definition at line 110 of file MethodPDERS.h.

◆ fInitializedVolumeEle

Bool_t TMVA::MethodPDERS::fInitializedVolumeEle
private

Definition at line 195 of file MethodPDERS.h.

◆ fInitialScale

Float_t TMVA::MethodPDERS::fInitialScale
private

Definition at line 193 of file MethodPDERS.h.

◆ fKernelEstimator

enum TMVA::MethodPDERS::EKernelEstimator TMVA::MethodPDERS::fKernelEstimator
private

◆ fKernelString

TString TMVA::MethodPDERS::fKernelString
private

Definition at line 147 of file MethodPDERS.h.

◆ fkNNMax

Int_t TMVA::MethodPDERS::fkNNMax
private

Definition at line 198 of file MethodPDERS.h.

◆ fkNNMin

Int_t TMVA::MethodPDERS::fkNNMin
private

Definition at line 197 of file MethodPDERS.h.

◆ fMax_distance

Double_t TMVA::MethodPDERS::fMax_distance
private

Definition at line 200 of file MethodPDERS.h.

◆ fMaxVIterations

Float_t TMVA::MethodPDERS::fMaxVIterations
private

Definition at line 192 of file MethodPDERS.h.

◆ fNEventsMax

Float_t TMVA::MethodPDERS::fNEventsMax
private

Definition at line 191 of file MethodPDERS.h.

◆ fNEventsMin

Float_t TMVA::MethodPDERS::fNEventsMin
private

Definition at line 190 of file MethodPDERS.h.

◆ fNormTree

Bool_t TMVA::MethodPDERS::fNormTree
private

Definition at line 202 of file MethodPDERS.h.

◆ fNRegOut

Double_t TMVA::MethodPDERS::fNRegOut
private

Definition at line 187 of file MethodPDERS.h.

◆ fPrinted

Bool_t TMVA::MethodPDERS::fPrinted
private

Definition at line 201 of file MethodPDERS.h.

◆ fScaleB

Float_t TMVA::MethodPDERS::fScaleB
private

Definition at line 182 of file MethodPDERS.h.

◆ fScaleS

Float_t TMVA::MethodPDERS::fScaleS
private

Definition at line 181 of file MethodPDERS.h.

◆ fShift

std::vector<Float_t>* TMVA::MethodPDERS::fShift
private

Definition at line 178 of file MethodPDERS.h.

◆ fVolumeRange

TString TMVA::MethodPDERS::fVolumeRange
private

Definition at line 146 of file MethodPDERS.h.

◆ fVRangeMode

enum TMVA::MethodPDERS::EVolumeRangeMode TMVA::MethodPDERS::fVRangeMode
private
Libraries for TMVA::MethodPDERS:
[legend]

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