Skip to content

nhartman94/CNN_Project

Repository files navigation

Classifying Electromagnetic Showers from Calorimeter Images with CNNs

Overview

This repository contains code for constructing various neural networks to classify particles from the Micky et. al. dataset based on energy deposition. The map below provides a brief explanation of each file, and a summary of the notebooks that were important to our project's development. An in-depth discussion of the network architectures can be found in the paper "Classifying Electromagnetic Showers from Calorimeter Images with CNNs", by Nicole Hartman and Sean Mullane.

Repository Map

Main Branch:

-dataProcessing.py --> code to organize dataset into layers for use during training/testing 
-imageNumber_analysis.py --> functions to test how the total number of training images affects the validation accuracy 
-learn_rate_optimize.py --> code to optimize the learning rate for a given model 
-models.py --> central file for all models used in the project 
-plottingFcts.py --> central file for all plotting functions used in the project 
-train.py --> training code, largely taken from CS231N homeworks 

models folder: contains stored models from various training notebooks

figures folder: contains saved figures from the model visualization notebooks

Notebooks folder: central folder for all iPython notebooks used in the project. Includes:

-Data-Processsing.ipynb --> initial notebook to test data processing functions
-Ensembling.ipynb --> an attempt at ensembling/average models to asses overall performance 
-Final_Models_testSet.ipynb --> notebook that ran the test set on the final 2d RCNN models 
-Final_Test_Vis.ipynb --> notebook that ran visualization functions on the final 2d RCNN models
-Visualizations.ipynb --> notebook that ran visualization functions on the final 3d CNN models 

3d_models folder: contains notebooks that were used to construct and tune the 3d CNN models

Baseline_CNN_models: contains notebooks that were used to construct and tune the baseline CNN models

Initial_Notebooks: contains notebooks that were used at the beginning of our project to explore the dataset and construct the first fully connected networks

Recurrent_CNN_Models: contains notebooks that were used to construct and tune the 2d RCNN models

Contributors

Authors: Nicole Hartman and Sean Mullane, Stanford University Department of Physics

Most esteemed mentor: Michael Kagan, SLAC/CERN-ATLAS

Starter Code

Our starter code was only taken from CS231N assignments. This included the check_accuracy, check_loss, and train functions in train.py (the function train_ThreeCNN, while structured on train, was not explicitly taken from the class).

Dataset

We will be using the jet images of the showers in the EM calorimeter produced by Micky, et. al. https://data.mendeley.com/datasets/pvn3xc3wy5/1

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published