ROOT
6.10/09
Reference Guide
tmva
tmva
inc
TMVA
VariableNormalizeTransform.h
Go to the documentation of this file.
1
// @(#)root/tmva $Id$
2
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss
3
4
/**********************************************************************************
5
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
6
* Package: TMVA *
7
* Class : VariableNormalizeTransform *
8
* Web : http://tmva.sourceforge.net *
9
* *
10
* Description: *
11
* Decorrelation of input variables *
12
* *
13
* Authors (alphabetical): *
14
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
15
* Peter Speckmayer <Peter.Speckmayer@cern.ch> - CERN, Switzerland *
16
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
17
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, Germany *
18
* *
19
* Copyright (c) 2005: *
20
* CERN, Switzerland *
21
* U. of Victoria, Canada *
22
* MPI-K Heidelberg, Germany *
23
* *
24
* Redistribution and use in source and binary forms, with or without *
25
* modification, are permitted according to the terms listed in LICENSE *
26
* (http://tmva.sourceforge.net/LICENSE) *
27
**********************************************************************************/
28
29
#ifndef ROOT_TMVA_VariableNormalizeTransform
30
#define ROOT_TMVA_VariableNormalizeTransform
31
32
//////////////////////////////////////////////////////////////////////////
33
// //
34
// VariableNormalizeTransform //
35
// //
36
// Linear interpolation class //
37
// //
38
//////////////////////////////////////////////////////////////////////////
39
40
#include "
TMatrixDfwd.h
"
41
42
#include "
TMVA/VariableTransformBase.h
"
43
44
namespace
TMVA
{
45
46
class
VariableNormalizeTransform
:
public
VariableTransformBase
{
47
48
public
:
49
50
typedef
std::vector<Float_t>
FloatVector
;
51
typedef
std::vector< FloatVector >
VectorOfFloatVectors
;
52
VariableNormalizeTransform
(
DataSetInfo
& dsi );
53
virtual
~VariableNormalizeTransform
(
void
);
54
55
void
Initialize
();
56
Bool_t
PrepareTransformation
(
const
std::vector<Event*>&);
57
58
virtual
const
Event
*
Transform
(
const
Event
*
const
,
Int_t
cls )
const
;
59
virtual
const
Event
*
InverseTransform
(
const
Event
*
const
,
Int_t
cls )
const
;
60
61
void
WriteTransformationToStream
( std::ostream& )
const
;
62
void
ReadTransformationFromStream
( std::istream&,
const
TString
& );
63
void
BuildTransformationFromVarInfo
(
const
std::vector<TMVA::VariableInfo>& var );
64
65
virtual
void
AttachXMLTo
(
void
* parent);
66
virtual
void
ReadFromXML
(
void
* trfnode );
67
68
virtual
void
PrintTransformation
( std::ostream & o );
69
70
// writer of function code
71
virtual
void
MakeFunction
( std::ostream& fout,
const
TString
& fncName,
Int_t
part,
UInt_t
trCounter,
Int_t
cls );
72
73
// provides string vector giving explicit transformation
74
std::vector<TString>*
GetTransformationStrings
(
Int_t
cls )
const
;
75
76
private
:
77
78
void
CalcNormalizationParams
(
const
std::vector< Event*>& events);
79
80
// mutable Event* fTransformedEvent;
81
82
VectorOfFloatVectors
fMin
;
//! Min of source range
83
VectorOfFloatVectors
fMax
;
//! Max of source range
84
85
ClassDef
(
VariableNormalizeTransform
,0);
// Variable transformation: normalization
86
};
87
88
}
// namespace TMVA
89
90
#endif
TMVA::VariableNormalizeTransform::VectorOfFloatVectors
std::vector< FloatVector > VectorOfFloatVectors
Definition:
VariableNormalizeTransform.h:51
TMVA::VariableNormalizeTransform::MakeFunction
virtual void MakeFunction(std::ostream &fout, const TString &fncName, Int_t part, UInt_t trCounter, Int_t cls)
creates a normalizing function TODO include target-transformation into makefunction ...
Definition:
VariableNormalizeTransform.cxx:562
TMVA::VariableNormalizeTransform::Transform
virtual const Event * Transform(const Event *const, Int_t cls) const
apply the normalization transformation
Definition:
VariableNormalizeTransform.cxx:109
TMVA::VariableNormalizeTransform::GetTransformationStrings
std::vector< TString > * GetTransformationStrings(Int_t cls) const
creates string with variable transformations applied
Definition:
VariableNormalizeTransform.cxx:270
TMVA::VariableNormalizeTransform::VariableNormalizeTransform
VariableNormalizeTransform(DataSetInfo &dsi)
constructor
Definition:
VariableNormalizeTransform.cxx:59
TString
Basic string class.
Definition:
TString.h:129
Int_t
int Int_t
Definition:
RtypesCore.h:41
Bool_t
bool Bool_t
Definition:
RtypesCore.h:59
TMVA::VariableNormalizeTransform::CalcNormalizationParams
void CalcNormalizationParams(const std::vector< Event *> &events)
compute offset and scale from min and max
Definition:
VariableNormalizeTransform.cxx:210
TMVA::VariableNormalizeTransform
Linear interpolation class.
Definition:
VariableNormalizeTransform.h:46
ClassDef
#define ClassDef(name, id)
Definition:
Rtypes.h:297
TMVA::DataSetInfo
Class that contains all the data information.
Definition:
DataSetInfo.h:60
TMVA::VariableNormalizeTransform::PrintTransformation
virtual void PrintTransformation(std::ostream &o)
prints the transformation ranges
Definition:
VariableNormalizeTransform.cxx:535
TMVA::VariableNormalizeTransform::fMin
VectorOfFloatVectors fMin
Definition:
VariableNormalizeTransform.h:82
TMVA::VariableNormalizeTransform::PrepareTransformation
Bool_t PrepareTransformation(const std::vector< Event *> &)
prepare transformation
Definition:
VariableNormalizeTransform.cxx:91
TMVA::VariableNormalizeTransform::~VariableNormalizeTransform
virtual ~VariableNormalizeTransform(void)
Definition:
VariableNormalizeTransform.cxx:66
TMVA::VariableTransformBase
Linear interpolation class.
Definition:
VariableTransformBase.h:53
TMVA::VariableNormalizeTransform::AttachXMLTo
virtual void AttachXMLTo(void *parent)
create XML description of Normalize transformation
Definition:
VariableNormalizeTransform.cxx:330
TMVA::Event
Definition:
Event.h:52
UInt_t
unsigned int UInt_t
Definition:
RtypesCore.h:42
TMVA::VariableNormalizeTransform::Initialize
void Initialize()
initialization of the normalization transformation
Definition:
VariableNormalizeTransform.cxx:72
TMVA::VariableNormalizeTransform::BuildTransformationFromVarInfo
void BuildTransformationFromVarInfo(const std::vector< TMVA::VariableInfo > &var)
this method is only used when building a normalization transformation from old text files in this cas...
Definition:
VariableNormalizeTransform.cxx:463
TMVA::VariableNormalizeTransform::fMax
VectorOfFloatVectors fMax
Min of source range.
Definition:
VariableNormalizeTransform.h:83
TMVA::VariableNormalizeTransform::FloatVector
std::vector< Float_t > FloatVector
Definition:
VariableNormalizeTransform.h:50
TMVA::VariableNormalizeTransform::ReadFromXML
virtual void ReadFromXML(void *trfnode)
Read the transformation matrices from the xml node.
Definition:
VariableNormalizeTransform.cxx:356
TMVA
Abstract ClassifierFactory template that handles arbitrary types.
Definition:
GeneticMinimizer.h:21
VariableTransformBase.h
TMVA::VariableNormalizeTransform::WriteTransformationToStream
void WriteTransformationToStream(std::ostream &) const
write the transformation to the stream
Definition:
VariableNormalizeTransform.cxx:305
TMVA::VariableNormalizeTransform::InverseTransform
virtual const Event * InverseTransform(const Event *const, Int_t cls) const
apply the inverse transformation
Definition:
VariableNormalizeTransform.cxx:165
TMatrixDfwd.h
TMVA::VariableNormalizeTransform::ReadTransformationFromStream
void ReadTransformationFromStream(std::istream &, const TString &)
Read the variable ranges from an input stream.
Definition:
VariableNormalizeTransform.cxx:492