Difference: AtlasDataAnalysis (85 vs. 86)

Revision 862011-02-27 - AlistairGemmell

Line: 1 to 1
 
META TOPICPARENT name="WebHome"
<-- p { margin-bottom: 0.21cm; }h1 { margin-bottom: 0.21cm; }h1.western { font-family: "Liberation Serif",serif; }h1.cjk { font-family: "DejaVu Sans"; }h1.ctl { font-family: "DejaVu Sans"; }h2 { margin-bottom: 0.21cm; }h4 { margin-bottom: 0.21cm; }h5 { margin-bottom: 0.21cm; }h3 { margin-bottom: 0.21cm; }h3.western { font-family: "Liberation Serif",serif; }h3.cjk { font-family: "DejaVu Sans"; }h3.ctl { font-family: "DejaVu Sans"; }pre.cjk { font-family: "DejaVu Sans",monospace; }a:link { } -->

Computentp, Neural Nets and MCLIMITS

Line: 395 to 395
 

Filters

Changed:
<
<
It is possible for the inputs to the ANN to have more events in than those that you want to pass to on for processing. We only want to train the ANN on those samples that would pass our preselection cuts and have 'sensible states'. The preselection cuts are easy enough to understand - they merely clean the sample - events which fail these are set to zero. However, it is possible for some events to have pass the cuts, but still not be anything like that which we would want (e.g. there is no way to reconstruct a top with a realistic mass). Seeing as it is likely that the backgrounds have more of these non-sensible states, to include them would be to give the ANN an unfair advantage in determining signal from background. But we don't want to simply set them equal to zero, as at other times we are going to be interested in how events passing preselection can fail to have sensible states, and so will want to examine them further. We therefore have filters so that Computentp and the ANN only look at events of our choosing. These filters take the place of various bitwise tests in genemflat_batch_Complete2.sh and TreeSpecATLAStth.txt.

The constraint

GeneralParameter string 1 Constraint=(my_failEvent&3)==0

in genemflat_batch_Complete2.sh controls the events used in the training, using a bitwise comparison. If the constraint is true (i.e. the first to bits are not set, and are equal to zero), then the event is used for training.

If USEHILOSB is set to 1 then && must be appended to cut criteria, e.g. GeneralParameter string 1 Constraint=(my_failEvent&65536)==0&&. This is because USEHILOSB adds more constraints.

>
>
It is possible for the inputs to the ANN to have more events in than those that you want to pass to on for processing. We only want to train the ANN on those samples that would pass our preselection cuts and have 'sensible states'. The preselection cuts are easy enough to understand - they merely clean the sample - events which fail these are set to zero. However, it is possible for some events to have pass the cuts, but still not be anything like that which we would want (e.g. there is no way to reconstruct a top with a realistic mass). Seeing as it is likely that the backgrounds have more of these non-sensible states, to include them would be to give the ANN an unfair advantage in determining signal from background. But we don't want to simply set them equal to zero, as at other times we are going to be interested in how events passing preselection can fail to have sensible states, and so will want to examine them further. We therefore have filters so that Computentp and the ANN only look at events of our choosing. These filters take the place of various bitwise tests in genemflat_batch_Complete2.sh (not currently used, as explained below) and TreeSpecATLAStth.txt.
  In TreeSpecATLAStth.txt the filters control what is used for the templating, and Computentp:
Line: 412 to 404
  InvertWord is used to invert the relevant bits (in this case no bits are inverted) before the cut from cutMask is applied. The cutMask will exclude from templating those events where the matching bits are equal to zero AFTER the inversion. So here, with no inversion applied, those events with my_failEvent == 3 will be used for templating.
Changed:
<
<
**NOTE** The above example is inconsistent - the Constraint excludes those that have my_failEvent==3, while the InvertWord/CutMask excludes those that have my_failEvent!=3. This requires some working out to make sure everything works, and is ongoing....
>
>
The constraint

GeneralParameter string 1 Constraint=(my_failEvent&3)==3

in genemflat_batch_Complete2.sh controls the events used in the training, using a bitwise comparison. If the constraint is true (i.e. the first to bits are not set, and are equal to zero), then the event is used for training. This filter is not used currently, as training of the net takes place based on the Computentp output - this Computentp output only contains sensible states (as specified in the TreeSpecATLAStth.txt file's filter). If further filtering is required, then care must be taken to ensure that my_failEvent (or whatever you wish to base your filter on) is specified in the VariableTreeToNTP file, so that Computentp will copy it into its output.

If USEHILOSB is set to 1 then && must be appended to cut criteria, e.g. GeneralParameter string 1 Constraint=(my_failEvent&65536)==0&&. This is because USEHILOSB adds more constraints.

 

Running

 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback