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

Definition at line 93 of file MethodMLP.h.

Public Types

enum  EBPTrainingMode { kSequential =0, kBatch }
 
enum  ETrainingMethod { kBP =0, kBFGS, kGA }
 
- Public Types inherited from TMVA::MethodANNBase
enum  EEstimator { kMSE =0, kCE }
 
- Public Types inherited from TMVA::MethodBase
enum  EWeightFileType { kROOT =0, kTEXT }
 
- Public Types inherited from TObject
enum  { kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kBitMask = 0x00ffffff }
 
enum  { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) }
 
enum  EStatusBits {
  kCanDelete = BIT(0), kMustCleanup = BIT(3), kObjInCanvas = BIT(3), kIsReferenced = BIT(4),
  kHasUUID = BIT(5), kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13)
}
 

Public Member Functions

 MethodMLP (const TString &jobName, const TString &methodTitle, DataSetInfo &theData, const TString &theOption)
 standard constructor More...
 
 MethodMLP (DataSetInfo &theData, const TString &theWeightFile)
 constructor from a weight file More...
 
virtual ~MethodMLP ()
 destructor nothing to be done More...
 
Double_t ComputeEstimator (std::vector< Double_t > &parameters)
 this function is called by GeneticANN for GA optimization More...
 
Double_t EstimatorFunction (std::vector< Double_t > &parameters)
 interface to the estimate More...
 
Double_t GetMvaValue (Double_t *err=0, Double_t *errUpper=0)
 get the mva value generated by the NN More...
 
virtual Bool_t HasAnalysisType (Types::EAnalysisType type, UInt_t numberClasses, UInt_t numberTargets)
 MLP can handle classification with 2 classes and regression with one regression-target. More...
 
bool HasInverseHessian ()
 
void Train ()
 
- Public Member Functions inherited from TMVA::MethodANNBase
 MethodANNBase (const TString &jobName, Types::EMVA methodType, const TString &methodTitle, DataSetInfo &theData, const TString &theOption)
 standard constructor Note: Right now it is an option to choose the neuron input function, but only the input function "sum" leads to weight convergence – otherwise the weights go to nan and lead to an ABORT. More...
 
 MethodANNBase (Types::EMVA methodType, DataSetInfo &theData, const TString &theWeightFile)
 construct the Method from the weight file More...
 
virtual ~MethodANNBase ()
 destructor More...
 
void AddWeightsXMLTo (void *parent) const
 create XML description of ANN classifier More...
 
const RankingCreateRanking ()
 compute ranking of input variables by summing function of weights More...
 
Bool_t Debug () const
 who the hell makes such strange Debug flags that even use "global pointers".. More...
 
template<typename WriteIterator >
void GetLayerActivation (size_t layer, WriteIterator writeIterator)
 
virtual const std::vector< Float_t > & GetMulticlassValues ()
 get the multiclass classification values generated by the NN More...
 
virtual const std::vector< Float_t > & GetRegressionValues ()
 get the regression value generated by the NN More...
 
void InitANNBase ()
 initialize ANNBase object More...
 
virtual void PrintNetwork () const
 print network representation, for debugging More...
 
virtual void ReadWeightsFromStream (std::istream &istr)
 destroy/clear the network then read it back in from the weights file More...
 
void ReadWeightsFromXML (void *wghtnode)
 read MLP from xml weight file More...
 
void SetActivation (TActivation *activation)
 
void SetNeuronInputCalculator (TNeuronInput *inputCalculator)
 
virtual void WriteMonitoringHistosToFile () const
 write histograms 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 constructur 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...
 
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 weightfile at hand More...
 
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, 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 std::vector< Float_tGetMulticlassEfficiency (std::vector< std::vector< Float_t > > &purity)
 
virtual std::vector< Float_tGetMulticlassTrainingEfficiency (std::vector< std::vector< Float_t > > &purity)
 
