Skip to content

Preparation and labeling of radioactivity signals dataset and training a ML model on the prepared data

Notifications You must be signed in to change notification settings

Hachem96/Classification-of-radioactivity-signals

Repository files navigation

Classification of radioactivity signals

Preparation and labeling of radioactivity signals dataset and training a ML model on the prepared data This repository is the code of proposed novel strategy to prepare clean labeled neutron/gamma radiations data-sets detected by the EJ276 plastic scintillator. First, a pile-up detection method is implemented and evaluated to clean up the acquired signals. Next, a specific method is proposed to identify and remove the obtained mislabeled samples by Time of Flight (ToF) setup. This specific method depends on the results of ToF and the Tail-to-Total integral ratio (TTTratio) discrimination algorithm. The experiments setup is implemented using californium (252Cf) and cobalt (60Co) as radioactivity sources. Finally, the obtained labeled data is used to train an Artificial Neural Network (ANN). Experimental results show that the proposed model is generic and could be applied to different energy radiations and source types. This model generalization validates the labels provided by the labeling strategy. The obtained accuracy, False Positive Rate (FPR) and True Positive Rate (TPR) are respectively equal to 97%, 1.5%, and 92%.

prepare-ToFSetup-dataset.py: main function should be called in this script in order to execute the code and prepared the datasets acquired by ToF setup. The input of the main is the path of the dataset, number of files, decay and rise time of the detector, width of the gaussian kernel used to detect the pile-up events and the ratio of rejection (&beta). The output files of the function are signals and pile-up events acquired by first and second detectors. These files are written in the same directory as the input data.

prepare-standartSetup-dataset.py: main function prepare the datasets acquired by a standart setup experiment. The input of the main is the path of the dataset, number of files, decay and rise time of the detector, width of the gaussian kernel used to detect the pile-up event. The output files are signals and pile-up events acquired by the detector. These files are written in the same directory as the input data.

ML-Model.py: contains functions to prepare the training and validation datasets, train a multlayer perception model and visualize the training results

Labeling_Strategy.py: main function takes as input the path of the data prepared by prepare-ToFSetup-dataset.py ,the path of gamma source pulses prepared by prepare-standartSetup-dataset.py, the output path of the data, the short and long gata parameter of pulse shape discrimination algorithm and the parameters of the alignment method. The outputs of the main are neutron, gamma, mislabeled neutron and mislabeled datasets.

About

Preparation and labeling of radioactivity signals dataset and training a ML model on the prepared data

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages