ATLAS Offline Software
Loading...
Searching...
No Matches
python.Class_FeatureHandler.FeatureHandler Class Reference
Collaboration diagram for python.Class_FeatureHandler.FeatureHandler:

Public Member Functions

 getFeatureNames (self)
 getFeatureTypes (self)
 getFeatureDefaultValues (self)
 addToFeatures (self, theBaseName, theVarTypeName, theFeatureType, defaultValueOverride=0)
 addToFeatures_FullName (self, completeFeatureName, theVarTypeName, theFeatureType, defaultValueOverride=0)
 addToFeatures_AllTypes (self, theBaseName, theVarTypeName, theFeatureType, defaultValueOverride=0)
 addToFeatures_AllTypes_AllEnergyVariants (self, theBaseName, theVarTypeName, theFeatureType, defaultValueOverride=0)
 __init__ (self)
 dump (self)
 addSingleVariables (self)
 addMultiplicities (self)
 addTypeSpecificFeatures_PID (self)
 addTypeSpecificFeatures_Shots (self)
 addTypeSpecificFeatures_Ratios (self)
 addTypeSpecificFeatures_StdDevs (self)
 addTypeSpecificFeatures_HLV (self)
 addTypeSpecificFeatures_JetMoment (self)
 addCombinedFeatures_TypeVsType (self)

Public Attributes

dict m_Feature_Names
dict m_Feature_Types
dict m_Feature_Defaults
list m_ConstituentTypes
list m_EnergyVariantsList
str m_VarTypeName_Ratio = "Ratio"
str m_VarTypeName_Mean = "Mean"
str m_VarTypeName_StdDev = "StdDev"
str m_VarTypeName_HLV = "HLV"
str m_VarTypeName_DeltaR = "DeltaR"
str m_VarTypeName_JetMoment = "JetMoment"
str m_VarTypeName_Combined = "Combined"
str m_VarTypeName_Basic = "Basic"
str m_VarTypeName_PID = "PID"
str m_VarTypeName_Shots = "Shots"
dict m_DefaultValues = {}
str m_ConstituentTypeName_All = "All"
str m_ConstituentTypeName_Charged = "Charged"
str m_ConstituentTypeName_Neutral = "Neutral"
str m_ConstituentTypeName_Pi0Neut = "Pi0Neut"

Detailed Description

Definition at line 5 of file Class_FeatureHandler.py.

Constructor & Destructor Documentation

◆ __init__()

python.Class_FeatureHandler.FeatureHandler.__init__ ( self)

Definition at line 84 of file Class_FeatureHandler.py.

84 def __init__(self):
85
86 #setup the varType prefixes
87 # they are passed to the feature extractor later on - avoids errors due to typos
88 self.m_VarTypeName_Ratio = "Ratio"
89 self.m_VarTypeName_Mean = "Mean"
90 self.m_VarTypeName_StdDev = "StdDev"
91 self.m_VarTypeName_HLV = "HLV"
92 self.m_VarTypeName_DeltaR = "DeltaR"
93 self.m_VarTypeName_JetMoment = "JetMoment"
94 self.m_VarTypeName_Combined = "Combined"
95 self.m_VarTypeName_Basic = "Basic"
96 self.m_VarTypeName_PID = "PID"
97 self.m_VarTypeName_Shots = "Shots"
98
99 #setup the default values for the different variable types
100 self.m_DefaultValues = {}
101 self.m_DefaultValues[self.m_VarTypeName_Ratio] = -0.2
102 self.m_DefaultValues[self.m_VarTypeName_Mean] = -0.2
103 self.m_DefaultValues[self.m_VarTypeName_StdDev] = -0.2
104 self.m_DefaultValues[self.m_VarTypeName_HLV] = -4000.0
105 self.m_DefaultValues[self.m_VarTypeName_DeltaR] = -0.2
106 self.m_DefaultValues[self.m_VarTypeName_JetMoment] = -0.2
107 self.m_DefaultValues[self.m_VarTypeName_Combined] = -10.0
108 self.m_DefaultValues[self.m_VarTypeName_Basic] = -5.0
109 self.m_DefaultValues[self.m_VarTypeName_PID] = -9.0
110 self.m_DefaultValues[self.m_VarTypeName_Shots] = -2.0
111
112 #setup the constituent types
113 self.m_ConstituentTypeName_All = "All"
114 self.m_ConstituentTypeName_Charged = "Charged"
115 self.m_ConstituentTypeName_Neutral = "Neutral"
116 self.m_ConstituentTypeName_Pi0Neut = "Pi0Neut"
117
118 self.m_ConstituentTypes = []
119 #baseline
120 self.m_ConstituentTypes += [self.m_ConstituentTypeName_Charged]
121 self.m_ConstituentTypes += [self.m_ConstituentTypeName_Neutral]
122 self.m_ConstituentTypes += [self.m_ConstituentTypeName_Pi0Neut]
123
124 self.m_EnergyVariantsList = ["EtAllConsts"]
125 # ==============================================
126
127
128 #setup member variables to hold feature info
129 self.m_Feature_Names = {}
130 self.m_Feature_Defaults = {}
131 self.m_Feature_Types = {}
132
133 #fill member variables
134 self.addSingleVariables()
135 self.addMultiplicities()
136 self.addTypeSpecificFeatures_PID()
137 self.addTypeSpecificFeatures_Shots()
138 self.addTypeSpecificFeatures_Ratios()
139 self.addTypeSpecificFeatures_StdDevs()
140 self.addTypeSpecificFeatures_HLV()
141 self.addTypeSpecificFeatures_JetMoment()
142 self.addCombinedFeatures_TypeVsType()
143

