Machine Learning for High Energy Physics


Keywords
high, energy, physics, machine, learning, particle, supervised, uncorrelated, methods, of, boosting-algorithms, high-energy-physics, machine-learning, neural-networks, python, reweighting-algorithms, scikit-learn, splot
License
Apache-2.0
Install
pip install hep-ml==0.7.0

Documentation

hep_ml

hep_ml provides specific machine learning tools for purposes of high energy physics.

Run tests PyPI version Documentation DOI

hep_ml, python library for high energy physics

Main features

  • uniform classifiers - the classifiers with low correlation of predictions and mass (or some other variable, or even set of variables)
    • uBoost optimized implementation inside
    • UGradientBoosting (with different losses, specially FlatnessLoss is of high interest)
  • measures of uniformity (see hep_ml.metrics)
  • advanced losses for classification, regression and ranking for UGradientBoosting (see hep_ml.losses).
  • hep_ml.reweight - reweighting multidimensional distributions
    (multi here means 2, 3, 5 and more dimensions - see GBReweighter!)
  • hep_ml.splot - minimalistic sPlot-ting
  • hep_ml.speedup - building models for fast classification (Bonsai BDT)
  • sklearn-compatibility of estimators.

Installation

Plain and simple:

pip install hep_ml

If you're new to python and never used pip, first install scikit-learn with these instructions.

Links

Related projects

Libraries you'll require to make your life easier and HEPpier.

  • IPython Notebook — web-shell for python
  • scikit-learn — general-purpose library for machine learning in python
  • numpy — 'MATLAB in python', vector operation in python. Use it you need to perform any number crunching.
  • theano — optimized vector analytical math engine in python
  • ROOT — main data format in high energy physics
  • root_numpy — python library to deal with ROOT files (without pain)

License

Apache 2.0, hep_ml is an open-source library.

Platforms

Linux, Mac OS X and Windows are supported.

hep_ml supports both python 2 and python 3.