: Parsing option string: : ... "V:!Silent:Color:DrawProgressBar:AnalysisType=Classification" : The following options are set: : - By User: : V: "True" [Verbose flag] : Color: "True" [Flag for coloured screen output (default: True, if in batch mode: False)] : Silent: "False" [Batch mode: boolean silent flag inhibiting any output from TMVA after the creation of the factory class object (default: False)] : DrawProgressBar: "True" [Draw progress bar to display training, testing and evaluation schedule (default: True)] : AnalysisType: "Classification" [Set the analysis type (Classification, Regression, Multiclass, Auto) (default: Auto)] : - Default: : VerboseLevel: "Info" [VerboseLevel (Debug/Verbose/Info)] : 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] : Correlations: "False" [boolean to show correlation in output] : ROC: "True" [boolean to show ROC in output] : ModelPersistence: "True" [Option to save the trained model in xml file or using serialization] DataSetInfo : [MatchNNDataSet] : Added class "Signal" : Add Tree Signal of type Signal with 13829 events DataSetInfo : [MatchNNDataSet] : Added class "Background" : Add Tree Bkg of type Background with 29144752 events : Dataset[MatchNNDataSet] : Class index : 0 name : Signal : Dataset[MatchNNDataSet] : Class index : 1 name : Background Factory : Booking method: matching_mlp : : Parsing option string: : ... "!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" : The following options are set: : - By User: : : - Default: : Boost_num: "0" [Number of times the classifier will be boosted] : Parsing option string: : ... "!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" : The following options are set: : - By User: : NCycles: "700" [Number of training cycles] : HiddenLayers: "N+2,N" [Specification of hidden layer architecture] : NeuronType: "ReLU" [Neuron activation function type] : EstimatorType: "CE" [MSE (Mean Square Estimator) for Gaussian Likelihood or CE(Cross-Entropy) for Bernoulli Likelihood] : V: "True" [Verbose output (short form of "VerbosityLevel" below - overrides the latter one)] : 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)"] : H: "False" [Print method-specific help message] : TrainingMethod: "BP" [Train with Back-Propagation (BP), BFGS Algorithm (BFGS), or Genetic Algorithm (GA - slower and worse)] : LearningRate: "2.000000e-02" [ANN learning rate parameter] : DecayRate: "1.000000e-02" [Decay rate for learning parameter] : TestRate: "50" [Test for overtraining performed at each #th epochs] : Sampling: "1.000000e+00" [Only 'Sampling' (randomly selected) events are trained each epoch] : 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.] : UseRegulator: "False" [Use regulator to avoid over-training] : - Default: : RandomSeed: "1" [Random seed for initial synapse weights (0 means unique seed for each run; default value '1')] : NeuronInputType: "sum" [Neuron input function type] : VerbosityLevel: "Default" [Verbosity level] : CreateMVAPdfs: "False" [Create PDFs for classifier outputs (signal and background)] : IgnoreNegWeightsInTraining: "False" [Events with negative weights are ignored in the training (but are included for testing and performance evaluation)] : EpochMonitoring: "False" [Provide epoch-wise monitoring plots according to TestRate (caution: causes big ROOT output file!)] : SamplingEpoch: "1.000000e+00" [Sampling is used for the first 'SamplingEpoch' epochs, afterwards, all events are taken for training] : SamplingTraining: "True" [The training sample is sampled] : SamplingTesting: "False" [The testing sample is sampled] : ResetStep: "50" [How often BFGS should reset history] : Tau: "3.000000e+00" [LineSearch "size step"] : BPMode: "sequential" [Back-propagation learning mode: sequential or batch] : BatchSize: "-1" [Batch size: number of events/batch, only set if in Batch Mode, -1 for BatchSize=number_of_events] : ConvergenceImprove: "1.000000e-30" [Minimum improvement which counts as improvement (<0 means automatic convergence check is turned off)] : ConvergenceTests: "-1" [Number of steps (without improvement) required for convergence (<0 means automatic convergence check is turned off)] : UpdateLimit: "10000" [Maximum times of regulator update] : CalculateErrors: "False" [Calculates inverse Hessian matrix at the end of the training to be able to calculate the uncertainties of an MVA value] : 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] matching_mlp : [MatchNNDataSet] : Create Transformation "Norm" with events from all classes. : : Transformation, Variable selection : : Input : variable 'chi2' <---> Output : variable 'chi2' : Input : variable 'teta2' <---> Output : variable 'teta2' : Input : variable 'distX' <---> Output : variable 'distX' : Input : variable 'distY' <---> Output : variable 'distY' : Input : variable 'dSlope' <---> Output : variable 'dSlope' : Input : variable 'dSlopeY' <---> Output : variable 'dSlopeY' matching_mlp : Building Network. : Initializing weights Factory : Train all methods : Rebuilding Dataset MatchNNDataSet : Parsing option string: : ... "SplitMode=random:V:nTrain_Signal=0:nTrain_Background=20000.0:nTest_Signal=2000.0:nTest_Background=5000.0" : The following options are set: : - By User: : SplitMode: "Random" [Method of picking training and testing events (default: random)] : nTrain_Signal: "0" [Number of training events of class Signal (default: 0 = all)] : nTest_Signal: "2000" [Number of test events of class Signal (default: 0 = all)] : nTrain_Background: "20000" [Number of training events of class Background (default: 0 = all)] : nTest_Background: "5000" [Number of test events of class Background (default: 0 = all)] : V: "True" [Verbosity (default: true)] : - Default: : MixMode: "SameAsSplitMode" [Method of mixing events of different classes into one dataset (default: SameAsSplitMode)] : SplitSeed: "100" [Seed for random event shuffling] : 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)] : ScaleWithPreselEff: "False" [Scale the number of requested events by the eff. of the preselection cuts (or not)] : TrainTestSplit_Signal: "0.000000e+00" [Number of test events of class Signal (default: 0 = all)] : TrainTestSplit_Background: "0.000000e+00" [Number of test events of class Background (default: 0 = all)] : VerboseLevel: "Info" [VerboseLevel (Debug/Verbose/Info)] : Correlations: "True" [Boolean to show correlation output (Default: true)] : CalcCorrelations: "True" [Compute correlations and also some variable statistics, e.g. min/max (Default: true )] : Building event vectors for type 2 Signal : Dataset[MatchNNDataSet] : create input formulas for tree Signal : Building event vectors for type 2 Background : Dataset[MatchNNDataSet] : create input formulas for tree Bkg DataSetFactory : [MatchNNDataSet] : Number of events in input trees : : : Dataset[MatchNNDataSet] : Weight renormalisation mode: "EqualNumEvents": renormalises all event classes ... : Dataset[MatchNNDataSet] : such that the effective (weighted) number of events in each class is the same : Dataset[MatchNNDataSet] : (and equals the number of events (entries) given for class=0 ) : Dataset[MatchNNDataSet] : ... i.e. such that Sum[i=1..N_j]{w_i} = N_classA, j=classA, classB, ... : Dataset[MatchNNDataSet] : ... (note that N_j is the sum of TRAINING events : Dataset[MatchNNDataSet] : ..... Testing events are not renormalised nor included in the renormalisation factor!) : Number of training and testing events : --------------------------------------------------------------------------- : Signal -- training events : 11829 : Signal -- testing events : 2000 : Signal -- training and testing events: 13829 : Background -- training events : 20000 : Background -- testing events : 5000 : Background -- training and testing events: 25000 : DataSetInfo : Correlation matrix (Signal): : -------------------------------------------------------- : chi2 teta2 distX distY dSlope dSlopeY : chi2: +1.000 -0.082 +0.200 +0.302 +0.182 +0.049 : teta2: -0.082 +1.000 +0.033 +0.461 +0.179 +0.632 : distX: +0.200 +0.033 +1.000 -0.222 +0.685 +0.075 : distY: +0.302 +0.461 -0.222 +1.000 +0.306 +0.463 : dSlope: +0.182 +0.179 +0.685 +0.306 +1.000 +0.319 : dSlopeY: +0.049 +0.632 +0.075 +0.463 +0.319 +1.000 : -------------------------------------------------------- DataSetInfo : Correlation matrix (Background): : -------------------------------------------------------- : chi2 teta2 distX distY dSlope dSlopeY : chi2: +1.000 -0.003 +0.368 +0.313 -0.005 +0.094 : teta2: -0.003 +1.000 +0.215 +0.617 +0.302 +0.491 : distX: +0.368 +0.215 +1.000 +0.065 +0.633 +0.203 : distY: +0.313 +0.617 +0.065 +1.000 +0.246 +0.532 : dSlope: -0.005 +0.302 +0.633 +0.246 +1.000 +0.356 : dSlopeY: +0.094 +0.491 +0.203 +0.532 +0.356 +1.000 : -------------------------------------------------------- DataSetFactory : [MatchNNDataSet] : : Factory : [MatchNNDataSet] : Create Transformation "I" with events from all classes. : : Transformation, Variable selection : : Input : variable 'chi2' <---> Output : variable 'chi2' : Input : variable 'teta2' <---> Output : variable 'teta2' : Input : variable 'distX' <---> Output : variable 'distX' : Input : variable 'distY' <---> Output : variable 'distY' : Input : variable 'dSlope' <---> Output : variable 'dSlope' : Input : variable 'dSlopeY' <---> Output : variable 'dSlopeY' TFHandler_Factory : Variable Mean RMS [ Min Max ] : ----------------------------------------------------------- : chi2: 13.817 7.9796 [ 0.0011579 29.997 ] : teta2: 0.0040130 0.012209 [ 1.9755e-06 0.23492 ] : distX: 71.018 61.492 [ 0.0031776 478.62 ] : distY: 31.234 37.327 [ 0.00019073 497.26 ] : dSlope: 0.37346 0.23976 [ 5.9959e-05 1.2822 ] : dSlopeY: 0.0063004 0.010258 [ 3.9814e-08 0.14883 ] : ----------------------------------------------------------- : Ranking input variables (method unspecific)... IdTransformation : Ranking result (top variable is best ranked) : -------------------------------- : Rank : Variable : Separation : -------------------------------- : 1 : chi2 : 9.147e-02 : 2 : distY : 5.407e-02 : 3 : teta2 : 4.044e-02 : 4 : dSlope : 3.233e-02 : 5 : distX : 2.801e-02 : 6 : dSlopeY : 1.699e-02 : -------------------------------- Factory : Train method: matching_mlp for Classification : TFHandler_matching_mlp : Variable Mean RMS [ Min Max ] : ----------------------------------------------------------- : chi2: -0.078822 0.53204 [ -1.0000 1.0000 ] : teta2: -0.96585 0.10395 [ -1.0000 1.0000 ] : distX: -0.70325 0.25696 [ -1.0000 1.0000 ] : distY: -0.87438 0.15013 [ -1.0000 1.0000 ] : dSlope: -0.41755 0.37399 [ -1.0000 1.0000 ] : dSlopeY: -0.91533 0.13785 [ -1.0000 1.0000 ] : ----------------------------------------------------------- : Training Network : : Elapsed time for training with 31829 events: 64.5 sec matching_mlp : [MatchNNDataSet] : Evaluation of matching_mlp on training sample (31829 events) : Elapsed time for evaluation of 31829 events: 0.0391 sec : Creating xml weight file: MatchNNDataSet/weights/TMVAClassification_matching_mlp.weights.xml : Creating standalone class: MatchNNDataSet/weights/TMVAClassification_matching_mlp.class.C : Write special histos to file: matching_ghost_mlp_training.root:/MatchNNDataSet/Method_MLP/matching_mlp Factory : Training finished : : Ranking input variables (method specific)... matching_mlp : Ranking result (top variable is best ranked) : -------------------------------- : Rank : Variable : Importance : -------------------------------- : 1 : distY : 3.588e+02 : 2 : dSlopeY : 2.134e+02 : 3 : distX : 1.426e+02 : 4 : teta2 : 7.020e+01 : 5 : dSlope : 1.303e+01 : 6 : chi2 : 3.098e+00 : -------------------------------- Factory : === Destroy and recreate all methods via weight files for testing === : : Reading weight file: MatchNNDataSet/weights/TMVAClassification_matching_mlp.weights.xml matching_mlp : Building Network. : Initializing weights Factory : Test all methods Factory : Test method: matching_mlp for Classification performance : matching_mlp : [MatchNNDataSet] : Evaluation of matching_mlp on testing sample (7000 events) : Elapsed time for evaluation of 7000 events: 0.0138 sec Factory : Evaluate all methods Factory : Evaluate classifier: matching_mlp : TFHandler_matching_mlp : Variable Mean RMS [ Min Max ] : ----------------------------------------------------------- : chi2: -0.055433 0.55630 [ -0.99875 1.0001 ] : teta2: -0.96118 0.10498 [ -0.99999 0.45981 ] : distX: -0.71039 0.26310 [ -0.99989 0.79697 ] : distY: -0.86095 0.16028 [ -1.0000 0.89878 ] : dSlope: -0.43538 0.38054 [ -0.99815 0.98969 ] : dSlopeY: -0.91076 0.14080 [ -1.0000 0.93883 ] : ----------------------------------------------------------- matching_mlp : [MatchNNDataSet] : Loop over test events and fill histograms with classifier response... : TFHandler_matching_mlp : Variable Mean RMS [ Min Max ] : ----------------------------------------------------------- : chi2: -0.055433 0.55630 [ -0.99875 1.0001 ] : teta2: -0.96118 0.10498 [ -0.99999 0.45981 ] : distX: -0.71039 0.26310 [ -0.99989 0.79697 ] : distY: -0.86095 0.16028 [ -1.0000 0.89878 ] : dSlope: -0.43538 0.38054 [ -0.99815 0.98969 ] : dSlopeY: -0.91076 0.14080 [ -1.0000 0.93883 ] : ----------------------------------------------------------- : : Evaluation results ranked by best signal efficiency and purity (area) : ------------------------------------------------------------------------------------------------------------------- : DataSet MVA : Name: Method: ROC-integ : MatchNNDataSet matching_mlp : 0.853 : ------------------------------------------------------------------------------------------------------------------- : : Testing efficiency compared to training efficiency (overtraining check) : ------------------------------------------------------------------------------------------------------------------- : DataSet MVA Signal efficiency: from test sample (from training sample) : Name: Method: @B=0.01 @B=0.10 @B=0.30 : ------------------------------------------------------------------------------------------------------------------- : MatchNNDataSet matching_mlp : 0.000 (0.000) 0.470 (0.511) 0.877 (0.882) : ------------------------------------------------------------------------------------------------------------------- : Dataset:MatchNNDataSet : Created tree 'TestTree' with 7000 events : Dataset:MatchNNDataSet : Created tree 'TrainTree' with 31829 events : Factory : Thank you for using TMVA! : For citation information, please visit: http://tmva.sf.net/citeTMVA.html Transforming nn_electron_training/result/MatchNNDataSet/weights/TMVAClassification_matching_mlp.class.C ... Found minimum and maximum values for 6 variables. Found 3 matrices: 1. fWeightMatrix0to1 with 7 columns and 8 rows 2. fWeightMatrix1to2 with 9 columns and 6 rows 3. fWeightMatrix2to3 with 7 columns and 1 rows