Member Function Documentation

◆ addCombinedFeatures_TypeVsType()

python.Class_FeatureHandler.FeatureHandler.addCombinedFeatures_TypeVsType ( self)

Definition at line 255 of file Class_FeatureHandler.py.

255 def addCombinedFeatures_TypeVsType(self):
256 Types = []
257 Types += ["Charged"]
258 Types += ["Neutral"]
259 Types += ["Pi0Neut"]
260
261 Variables = []
262 Variables += [ ["Log", "EtOver", "Et"] ]
263 Variables += [ ["DeltaR1st", "To1st", ""] ]
264 for iType in Types:
265 for jType in Types:
266
267 #skip if types are equal
268 if iType == jType:
269 continue
270
271 for iVar in Variables:
272 featName = iVar[0] + iType + iVar[1] + jType + iVar[2]
273 #if iVar[2] != "-":
274 #featName = featName + iVar[2]
275 self.addToFeatures(featName, self.m_VarTypeName_Combined, "F")
276 #end loop over variables
277 #end loop over jType
278 #end loop over iType

◆ addMultiplicities()

python.Class_FeatureHandler.FeatureHandler.addMultiplicities ( self)

Definition at line 179 of file Class_FeatureHandler.py.

179 def addMultiplicities(self):
180 Variables = self.m_ConstituentTypes
181
182 for iVar in Variables:
183 featName = "N" + iVar + "Consts"
184 self.addToFeatures(featName, self.m_VarTypeName_Basic, "F")
185 #end loop over variables
186
187 #add the inclusive one
188 self.addToFeatures("N" + self.m_ConstituentTypeName_All + "Consts", self.m_VarTypeName_Basic, "F")
189

◆ addSingleVariables()

python.Class_FeatureHandler.FeatureHandler.addSingleVariables ( self)

Definition at line 160 of file Class_FeatureHandler.py.

160 def addSingleVariables(self):
161 Variables = []
162 Variables += ["isPanTauCandidate"]
163 Variables += ["RecoMode"]
164 Variables += ["RecoMode_PanTau"]
165 Variables += ["BDTValue_1p0n_vs_1p1n"]
166 Variables += ["BDTValue_1p1n_vs_1pXn"]
167 Variables += ["BDTValue_3p0n_vs_3pXn"]
168 for iVar in Variables:
169 curDefVal = self.m_DefaultValues[self.m_VarTypeName_Basic]
170 if iVar == "isPanTauCandidate":
171 curDefVal = 0
172 if iVar == "RecoMode" or iVar == "RecoMode_PanTau":
173 curDefVal = -10
174 self.addToFeatures(iVar, self.m_VarTypeName_Basic, "F", curDefVal)
175 #end loop over variables

◆ addToFeatures()

python.Class_FeatureHandler.FeatureHandler.addToFeatures ( self,
theBaseName,
theVarTypeName,
theFeatureType,
defaultValueOverride = 0 )
Add a single feature with given name, type and default value 

Definition at line 28 of file Class_FeatureHandler.py.

