Code Monkey home page Code Monkey logo

caloml-atlas's Introduction

caloml-atlas

Machine Learning toolkit for calorimeter topo-cluster classification and regression using simulated data from the ATLAS experiment.

Feel free to contact joakim.olsson[at]cern.ch if you'd like to contribute!

Machine Learning is awesome :)

Image pre-processing

Images are created from ESD (Event Summary Data) files using the MLTree Athena package, which generates a root TTree that contains the images as well as some other info. Six images are saved for each cluster, corresponding to the barrels layers of the EM (EMB1, EMB2, EMB3) and HAD (TileBar0, TileBar2, TileBar3) calorimeter. Normalized cell energies are used as pixel values. The image size is 0.4x0.4 in eta-phi space.

The outputs from MLTree can be converted into numpy arrays with mltree2array.py

Topo-cluster classification

The task

Train a classifier to determine which type of particle generated the parton showers in the cluster (e.g. electrons vs. charged pions or charged pions vs. neutral pions).

Implementation

The following models are implemented:

  1. Simple fully-connected Neural Network (flattening the images and only using the 512 pixels in the EMB1 layer).
  2. Convolutional Neural Networks using only one layer (preserving the shape of the 2D images).
  3. A network with multiple images as inputs, and one output (first couple of ConvNets are trained separately, then flattened and concatenated).

Everything is in the TopoClusterClassifier.ipynb notebook, so it is easy to modify and play around with!

TODO

  • Implement a network of concatenated ConvNets taking all calorimeter layer images into account.
  • Also compare the performance with other ML algorithms; logistic regression, SVD, Naive Bias, Gaussians, etc.

Energy regression

Coming soon...

caloml-atlas's People

Contributors

mswiatlo avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.