Double_t GetMvaValue (const TMVA::Event *const ev, Double_t *err=0, Double_t *errUpper=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: R(x) = Integrate_[-oo..x] { PDF(x') dx' } where PDF(x) is the PDF of the classifier's signal or background distribution More...
 
virtual void GetRegressionDeviation (UInt_t tgtNum, Types::ETreeType type, Double_t &stddev, Double_t &stddev90Percent) const
 
const std::vector< Float_t > & GetRegressionValues (const TMVA::Event *const ev)
 
Double_t GetRMS (Int_t ivar) const
 
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 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 GetSeparation (TH1 *, TH1 *) const
 compute "separation" defined as <s2> = (1/2) Int_-oo..+oo { (S(x) - B(x))^2/(S(x) + B(x)) dx } More...
 
virtual Double_t GetSeparation (PDF *pdfS=0, PDF *pdfB=0) const
 compute "separation" defined as <s2> = (1/2) Int_-oo..+oo { (S(x) - B(x))^2/(S(x) + B(x)) dx } More...
 
Double_t GetSignalReferenceCut () const
 
Double_t GetSignalReferenceCutOrientation () const
 
virtual Double_t GetSignificance () const
 compute significance of mean difference significance = |<S> - |/Sqrt(RMS_S2 + RMS_B2) 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
 
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
 
void InitIPythonInteractive ()
 
Bool_t IsModelPersistence ()
 
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 tbe selected as signal or background More...
 
Bool_t IsSilentFile ()
 
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 Optimzier with the set of paremeters and ranges that are meant to be tuned. More...
 
void PrintHelpMessage () const
 prints out method-specific help method More...
 
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 accoding 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...
 
bool TrainingEnded ()
 
void TrainMethod ()
 
virtual void WriteEvaluationHistosToFile (Types::ETreeType treetype)
 writes all MVA evaluation histograms to file 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 ()
 
- Public Member Functions inherited from TMVA::Configurable
 Configurable (const TString &theOption="")
 constructor More...
 
virtual ~Configurable ()
 default destructur 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 >
OptionBaseDeclareOptionRef (T &ref, const TString &name, const TString &desc="")
 
template<class T >
OptionBaseDeclareOptionRef (T *&ref, Int_t size, const TString &name, const TString &desc="")
 
template<class T >
TMVA::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)
 
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 TString &name, const TString &title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor. More...
 
virtual ~TNamed ()
 
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 * 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...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. 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 pad. 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 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 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 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...
 
Bool_t IsOnHeap () const
 
Bool_t IsZombie () const
 
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 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, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
void SetBit (UInt_t f)
 
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...
 
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...
 
- Public Member Functions inherited from TMVA::IFitterTarget
 IFitterTarget ()
 constructor More...
 
virtual ~IFitterTarget ()
 
virtual void ProgressNotifier (TString, TString)
 
- Public Member Functions inherited from TMVA::ConvergenceTest
 ConvergenceTest ()
 constructor More...
 
 ~ConvergenceTest ()
 destructor More...
 
Float_t GetCurrentValue ()
 
Bool_t HasConverged (Bool_t withinConvergenceBand=kFALSE)
 gives back true if the last "steps" steps have lead to an improvement of the "fitness" of the "individuals" of at least "improvement" More...
 
Float_t Progress ()
 returns a float from 0 (just started) to 1 (finished) More...
 
void ResetConvergenceCounter ()
 
void SetConvergenceParameters (Int_t steps, Double_t improvement)
 
void SetCurrentValue (Float_t value)
 
Float_t SpeedControl (UInt_t ofSteps)
 this function provides the ability to change the learning rate according to the success of the last generations. More...
 

Protected Member Functions

void GetHelpMessage () const
 get help message text More...
 
void MakeClassSpecific (std::ostream &, const TString &) const
 write specific classifier response More...
 
- Protected Member Functions inherited from TMVA::MethodANNBase
virtual void BuildNetwork (std::vector< Int_t > *layout, std::vector< Double_t > *weights=NULL, Bool_t fromFile=kFALSE)
 build network given a layout (number of neurons in each layer) and optional weights array More...
 
void CreateWeightMonitoringHists (const TString &bulkname, std::vector< TH1 * > *hv=0) const
 
void ForceNetworkCalculations ()
 calculate input values to each neuron More...
 
void ForceNetworkInputs (const Event *ev, Int_t ignoreIndex=-1)
 force the input values of the input neurons force the value for each input neuron More...
 
TNeuronGetInputNeuron (Int_t index)
 
Double_t GetNetworkOutput ()
 
TNeuronGetOutputNeuron (Int_t index=0)
 
Int_t NumCycles ()
 
std::vector< Int_t > * ParseLayoutString (TString layerSpec)
 parse layout specification string and return a vector, each entry containing the number of neurons to go in each successive layer More...
 
void PrintMessage (TString message, Bool_t force=kFALSE) const
 print messages, turn off printing by setting verbose and debug flag appropriately More...
 
void WaitForKeyboard ()
 wait for keyboard input, for debugging More...
 
- Protected Member Functions inherited from TMVA::MethodBase
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 MakeClassSpecificHeader (std::ostream &, const TString &="") const
 
void NoErrorCalc (Double_t *const err, Double_t *const errUpper)
 
virtual void ReadWeightsFromStream (TFile &)
 
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
 
- 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 falg 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 ()
 

Private Member Functions

void AdjustSynapseWeights ()
 just adjust the synapse weights (should be called in batch mode) More...
 
void BackPropagationMinimize (Int_t nEpochs)
 minimize estimator / train network with backpropagation algorithm More...
 
void BFGSMinimize (Int_t nEpochs)
 train network with BFGS algorithm More...
 
Double_t CalculateEstimator (Types::ETreeType treeType=Types::kTraining, Int_t iEpoch=-1)
 calculate the estimator that training is attempting to minimize More...
 
void CalculateNeuronDeltas ()
 have each neuron calculate its delta by backpropagation More...
 
void ComputeDEDw ()
 
void DecaySynapseWeights (Bool_t lateEpoch)
 decay synapse weights in last 10 epochs, lower learning rate even more to find a good minimum More...
 
void DeclareOptions ()
 define the options (their key words) that can be set in the option string know options: TrainingMethod <string> Training method available values are: BP Back-Propagation <default> GA Genetic Algorithm (takes a LONG time) More...
 
Double_t DerivDir (TMatrixD &Dir)
 
void GeneticMinimize ()
 create genetics class similar to GeneticCut give it vector of parameter ranges (parameters = weights) link fitness function of this class to ComputeEstimator instantiate GA (see MethodCuts) run it then this should exist for GA, Minuit and random sampling More...
 
void GetApproxInvHessian (TMatrixD &InvHessian, bool regulate=true)
 
Double_t GetCEErr (const Event *ev, UInt_t index=0)
 
Double_t GetDesiredOutput (const Event *ev)
 get the desired output of this event More...
 
Double_t GetError ()
 
Bool_t GetHessian (TMatrixD &Hessian, TMatrixD &Gamma, TMatrixD &Delta)
 
Double_t GetMSEErr (const Event *ev, UInt_t index=0)
 
void Init ()
 default initializations More...
 
void InitializeLearningRates ()
 initialize learning rates of synapses, used only by backpropagation More...
 
Bool_t LineSearch (TMatrixD &Dir, std::vector< Double_t > &Buffer, Double_t *dError=0)
 
void ProcessOptions ()
 process user options More...
 
void SetDir (TMatrixD &Hessian, TMatrixD &Dir)
 
void SetDirWeights (std::vector< Double_t > &Origin, TMatrixD &Dir, Double_t alpha)
 
void SetGammaDelta (TMatrixD &Gamma, TMatrixD &Delta, std::vector< Double_t > &Buffer)
 
void Shuffle (Int_t *index, Int_t n)
 Input: index: the array to shuffle n: the size of the array Output: index: the shuffled indexes This method is used for sequential training. More...
 
void SimulateEvent (const Event *ev)
 
void SteepestDir (TMatrixD &Dir)
 
void Train (Int_t nEpochs)
 
void TrainOneEpoch ()
 train network over a single epoch/cyle of events More...
 
void TrainOneEvent (Int_t ievt)
 train network over a single event this uses the new event model More...
 
void TrainOneEventFast (Int_t ievt, Float_t *&branchVar, Int_t &type)
 fast per-event training More...
 
void UpdateNetwork (Double_t desired, Double_t eventWeight=1.0)
 update the network based on how closely the output matched the desired output More...
 
void UpdateNetwork (const std::vector< Float_t > &desired, Double_t eventWeight=1.0)
 update the network based on how closely the output matched the desired output More...
 
void UpdatePriors ()
 
void UpdateRegulators ()
 
void UpdateSynapses ()
 update synapse error fields and adjust the weights (if in sequential mode) More...
 

Private Attributes

Int_t fBatchSize
 
EBPTrainingMode fBPMode
 
TString fBpModeS
 
bool fCalculateErrors
 
Double_t fDecayRate
 
std::vector< std::pair< Float_t, Float_t > > * fDeviationsFromTargets
 
Bool_t fEpochMon
 
Int_t fGA_nsteps
 
Int_t fGA_preCalc
 
Double_t fGA_SC_factor
 
Int_t fGA_SC_rate
 
Int_t fGA_SC_steps
 
Double_t fLastAlpha
 
Double_t fLearnRate
 
Double_t fPrior
 
std::vector< Double_tfPriorDev
 
Int_t fResetStep
 
Float_t fSamplingEpoch
 
Float_t fSamplingFraction
 
Bool_t fSamplingTesting
 
Bool_t fSamplingTraining
 
Float_t fSamplingWeight
 
Double_t fTau
 
Int_t fTestRate
 
ETrainingMethod fTrainingMethod
 
TString fTrainMethodS
 
Int_t fUpdateLimit
 
bool fUseRegulator
 
Float_t fWeightRange
 

Static Private Attributes

static const Bool_t fgPRINT_BATCH = kFALSE
 
static const Int_t fgPRINT_ESTIMATOR_INC = 10
 
static const Bool_t fgPRINT_SEQ = kFALSE
 

Additional Inherited Members

- 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...
 
- Public Attributes inherited from TMVA::MethodANNBase
TObjArrayfNetwork
 
- Public Attributes inherited from TMVA::MethodBase
Bool_t fSetupCompleted
 
const EventfTmpEvent
 
- Protected Attributes inherited from TMVA::MethodANNBase
TActivationfActivation
 
std::vector< TH1 * > fEpochMonHistB
 
std::vector< TH1 * > fEpochMonHistS
 
std::vector< TH1 * > fEpochMonHistW
 
EEstimator fEstimator
 
TH1FfEstimatorHistTest
 
TH1FfEstimatorHistTrain
 
TString fEstimatorS
 
TActivationfIdentity
 
TNeuronInputfInputCalculator
 
TMatrixD fInvHessian
 
Int_t fNcycles
 
TString fNeuronInputType
 
TString fNeuronType
 
TActivationfOutput
 
Int_t fRandomSeed
 
std::vector< Int_tfRegulatorIdx
 
std::vector< Double_tfRegulators
 
TRandom3frgen
 
TObjArrayfSynapses
 
bool fUseRegulator
 
- 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
 
- Protected Attributes inherited from TMVA::ConvergenceTest
Float_t fCurrentValue
 
Float_t fImprovement
 current value More...
 
Int_t fSteps
 minimum improvement which counts as improvement More...
 

#include <TMVA/MethodMLP.h>

Inheritance diagram for TMVA::MethodMLP:
[legend]

Member Enumeration Documentation

Enumerator
kSequential 
kBatch 

Definition at line 116 of file MethodMLP.h.

Enumerator
kBP 
kBFGS 
kGA 

Definition at line 115 of file MethodMLP.h.

Constructor & Destructor Documentation

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

standard constructor

Definition at line 90 of file MethodMLP.cxx.

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

constructor from a weight file

Definition at line 115 of file MethodMLP.cxx.

TMVA::MethodMLP::~MethodMLP ( )
virtual

destructor nothing to be done

Definition at line 138 of file MethodMLP.cxx.

Member Function Documentation

void TMVA::MethodMLP::AdjustSynapseWeights ( )
private

just adjust the synapse weights (should be called in batch mode)

Definition at line 1422 of file MethodMLP.cxx.

void TMVA::MethodMLP::BackPropagationMinimize ( Int_t  nEpochs)
private

minimize estimator / train network with backpropagation algorithm

Definition at line 1036 of file MethodMLP.cxx.

void TMVA::MethodMLP::BFGSMinimize ( Int_t  nEpochs)
private

train network with BFGS algorithm

Definition at line 486 of file MethodMLP.cxx.

Double_t TMVA::MethodMLP::CalculateEstimator ( Types::ETreeType  treeType = Types::kTraining,
Int_t  iEpoch = -1 
)
private

calculate the estimator that training is attempting to minimize

Definition at line 289 of file MethodMLP.cxx.

void TMVA::MethodMLP::CalculateNeuronDeltas ( )
private

have each neuron calculate its delta by backpropagation

Definition at line 1316 of file MethodMLP.cxx.

void TMVA::MethodMLP::ComputeDEDw ( )
private

Definition at line 696 of file MethodMLP.cxx.

Double_t TMVA::MethodMLP::ComputeEstimator ( std::vector< Double_t > &  parameters)

this function is called by GeneticANN for GA optimization

Definition at line 1381 of file MethodMLP.cxx.

void TMVA::MethodMLP::DecaySynapseWeights ( Bool_t  lateEpoch)
private

decay synapse weights in last 10 epochs, lower learning rate even more to find a good minimum

Definition at line 1206 of file MethodMLP.cxx.

void TMVA::MethodMLP::DeclareOptions ( )
privatevirtual

define the options (their key words) that can be set in the option string know options: TrainingMethod <string> Training method available values are: BP Back-Propagation <default> GA Genetic Algorithm (takes a LONG time)

LearningRate <float> NN learning rate parameter DecayRate <float> Decay rate for learning parameter TestRate <int> Test for overtraining performed at each #th epochs

BPMode <string> Back-propagation learning mode available values are: sequential <default> batch

BatchSize <int> Batch size: number of events/batch, only set if in Batch Mode, -1 for BatchSize=number_of_events

Reimplemented from TMVA::MethodANNBase.

Definition at line 191 of file MethodMLP.cxx.

Double_t TMVA::MethodMLP::DerivDir ( TMatrixD Dir)
private

Definition at line 824 of file MethodMLP.cxx.

Double_t TMVA::MethodMLP::EstimatorFunction ( std::vector< Double_t > &  parameters)
virtual

interface to the estimate

Implements TMVA::IFitterTarget.

Definition at line 1373 of file MethodMLP.cxx.

void TMVA::MethodMLP::GeneticMinimize ( )
private

create genetics class similar to GeneticCut give it vector of parameter ranges (parameters = weights) link fitness function of this class to ComputeEstimator instantiate GA (see MethodCuts) run it then this should exist for GA, Minuit and random sampling

Definition at line 1344 of file MethodMLP.cxx.

void TMVA::MethodMLP::GetApproxInvHessian ( TMatrixD InvHessian,
bool  regulate = true 
)
private

Definition at line 1496 of file MethodMLP.cxx.

Double_t TMVA::MethodMLP::GetCEErr ( const Event ev,
UInt_t  index = 0 
)
private

Definition at line 1019 of file MethodMLP.cxx.

Double_t TMVA::MethodMLP::GetDesiredOutput ( const Event ev)
private

get the desired output of this event

Definition at line 1275 of file MethodMLP.cxx.

Double_t TMVA::MethodMLP::GetError ( )
private

Definition at line 965 of file MethodMLP.cxx.

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

get help message text

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

Implements TMVA::IMethod.

Definition at line 1703 of file MethodMLP.cxx.

Bool_t TMVA::MethodMLP::GetHessian ( TMatrixD Hessian,
TMatrixD Gamma,
TMatrixD Delta 
)
private

Definition at line 786 of file MethodMLP.cxx.

Double_t TMVA::MethodMLP::GetMSEErr ( const Event ev,
UInt_t  index = 0 
)
private

Definition at line 1002 of file MethodMLP.cxx.

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

get the mva value generated by the NN

Reimplemented from TMVA::MethodANNBase.

Definition at line 1537 of file MethodMLP.cxx.

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

MLP can handle classification with 2 classes and regression with one regression-target.

Implements TMVA::IMethod.

Definition at line 152 of file MethodMLP.cxx.

bool TMVA::MethodMLP::HasInverseHessian ( )
inline

Definition at line 118 of file MethodMLP.h.

void TMVA::MethodMLP::Init ( void  )
privatevirtual

default initializations

Implements TMVA::MethodBase.

Definition at line 164 of file MethodMLP.cxx.

void TMVA::MethodMLP::InitializeLearningRates ( )
private

initialize learning rates of synapses, used only by backpropagation

Definition at line 275 of file MethodMLP.cxx.

Bool_t TMVA::MethodMLP::LineSearch ( TMatrixD Dir,
std::vector< Double_t > &  Buffer,
Double_t dError = 0 
)
private

Definition at line 839 of file MethodMLP.cxx.

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

write specific classifier response

Reimplemented from TMVA::MethodANNBase.

Definition at line 1692 of file MethodMLP.cxx.

void TMVA::MethodMLP::ProcessOptions ( )
privatevirtual

process user options

Reimplemented from TMVA::MethodANNBase.

Definition at line 244 of file MethodMLP.cxx.

void TMVA::MethodMLP::SetDir ( TMatrixD Hessian,
TMatrixD Dir 
)
private

Definition at line 807 of file MethodMLP.cxx.

void TMVA::MethodMLP::SetDirWeights ( std::vector< Double_t > &  Origin,
TMatrixD Dir,
Double_t  alpha 
)
private

Definition at line 949 of file MethodMLP.cxx.

void TMVA::MethodMLP::SetGammaDelta ( TMatrixD Gamma,
TMatrixD Delta,
std::vector< Double_t > &  Buffer 
)
private

Definition at line 671 of file MethodMLP.cxx.

void TMVA::MethodMLP::Shuffle ( Int_t index,
Int_t  n 
)
private

Input: index: the array to shuffle n: the size of the array Output: index: the shuffled indexes This method is used for sequential training.

Definition at line 1188 of file MethodMLP.cxx.

void TMVA::MethodMLP::SimulateEvent ( const Event ev)
private

Definition at line 733 of file MethodMLP.cxx.

void TMVA::MethodMLP::SteepestDir ( TMatrixD Dir)
private

Definition at line 773 of file MethodMLP.cxx.

void TMVA::MethodMLP::Train ( void  )
virtual

Implements TMVA::MethodANNBase.

Definition at line 142 of file MethodMLP.cxx.

void TMVA::MethodMLP::Train ( Int_t  nEpochs)
private

Definition at line 435 of file MethodMLP.cxx.

void TMVA::MethodMLP::TrainOneEpoch ( )
private

train network over a single epoch/cyle of events

Definition at line 1141 of file MethodMLP.cxx.

void TMVA::MethodMLP::TrainOneEvent ( Int_t  ievt)
private

train network over a single event this uses the new event model

Definition at line 1256 of file MethodMLP.cxx.

void TMVA::MethodMLP::TrainOneEventFast ( Int_t  ievt,
Float_t *&  branchVar,
Int_t type 
)
private

fast per-event training

Definition at line 1220 of file MethodMLP.cxx.

void TMVA::MethodMLP::UpdateNetwork ( Double_t  desired,
Double_t  eventWeight = 1.0 
)
private

update the network based on how closely the output matched the desired output

Definition at line 1285 of file MethodMLP.cxx.

void TMVA::MethodMLP::UpdateNetwork ( const std::vector< Float_t > &  desired,
Double_t  eventWeight = 1.0 
)
private

update the network based on how closely the output matched the desired output

Definition at line 1301 of file MethodMLP.cxx.

void TMVA::MethodMLP::UpdatePriors ( )
private

Definition at line 1442 of file MethodMLP.cxx.

void TMVA::MethodMLP::UpdateRegulators ( )
private

Definition at line 1456 of file MethodMLP.cxx.

void TMVA::MethodMLP::UpdateSynapses ( )
private

update synapse error fields and adjust the weights (if in sequential mode)

Definition at line 1400 of file MethodMLP.cxx.

Member Data Documentation

Int_t TMVA::MethodMLP::fBatchSize
private

Definition at line 216 of file MethodMLP.h.

EBPTrainingMode TMVA::MethodMLP::fBPMode
private

Definition at line 214 of file MethodMLP.h.

TString TMVA::MethodMLP::fBpModeS
private

Definition at line 215 of file MethodMLP.h.

bool TMVA::MethodMLP::fCalculateErrors
private

Definition at line 189 of file MethodMLP.h.

Double_t TMVA::MethodMLP::fDecayRate
private

Definition at line 213 of file MethodMLP.h.

std::vector<std::pair<Float_t,Float_t> >* TMVA::MethodMLP::fDeviationsFromTargets
private

Definition at line 228 of file MethodMLP.h.

Bool_t TMVA::MethodMLP::fEpochMon
private

Definition at line 218 of file MethodMLP.h.

Int_t TMVA::MethodMLP::fGA_nsteps
private

Definition at line 221 of file MethodMLP.h.

Int_t TMVA::MethodMLP::fGA_preCalc
private

Definition at line 222 of file MethodMLP.h.

Double_t TMVA::MethodMLP::fGA_SC_factor
private

Definition at line 225 of file MethodMLP.h.

Int_t TMVA::MethodMLP::fGA_SC_rate
private

Definition at line 224 of file MethodMLP.h.

Int_t TMVA::MethodMLP::fGA_SC_steps
private

Definition at line 223 of file MethodMLP.h.

const Bool_t TMVA::MethodMLP::fgPRINT_BATCH = kFALSE
staticprivate

Definition at line 241 of file MethodMLP.h.

const Int_t TMVA::MethodMLP::fgPRINT_ESTIMATOR_INC = 10
staticprivate

Definition at line 239 of file MethodMLP.h.

const Bool_t TMVA::MethodMLP::fgPRINT_SEQ = kFALSE
staticprivate

Definition at line 240 of file MethodMLP.h.

Double_t TMVA::MethodMLP::fLastAlpha
private

Definition at line 207 of file MethodMLP.h.

Double_t TMVA::MethodMLP::fLearnRate
private

Definition at line 212 of file MethodMLP.h.

Double_t TMVA::MethodMLP::fPrior
private

Definition at line 190 of file MethodMLP.h.

std::vector<Double_t> TMVA::MethodMLP::fPriorDev
private

Definition at line 191 of file MethodMLP.h.

Int_t TMVA::MethodMLP::fResetStep
private

Definition at line 209 of file MethodMLP.h.

Float_t TMVA::MethodMLP::fSamplingEpoch
private

Definition at line 201 of file MethodMLP.h.

Float_t TMVA::MethodMLP::fSamplingFraction
private

Definition at line 200 of file MethodMLP.h.

Bool_t TMVA::MethodMLP::fSamplingTesting
private

Definition at line 204 of file MethodMLP.h.

Bool_t TMVA::MethodMLP::fSamplingTraining
private

Definition at line 203 of file MethodMLP.h.

Float_t TMVA::MethodMLP::fSamplingWeight
private

Definition at line 202 of file MethodMLP.h.

Double_t TMVA::MethodMLP::fTau
private

Definition at line 208 of file MethodMLP.h.

Int_t TMVA::MethodMLP::fTestRate
private

Definition at line 217 of file MethodMLP.h.

ETrainingMethod TMVA::MethodMLP::fTrainingMethod
private

Definition at line 197 of file MethodMLP.h.

TString TMVA::MethodMLP::fTrainMethodS
private

Definition at line 198 of file MethodMLP.h.

Int_t TMVA::MethodMLP::fUpdateLimit
private

Definition at line 195 of file MethodMLP.h.

bool TMVA::MethodMLP::fUseRegulator
private

Definition at line 188 of file MethodMLP.h.

Float_t TMVA::MethodMLP::fWeightRange
private

Definition at line 230 of file MethodMLP.h.


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