Multilayer Perceptron class built off of MethodANNBase.
Definition at line 69 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 , kInconsistent = 0x08000000 , kBitMask = 0x00ffffff } |
enum | { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) } |
enum | EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) } |
enum | EStatusBits { kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) , kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 )) } |
Public Member Functions | |
MethodMLP (const TString &jobName, const TString &methodTitle, DataSetInfo &theData, const TString &theOption) | |
standard constructor | |
MethodMLP (DataSetInfo &theData, const TString &theWeightFile) | |
constructor from a weight file | |
virtual | ~MethodMLP () |
destructor nothing to be done | |
Double_t | ComputeEstimator (std::vector< Double_t > ¶meters) |
this function is called by GeneticANN for GA optimization | |
Double_t | EstimatorFunction (std::vector< Double_t > ¶meters) |
interface to the estimate | |
Double_t | GetMvaValue (Double_t *err=nullptr, Double_t *errUpper=nullptr) |
get the mva value generated by the NN | |
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. | |
bool | HasInverseHessian () |
virtual TClass * | IsA () const |
virtual void | Streamer (TBuffer &) |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
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. | |
MethodANNBase (Types::EMVA methodType, DataSetInfo &theData, const TString &theWeightFile) | |
construct the Method from the weight file | |
virtual | ~MethodANNBase () |
destructor | |
void | AddWeightsXMLTo (void *parent) const |
create XML description of ANN classifier | |
const Ranking * | CreateRanking () |
compute ranking of input variables by summing function of weights | |
Bool_t | Debug () const |
who the hell makes such strange Debug flags that even use "global pointers".. | |
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 | |
virtual const std::vector< Float_t > & | GetRegressionValues () |
get the regression value generated by the NN | |
void | InitANNBase () |
initialize ANNBase object | |
virtual void | PrintNetwork () const |
print network representation, for debugging | |
virtual void | ReadWeightsFromStream (std::istream &)=0 |
virtual void | ReadWeightsFromStream (std::istream &istr) |
destroy/clear the network then read it back in from the weights file | |
virtual void | ReadWeightsFromStream (TFile &) |
void | ReadWeightsFromXML (void *wghtnode) |
read MLP from xml weight file | |
void | SetActivation (TActivation *activation) |
void | SetNeuronInputCalculator (TNeuronInput *inputCalculator) |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
virtual void | WriteMonitoringHistosToFile () const |
write histograms to file | |
Public Member Functions inherited from TMVA::MethodBase | |
MethodBase (const TString &jobName, Types::EMVA methodType, const TString &methodTitle, DataSetInfo &dsi, const TString &theOption="") | |
standard constructor | |
MethodBase (Types::EMVA methodType, DataSetInfo &dsi, const TString &weightFile) | |
constructor used for Testing + Application of the MVA, only (no training), using given WeightFiles | |
virtual | ~MethodBase () |
destructor | |
void | AddOutput (Types::ETreeType type, Types::EAnalysisType analysisType) |
TDirectory * | BaseDir () const |
returns the ROOT directory where info/histograms etc of the corresponding MVA method instance are stored | |
virtual void | CheckSetup () |
check may be overridden by derived class (sometimes, eg, fitters are used which can only be implemented during training phase) | |
DataSet * | Data () const |
DataSetInfo & | DataInfo () 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 | |
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. | |
const Event * | GetEvent () const |
const Event * | GetEvent (const TMVA::Event *ev) const |
const Event * | GetEvent (Long64_t ievt) const |
const Event * | GetEvent (Long64_t ievt, Types::ETreeType type) const |
const std::vector< TMVA::Event * > & | GetEventCollection (Types::ETreeType type) |
returns the event collection (i.e. | |
TFile * | GetFile () const |
const TString & | GetInputLabel (Int_t i) const |
const char * | GetInputTitle (Int_t i) const |
const TString & | GetInputVar (Int_t i) const |
TMultiGraph * | GetInteractiveTrainingError () |
const TString & | GetJobName () 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 | |
UInt_t | GetMaxIter () |
Double_t | GetMean (Int_t ivar) const |
const TString & | GetMethodName () 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. | |
virtual std::vector< Float_t > | GetMulticlassEfficiency (std::vector< std::vector< Float_t > > &purity) |
virtual std::vector< Float_t > | GetMulticlassTrainingEfficiency (std::vector< std::vector< Float_t > > &purity) |
Double_t | GetMvaValue (const TMVA::Event *const ev, Double_t *err=nullptr, Double_t *errUpper=nullptr) |
const char * | GetName () const |
UInt_t | GetNEvents () const |
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 | |
const TString | GetProbaName () const |
virtual Double_t | GetRarity (Double_t mvaVal, Types::ESBType reftype=Types::kBackground) const |
compute rarity: | |
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 (PDF *pdfS=nullptr, PDF *pdfB=nullptr) const |
calculate the area (integral) under the ROC curve as a overall quality measure of the classification | |
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 | |
virtual Double_t | GetSeparation (PDF *pdfS=nullptr, PDF *pdfB=nullptr) const |
compute "separation" defined as | |
virtual Double_t | GetSeparation (TH1 *, TH1 *) const |
compute "separation" defined as | |
Double_t | GetSignalReferenceCut () const |
Double_t | GetSignalReferenceCutOrientation () const |
virtual Double_t | GetSignificance () const |
compute significance of mean difference | |
const Event * | GetTestingEvent (Long64_t ievt) const |
Double_t | GetTestTime () const |
const TString & | GetTestvarName () const |
virtual Double_t | GetTrainingEfficiency (const TString &) |
const Event * | GetTrainingEvent (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 | |
UInt_t | GetTrainingTMVAVersionCode () const |
TString | GetTrainingTMVAVersionString () const |
calculates the TMVA version string from the training version code on the fly | |
Double_t | GetTrainTime () const |
TransformationHandler & | GetTransformationHandler (Bool_t takeReroutedIfAvailable=true) |
const TransformationHandler & | GetTransformationHandler (Bool_t takeReroutedIfAvailable=true) const |
TString | GetWeightFileName () const |
retrieve weight file name | |
Double_t | GetXmax (Int_t ivar) const |
Double_t | GetXmin (Int_t ivar) const |
Bool_t | HasMVAPdfs () const |
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 | |
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 | |
Bool_t | IsSilentFile () const |
virtual void | MakeClass (const TString &classFileName=TString("")) const |
create reader class for method (classification only at present) | |
TDirectory * | MethodBaseDir () const |
returns the ROOT directory where all instances of the corresponding MVA method are stored | |
virtual std::map< TString, Double_t > | OptimizeTuningParameters (TString fomType="ROCIntegral", TString fitType="FitGA") |
call the Optimizer with the set of parameters and ranges that are meant to be tuned. | |
void | PrintHelpMessage () const |
prints out method-specific help method | |
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) | |
void | ReadStateFromFile () |
Function to write options and weights to file. | |
void | ReadStateFromStream (std::istream &tf) |
read the header from the weight files of the different MVA methods | |
void | ReadStateFromStream (TFile &rf) |
write reference MVA distributions (and other information) to a ROOT type weight file | |
void | ReadStateFromXMLString (const char *xmlstr) |
for reading from memory | |
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 . | |
void | SetupMethod () |
setup of methods | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
virtual void | TestClassification () |
initialization | |
virtual void | TestMulticlass () |
test multiclass classification | |
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 | |
bool | TrainingEnded () |
void | TrainMethod () |
virtual void | WriteEvaluationHistosToFile (Types::ETreeType treetype) |
writes all MVA evaluation histograms to file | |
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 | |
Public Member Functions inherited from TMVA::IMethod | |
IMethod () | |
virtual | ~IMethod () |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TMVA::Configurable | |
Configurable (const TString &theOption="") | |
constructor | |
virtual | ~Configurable () |
default destructor | |
void | AddOptionsXMLTo (void *parent) const |
write options to XML file | |
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 | |
template<class T > | |
TMVA::OptionBase * | DeclareOptionRef (T &ref, const TString &name, const TString &desc) |
template<class T > | |
OptionBase * | DeclareOptionRef (T &ref, const TString &name, const TString &desc="") |
template<class T > | |
TMVA::OptionBase * | DeclareOptionRef (T *&ref, Int_t size, const TString &name, const TString &desc) |
template<class T > | |
OptionBase * | DeclareOptionRef (T *&ref, Int_t size, const TString &name, const TString &desc="") |
const char * | GetConfigDescription () const |
const char * | GetConfigName () const |
const TString & | GetOptions () const |
MsgLogger & | Log () const |
virtual void | ParseOptions () |
options parser | |
void | PrintOptions () const |
prints out the options set in the options string and the defaults | |
void | ReadOptionsFromStream (std::istream &istr) |
read option back from the weight file | |
void | ReadOptionsFromXML (void *node) |
void | SetConfigDescription (const char *d) |
void | SetConfigName (const char *n) |
void | SetMsgType (EMsgType t) |
void | SetOptions (const TString &s) |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
void | WriteOptionsToStream (std::ostream &o, const TString &prefix) const |
write options to output stream (e.g. in writing the MVA weight files | |
Public Member Functions inherited from TNamed | |
TNamed () | |
TNamed (const char *name, const char *title) | |
TNamed (const TNamed &named) | |
TNamed copy ctor. | |
TNamed (const TString &name, const TString &title) | |
virtual | ~TNamed () |
TNamed destructor. | |
void | Clear (Option_t *option="") override |
Set name and title to empty strings (""). | |
TObject * | Clone (const char *newname="") const override |
Make a clone of an object using the Streamer facility. | |
Int_t | Compare (const TObject *obj) const override |
Compare two TNamed objects. | |
void | Copy (TObject &named) const override |
Copy this to obj. | |
virtual void | FillBuffer (char *&buffer) |
Encode TNamed into output buffer. | |
const char * | GetName () const override |
Returns name of object. | |
const char * | GetTitle () const override |
Returns title of object. | |
ULong_t | Hash () const override |
Return hash value for this object. | |
TClass * | IsA () const override |
Bool_t | IsSortable () const override |
void | ls (Option_t *option="") const override |
List TNamed name and title. | |
TNamed & | operator= (const TNamed &rhs) |
TNamed assignment operator. | |
void | Print (Option_t *option="") const override |
Print TNamed name and title. | |
virtual void | SetName (const char *name) |
Set the name of the TNamed. | |
virtual void | SetNameTitle (const char *name, const char *title) |
Set all the TNamed parameters (name and title). | |
virtual void | SetTitle (const char *title="") |
Set the title of the TNamed. | |
virtual Int_t | Sizeof () const |
Return size of the TNamed part of the TObject. | |
void | Streamer (TBuffer &) override |
Stream an object of class TObject. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TObject | |
TObject () | |
TObject constructor. | |
TObject (const TObject &object) | |
TObject copy ctor. | |
virtual | ~TObject () |
TObject destructor. | |
void | AbstractMethod (const char *method) const |
Use this method to implement an "abstract" method that you don't want to leave purely abstract. | |
virtual void | AppendPad (Option_t *option="") |
Append graphics object to current pad. | |
virtual void | Browse (TBrowser *b) |
Browse object. May be overridden for another default action. | |
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. | |
virtual const char * | ClassName () const |
Returns name of class to which the object belongs. | |
virtual void | Delete (Option_t *option="") |
Delete this object. | |
virtual Int_t | DistancetoPrimitive (Int_t px, Int_t py) |
Computes distance from point (px,py) to the object. | |
virtual void | Draw (Option_t *option="") |
Default Draw method for all objects. | |
virtual void | DrawClass () const |
Draw class inheritance tree of the class to which this object belongs. | |
virtual TObject * | DrawClone (Option_t *option="") const |
Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1) . | |
virtual void | Dump () const |
Dump contents of object on stdout. | |
virtual void | Error (const char *method, const char *msgfmt,...) const |
Issue error message. | |
virtual void | Execute (const char *method, const char *params, Int_t *error=nullptr) |
Execute method on this object with the given parameter string, e.g. | |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr) |
Execute method on this object with parameters stored in the TObjArray. | |
virtual void | ExecuteEvent (Int_t event, Int_t px, Int_t py) |
Execute action corresponding to an event at (px,py). | |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
Issue fatal error message. | |
virtual TObject * | FindObject (const char *name) const |
Must be redefined in derived classes. | |
virtual TObject * | FindObject (const TObject *obj) const |
Must be redefined in derived classes. | |
virtual Option_t * | GetDrawOption () const |
Get option used by the graphics system to draw this object. | |
virtual const char * | GetIconName () const |
Returns mime type name of object. | |
virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
Returns string containing info about the object at position (px,py). | |
virtual Option_t * | GetOption () const |
virtual UInt_t | GetUniqueID () const |
Return the unique object id. | |
virtual Bool_t | HandleTimer (TTimer *timer) |
Execute action in response of a timer timing out. | |
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. | |
virtual void | Info (const char *method, const char *msgfmt,...) const |
Issue info message. | |
virtual Bool_t | InheritsFrom (const char *classname) const |
Returns kTRUE if object inherits from class "classname". | |
virtual Bool_t | InheritsFrom (const TClass *cl) const |
Returns kTRUE if object inherits from TClass cl. | |
virtual void | Inspect () const |
Dump contents of this object in a graphics canvas. | |
void | InvertBit (UInt_t f) |
Bool_t | IsDestructed () const |
IsDestructed. | |
virtual Bool_t | IsEqual (const TObject *obj) const |
Default equal comparison (objects are equal if they have the same address in memory). | |
virtual Bool_t | IsFolder () const |
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). | |
R__ALWAYS_INLINE Bool_t | IsOnHeap () const |
R__ALWAYS_INLINE 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). | |
virtual Bool_t | Notify () |
This method must be overridden to handle object notification (the base implementation is no-op). | |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
Use this method to declare a method obsolete. | |
void | operator delete (void *ptr) |
Operator delete. | |
void | operator delete (void *ptr, void *vp) |
Only called by placement new when throwing an exception. | |
void | operator delete[] (void *ptr) |
Operator delete []. | |
void | operator delete[] (void *ptr, void *vp) |
Only called by placement new[] when throwing an exception. | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (const TObject &rhs) |
TObject assignment operator. | |
virtual void | Paint (Option_t *option="") |
This method must be overridden if a class wants to paint itself. | |
virtual void | Pop () |
Pop on object drawn in a pad to the top of the display list. | |
virtual Int_t | Read (const char *name) |
Read contents of object with specified name from the current directory. | |
virtual void | RecursiveRemove (TObject *obj) |
Recursively remove this object from a list. | |
void | ResetBit (UInt_t f) |
virtual void | SaveAs (const char *filename="", Option_t *option="") const |
Save this object in the file specified by filename. | |
virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
Save a primitive as a C++ statement(s) on output stream "out". | |
void | SetBit (UInt_t f) |
void | SetBit (UInt_t f, Bool_t set) |
Set or unset the user status bits as specified in f. | |
virtual void | SetDrawOption (Option_t *option="") |
Set drawing option for object. | |
virtual void | SetUniqueID (UInt_t uid) |
Set the unique object id. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
Issue system error message. | |
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. | |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
Issue warning message. | |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) |
Write this object to the current directory. | |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const |
Write this object to the current directory. | |
Public Member Functions inherited from TMVA::IFitterTarget | |
IFitterTarget () | |
constructor | |
virtual | ~IFitterTarget () |
virtual void | ProgressNotifier (TString, TString) |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TMVA::ConvergenceTest | |
ConvergenceTest () | |
constructor | |
~ConvergenceTest () | |
destructor | |
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" | |
Float_t | Progress () |
returns a float from 0 (just started) to 1 (finished) | |
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. | |
Static Public Member Functions | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TMVA::MethodANNBase | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TMVA::MethodBase | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TMVA::IMethod | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TMVA::Configurable | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TNamed | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TObject | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static Longptr_t | GetDtorOnly () |
Return destructor only flag. | |
static Bool_t | GetObjectStat () |
Get status of object stat flag. | |
static void | SetDtorOnly (void *obj) |
Set destructor only flag. | |
static void | SetObjectStat (Bool_t stat) |
Turn on/off tracking of objects in the TObjectTable. | |
Static Public Member Functions inherited from TMVA::IFitterTarget | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Protected Member Functions | |
void | GetHelpMessage () const |
get help message text | |
void | MakeClassSpecific (std::ostream &, const TString &) const |
write specific classifier response | |
Protected Member Functions inherited from TMVA::MethodANNBase | |
virtual void | BuildNetwork (std::vector< Int_t > *layout, std::vector< Double_t > *weights=nullptr, Bool_t fromFile=kFALSE) |
build network given a layout (number of neurons in each layer) and optional weights array | |
void | CreateWeightMonitoringHists (const TString &bulkname, std::vector< TH1 * > *hv=nullptr) const |
void | ForceNetworkCalculations () |
calculate input values to each neuron | |
void | ForceNetworkInputs (const Event *ev, Int_t ignoreIndex=-1) |
force the input values of the input neurons force the value for each input neuron | |
TNeuron * | GetInputNeuron (Int_t index) |
Double_t | GetNetworkOutput () |
TNeuron * | GetOutputNeuron (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 | |
void | PrintMessage (TString message, Bool_t force=kFALSE) const |
print messages, turn off printing by setting verbose and debug flag appropriately | |
void | WaitForKeyboard () |
wait for keyboard input, for debugging | |
Protected Member Functions inherited from TMVA::MethodBase | |
virtual std::vector< Double_t > | GetDataMvaValues (DataSet *data=nullptr, Long64_t firstEvt=0, Long64_t lastEvt=-1, Bool_t logProgress=false) |
get all the MVA values for the events of the given Data type | |
const TString & | GetInternalVarName (Int_t ivar) const |
virtual std::vector< Double_t > | GetMvaValues (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 | |
const TString & | GetOriginalVarName (Int_t ivar) const |
const TString & | GetWeightFileDir () 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) |
void | SetNormalised (Bool_t norm) |
void | SetWeightFileDir (TString fileDir) |
set directory of weight file | |
void | SetWeightFileName (TString) |
set the weight file name (depreciated) | |
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 | |
Bool_t | TxtWeightsOnly () const |
Bool_t | Verbose () const |
Protected Member Functions inherited from TMVA::Configurable | |
void | EnableLooseOptions (Bool_t b=kTRUE) |
const TString & | GetReferenceFile () const |
Bool_t | LooseOptionCheckingEnabled () const |
void | ResetSetFlag () |
resets the IsSet flag for all declare options to be called before options are read from stream | |
void | WriteOptionsReferenceToFile () |
write complete options to output stream | |
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). | |
void | MakeZombie () |
Private Member Functions | |
void | AdjustSynapseWeights () |
just adjust the synapse weights (should be called in batch mode) | |
void | BackPropagationMinimize (Int_t nEpochs) |
minimize estimator / train network with back propagation algorithm | |
void | BFGSMinimize (Int_t nEpochs) |
train network with BFGS algorithm | |
Double_t | CalculateEstimator (Types::ETreeType treeType=Types::kTraining, Int_t iEpoch=-1) |
calculate the estimator that training is attempting to minimize | |
void | CalculateNeuronDeltas () |
have each neuron calculate its delta by back propagation | |
void | ComputeDEDw () |
void | DecaySynapseWeights (Bool_t lateEpoch) |
decay synapse weights in last 10 epochs, lower learning rate even more to find a good minimum | |
void | DeclareOptions () |
define the options (their key words) that can be set in the option string | |
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 | |
void | GetApproxInvHessian (TMatrixD &InvHessian, bool regulate=true) |
rank-1 approximation, neglect 2nd derivatives. //zjh | |
Double_t | GetCEErr (const Event *ev, UInt_t index=0) |
zjh | |
Double_t | GetDesiredOutput (const Event *ev) |
get the desired output of this event | |
Double_t | GetError () |
Bool_t | GetHessian (TMatrixD &Hessian, TMatrixD &Gamma, TMatrixD &Delta) |
Double_t | GetMSEErr (const Event *ev, UInt_t index=0) |
zjh | |
void | Init () |
default initializations | |
void | InitializeLearningRates () |
initialize learning rates of synapses, used only by back propagation | |
Bool_t | LineSearch (TMatrixD &Dir, std::vector< Double_t > &Buffer, Double_t *dError=nullptr) |
zjh | |
void | ProcessOptions () |
process user options | |
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: | |
void | SimulateEvent (const Event *ev) |
void | SteepestDir (TMatrixD &Dir) |
void | Train (Int_t nEpochs) |
void | TrainOneEpoch () |
train network over a single epoch/cycle of events | |
void | TrainOneEvent (Int_t ievt) |
train network over a single event this uses the new event model | |
void | TrainOneEventFast (Int_t ievt, Float_t *&branchVar, Int_t &type) |
fast per-event training | |
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 | |
void | UpdateNetwork (Double_t desired, Double_t eventWeight=1.0) |
update the network based on how closely the output matched the desired output | |
void | UpdatePriors () |
zjh | |
void | UpdateRegulators () |
zjh | |
void | UpdateSynapses () |
update synapse error fields and adjust the weights (if in sequential mode) | |
Private Attributes | |
Int_t | fBatchSize |
batch size, only matters if in batch learning mode | |
EBPTrainingMode | fBPMode |
backprop learning mode (sequential or batch) | |
TString | fBpModeS |
backprop learning mode option string (sequential or batch) | |
bool | fCalculateErrors |
compute inverse hessian matrix at the end of the training | |
Double_t | fDecayRate |
decay rate for above learning rate | |
std::vector< std::pair< Float_t, Float_t > > * | fDeviationsFromTargets |
deviation from the targets, event weight | |
Bool_t | fEpochMon |
create and fill epoch-wise monitoring histograms (makes outputfile big!) | |
Int_t | fGA_nsteps |
GA settings: number of steps. | |
Int_t | fGA_preCalc |
GA settings: number of pre-calc steps. | |
Double_t | fGA_SC_factor |
GA settings: SC_factor. | |
Int_t | fGA_SC_rate |
GA settings: SC_rate. | |
Int_t | fGA_SC_steps |
GA settings: SC_steps. | |
Double_t | fLastAlpha |
line search variable | |
Double_t | fLearnRate |
learning rate for synapse weight adjustments | |
Double_t | fPrior |
zjh | |
std::vector< Double_t > | fPriorDev |
zjh | |
Int_t | fResetStep |
reset time (how often we clear hessian matrix) | |
Float_t | fSamplingEpoch |
fraction of epochs where sampling is used | |
Float_t | fSamplingFraction |
fraction of events which is sampled for training | |
Bool_t | fSamplingTesting |
The testing sample is sampled. | |
Bool_t | fSamplingTraining |
The training sample is sampled. | |
Float_t | fSamplingWeight |
changing factor for event weights when sampling is turned on | |
Double_t | fTau |
line search variable | |
Int_t | fTestRate |
test for overtraining performed at each #th epochs | |
ETrainingMethod | fTrainingMethod |
method of training, BP or GA | |
TString | fTrainMethodS |
training method option param | |
Int_t | fUpdateLimit |
zjh | |
bool | fUseRegulator |
zjh | |
Float_t | fWeightRange |
suppress outliers for the estimator calculation | |
Static Private Attributes | |
static const Bool_t | fgPRINT_BATCH = kFALSE |
debug flags | |
static const Int_t | fgPRINT_ESTIMATOR_INC = 10 |
debug flags | |
static const Bool_t | fgPRINT_SEQ = kFALSE |
debug flags | |
Additional Inherited Members | |
Public Attributes inherited from TMVA::MethodANNBase | |
TObjArray * | fNetwork |
Public Attributes inherited from TMVA::MethodBase | |
Bool_t | fSetupCompleted |
TrainingHistory | fTrainHistory |
Protected Types inherited from TObject | |
enum | { kOnlyPrepStep = (1ULL << ( 3 )) } |
Protected Attributes inherited from TMVA::MethodANNBase | |
TActivation * | fActivation |
std::vector< TH1 * > | fEpochMonHistB |
std::vector< TH1 * > | fEpochMonHistS |
std::vector< TH1 * > | fEpochMonHistW |
EEstimator | fEstimator |
TH1F * | fEstimatorHistTest |
TH1F * | fEstimatorHistTrain |
TString | fEstimatorS |
TActivation * | fIdentity |
TNeuronInput * | fInputCalculator |
TMatrixD | fInvHessian |
zjh | |
Int_t | fNcycles |
number of epochs to train | |
TString | fNeuronInputType |
name of neuron input calculator class | |
TString | fNeuronType |
name of neuron activation function class | |
TActivation * | fOutput |
Int_t | fRandomSeed |
random seed for initial synapse weights | |
std::vector< Int_t > | fRegulatorIdx |
std::vector< Double_t > | fRegulators |
TRandom3 * | frgen |
TObjArray * | fSynapses |
bool | fUseRegulator |
zjh | |
Protected Attributes inherited from TMVA::MethodBase | |
Types::EAnalysisType | fAnalysisType |
UInt_t | fBackgroundClass |
bool | fExitFromTraining = false |
std::vector< TString > * | fInputVars |
IPythonInteractive * | fInteractive = nullptr |
temporary dataset used when evaluating on a different data (used by MethodCategory::GetMvaValues) | |
UInt_t | fIPyCurrentIter = 0 |
UInt_t | fIPyMaxIter = 0 |
std::vector< Float_t > * | fMulticlassReturnVal |
Int_t | fNbins |
Int_t | fNbinsH |
Int_t | fNbinsMVAoutput |
Ranking * | fRanking |
std::vector< Float_t > * | fRegressionReturnVal |
Results * | fResults |
UInt_t | fSignalClass |
DataSet * | fTmpData = nullptr |
temporary event when testing on a different DataSet than the own one | |
const Event * | fTmpEvent |
Protected Attributes inherited from TMVA::Configurable | |
MsgLogger * | fLogger |
! message logger | |
Protected Attributes inherited from TNamed | |
TString | fName |
TString | fTitle |
Protected Attributes inherited from TMVA::ConvergenceTest | |
Float_t | fCurrentValue |
! current value | |
Float_t | fImprovement |
! minimum improvement which counts as improvement | |
Int_t | fSteps |
! number of steps without improvement required for convergence | |
#include <TMVA/MethodMLP.h>
Enumerator | |
---|---|
kSequential | |
kBatch |
Definition at line 92 of file MethodMLP.h.
Enumerator | |
---|---|
kBP | |
kBFGS | |
kGA |
Definition at line 91 of file MethodMLP.h.
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.
|
virtual |
destructor nothing to be done
Definition at line 138 of file MethodMLP.cxx.
|
private |
just adjust the synapse weights (should be called in batch mode)
Definition at line 1434 of file MethodMLP.cxx.
|
private |
minimize estimator / train network with back propagation algorithm
Definition at line 1037 of file MethodMLP.cxx.
|
private |
train network with BFGS algorithm
Definition at line 487 of file MethodMLP.cxx.
|
private |
calculate the estimator that training is attempting to minimize
Definition at line 292 of file MethodMLP.cxx.
|
private |
have each neuron calculate its delta by back propagation
Definition at line 1328 of file MethodMLP.cxx.
|
static |
|
inlinestaticconstexpr |
Definition at line 219 of file MethodMLP.h.
|
private |
Definition at line 697 of file MethodMLP.cxx.
this function is called by GeneticANN for GA optimization
Definition at line 1393 of file MethodMLP.cxx.
|
private |
decay synapse weights in last 10 epochs, lower learning rate even more to find a good minimum
Definition at line 1208 of file MethodMLP.cxx.
|
privatevirtual |
define the options (their key words) that can be set in the option string
know options:
<string>
Training method available values are:<default>
<float>
NN learning rate parameter<float>
Decay rate for learning parameter<int>
Test for overtraining performed at each #th epochs<string>
Back-propagation learning mode available values are:<default>
<int>
Batch size: number of events/batch, only set if in Batch Mode,Reimplemented from TMVA::MethodANNBase.
Definition at line 195 of file MethodMLP.cxx.
|
inlinestatic |
Definition at line 219 of file MethodMLP.h.
Definition at line 825 of file MethodMLP.cxx.
interface to the estimate
Implements TMVA::IFitterTarget.
Definition at line 1385 of file MethodMLP.cxx.
|
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 1356 of file MethodMLP.cxx.
rank-1 approximation, neglect 2nd derivatives. //zjh
Definition at line 1508 of file MethodMLP.cxx.
zjh
Definition at line 1020 of file MethodMLP.cxx.
get the desired output of this event
Definition at line 1277 of file MethodMLP.cxx.
|
private |
Definition at line 966 of file MethodMLP.cxx.
|
protectedvirtual |
get help message text
typical length of text line: "|--------------------------------------------------------------|"
Implements TMVA::IMethod.
Definition at line 1715 of file MethodMLP.cxx.
|
private |
Definition at line 787 of file MethodMLP.cxx.
zjh
Definition at line 1003 of file MethodMLP.cxx.
|
virtual |
get the mva value generated by the NN
Reimplemented from TMVA::MethodANNBase.
Definition at line 1549 of file MethodMLP.cxx.
|
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.
|
inline |
Definition at line 94 of file MethodMLP.h.
|
privatevirtual |
|
private |
initialize learning rates of synapses, used only by back propagation
Definition at line 278 of file MethodMLP.cxx.
|
inlinevirtual |
Reimplemented from TMVA::MethodANNBase.
Definition at line 219 of file MethodMLP.h.
|
private |
zjh
Definition at line 840 of file MethodMLP.cxx.
|
protectedvirtual |
write specific classifier response
Reimplemented from TMVA::MethodANNBase.
Definition at line 1704 of file MethodMLP.cxx.
|
privatevirtual |
process user options
Reimplemented from TMVA::MethodANNBase.
Definition at line 247 of file MethodMLP.cxx.
Definition at line 808 of file MethodMLP.cxx.
|
private |
Definition at line 950 of file MethodMLP.cxx.
|
private |
Definition at line 672 of file MethodMLP.cxx.
Input:
This method is used for sequential training
Definition at line 1190 of file MethodMLP.cxx.
|
private |
Definition at line 734 of file MethodMLP.cxx.
|
private |
Definition at line 774 of file MethodMLP.cxx.
|
virtual |
Reimplemented from TMVA::MethodANNBase.
|
inline |
Definition at line 219 of file MethodMLP.h.
|
virtual |
Implements TMVA::MethodANNBase.
Definition at line 142 of file MethodMLP.cxx.
|
private |
Definition at line 436 of file MethodMLP.cxx.
|
private |
train network over a single epoch/cycle of events
Definition at line 1142 of file MethodMLP.cxx.
|
private |
train network over a single event this uses the new event model
Definition at line 1258 of file MethodMLP.cxx.
fast per-event training
Definition at line 1222 of file MethodMLP.cxx.
|
private |
update the network based on how closely the output matched the desired output
Definition at line 1302 of file MethodMLP.cxx.
update the network based on how closely the output matched the desired output
Definition at line 1286 of file MethodMLP.cxx.
|
private |
zjh
Definition at line 1454 of file MethodMLP.cxx.
|
private |
zjh
Definition at line 1468 of file MethodMLP.cxx.
|
private |
update synapse error fields and adjust the weights (if in sequential mode)
Definition at line 1412 of file MethodMLP.cxx.
|
private |
batch size, only matters if in batch learning mode
Definition at line 192 of file MethodMLP.h.
|
private |
backprop learning mode (sequential or batch)
Definition at line 190 of file MethodMLP.h.
|
private |
backprop learning mode option string (sequential or batch)
Definition at line 191 of file MethodMLP.h.
|
private |
compute inverse hessian matrix at the end of the training
Definition at line 165 of file MethodMLP.h.
|
private |
decay rate for above learning rate
Definition at line 189 of file MethodMLP.h.
deviation from the targets, event weight
Definition at line 204 of file MethodMLP.h.
|
private |
create and fill epoch-wise monitoring histograms (makes outputfile big!)
Definition at line 194 of file MethodMLP.h.
|
private |
GA settings: number of steps.
Definition at line 197 of file MethodMLP.h.
|
private |
GA settings: number of pre-calc steps.
Definition at line 198 of file MethodMLP.h.
|
private |
GA settings: SC_factor.
Definition at line 201 of file MethodMLP.h.
|
private |
GA settings: SC_rate.
Definition at line 200 of file MethodMLP.h.
|
private |
GA settings: SC_steps.
Definition at line 199 of file MethodMLP.h.
debug flags
Definition at line 217 of file MethodMLP.h.
|
staticprivate |
debug flags
Definition at line 215 of file MethodMLP.h.
debug flags
Definition at line 216 of file MethodMLP.h.
|
private |
line search variable
Definition at line 183 of file MethodMLP.h.
|
private |
learning rate for synapse weight adjustments
Definition at line 188 of file MethodMLP.h.
|
private |
zjh
Definition at line 166 of file MethodMLP.h.
|
private |
zjh
Definition at line 167 of file MethodMLP.h.
|
private |
reset time (how often we clear hessian matrix)
Definition at line 185 of file MethodMLP.h.
|
private |
fraction of epochs where sampling is used
Definition at line 177 of file MethodMLP.h.
|
private |
fraction of events which is sampled for training
Definition at line 176 of file MethodMLP.h.
|
private |
The testing sample is sampled.
Definition at line 180 of file MethodMLP.h.
|
private |
The training sample is sampled.
Definition at line 179 of file MethodMLP.h.
|
private |
changing factor for event weights when sampling is turned on
Definition at line 178 of file MethodMLP.h.
|
private |
line search variable
Definition at line 184 of file MethodMLP.h.
|
private |
test for overtraining performed at each #th epochs
Definition at line 193 of file MethodMLP.h.
|
private |
method of training, BP or GA
Definition at line 173 of file MethodMLP.h.
|
private |
training method option param
Definition at line 174 of file MethodMLP.h.
|
private |
zjh
Definition at line 171 of file MethodMLP.h.
|
private |
zjh
Definition at line 164 of file MethodMLP.h.
|
private |
suppress outliers for the estimator calculation
Definition at line 206 of file MethodMLP.h.