ML framework workflow - jniedzie/SVJanalysis_wiki GitHub Wiki
The ML framework allows to train different ML models (BDT, NN, NAE, ...), evaluate them and plot performance plots. The code is located in the MLFramework directory. Before running any code in this directory, you'll need to create a conda environment with python 3 and install several modules. Refer to instructions in Creating SVJ virtual environment.
Preparing input data
The ML FW takes PFNanoAODSuper
as input.
These are PFNanoAOD ROOT files, with 2 additional trees, one containing the cut flow information and the other containing the process cross-section. You can find more information in Framework-workflow.
Preparing config file
See instructions in Preparing config file.
Training
See instructions in Training.
Producing evaluation objects
See instructions in Evaluation.
Plotting and analyzing results
See instructions in Analysis and plotting tools.
Adding new architecture to the framework
In case you want to extend the ML framework adding a new architecture, follow instructions here:
- Implementing new Trainer class
- Implementing new Evaluator class (documentation missing)