28 def addToFeatures(self, theBaseName, theVarTypeName, theFeatureType, defaultValueOverride=0):
29 """ Add a single feature with given name, type and default value """
30
31 #set feature name and default value
32 featureName = theVarTypeName + "_" + theBaseName
33 defaultValue = self.m_DefaultValues[theVarTypeName]
34 if defaultValueOverride != 0:
35 defaultValue = defaultValueOverride
36
37 #add to features
38 self.m_Feature_Names[featureName] = featureName
39 self.m_Feature_Defaults[featureName] = defaultValue
40 self.m_Feature_Types[featureName] = theFeatureType

◆ addToFeatures_AllTypes()

python.Class_FeatureHandler.FeatureHandler.addToFeatures_AllTypes ( self,
theBaseName,
theVarTypeName,
theFeatureType,
defaultValueOverride = 0 )
Add the feature described by theName, theType and theDefault for all known constituent types

Definition at line 57 of file Class_FeatureHandler.py.

57 def addToFeatures_AllTypes(self, theBaseName, theVarTypeName, theFeatureType, defaultValueOverride=0):
58 """ Add the feature described by theName, theType and theDefault for all known constituent types"""
59
60 #set default value
61 defaultValue = self.m_DefaultValues[theVarTypeName]
62 if defaultValueOverride != 0:
63 defaultValue = defaultValueOverride
64
65 #fill feature for all types
66 for iConstType in self.m_ConstituentTypes:
67 featureName = iConstType + "_" + theVarTypeName + "_" + theBaseName
68
69 self.m_Feature_Names[featureName] = featureName
70 self.m_Feature_Defaults[featureName] = defaultValue
71 self.m_Feature_Types[featureName] = theFeatureType
72 #end loop over types

◆ addToFeatures_AllTypes_AllEnergyVariants()

python.Class_FeatureHandler.FeatureHandler.addToFeatures_AllTypes_AllEnergyVariants ( self,
theBaseName,
theVarTypeName,
theFeatureType,
defaultValueOverride = 0 )
Add the feature described by theName, theType and theDefault for all known constituent types

Definition at line 76 of file Class_FeatureHandler.py.

76 def addToFeatures_AllTypes_AllEnergyVariants(self, theBaseName, theVarTypeName, theFeatureType, defaultValueOverride=0):
77 """ Add the feature described by theName, theType and theDefault for all known constituent types"""
78 for iEnergyType in self.m_EnergyVariantsList:
79 featureName = theBaseName + iEnergyType
80 self.addToFeatures_AllTypes(featureName, theVarTypeName, theFeatureType, defaultValueOverride)
81 #end loop over energy types

◆ addToFeatures_FullName()

python.Class_FeatureHandler.FeatureHandler.addToFeatures_FullName ( self,
completeFeatureName,
theVarTypeName,
theFeatureType,
defaultValueOverride = 0 )

Definition at line 43 of file Class_FeatureHandler.py.

43 def addToFeatures_FullName(self, completeFeatureName, theVarTypeName, theFeatureType, defaultValueOverride=0):
44 #set feature name and default value
45 featureName = completeFeatureName
46 defaultValue = self.m_DefaultValues[theVarTypeName]
47 if defaultValueOverride != 0:
48 defaultValue = defaultValueOverride
49
50 #add to features
51 self.m_Feature_Names[featureName] = featureName
52 self.m_Feature_Defaults[featureName] = defaultValue
53 self.m_Feature_Types[featureName] = theFeatureType

◆ addTypeSpecificFeatures_HLV()

python.Class_FeatureHandler.FeatureHandler.addTypeSpecificFeatures_HLV ( self)

Definition at line 238 of file Class_FeatureHandler.py.

238 def addTypeSpecificFeatures_HLV(self):
239 Variables = []
240 Variables += ["SumM"]
241 for iVar in Variables:
242 self.addToFeatures_AllTypes(iVar, self.m_VarTypeName_HLV, "F", -200.)
243
244 #end loop over variables

◆ addTypeSpecificFeatures_JetMoment()

python.Class_FeatureHandler.FeatureHandler.addTypeSpecificFeatures_JetMoment ( self)

Definition at line 247 of file Class_FeatureHandler.py.

247 def addTypeSpecificFeatures_JetMoment(self):
248 Variables = []
249 Variables += ["EtDRxTotalEt"]
250 for iVar in Variables:
251 self.addToFeatures_AllTypes(iVar, self.m_VarTypeName_JetMoment, "F")
252 #end loop over variables

◆ addTypeSpecificFeatures_PID()

python.Class_FeatureHandler.FeatureHandler.addTypeSpecificFeatures_PID ( self)

