CNF:ML Data Denoise

From crtc.cs.odu.edu
Jump to navigation Jump to search

This page will be updated about the machine learning data de-noising effort.

Problem

Traditional tracking algorithms are computationally intensive, especially for high luminosity experiments with multi-track final states where all combinations of segments in drift chambers have to be considered for firing best track candidates. At high luminosity the number of random segments (unrelated to the tracks) are increasing and as a result the number of possible combinations also increases, making the whole process longer.

Goal

Use Deep Learning Autoencoders that are trained on noisy tracks to produce the original track without the noise.


Results

Hardware specs:

Tesla V100 GPU

Example noisy input:

Example correct input:

Both the MLP and CNN networks used relu activation for all hidden layers and sigmoid for the output. Binary cross-entropy was used as the loss function and Adam as the optimizer.

Multilayer Perceptrons

Training loss Validation loss Training Time Inference Time Train/Val Loss Plot Example Case Valid Hits Histogram Noise Added Histogram
0.0018 0.0219 298 0.000182

Convolutional Networks

Train and test on single track

Epochs Training loss Validation loss Training Time Inference Time Train/Val Loss Plot Example Case Valid Hits Histogram Noise Added Histogram
50 0.0024 0.0024 238 0.000123
100 0.0023 0.0025 471.2 0.0001

Train and test on single track V2

4x6 Kernels

Epochs Training loss Validation loss Training Time Inference Time Train/Val Loss Plot Example Case Valid Hits Histogram Noise Added Histogram
12 0.00048 0.00085 204 0.00024

Per segment histograms:

Train and test on multiple tracks V2

Epochs Training loss Validation loss Training Time Inference Time Train/Val Loss Plot Example Case Valid Hits Histogram Noise Added Histogram
20 0.0029 0.0030 683 0.0002 File:Cnf ml cnn denoised mult track v2.png


Train on single and test on multiple tracks

Epochs Validation loss Inference Time Example Case Valid Hits Histogram Noise Added Histogram
50 0.027 0.00012
100 0.024 0.000125


Train and test on multiple tracks

Epochs Training loss Validation loss Training Time Inference Time Train/Val Loss Plot Example Case Valid Hits Histogram Noise Added Histogram
50 0.00537 0.00505 0.0001 File:Cnf ml cnn denoised mult track.png

Train and test on multiple tracks with more kernels

Epochs Training loss Validation loss Training Time Inference Time Train/Val Loss Plot Example Case Valid Hits Histogram Noise Added Histogram
50 0.0041 0.0040 943 0.0001 File:Cnf ml cnn denoised mult track more.png


Train on multiple and test on 2-3 tracks

Correct Track:

Noisy Input Track:

Epochs Validation loss Inference Time Example Case Valid Hits Histogram Noise Added Histogram
50 0.0078

Train on multiple and test on 2-3 tracks V2


Epochs Validation loss Inference Time Example Case Valid Hits Histogram Noise Added Histogram
20 0.0010 0.0007

Train on new 2-3 tracks and test on multitrack V2

Epochs Training loss Validation loss Training Time Inference Time Train/Val Loss Plot Example Case Valid Hits Histogram Noise Added Histogram
20 0.0043 0.003 517.2 0.0003 File:Cnn ae train val mult loss more V2 new multitrack.png File:Cnf ml cnn denoised mult2 3 track V2 new multitrack.png


Train on new 2-3 tracks and test on old 2-3 tracks V2

Epochs Training loss Validation loss Training Time Inference Time Train/Val Loss Plot Example Case Valid Hits Histogram Noise Added Histogram
20 0.0043 0.0045 517.2 0.0003


Train on multiple and test on 2-3 tracks with more kernels

Epochs Validation loss Inference Time Example Case Valid Hits Histogram Noise Added Histogram
50 0.0075 0.0008

Examples

Noisy Correct MLP CNN CNN V2 CNN V2 new
File:Ae mlp denoised 1.png
File:Ae mlp denoised 2.png
File:Ae mlp denoised 3.png
File:Ae mlp denoised 1m.png
File:Ae mlp denoised 2m.png
File:Ae mlp denoised 3m.png
File:Ae mlp denoised 4m.png

Work Plan

  • create a histogram comparing how many points in the reconstructed image match points in the ground truth
  • create a histogram comparing how many points in reconstructed image are noise (are not in the original image)
  • try network (trained with one track) with new data set that contains more than one track, and provide example plots for presentation
  • create the efficiency and noise plots for the multi-track data sample reconstruction.
  • train network with multi-track data and evaluate performance on multi-track testing sample.
  • put on the web site architecture of the network and try with a little deeper architecture (4032->2016->1008->336 -> 224 -> 336 -> 1008 -> 2016 -> 4032)

Resources

https://userweb.jlab.org/~gavalian/Documents/NN_Vary_Width_Depth%20(Nguyen).pdf

https://userweb.jlab.org/~gavalian/ML/2020/AutoEncoder/