This material is based on Bannanje Nitish Nayak, Tingjun Yang and Varuna Meddage’s work presented at the LArSoft Coordination meeting. CVN Integration into LArSoft.
Some of the DUNE Machine Learning (ML) reconstruction code could be of use to other Liquid Argon experiments such as SBND and MicroBooNE. Similarly, ML code from these experiments could also be of use to DUNE.
A key step for DUNE ML training is pre-processing, which typically runs as art modules over simulated DUNE data. This produces processed information in the form of clusters of hits, images etcetera. Commonly used ML frameworks such as TensorFlow and PyTorch can then use this information to train.
The DUNE Convolutional Visual Network (CVN) “classifies neutrino interactions in the DUNE FD through image recognition techniques. In general terms it is a convolutional neural network (CNN). The main feature of CNNs is that they apply a series of filters (using convolutions, hence the name of the CNN) to the images to extract features that allow the CNN to classify the images. Each of the filters consists of a set of values that are learned by the CNN through the training process.
“CNNs are typically deep neural networks that consist of many convolutional layers, with the output from one convolutional layer forming the input to the next. Similar techniques have been demonstrated to outperform traditional event reconstruction-based methods to classify neutrino interactions…The characteristic translational invariance of CNN methods also represents an advantage.”
From: “Neutrino interaction classification with a convolutional neural network in the DUNE far detector” by the DUNE collaboration.
The overall scheme is to have art modules to process simulated DUNE files (hits, clusters etc contained in the data product recob::Hit) in order to produce gzip-compressed binaries (.gz) of the images (called pixel maps). The images are 2D maps of WireID and Tick (time coordinate) and there are typically 3 of them representing the 3 readout views from the DUNE LArTPC geometry. These images are then read by standalone python code and the CNN is trained using a Keras-based TensorFlow package. Once trained, other art modules read in the trained results from Tensorflow, PyTorch and store them as new data products in order to make them accessible to other reconstruction and analysis algorithms within the DUNE software stack.
From: CVN Integration into LArSoft presented at October 18, 2022 LArSoft Coordination Meeting.
Information on using the CNN-based neutrino classification using CVN in LArSoft is available at the LArSoft wiki page https://larsoft.github.io/LArSoftWiki/CVN_integration
Sources:
CVN Integration into LArSoft presentation.
https://www.wm.edu/as/physics/documents/seniorstheses/class2020theses/gnasso_i.pdf