The ML for HEP library
Machine Learning for High Energy Physics — Blog
Writing the ML Methods Section of a Physics Paper
Reviewers want to know your training details without reading a textbook. What to include, what to skip, and how to structure the methods section.
Jet Tagging for Boosted Objects With Machine Learning
When heavy particles are boosted, their decay products merge into a single fat jet. ML-based taggers identify these jets with high efficiency.
Background Estimation With Control Regions and ML
Control regions constrain background normalizations. How ML classifiers interact with the control-region strategy and where things can go wrong.
Reweighting BDT Scores to Match Data and MC
When your classifier score distribution differs between data and simulation, reweighting can fix the mismatch. How to do it without introducing bias.
TensorFlow vs PyTorch for Physicists: A Practical Comparison
Both frameworks train neural networks. Their real differences for a physicist choosing one for an analysis: debugging, deployment, and community.
Convolutional Neural Networks for Jet Images
Turn a jet into a pixel grid and let a CNN learn the patterns. How jet imaging works and when it outperforms hand-crafted substructure variables.
Random Forests in Particle Physics: Many Trees, One Vote
A random forest trains many independent trees on bootstrap samples, then votes. How it compares to gradient boosting for physics problems.
Unsupervised Learning on Physics Data: Clustering and Beyond
No labels needed. Unsupervised learning finds structure in your data without telling it what to look for — useful for anomaly hunting.
How to Present Machine-Learning Results in a Physics Talk
Your audience cares about the physics, not the architecture diagram. How to communicate ML-based results clearly to a collaboration.
Event Selection Strategies: From Cuts to Classifiers
Event selection defines your analysis. How ML-based selection compares to traditional cut flows and when the switch is justified.
The Kolmogorov-Smirnov Test as an Overtraining Check
Comparing train and test BDT score distributions with a KS test is the standard overtraining diagnostic. How to run it and what the p-value means.
Setting Up a Python Environment for HEP Machine Learning
Conda, venv, or containers? A step-by-step guide to a clean Python environment that plays nicely with ROOT and ML libraries.
Feed-Forward Neural Networks for HEP Classification
The simplest neural network is a stack of weighted sums and nonlinearities. How a feed-forward net classifies signal from background.
How a Single Decision Tree Works, From Root to Leaf
Before you boost anything, understand the single decision tree: recursive splits, purity, and why one tree is not enough.
Supervised Learning for Physicists: Labels, Targets, and Training
Supervised learning needs labelled examples — something physicists already have from simulation. How the framework maps onto your analysis.
The HEP-ML Decoder: Every Machine-Learning Term, Translated Into Physics You Already Know
Machine learning has its own vocabulary, but most of it maps one-to-one onto concepts a particle physicist already owns. Features are observables, overtraining is overfitting a χ², ROC is efficiency vs purity. A translation table.
Five Mistakes Analysis Reviewers Catch in Boosted Decision Tree Analyses
Analysis review committees see the same boosted decision tree mistakes repeatedly. Here are the five most common ones: overtraining, data-MC disagreement, train-measure overlap, biased cut optimisation, and unpropagated systematics.
Neural Networks vs BDTs in Particle Physics: Which and When
BDTs still win on tabular ntuples; deep networks win on low-level and structured data. A practical guide to picking the right tool for your problem.
Systematic Uncertainties and Machine Learning in HEP
A classifier score is only useful if you can propagate systematics through it. How to think about uncertainty on an ML-based selection.
Handling Class Imbalance Between Signal and Background
When signal is one event in ten thousand, naive training ignores it. How class weights, resampling, and the right metric fix imbalanced classification.
Feature Importance and SHAP Values for Physics Models
A classifier that works but you cannot explain is a hard sell to a collaboration. How feature importance and SHAP values open up the black box.
Feature Engineering With Physics Observables
Your best features are often the observables you already trust: invariant masses, angular variables, isolation. How to choose and build them for a classifier.
ROC Curves, Efficiency and Purity: The Same Idea in Two Languages
The ROC curve is the efficiency-versus-purity trade-off you already reason about, drawn on axes a computer scientist chose. How to read and use it.
XGBoost Hyperparameter Tuning for Physics Datasets
Which XGBoost knobs matter for a physics classifier, what each one does, and a sane order to tune them without fooling yourself.
TMVA vs scikit-learn vs XGBoost: Choosing an ML Toolkit for HEP
Three toolkits dominate machine learning in particle physics. Their trade-offs for a physicist deciding where to start a new analysis.
Cross-Validation for Small Physics Datasets
When a single train/test split wastes precious simulated events, k-fold cross-validation gives you an honest performance estimate. How to use it correctly.
How to Avoid Overtraining a BDT in Your Physics Analysis
Overtraining is just overfitting a chi-square you cannot see. How to spot it with a train/test comparison and how to stop it before it biases your result.
How to Detect Overtraining in a Boosted Decision Tree
Overtraining is the single most common failure mode in HEP classifiers. Learn the standard diagnostics: train-test overlay plots, the Kolmogorov-Smirnov test, and what to do when they fail.
AdaBoost vs Gradient Boosting: How Combining Weak Learners Beats Any Single Tree
AdaBoost and gradient boosting are the two foundational algorithms behind boosted decision trees. This post explains how each works, what makes them different, and why an ensemble of weak trees outperforms a single deep one.
Gini Impurity vs Information Gain: Which Split Criterion Should You Use?
Decision trees split nodes by maximising purity. Gini impurity and information gain (entropy) are the two standard criteria. Here is what they measure, how they differ, and why the choice almost never matters in practice.
Signal vs Background: Machine-Learning Classification in HEP
Separating a rare signal from a huge background is a classification problem. How machine learning frames it, and why it often beats rectangular cuts.
Watch a Boosted Decision Tree Beat Rectangular Cuts in One Plot
A short, runnable example: on a two-variable signal-vs-background problem, a boosted decision tree recovers signal that rectangular cuts throw away. Copy the code, run it, see the ROC gap yourself.
Cut-Based vs Multivariate Analysis: When ML Actually Helps
Rectangular cuts are transparent but leave sensitivity on the table when variables are correlated. When a multivariate classifier is worth the added complexity.
What Is a Boosted Decision Tree? A Particle Physicist's Guide
Boosted decision trees are the workhorse classifier of experimental particle physics. Here is what a BDT actually does, in language a physicist already owns.
Why Rectangular Cuts Fail When Your Variables Are Correlated
Rectangular cuts force axis-aligned selection boundaries. When discriminating variables are correlated, signal lives along diagonals that boxes cannot follow. Here is why multivariate methods beat cuts — and exactly when they matter most.
Reading ROOT Files Into Python for Machine Learning
How to get your ntuples out of ROOT and into arrays a machine-learning library can train on, using uproot and awkward-array.
Getting Started With Machine Learning for LHC Analysis
A first-steps roadmap for the physicist adding machine learning to an LHC analysis: what to learn, in what order, and the traps to avoid early.
Should You Use Machine Learning in Your Analysis?
A calm, practical guide for the physicist deciding whether machine learning belongs in their analysis at all: when it helps, when it does not, and how to start small.
When Your Fit Memorizes the Noise: A Warning Every Physicist Knows
The most common way machine learning goes wrong is one you have already met: a model that fits the data perfectly, then falls apart on new data. Here is why, in plain terms.
What Is Machine Learning? A Physicist's Plain-English Guide
No jargon and no hype. Machine learning explained for a physicist who has never used it, through the calibration and fitting problems you already know.