You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

268 lines
23 KiB

10 months ago
  1. : Parsing option string:
  2. : ... "V:!Silent:Color:DrawProgressBar:AnalysisType=Classification"
  3. : The following options are set:
  4. : - By User:
  5. : V: "True" [Verbose flag]
  6. : Color: "True" [Flag for coloured screen output (default: True, if in batch mode: False)]
  7. : Silent: "False" [Batch mode: boolean silent flag inhibiting any output from TMVA after the creation of the factory class object (default: False)]
  8. : DrawProgressBar: "True" [Draw progress bar to display training, testing and evaluation schedule (default: True)]
  9. : AnalysisType: "Classification" [Set the analysis type (Classification, Regression, Multiclass, Auto) (default: Auto)]
  10. : - Default:
  11. : VerboseLevel: "Info" [VerboseLevel (Debug/Verbose/Info)]
  12. : Transformations: "I" [List of transformations to test; formatting example: "Transformations=I;D;P;U;G,D", for identity, decorrelation, PCA, Uniform and Gaussianisation followed by decorrelation transformations]
  13. : Correlations: "False" [boolean to show correlation in output]
  14. : ROC: "True" [boolean to show ROC in output]
  15. : ModelPersistence: "True" [Option to save the trained model in xml file or using serialization]
  16. DataSetInfo : [MatchNNDataSet] : Added class "Signal"
  17. : Add Tree Signal of type Signal with 7718 events
  18. DataSetInfo : [MatchNNDataSet] : Added class "Background"
  19. : Add Tree Bkg of type Background with 11895204 events
  20. : Dataset[MatchNNDataSet] : Class index : 0 name : Signal
  21. : Dataset[MatchNNDataSet] : Class index : 1 name : Background
  22. Factory : Booking method: matching_mlp
  23. :
  24. : Parsing option string:
  25. : ... "!H:V:TrainingMethod=BP:NeuronType=ReLU:EstimatorType=CE:VarTransform=Norm:NCycles=700:HiddenLayers=N+2,N:TestRate=50:Sampling=1.0:SamplingImportance=1.0:LearningRate=0.02:DecayRate=0.01:!UseRegulator"
  26. : The following options are set:
  27. : - By User:
  28. : <none>
  29. : - Default:
  30. : Boost_num: "0" [Number of times the classifier will be boosted]
  31. : Parsing option string:
  32. : ... "!H:V:TrainingMethod=BP:NeuronType=ReLU:EstimatorType=CE:VarTransform=Norm:NCycles=700:HiddenLayers=N+2,N:TestRate=50:Sampling=1.0:SamplingImportance=1.0:LearningRate=0.02:DecayRate=0.01:!UseRegulator"
  33. : The following options are set:
  34. : - By User:
  35. : NCycles: "700" [Number of training cycles]
  36. : HiddenLayers: "N+2,N" [Specification of hidden layer architecture]
  37. : NeuronType: "ReLU" [Neuron activation function type]
  38. : EstimatorType: "CE" [MSE (Mean Square Estimator) for Gaussian Likelihood or CE(Cross-Entropy) for Bernoulli Likelihood]
  39. : V: "True" [Verbose output (short form of "VerbosityLevel" below - overrides the latter one)]
  40. : VarTransform: "Norm" [List of variable transformations performed before training, e.g., "D_Background,P_Signal,G,N_AllClasses" for: "Decorrelation, PCA-transformation, Gaussianisation, Normalisation, each for the given class of events ('AllClasses' denotes all events of all classes, if no class indication is given, 'All' is assumed)"]
  41. : H: "False" [Print method-specific help message]
  42. : TrainingMethod: "BP" [Train with Back-Propagation (BP), BFGS Algorithm (BFGS), or Genetic Algorithm (GA - slower and worse)]
  43. : LearningRate: "2.000000e-02" [ANN learning rate parameter]
  44. : DecayRate: "1.000000e-02" [Decay rate for learning parameter]
  45. : TestRate: "50" [Test for overtraining performed at each #th epochs]
  46. : Sampling: "1.000000e+00" [Only 'Sampling' (randomly selected) events are trained each epoch]
  47. : SamplingImportance: "1.000000e+00" [ The sampling weights of events in epochs which successful (worse estimator than before) are multiplied with SamplingImportance, else they are divided.]
  48. : UseRegulator: "False" [Use regulator to avoid over-training]
  49. : - Default:
  50. : RandomSeed: "1" [Random seed for initial synapse weights (0 means unique seed for each run; default value '1')]
  51. : NeuronInputType: "sum" [Neuron input function type]
  52. : VerbosityLevel: "Default" [Verbosity level]
  53. : CreateMVAPdfs: "False" [Create PDFs for classifier outputs (signal and background)]
  54. : IgnoreNegWeightsInTraining: "False" [Events with negative weights are ignored in the training (but are included for testing and performance evaluation)]
  55. : EpochMonitoring: "False" [Provide epoch-wise monitoring plots according to TestRate (caution: causes big ROOT output file!)]
  56. : SamplingEpoch: "1.000000e+00" [Sampling is used for the first 'SamplingEpoch' epochs, afterwards, all events are taken for training]
  57. : SamplingTraining: "True" [The training sample is sampled]
  58. : SamplingTesting: "False" [The testing sample is sampled]
  59. : ResetStep: "50" [How often BFGS should reset history]
  60. : Tau: "3.000000e+00" [LineSearch "size step"]
  61. : BPMode: "sequential" [Back-propagation learning mode: sequential or batch]
  62. : BatchSize: "-1" [Batch size: number of events/batch, only set if in Batch Mode, -1 for BatchSize=number_of_events]
  63. : ConvergenceImprove: "1.000000e-30" [Minimum improvement which counts as improvement (<0 means automatic convergence check is turned off)]
  64. : ConvergenceTests: "-1" [Number of steps (without improvement) required for convergence (<0 means automatic convergence check is turned off)]
  65. : UpdateLimit: "10000" [Maximum times of regulator update]
  66. : CalculateErrors: "False" [Calculates inverse Hessian matrix at the end of the training to be able to calculate the uncertainties of an MVA value]
  67. : WeightRange: "1.000000e+00" [Take the events for the estimator calculations from small deviations from the desired value to large deviations only over the weight range]
  68. matching_mlp : [MatchNNDataSet] : Create Transformation "Norm" with events from all classes.
  69. :
  70. : Transformation, Variable selection :
  71. : Input : variable 'chi2' <---> Output : variable 'chi2'
  72. : Input : variable 'teta2' <---> Output : variable 'teta2'
  73. : Input : variable 'distX' <---> Output : variable 'distX'
  74. : Input : variable 'distY' <---> Output : variable 'distY'
  75. : Input : variable 'dSlope' <---> Output : variable 'dSlope'
  76. : Input : variable 'dSlopeY' <---> Output : variable 'dSlopeY'
  77. matching_mlp : Building Network.
  78. : Initializing weights
  79. Factory : Train all methods
  80. : Rebuilding Dataset MatchNNDataSet
  81. : Parsing option string:
  82. : ... "SplitMode=random:V:nTrain_Signal=0:nTrain_Background=20000.0:nTest_Signal=1000.0:nTest_Background=5000.0"
  83. : The following options are set:
  84. : - By User:
  85. : SplitMode: "Random" [Method of picking training and testing events (default: random)]
  86. : nTrain_Signal: "0" [Number of training events of class Signal (default: 0 = all)]
  87. : nTest_Signal: "1000" [Number of test events of class Signal (default: 0 = all)]
  88. : nTrain_Background: "20000" [Number of training events of class Background (default: 0 = all)]
  89. : nTest_Background: "5000" [Number of test events of class Background (default: 0 = all)]
  90. : V: "True" [Verbosity (default: true)]
  91. : - Default:
  92. : MixMode: "SameAsSplitMode" [Method of mixing events of different classes into one dataset (default: SameAsSplitMode)]
  93. : SplitSeed: "100" [Seed for random event shuffling]
  94. : NormMode: "EqualNumEvents" [Overall renormalisation of event-by-event weights used in the training (NumEvents: average weight of 1 per event, independently for signal and background; EqualNumEvents: average weight of 1 per event for signal, and sum of weights for background equal to sum of weights for signal)]
  95. : ScaleWithPreselEff: "False" [Scale the number of requested events by the eff. of the preselection cuts (or not)]
  96. : TrainTestSplit_Signal: "0.000000e+00" [Number of test events of class Signal (default: 0 = all)]
  97. : TrainTestSplit_Background: "0.000000e+00" [Number of test events of class Background (default: 0 = all)]
  98. : VerboseLevel: "Info" [VerboseLevel (Debug/Verbose/Info)]
  99. : Correlations: "True" [Boolean to show correlation output (Default: true)]
  100. : CalcCorrelations: "True" [Compute correlations and also some variable statistics, e.g. min/max (Default: true )]
  101. : Building event vectors for type 2 Signal
  102. : Dataset[MatchNNDataSet] : create input formulas for tree Signal
  103. : Building event vectors for type 2 Background
  104. : Dataset[MatchNNDataSet] : create input formulas for tree Bkg
  105. DataSetFactory : [MatchNNDataSet] : Number of events in input trees
  106. :
  107. :
  108. : Dataset[MatchNNDataSet] : Weight renormalisation mode: "EqualNumEvents": renormalises all event classes ...
  109. : Dataset[MatchNNDataSet] : such that the effective (weighted) number of events in each class is the same
  110. : Dataset[MatchNNDataSet] : (and equals the number of events (entries) given for class=0 )
  111. : Dataset[MatchNNDataSet] : ... i.e. such that Sum[i=1..N_j]{w_i} = N_classA, j=classA, classB, ...
  112. : Dataset[MatchNNDataSet] : ... (note that N_j is the sum of TRAINING events
  113. : Dataset[MatchNNDataSet] : ..... Testing events are not renormalised nor included in the renormalisation factor!)
  114. : Number of training and testing events
  115. : ---------------------------------------------------------------------------
  116. : Signal -- training events : 6718
  117. : Signal -- testing events : 1000
  118. : Signal -- training and testing events: 7718
  119. : Background -- training events : 20000
  120. : Background -- testing events : 5000
  121. : Background -- training and testing events: 25000
  122. :
  123. DataSetInfo : Correlation matrix (Signal):
  124. : --------------------------------------------------------
  125. : chi2 teta2 distX distY dSlope dSlopeY
  126. : chi2: +1.000 -0.083 +0.248 +0.242 +0.206 +0.042
  127. : teta2: -0.083 +1.000 +0.038 +0.508 +0.191 +0.637
  128. : distX: +0.248 +0.038 +1.000 -0.175 +0.681 +0.107
  129. : distY: +0.242 +0.508 -0.175 +1.000 +0.349 +0.484
  130. : dSlope: +0.206 +0.191 +0.681 +0.349 +1.000 +0.349
  131. : dSlopeY: +0.042 +0.637 +0.107 +0.484 +0.349 +1.000
  132. : --------------------------------------------------------
  133. DataSetInfo : Correlation matrix (Background):
  134. : --------------------------------------------------------
  135. : chi2 teta2 distX distY dSlope dSlopeY
  136. : chi2: +1.000 -0.024 +0.242 +0.209 +0.046 +0.055
  137. : teta2: -0.024 +1.000 +0.245 +0.652 +0.371 +0.483
  138. : distX: +0.242 +0.245 +1.000 +0.017 +0.776 +0.198
  139. : distY: +0.209 +0.652 +0.017 +1.000 +0.312 +0.554
  140. : dSlope: +0.046 +0.371 +0.776 +0.312 +1.000 +0.392
  141. : dSlopeY: +0.055 +0.483 +0.198 +0.554 +0.392 +1.000
  142. : --------------------------------------------------------
  143. DataSetFactory : [MatchNNDataSet] :
  144. :
  145. Factory : [MatchNNDataSet] : Create Transformation "I" with events from all classes.
  146. :
  147. : Transformation, Variable selection :
  148. : Input : variable 'chi2' <---> Output : variable 'chi2'
  149. : Input : variable 'teta2' <---> Output : variable 'teta2'
  150. : Input : variable 'distX' <---> Output : variable 'distX'
  151. : Input : variable 'distY' <---> Output : variable 'distY'
  152. : Input : variable 'dSlope' <---> Output : variable 'dSlope'
  153. : Input : variable 'dSlopeY' <---> Output : variable 'dSlopeY'
  154. TFHandler_Factory : Variable Mean RMS [ Min Max ]
  155. : -----------------------------------------------------------
  156. : chi2: 14.879 7.6783 [ 0.35410 29.998 ]
  157. : teta2: 0.0053594 0.015677 [ 5.5206e-06 0.34331 ]
  158. : distX: 74.975 63.347 [ 0.00024414 487.68 ]
  159. : distY: 35.490 43.750 [ 8.3923e-05 497.42 ]
  160. : dSlope: 0.35788 0.24459 [ 6.4602e-05 1.2881 ]
  161. : dSlopeY: 0.0073112 0.012369 [ 3.9814e-08 0.14883 ]
  162. : -----------------------------------------------------------
  163. : Ranking input variables (method unspecific)...
  164. IdTransformation : Ranking result (top variable is best ranked)
  165. : --------------------------------
  166. : Rank : Variable : Separation
  167. : --------------------------------
  168. : 1 : chi2 : 9.921e-02
  169. : 2 : distY : 8.773e-02
  170. : 3 : dSlopeY : 2.784e-02
  171. : 4 : teta2 : 2.748e-02
  172. : 5 : dSlope : 2.662e-02
  173. : 6 : distX : 1.420e-02
  174. : --------------------------------
  175. Factory : Train method: matching_mlp for Classification
  176. :
  177. TFHandler_matching_mlp : Variable Mean RMS [ Min Max ]
  178. : -----------------------------------------------------------
  179. : chi2: -0.020078 0.51803 [ -1.0000 1.0000 ]
  180. : teta2: -0.96881 0.091329 [ -1.0000 1.0000 ]
  181. : distX: -0.69253 0.25979 [ -1.0000 1.0000 ]
  182. : distY: -0.85730 0.17591 [ -1.0000 1.0000 ]
  183. : dSlope: -0.44439 0.37979 [ -1.0000 1.0000 ]
  184. : dSlopeY: -0.90175 0.16622 [ -1.0000 1.0000 ]
  185. : -----------------------------------------------------------
  186. : Training Network
  187. :
  188. : Elapsed time for training with 26718 events: 57.7 sec
  189. matching_mlp : [MatchNNDataSet] : Evaluation of matching_mlp on training sample (26718 events)
  190. : Elapsed time for evaluation of 26718 events: 0.0346 sec
  191. : Creating xml weight file: MatchNNDataSet/weights/TMVAClassification_matching_mlp.weights.xml
  192. : Creating standalone class: MatchNNDataSet/weights/TMVAClassification_matching_mlp.class.C
  193. : Write special histos to file: matching_ghost_mlp_training.root:/MatchNNDataSet/Method_MLP/matching_mlp
  194. Factory : Training finished
  195. :
  196. : Ranking input variables (method specific)...
  197. matching_mlp : Ranking result (top variable is best ranked)
  198. : --------------------------------
  199. : Rank : Variable : Importance
  200. : --------------------------------
  201. : 1 : distY : 1.467e+02
  202. : 2 : teta2 : 6.884e+01
  203. : 3 : distX : 6.627e+01
  204. : 4 : dSlopeY : 3.066e+01
  205. : 5 : dSlope : 1.175e+01
  206. : 6 : chi2 : 2.632e+00
  207. : --------------------------------
  208. Factory : === Destroy and recreate all methods via weight files for testing ===
  209. :
  210. : Reading weight file: MatchNNDataSet/weights/TMVAClassification_matching_mlp.weights.xml
  211. matching_mlp : Building Network.
  212. : Initializing weights
  213. Factory : Test all methods
  214. Factory : Test method: matching_mlp for Classification performance
  215. :
  216. matching_mlp : [MatchNNDataSet] : Evaluation of matching_mlp on testing sample (6000 events)
  217. : Elapsed time for evaluation of 6000 events: 0.0118 sec
  218. Factory : Evaluate all methods
  219. Factory : Evaluate classifier: matching_mlp
  220. :
  221. TFHandler_matching_mlp : Variable Mean RMS [ Min Max ]
  222. : -----------------------------------------------------------
  223. : chi2: 0.10881 0.51711 [ -1.0020 0.99902 ]
  224. : teta2: -0.96093 0.10865 [ -0.99988 0.46950 ]
  225. : distX: -0.67673 0.27337 [ -0.99968 0.75285 ]
  226. : distY: -0.82663 0.20236 [ -0.99997 0.83868 ]
  227. : dSlope: -0.46394 0.38477 [ -0.99839 0.97924 ]
  228. : dSlopeY: -0.89235 0.16561 [ -1.0000 0.93883 ]
  229. : -----------------------------------------------------------
  230. matching_mlp : [MatchNNDataSet] : Loop over test events and fill histograms with classifier response...
  231. :
  232. TFHandler_matching_mlp : Variable Mean RMS [ Min Max ]
  233. : -----------------------------------------------------------
  234. : chi2: 0.10881 0.51711 [ -1.0020 0.99902 ]
  235. : teta2: -0.96093 0.10865 [ -0.99988 0.46950 ]
  236. : distX: -0.67673 0.27337 [ -0.99968 0.75285 ]
  237. : distY: -0.82663 0.20236 [ -0.99997 0.83868 ]
  238. : dSlope: -0.46394 0.38477 [ -0.99839 0.97924 ]
  239. : dSlopeY: -0.89235 0.16561 [ -1.0000 0.93883 ]
  240. : -----------------------------------------------------------
  241. :
  242. : Evaluation results ranked by best signal efficiency and purity (area)
  243. : -------------------------------------------------------------------------------------------------------------------
  244. : DataSet MVA
  245. : Name: Method: ROC-integ
  246. : MatchNNDataSet matching_mlp : 0.842
  247. : -------------------------------------------------------------------------------------------------------------------
  248. :
  249. : Testing efficiency compared to training efficiency (overtraining check)
  250. : -------------------------------------------------------------------------------------------------------------------
  251. : DataSet MVA Signal efficiency: from test sample (from training sample)
  252. : Name: Method: @B=0.01 @B=0.10 @B=0.30
  253. : -------------------------------------------------------------------------------------------------------------------
  254. : MatchNNDataSet matching_mlp : 0.075 (0.082) 0.476 (0.467) 0.841 (0.828)
  255. : -------------------------------------------------------------------------------------------------------------------
  256. :
  257. Dataset:MatchNNDataSet : Created tree 'TestTree' with 6000 events
  258. :
  259. Dataset:MatchNNDataSet : Created tree 'TrainTree' with 26718 events
  260. :
  261. Factory : Thank you for using TMVA!
  262. : For citation information, please visit: http://tmva.sf.net/citeTMVA.html
  263. Transforming nn_electron_training/result/MatchNNDataSet/weights/TMVAClassification_matching_mlp.class.C ...
  264. Found minimum and maximum values for 6 variables.
  265. Found 3 matrices:
  266. 1. fWeightMatrix0to1 with 7 columns and 8 rows
  267. 2. fWeightMatrix1to2 with 9 columns and 6 rows
  268. 3. fWeightMatrix2to3 with 7 columns and 1 rows