Definition at line 192 of file Class_FeatureHandler.py.

192 def addTypeSpecificFeatures_PID(self):
193 Variables = ["BDTValues"]
194
195 MaxNum = 4
196
197 for iVar in Variables:
198 for iNum in range(1, MaxNum):
199 featName = iVar + "_BDTSort_" + str(iNum)
200 self.addToFeatures_AllTypes(featName, self.m_VarTypeName_PID, "F")
201 #end loop over num
202 #end loop over variables

◆ addTypeSpecificFeatures_Ratios()

python.Class_FeatureHandler.FeatureHandler.addTypeSpecificFeatures_Ratios ( self)

Definition at line 219 of file Class_FeatureHandler.py.

219 def addTypeSpecificFeatures_Ratios(self):
220
221 Variables_WithEnergyTypes = []
222 Variables_WithEnergyTypes += ["EtOver"]
223 Variables_WithEnergyTypes += ["1stBDTEtOver"]
224 for iVar in Variables_WithEnergyTypes:
225 self.addToFeatures_AllTypes_AllEnergyVariants(iVar, self.m_VarTypeName_Ratio, "F")
226 #end loop over variables with energy types

◆ addTypeSpecificFeatures_Shots()

python.Class_FeatureHandler.FeatureHandler.addTypeSpecificFeatures_Shots ( self)

Definition at line 206 of file Class_FeatureHandler.py.

206 def addTypeSpecificFeatures_Shots(self):
207
208 Variables = []
209 Variables += ["NPhotonsInSeed"]
210 for iVar in Variables:
211 featName = iVar
212 curDefVal = self.m_DefaultValues[self.m_VarTypeName_Shots]
213
214 self.addToFeatures_FullName(self.m_ConstituentTypeName_Neutral + "_" + self.m_VarTypeName_Shots + "_" + featName, self.m_VarTypeName_Shots, "F", curDefVal)
215 self.addToFeatures_FullName(self.m_ConstituentTypeName_Pi0Neut + "_" + self.m_VarTypeName_Shots + "_" + featName, self.m_VarTypeName_Shots, "F", curDefVal)
216 #end loop over variables

◆ addTypeSpecificFeatures_StdDevs()

python.Class_FeatureHandler.FeatureHandler.addTypeSpecificFeatures_StdDevs ( self)

Definition at line 229 of file Class_FeatureHandler.py.

229 def addTypeSpecificFeatures_StdDevs(self):
230
231 Variables_WithEnergyTypes = []
232 Variables_WithEnergyTypes += ["Et_Wrt"]
233 for iVar in Variables_WithEnergyTypes:
234 self.addToFeatures_AllTypes_AllEnergyVariants(iVar, self.m_VarTypeName_StdDev, "F")

◆ dump()

python.Class_FeatureHandler.FeatureHandler.dump ( self)

Definition at line 147 of file Class_FeatureHandler.py.

147 def dump(self):
148 print("config_FeatureCalculator: Dumping features:")
149 for iFeature in sorted(self.m_Feature_Names.iterkeys()):
150 featName = self.m_Feature_Names[iFeature]
151 featType = self.m_Feature_Types[iFeature]
152 featDefault = self.m_Feature_Defaults[iFeature]
153 print("\t" + string.ljust(featName, 50) + " of type " + featType + " defaults to " + string.rjust(str(featDefault), 10) )
154 #print("\t" + featName + " of type " + featType + " defaults to " + str(featDefault) )
155 #end for over features
156 print("config_FeatureCalculator: Done dumping features")
void print(char *figname, TCanvas *c1)
-event-from-file

◆ getFeatureDefaultValues()

python.Class_FeatureHandler.FeatureHandler.getFeatureDefaultValues ( self)

Definition at line 21 of file Class_FeatureHandler.py.

21 def getFeatureDefaultValues(self):
22 listFeatDefaults = []
23 for iFeature in self.m_Feature_Defaults:
24 listFeatDefaults += [self.m_Feature_Defaults[iFeature]]
25 return listFeatDefaults

◆ getFeatureNames()

python.Class_FeatureHandler.FeatureHandler.getFeatureNames ( self)

Definition at line 7 of file Class_FeatureHandler.py.

7 def getFeatureNames(self):
8 listFeatNames = []
9 for iFeature in self.m_Feature_Names:
10 listFeatNames += [self.m_Feature_Names[iFeature]]
11 return listFeatNames

