Photon Identification using CNN
This project focuses on building a machine learning pipeline for a high-energy physics particle classifier using Apache Spark, ROOT, Parquet, TensorFlow, and Jupyter with Python notebooks.
The data are Monte Carlo simulation produced using ZllyAthDerivation and processed using NTUP code to produce root flat ntuple which are then converted to NumPy arrays using Array code. CellsToImage is a code which converts the NumPy cells vector to NumPy images for training, An example of training images is shown below:
After Training the model is validated using Validation code, the model is validated on an out-of-sample photon generated from a different process used in training to remove any potential bias
After validation, the mode is converted to ONNX format developed by Microsoft.
DerivationFramework CNN Photon ID is a framework that integrates and apply the model at the derivation stage in the official CMS Athena framework.