Definition at line 103 of file ModulekNN.h.
Public Types | |
typedef std::map< int, std::vector< Double_t > > | VarMap |
Public Member Functions | |
ModulekNN () | |
default constructor | |
~ModulekNN () | |
destructor | |
void | Add (const Event &event) |
add an event to tree | |
void | Clear () |
clean up | |
Bool_t | Fill (const UShort_t odepth, UInt_t ifrac, const std::string &option="") |
fill the tree | |
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 previously computed width of variable distribution | |
Bool_t | Find (UInt_t nfind, const std::string &option) const |
find in tree | |
const EventVec & | GetEventVec () const |
const Event & | GetkNNEvent () const |
const List & | GetkNNList () const |
const std::map< Int_t, Double_t > & | GetMetric () const |
const VarMap & | GetVarMap () const |
void | Print () const |
print | |
void | Print (std::ostream &os) const |
print | |
Private Member Functions | |
void | ComputeMetric (UInt_t ifrac) |
compute scale factor for each variable (dimension) so that distance is computed uniformly 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 | |
MsgLogger & | Log () 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. | |
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 | |
Static Private Member Functions | |
static TRandom3 & | GetRndmThreadLocal () |
Private Attributes | |
std::map< Short_t, UInt_t > | fCount |
UInt_t | fDimn |
EventVec | fEvent |
Event | fkNNEvent |
List | fkNNList |
MsgLogger * | fLogger |
Node< Event > * | fTree |
VarMap | fVar |
std::map< Int_t, Double_t > | fVarScale |
#include <TMVA/ModulekNN.h>
typedef std::map<int, std::vector<Double_t> > TMVA::kNN::ModulekNN::VarMap |
Definition at line 107 of file ModulekNN.h.
TMVA::kNN::ModulekNN::ModulekNN | ( | ) |
default constructor
Definition at line 173 of file ModulekNN.cxx.
TMVA::kNN::ModulekNN::~ModulekNN | ( | ) |
destructor
Definition at line 183 of file ModulekNN.cxx.
add an event to tree
Definition at line 212 of file ModulekNN.cxx.
void TMVA::kNN::ModulekNN::Clear | ( | ) |
clean up
Definition at line 194 of file ModulekNN.cxx.
compute scale factor for each variable (dimension) so that distance is computed uniformly 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 542 of file ModulekNN.cxx.
Bool_t TMVA::kNN::ModulekNN::Fill | ( | const UShort_t | odepth, |
UInt_t | ifrac, | ||
const std::string & | option = "" |
||
) |
fill the tree
Definition at line 245 of file ModulekNN.cxx.
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 previously computed width of variable distribution
Definition at line 348 of file ModulekNN.cxx.
find in tree
Definition at line 393 of file ModulekNN.cxx.
|
inline |
Definition at line 212 of file ModulekNN.h.
|
inline |
Definition at line 208 of file ModulekNN.h.
|
inline |
Definition at line 204 of file ModulekNN.h.
Definition at line 220 of file ModulekNN.h.
|
inlinestaticprivate |
Definition at line 147 of file ModulekNN.h.
|
inline |
Definition at line 216 of file ModulekNN.h.
|
inlineprivate |
Definition at line 164 of file ModulekNN.h.
|
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 449 of file ModulekNN.cxx.
void TMVA::kNN::ModulekNN::Print | ( | ) | const |
Definition at line 662 of file ModulekNN.cxx.
void TMVA::kNN::ModulekNN::Print | ( | std::ostream & | os | ) | const |
Definition at line 670 of file ModulekNN.cxx.
|
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 628 of file ModulekNN.cxx.
Definition at line 158 of file ModulekNN.h.
|
private |
Definition at line 149 of file ModulekNN.h.
|
private |
Definition at line 160 of file ModulekNN.h.
|
mutableprivate |
Definition at line 156 of file ModulekNN.h.
|
mutableprivate |
Definition at line 155 of file ModulekNN.h.
|
mutableprivate |
Definition at line 163 of file ModulekNN.h.
Definition at line 151 of file ModulekNN.h.
|
private |
Definition at line 161 of file ModulekNN.h.
Definition at line 153 of file ModulekNN.h.