library: libTMVA
#include "TMVA_MethodFisher.h"

TMVA_MethodFisher


class description - source file - inheritance tree (.pdf)

class TMVA_MethodFisher : public TMVA_MethodBase

Inheritance Chart:
TObject
<-
TMVA_MethodBase
<-
TMVA_MethodFisher
    private:
void GetCov_BetweenClass() void GetCov_Full() void GetCov_WithinClass() void GetDiscrimPower() void GetFisherCoeff() void GetMean() void Init() void InitFisher() void PrintCoefficients() public:
TMVA_MethodFisher(TString jobName, vector<TString>* theVariables, TTree* theTree = 0, TString theOption = Fisher, TDirectory* theTargetDir = 0) TMVA_MethodFisher(vector<TString>* theVariables, TString theWeightFile, TDirectory* theTargetDir = NULL) TMVA_MethodFisher(const TMVA_MethodFisher&) virtual ~TMVA_MethodFisher() static TClass* Class() virtual TMVA_MethodFisher::FisherMethod GetMethod() virtual Double_t GetMvaValue(TMVA_Event* e) virtual TClass* IsA() const TMVA_MethodFisher& operator=(const TMVA_MethodFisher&) virtual void ReadWeightsFromFile() virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) virtual void Train() virtual void WriteHistosToFile() virtual void WriteWeightsToFile()

Data Members

    private:
TH1D* fHistPDF[25] histograms containing the pdfs Int_t fNbins Int_t fAverageEvtPerBin average events per bin. Used to calculate nbins Int_t fNevt Int_t fNsig Int_t fNbgd TMatrixT<float>* fSig TMatrixT<float>* fBgd TMatrixT<float>* fMeanMatx TMatrixT<float>* fBetw TMatrixT<float>* fWith TMatrixT<float>* fCov vector<Double_t>* fDiscrimPow vector<Double_t>* fFisherCoeff Double_t fF0 TMVA_MethodFisher::FisherMethod fFisherMethod public:
static const TMVA_MethodFisher::FisherMethod kFisher static const TMVA_MethodFisher::FisherMethod kMahalanobis

Class Description

 Analysis of Fisher discriminant (Fisher or Mahalanobis approach)

_______________________________________________________________________

TMVA_MethodFisher( TString jobName, vector<TString>* theVariables, TTree* theTree, TString theOption, TDirectory* theTargetDir ) : TMVA_MethodBase( jobName, theVariables, theTree, theOption, theTargetDir )

TMVA_MethodFisher( vector<TString> *theVariables, TString theWeightFile, TDirectory* theTargetDir ) : TMVA_MethodBase( theVariables, theWeightFile, theTargetDir )

void InitFisher( void )

~TMVA_MethodFisher( void )

void Train( void )
--------------------------------------------------------------

Double_t GetMvaValue( TMVA_Event *e )

void Init( void )
 should never be called without existing trainingTree

void GetMean( void )

void GetCov_WithinClass( void )
 the matrix of covariance 'within class' reflects the dispersion of the
 events relative to the center of gravity of their own class

void GetCov_BetweenClass( void )
 the matrix of covariance 'between class' reflects the dispersion of the
 events of a class relative to the global center of gravity of all the class
 hence the separation between classes

void GetCov_Full( void )

void GetFisherCoeff( void )
 Fisher = Sum { [coeff]*[variables] }

 let Xs be the array of the mean values of variables for signal evts
 let Xb be the array of the mean values of variables for backgd evts
 let InvWith be the inverse matrix of the 'within class' correlation matrix

 then the array of Fisher coefficients is
 [coeff] =sqrt(fNsig*fNbgd)/fNevt*transpose{Xs-Xb}*InvWith

void GetDiscrimPower( void )
small values of "fWith" indicates little compactness of sig & of backgd
big values of "fBetw" indicates large separation between sig & backgd

we want signal & backgd classes as compact and separated as possible
the discriminating power is then defined as the ration "fBetw/fWith"

void PrintCoefficients( void )
 display Fisher coefficients and discriminating power for each variable
 check maximum length of variable name

void WriteWeightsToFile( void )
 write coefficients to file

void ReadWeightsFromFile( void )
 read coefficients from file

void WriteHistosToFile( void )



Inline Functions


        TMVA_MethodFisher::FisherMethod GetMethod()
                                TClass* Class()
                                TClass* IsA() const
                                   void ShowMembers(TMemberInspector& insp, char* parent)
                                   void Streamer(TBuffer& b)
                                   void StreamerNVirtual(TBuffer& b)
                      TMVA_MethodFisher TMVA_MethodFisher(const TMVA_MethodFisher&)
                     TMVA_MethodFisher& operator=(const TMVA_MethodFisher&)


Author: Andreas Hoecker, Xavier Prudent, Helge Voss, Kai Voss
Last update: root/tmva $Id: TMVA_MethodFisher.cxx,v 1.2 2006/05/09 08:37:06 brun Exp $
Copyright (c) 2005: *


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.