A++ » TMVA » TMVA::SeparationBase

class TMVA::SeparationBase


SeparationBase

An interface to calculate the "SeparationGain" for different
separation critiera used in various training algorithms

There are two things: the Separation Index, and the Separation Gain
Separation Index:
Measure of the "purity" of a sample. If all elements (events) in the
sample belong to the same class (e.g. signal or backgr), than the
separation index is 0 (meaning 100% purity (or 0% purity as it is
symmetric. The index becomes maximal, for perfectly mixed samples
eg. purity=50% , N_signal = N_bkg

Separation Gain:
the measure of how the quality of separation of the sample increases
by splitting the sample e.g. into a "left-node" and a "right-node"
(N * Index_parent) - (N_left * Index_left) - (N_right * Index_right)
this is then the quality crition which is optimized for when trying
to increase the information in the system (making the best selection


Function Members (Methods)

 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.

public:
virtual~SeparationBase()
static TClass*Class()
const TString&GetName()
virtual Double_tGetSeparationGain(const Double_t& nSelS, const Double_t& nSelB, const Double_t& nTotS, const Double_t& nTotB)
virtual Double_tGetSeparationIndex(const Double_t& s, const Double_t& b)
virtual TClass*IsA() const
TMVA::SeparationBase&operator=(const TMVA::SeparationBase&)
TMVA::SeparationBaseSeparationBase()
TMVA::SeparationBaseSeparationBase(const TMVA::SeparationBase& s)
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)

Data Members

protected:
TStringfNamename of the concrete Separation Index impementation
Double_tfPrecisionCut

Class Charts

Inheritance Chart:
TMVA::SeparationBase
TMVA::CrossEntropy
TMVA::GiniIndex
TMVA::GiniIndexWithLaplace
TMVA::MisClassificationError
TMVA::SdivSqrtSplusB

Function documentation

SeparationBase()
 default constructor
SeparationBase(const TMVA::SeparationBase& s)
copy constructor
virtual ~SeparationBase()
 destructor
{}
Double_t GetSeparationGain(const Double_t& nSelS, const Double_t& nSelB, const Double_t& nTotS, const Double_t& nTotB)
 Return the gain in separation of the original sample is splitted in two sub-samples
 (N * Index_parent) - (N_left * Index_left) - (N_right * Index_right)
const TString& GetName()
 Return the separation index (a measure for "purity" of the sample")
 Return the name of the concrete Index implementation
{ return fName; }