Deep Learning for Particle Physicists

The course will take place during the second half of the spring semester in 2022. Lectures will take place on Fridays from 14:00-16:00 in room 119, starting on April 8th (no lectures from 15.4. - 24.4.). The website for the course materials can be found here.

Deep learning is a subfield of artificial intelligence that focuses on using neural networks to parse data, learn from it, and then make predictions about something in the world. In the last decade, this framework has led to significant advances in computer vision, natural language processing, and reinforcement learning. More recently, deep learning has begun to attract interest in the physical sciences and is rapidly becoming an important part of the physicist's toolkit, especially in data-rich fields like high-energy particle physics and cosmology.

This course provides students with a hands-on introduction to the methods of deep learning, with an emphasis on applying these methods to solve particle physics problems. A list of the topics covered in this course includes:

  • Jet tagging with convolutional neural networks
  • Transformer neural networks for sequential data
  • Normalizing flows for physics simulations such as lattice QFT
Throughout the course, students will learn how to implement neural networks from scratch and learn core algorithms such as backpropagation and stochastic gradient descent. If time permits, we'll explore how symmetries can be encoded in graph neural networks, along with symbolic regression techniques to extract equations from data.


Although no prior knowledge of deep learning is required, we do recommend having some familiarity with the core concepts of machine learning. This course is also hands-on, which means you can expect to be running a lot of code. We assume that students are comfortable programming in Python and data analysis libraries such as NumPy. A useful precursor to the material covered in this course is Practical Machine Learning for Physicists (


Lewis Tunstall