The Toolkit for Multivariate Data Analysis with ROOT (TMVA) is a ROOT-integrated project providing a machine learning environment for the processing and evaluation of multivariate classification, both binary and multi class, and regression techniques targeting applications in high-energy physics. The package includes:
- Neural networks
- Deep networks
- Multilayer perceptron
- Boosted/Bagged decision trees
- Function discriminant analysis (FDA)
- Linear discriminant analysis (H-Matrix and Fisher discriminants)
- Multidimensional probability density estimation (PDE - range-search approach)
- Multidimensional k-nearest neighbour classifier
- Predictive learning via rule ensembles (RuleFit)
- Projective likelihood estimation (PDE approach)
- Rectangular cut optimisation
- Support Vector Machine (SVM)
Tutorials
Online examples of how to use TMVA in both Python and C++ can be found at https://swan.web.cern.ch/content/machine-learning. In particular
- C++
- Classification/Regression. Simple setups for classification and regression.
- Cross Validation. Shows how cross validation is used in TMVA.
- Python
- DNN. How to train a deep neural network with the TMVA backend.
- Keras with tmva. Define a keras model and train through TMVA.
- Jupyter integration. Shows functionality available in Jupyter notebooks. On your local machine you can start a jupyter notebook with
root -l --notebook
.
There are also tutorials available with your ROOT distribution at $ROOTSYS/tutorials/tmva
where $ROOTSYS
is the path to your ROOT installation.
Links
- For an expanded introduction to TMVA, check the executive summary.
- TMVA comes with a very good user guide for in-depth usage and information.
- A quick start to quickly get up and running can be found here
- For further questions, you are welcome to contact us through the ROOT forum.