◆ getFeatureTypes()

python.Class_FeatureHandler.FeatureHandler.getFeatureTypes ( self)

Definition at line 14 of file Class_FeatureHandler.py.

14 def getFeatureTypes(self):
15 listFeatTypes = []
16 for iFeature in self.m_Feature_Types:
17 listFeatTypes += [self.m_Feature_Types[iFeature]]
18 return listFeatTypes

Member Data Documentation

◆ m_ConstituentTypeName_All

str python.Class_FeatureHandler.FeatureHandler.m_ConstituentTypeName_All = "All"

Definition at line 113 of file Class_FeatureHandler.py.

◆ m_ConstituentTypeName_Charged

str python.Class_FeatureHandler.FeatureHandler.m_ConstituentTypeName_Charged = "Charged"

Definition at line 114 of file Class_FeatureHandler.py.

◆ m_ConstituentTypeName_Neutral

str python.Class_FeatureHandler.FeatureHandler.m_ConstituentTypeName_Neutral = "Neutral"

Definition at line 115 of file Class_FeatureHandler.py.

◆ m_ConstituentTypeName_Pi0Neut

str python.Class_FeatureHandler.FeatureHandler.m_ConstituentTypeName_Pi0Neut = "Pi0Neut"

Definition at line 116 of file Class_FeatureHandler.py.

◆ m_ConstituentTypes

list python.Class_FeatureHandler.FeatureHandler.m_ConstituentTypes

Definition at line 66 of file Class_FeatureHandler.py.

◆ m_DefaultValues

dict python.Class_FeatureHandler.FeatureHandler.m_DefaultValues = {}

Definition at line 100 of file Class_FeatureHandler.py.

◆ m_EnergyVariantsList

list python.Class_FeatureHandler.FeatureHandler.m_EnergyVariantsList

Definition at line 78 of file Class_FeatureHandler.py.

◆ m_Feature_Defaults

dict python.Class_FeatureHandler.FeatureHandler.m_Feature_Defaults

Definition at line 23 of file Class_FeatureHandler.py.

◆ m_Feature_Names

dict python.Class_FeatureHandler.FeatureHandler.m_Feature_Names

Definition at line 9 of file Class_FeatureHandler.py.

◆ m_Feature_Types

dict python.Class_FeatureHandler.FeatureHandler.m_Feature_Types

Definition at line 16 of file Class_FeatureHandler.py.

◆ m_VarTypeName_Basic

python.Class_FeatureHandler.FeatureHandler.m_VarTypeName_Basic = "Basic"

Definition at line 95 of file Class_FeatureHandler.py.

◆ m_VarTypeName_Combined

python.Class_FeatureHandler.FeatureHandler.m_VarTypeName_Combined = "Combined"

Definition at line 94 of file Class_FeatureHandler.py.

◆ m_VarTypeName_DeltaR

str python.Class_FeatureHandler.FeatureHandler.m_VarTypeName_DeltaR = "DeltaR"

Definition at line 92 of file Class_FeatureHandler.py.

◆ m_VarTypeName_HLV

python.Class_FeatureHandler.FeatureHandler.m_VarTypeName_HLV = "HLV"

Definition at line 91 of file Class_FeatureHandler.py.

◆ m_VarTypeName_JetMoment

python.Class_FeatureHandler.FeatureHandler.m_VarTypeName_JetMoment = "JetMoment"

Definition at line 93 of file Class_FeatureHandler.py.

◆ m_VarTypeName_Mean

str python.Class_FeatureHandler.FeatureHandler.m_VarTypeName_Mean = "Mean"

Definition at line 89 of file Class_FeatureHandler.py.

◆ m_VarTypeName_PID

python.Class_FeatureHandler.FeatureHandler.m_VarTypeName_PID = "PID"

Definition at line 96 of file Class_FeatureHandler.py.

◆ m_VarTypeName_Ratio

python.Class_FeatureHandler.FeatureHandler.m_VarTypeName_Ratio = "Ratio"

Definition at line 88 of file Class_FeatureHandler.py.

◆ m_VarTypeName_Shots

python.Class_FeatureHandler.FeatureHandler.m_VarTypeName_Shots = "Shots"

Definition at line 97 of file Class_FeatureHandler.py.

◆ m_VarTypeName_StdDev

python.Class_FeatureHandler.FeatureHandler.m_VarTypeName_StdDev = "StdDev"

Definition at line 90 of file Class_FeatureHandler.py.


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