Logo ROOT   6.08/07
Reference Guide
List of all members | Public Types | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
TMVA::kNN::ModulekNN Class Reference

Definition at line 111 of file ModulekNN.h.

Public Types

typedef std::map< int, std::vector< Double_t > > VarMap
 

Public Member Functions

 ModulekNN ()
 default constructor More...
 
 ~ModulekNN ()
 destructor More...
 
void Add (const Event &event)
 add an event to tree More...
 
void Clear ()
 clean up More...
 
Bool_t Fill (const UShort_t odepth, UInt_t ifrac, const std::string &option="")
 fill the tree More...
 
Bool_t Find (Event event, UInt_t nfind=100, const std::string &option="count") const
 find in tree if tree has been filled then search for nfind closest events if metic (fVarScale map) is computed then rescale event variables using previsouly computed width of variable distribution More...
 
Bool_t Find (UInt_t nfind, const std::string &option) const
 find in tree More...
 
const EventVecGetEventVec () const
 
const EventGetkNNEvent () const
 
const ListGetkNNList () const
 
const std::map< Int_t, Double_t > & GetMetric () const
 
const VarMapGetVarMap () const
 
void Print () const
 print More...
 
void Print (std::ostream &os) const
 print More...
 

Private Member Functions

void ComputeMetric (UInt_t ifrac)
 compute scale factor for each variable (dimension) so that distance is computed uniformely along each dimension compute width of interval that includes (100 - 2*ifrac)% of events below, assume that in fVar each vector of values is sorted More...
 
MsgLoggerLog () const
 
Node< Event > * Optimize (UInt_t optimize_depth)
 Optimize() balances binary tree for first odepth levels for each depth we split sorted depth % dimension variables into 2^odepth parts. More...
 
const Event Scale (const Event &event) const
 scale each event variable so that rms of variables is approximately 1.0 this allows comparisons of variables with distinct scales and units More...
 

Static Private Member Functions

static TRandom3GetRndmThreadLocal ()
 

Private Attributes

std::map< Short_t, UInt_tfCount
 
UInt_t fDimn
 
EventVec fEvent
 
Event fkNNEvent
 
List fkNNList
 
MsgLoggerfLogger
 
Node< Event > * fTree
 
VarMap fVar
 
std::map< Int_t, Double_tfVarScale
 

#include <TMVA/ModulekNN.h>

Member Typedef Documentation

◆ VarMap

typedef std::map<int, std::vector<Double_t> > TMVA::kNN::ModulekNN::VarMap

Definition at line 115 of file ModulekNN.h.

Constructor & Destructor Documentation

◆ ModulekNN()

TMVA::kNN::ModulekNN::ModulekNN ( )

default constructor

Definition at line 167 of file ModulekNN.cxx.

◆ ~ModulekNN()

TMVA::kNN::ModulekNN::~ModulekNN ( )

destructor

Definition at line 177 of file ModulekNN.cxx.

Member Function Documentation

◆ Add()

void TMVA::kNN::ModulekNN::Add ( const Event event)

add an event to tree

Definition at line 206 of file ModulekNN.cxx.

◆ Clear()

void TMVA::kNN::ModulekNN::Clear ( )

clean up

Definition at line 188 of file ModulekNN.cxx.

◆ ComputeMetric()

void TMVA::kNN::ModulekNN::ComputeMetric ( UInt_t  ifrac)
private

compute scale factor for each variable (dimension) so that distance is computed uniformely along each dimension compute width of interval that includes (100 - 2*ifrac)% of events below, assume that in fVar each vector of values is sorted

Definition at line 536 of file ModulekNN.cxx.

◆ Fill()

Bool_t TMVA::kNN::ModulekNN::Fill ( const UShort_t  odepth,
UInt_t  ifrac,
const std::string &  option = "" 
)

fill the tree

Definition at line 239 of file ModulekNN.cxx.

◆ Find() [1/2]

Bool_t TMVA::kNN::ModulekNN::Find ( Event  event,
UInt_t  nfind = 100,
const std::string &  option = "count" 
) const

