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.

280 lines
24 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 2175608 events
  18. DataSetInfo : [MatchNNDataSet] : Added class "Background"
  19. : Add Tree Bkg of type Background with 14040318 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=50000.0:nTrain_Background=500000.0:nTest_Signal=20000.0:nTest_Background=100000.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: "50000" [Number of training events of class Signal (default: 0 = all)]
  87. : nTest_Signal: "20000" [Number of test events of class Signal (default: 0 = all)]
  88. : nTrain_Background: "500000" [Number of training events of class Background (default: 0 = all)]
  89. : nTest_Background: "100000" [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. : Dataset[MatchNNDataSet] : Signal requirement: "chi2<15 && distX<250 && distY<400 && dSlope<1.5 && dSlopeY<0.15"
  107. : Dataset[MatchNNDataSet] : Signal -- number of events passed: 2151182 / sum of weights: 2.15118e+06
  108. : Dataset[MatchNNDataSet] : Signal -- efficiency : 0.988773
  109. : Dataset[MatchNNDataSet] : Background requirement: "chi2<15 && distX<250 && distY<400 && dSlope<1.5 && dSlopeY<0.15"
  110. : Dataset[MatchNNDataSet] : Background -- number of events passed: 7175761 / sum of weights: 7.17576e+06
  111. : Dataset[MatchNNDataSet] : Background -- efficiency : 0.511083
  112. : Dataset[MatchNNDataSet] : you have opted for interpreting the requested number of training/testing events
  113. : to be the number of events AFTER your preselection cuts
  114. :
  115. : Dataset[MatchNNDataSet] : you have opted for interpreting the requested number of training/testing events
  116. : to be the number of events AFTER your preselection cuts
  117. :
  118. : Dataset[MatchNNDataSet] : Weight renormalisation mode: "EqualNumEvents": renormalises all event classes ...
  119. : Dataset[MatchNNDataSet] : such that the effective (weighted) number of events in each class is the same
  120. : Dataset[MatchNNDataSet] : (and equals the number of events (entries) given for class=0 )
  121. : Dataset[MatchNNDataSet] : ... i.e. such that Sum[i=1..N_j]{w_i} = N_classA, j=classA, classB, ...
  122. : Dataset[MatchNNDataSet] : ... (note that N_j is the sum of TRAINING events
  123. : Dataset[MatchNNDataSet] : ..... Testing events are not renormalised nor included in the renormalisation factor!)
  124. : Number of training and testing events
  125. : ---------------------------------------------------------------------------
  126. : Signal -- training events : 50000
  127. : Signal -- testing events : 20000
  128. : Signal -- training and testing events: 70000
  129. : Dataset[MatchNNDataSet] : Signal -- due to the preselection a scaling factor has been applied to the numbers of requested events: 0.988773
  130. : Background -- training events : 500000
  131. : Background -- testing events : 100000
  132. : Background -- training and testing events: 600000
  133. : Dataset[MatchNNDataSet] : Background -- due to the preselection a scaling factor has been applied to the numbers of requested events: 0.511083
  134. :
  135. DataSetInfo : Correlation matrix (Signal):
  136. : --------------------------------------------------------
  137. : chi2 teta2 distX distY dSlope dSlopeY
  138. : chi2: +1.000 +0.197 +0.512 +0.603 +0.392 +0.418
  139. : teta2: +0.197 +1.000 +0.456 +0.649 +0.399 +0.581
  140. : distX: +0.512 +0.456 +1.000 +0.445 +0.555 +0.606
  141. : distY: +0.603 +0.649 +0.445 +1.000 +0.529 +0.568
  142. : dSlope: +0.392 +0.399 +0.555 +0.529 +1.000 +0.647
  143. : dSlopeY: +0.418 +0.581 +0.606 +0.568 +0.647 +1.000
  144. : --------------------------------------------------------
  145. DataSetInfo : Correlation matrix (Background):
  146. : --------------------------------------------------------
  147. : chi2 teta2 distX distY dSlope dSlopeY
  148. : chi2: +1.000 +0.001 +0.370 +0.305 +0.002 +0.084
  149. : teta2: +0.001 +1.000 +0.173 +0.650 +0.280 +0.455
  150. : distX: +0.370 +0.173 +1.000 +0.043 +0.627 +0.195
  151. : distY: +0.305 +0.650 +0.043 +1.000 +0.240 +0.458
  152. : dSlope: +0.002 +0.280 +0.627 +0.240 +1.000 +0.362
  153. : dSlopeY: +0.084 +0.455 +0.195 +0.458 +0.362 +1.000
  154. : --------------------------------------------------------
  155. DataSetFactory : [MatchNNDataSet] :
  156. :
  157. Factory : [MatchNNDataSet] : Create Transformation "I" with events from all classes.
  158. :
  159. : Transformation, Variable selection :
  160. : Input : variable 'chi2' <---> Output : variable 'chi2'
  161. : Input : variable 'teta2' <---> Output : variable 'teta2'
  162. : Input : variable 'distX' <---> Output : variable 'distX'
  163. : Input : variable 'distY' <---> Output : variable 'distY'
  164. : Input : variable 'dSlope' <---> Output : variable 'dSlope'
  165. : Input : variable 'dSlopeY' <---> Output : variable 'dSlopeY'
  166. TFHandler_Factory : Variable Mean RMS [ Min Max ]
  167. : -----------------------------------------------------------
  168. : chi2: 4.1539 4.6460 [ 1.3264e-05 15.000 ]
  169. : teta2: 0.0079252 0.017224 [ 1.2100e-06 0.43619 ]
  170. : distX: 27.109 38.586 [ 3.8147e-06 250.00 ]
  171. : distY: 20.564 28.494 [ 1.5259e-05 399.49 ]
  172. : dSlope: 0.28782 0.22814 [ 2.2016e-06 1.3026 ]
  173. : dSlopeY: 0.0054782 0.0099926 [ 1.8626e-09 0.14834 ]
  174. : -----------------------------------------------------------
  175. : Ranking input variables (method unspecific)...
  176. IdTransformation : Ranking result (top variable is best ranked)
  177. : --------------------------------
  178. : Rank : Variable : Separation
  179. : --------------------------------
  180. : 1 : chi2 : 6.095e-01
  181. : 2 : distX : 4.727e-01
  182. : 3 : distY : 1.428e-01
  183. : 4 : dSlope : 7.613e-02
  184. : 5 : dSlopeY : 5.967e-02
  185. : 6 : teta2 : 5.937e-02
  186. : --------------------------------
  187. Factory : Train method: matching_mlp for Classification
  188. :
  189. TFHandler_matching_mlp : Variable Mean RMS [ Min Max ]
  190. : -----------------------------------------------------------
  191. : chi2: -0.44615 0.61947 [ -1.0000 1.0000 ]
  192. : teta2: -0.96367 0.078975 [ -1.0000 1.0000 ]
  193. : distX: -0.78313 0.30869 [ -1.0000 1.0000 ]
  194. : distY: -0.89705 0.14265 [ -1.0000 1.0000 ]
  195. : dSlope: -0.55809 0.35029 [ -1.0000 1.0000 ]
  196. : dSlopeY: -0.92614 0.13472 [ -1.0000 1.0000 ]
  197. : -----------------------------------------------------------
  198. : Training Network
  199. :
  200. : Elapsed time for training with 550000 events: 1.28e+03 sec
  201. matching_mlp : [MatchNNDataSet] : Evaluation of matching_mlp on training sample (550000 events)
  202. : Elapsed time for evaluation of 550000 events: 0.785 sec
  203. : Creating xml weight file: MatchNNDataSet/weights/TMVAClassification_matching_mlp.weights.xml
  204. : Creating standalone class: MatchNNDataSet/weights/TMVAClassification_matching_mlp.class.C
  205. : Write special histos to file: matching_ghost_mlp_training.root:/MatchNNDataSet/Method_MLP/matching_mlp
  206. Factory : Training finished
  207. :
  208. : Ranking input variables (method specific)...
  209. matching_mlp : Ranking result (top variable is best ranked)
  210. : --------------------------------
  211. : Rank : Variable : Importance
  212. : --------------------------------
  213. : 1 : teta2 : 7.346e+02
  214. : 2 : distX : 1.891e+02
  215. : 3 : dSlopeY : 5.900e+01
  216. : 4 : distY : 4.639e+01
  217. : 5 : dSlope : 1.074e+01
  218. : 6 : chi2 : 2.093e+00
  219. : --------------------------------
  220. Factory : === Destroy and recreate all methods via weight files for testing ===
  221. :
  222. : Reading weight file: MatchNNDataSet/weights/TMVAClassification_matching_mlp.weights.xml
  223. matching_mlp : Building Network.
  224. : Initializing weights
  225. Factory : Test all methods
  226. Factory : Test method: matching_mlp for Classification performance
  227. :
  228. matching_mlp : [MatchNNDataSet] : Evaluation of matching_mlp on testing sample (120000 events)
  229. : Elapsed time for evaluation of 120000 events: 0.169 sec
  230. Factory : Evaluate all methods
  231. Factory : Evaluate classifier: matching_mlp
  232. :
  233. TFHandler_matching_mlp : Variable Mean RMS [ Min Max ]
  234. : -----------------------------------------------------------
  235. : chi2: -0.15813 0.62626 [ -1.0000 0.99995 ]
  236. : teta2: -0.97140 0.071651 [ -1.0000 0.85686 ]
  237. : distX: -0.67477 0.35263 [ -1.0000 0.99866 ]
  238. : distY: -0.87476 0.15583 [ -1.0000 0.99415 ]
  239. : dSlope: -0.49635 0.36886 [ -0.99993 0.97372 ]
  240. : dSlopeY: -0.91980 0.13029 [ -1.0000 1.0219 ]
  241. : -----------------------------------------------------------
  242. matching_mlp : [MatchNNDataSet] : Loop over test events and fill histograms with classifier response...
  243. :
  244. TFHandler_matching_mlp : Variable Mean RMS [ Min Max ]
  245. : -----------------------------------------------------------
  246. : chi2: -0.15813 0.62626 [ -1.0000 0.99995 ]
  247. : teta2: -0.97140 0.071651 [ -1.0000 0.85686 ]
  248. : distX: -0.67477 0.35263 [ -1.0000 0.99866 ]
  249. : distY: -0.87476 0.15583 [ -1.0000 0.99415 ]
  250. : dSlope: -0.49635 0.36886 [ -0.99993 0.97372 ]
  251. : dSlopeY: -0.91980 0.13029 [ -1.0000 1.0219 ]
  252. : -----------------------------------------------------------
  253. :
  254. : Evaluation results ranked by best signal efficiency and purity (area)
  255. : -------------------------------------------------------------------------------------------------------------------
  256. : DataSet MVA
  257. : Name: Method: ROC-integ
  258. : MatchNNDataSet matching_mlp : 0.970
  259. : -------------------------------------------------------------------------------------------------------------------
  260. :
  261. : Testing efficiency compared to training efficiency (overtraining check)
  262. : -------------------------------------------------------------------------------------------------------------------
  263. : DataSet MVA Signal efficiency: from test sample (from training sample)
  264. : Name: Method: @B=0.01 @B=0.10 @B=0.30
  265. : -------------------------------------------------------------------------------------------------------------------
  266. : MatchNNDataSet matching_mlp : 0.543 (0.551) 0.936 (0.936) 0.985 (0.985)
  267. : -------------------------------------------------------------------------------------------------------------------
  268. :
  269. Dataset:MatchNNDataSet : Created tree 'TestTree' with 120000 events
  270. :
  271. Dataset:MatchNNDataSet : Created tree 'TrainTree' with 550000 events
  272. :
  273. Factory : Thank you for using TMVA!
  274. : For citation information, please visit: http://tmva.sf.net/citeTMVA.html
  275. Transforming neural_net_training/result/MatchNNDataSet/weights/TMVAClassification_matching_mlp.class.C ...
  276. Found minimum and maximum values for 6 variables.
  277. Found 3 matrices:
  278. 1. fWeightMatrix0to1 with 7 columns and 8 rows
  279. 2. fWeightMatrix1to2 with 9 columns and 6 rows
  280. 3. fWeightMatrix2to3 with 7 columns and 1 rows