find in tree if tree has been filled then search for nfind closest events if metic (fVarScale map) is computed then rescale event variables using previsouly computed width of variable distribution

Definition at line 342 of file ModulekNN.cxx.

◆ Find() [2/2]

Bool_t TMVA::kNN::ModulekNN::Find ( UInt_t  nfind,
const std::string &  option 
) const

find in tree

Definition at line 387 of file ModulekNN.cxx.

◆ GetEventVec()

const EventVec & TMVA::kNN::ModulekNN::GetEventVec ( ) const
inline

Definition at line 220 of file ModulekNN.h.

◆ GetkNNEvent()

const Event & TMVA::kNN::ModulekNN::GetkNNEvent ( ) const
inline

Definition at line 216 of file ModulekNN.h.

◆ GetkNNList()

const List & TMVA::kNN::ModulekNN::GetkNNList ( ) const
inline

Definition at line 212 of file ModulekNN.h.

◆ GetMetric()

const std::map< Int_t, Double_t > & TMVA::kNN::ModulekNN::GetMetric ( ) const
inline

Definition at line 228 of file ModulekNN.h.

◆ GetRndmThreadLocal()

static TRandom3& TMVA::kNN::ModulekNN::GetRndmThreadLocal ( )
inlinestaticprivate

Definition at line 155 of file ModulekNN.h.

◆ GetVarMap()

const ModulekNN::VarMap & TMVA::kNN::ModulekNN::GetVarMap ( ) const
inline

Definition at line 224 of file ModulekNN.h.

◆ Log()

MsgLogger& TMVA::kNN::ModulekNN::Log ( ) const
inlineprivate

Definition at line 172 of file ModulekNN.h.

◆ Optimize()

TMVA::kNN::Node< TMVA::kNN::Event > * TMVA::kNN::ModulekNN::Optimize ( UInt_t  optimize_depth)
private

Optimize() balances binary tree for first odepth levels for each depth we split sorted depth % dimension variables into 2^odepth parts.

Definition at line 443 of file ModulekNN.cxx.

◆ Print() [1/2]

void TMVA::kNN::ModulekNN::Print ( ) const

print

Definition at line 656 of file ModulekNN.cxx.

◆ Print() [2/2]

void TMVA::kNN::ModulekNN::Print ( std::ostream &  os) const

print

Definition at line 664 of file ModulekNN.cxx.

◆ Scale()

const TMVA::kNN::Event TMVA::kNN::ModulekNN::Scale ( const Event event) const
private

scale each event variable so that rms of variables is approximately 1.0 this allows comparisons of variables with distinct scales and units

Definition at line 622 of file ModulekNN.cxx.

Member Data Documentation

◆ fCount

std::map<Short_t, UInt_t> TMVA::kNN::ModulekNN::fCount
private

Definition at line 166 of file ModulekNN.h.

◆ fDimn

UInt_t TMVA::kNN::ModulekNN::fDimn
private

Definition at line 155 of file ModulekNN.h.

◆ fEvent

EventVec TMVA::kNN::ModulekNN::fEvent
private

Definition at line 168 of file ModulekNN.h.

◆ fkNNEvent

Event TMVA::kNN::ModulekNN::fkNNEvent
mutableprivate

Definition at line 164 of file ModulekNN.h.

◆ fkNNList

List TMVA::kNN::ModulekNN::fkNNList
mutableprivate

Definition at line 163 of file ModulekNN.h.

◆ fLogger

MsgLogger* TMVA::kNN::ModulekNN::fLogger
mutableprivate

Definition at line 171 of file ModulekNN.h.

◆ fTree

Node<Event>* TMVA::kNN::ModulekNN::fTree
private

Definition at line 159 of file ModulekNN.h.

◆ fVar

VarMap TMVA::kNN::ModulekNN::fVar
private

Definition at line 169 of file ModulekNN.h.

◆ fVarScale

std::map<Int_t, Double_t> TMVA::kNN::ModulekNN::fVarScale
private

Definition at line 161 of file ModulekNN.h.


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