Dense Neural Network Case Study — Particle Detection

Objective

The goal of this case study was to develop a dense neural network to predict the existence of a new particle from a large dataset provided by the client. The prediction task is binary: 1 for detection and 0 for non-detection. The challenge involved handling over 7 million examples across 28 features, requiring efficient data loading, model architecture design, and accurate performance evaluation through cross-validation.

Data Preparation

  • Input Features: 28 total features, including scientific measurements and a mass variable.
  • Target: Binary class labeled # label (0 = no detection, 1 = detection)
  • Imputation: Not required; dataset was complete with no missing values.
  • Size: 7,000,000 examples, 28 features.
  • Splitting: Replaced all train/test split logic with 5-fold Stratified Cross-Validation using sklearn.model_selection.StratifiedKFold.

Model Configuration

  • Architecture: Dense neural network with the following layers:
    • Input Layer: 28 features
    • Hidden Layers: [500, 400, 300, 200, 100] units, each followed by BatchNormalization and ReLU activation
    • Output Layer: 1 unit with sigmoid activation (float32 to support mixed precision)
  • Loss Function: Binary Crossentropy
  • Optimizer: Adam
  • Precision Policy: Mixed precision (float16) for accelerated performance on A100 GPU
  • Callbacks: EarlyStopping and TensorBoard were configured (though not used in CV)

Hyperparameter Selection (Ablation Study)

  • Tested Batch Sizes: 1000, 2048 (optimal was 1000 for memory balance)
  • Tested Epochs: 1, 3, 5 — Early signs of convergence observed by epoch 3
  • Final Settings:
    • Epochs: 3 per fold
    • Batch size: 1000
    • Activation Function: ReLU
    • Final Output Activation: Sigmoid

Cross-Validation Results (5-Fold Stratified K-Fold)

Fold Accuracy Precision Recall AUC
1 0.8841 0.8737 0.8980 0.8841
2 0.8835 0.8615 0.9140 0.8835
3 0.8836 0.8762 0.8935 0.8836
4 0.8841 0.8698 0.9036 0.8841
5 0.8834 0.8630 0.9116 0.8834

Mean Accuracy: 0.8837
Mean Precision: 0.8688
Mean Recall: 0.9041
Mean AUC: 0.8837

Model Convergence

The model was considered fully trained after 3 epochs per fold, as no significant loss reduction or performance gain was observed beyond that point. This was verified across all folds with stable loss and increasing or plateauing AUC scores.

Figure 1 — Accuracy Over Epochs

This plot shows the training and validation accuracy over 3 epochs. Accuracy increases consistently across both datasets, indicating effective learning and no overfitting.

Loss Over Epochs
Loss Over Epochs

Figure 2 — Loss Over Epochs

This plot shows the training and validation loss over 3 epochs. Loss decreases steadily, confirming model convergence and generalization.

Results

The model was evaluated using 5-fold stratified cross-validation to ensure generalization without relying on a traditional train/test split.

Fold Performance:

Fold Accuracy Precision Recall AUC
1 0.8841 0.8737 0.8980 0.8841
2 0.8835 0.8615 0.9140 0.8835
3 0.8836 0.8762 0.8935 0.8836
4 0.8841 0.8698 0.9036 0.8841
5 0.8834 0.8630 0.9116 0.8834

Average Metrics: - Accuracy: 0.8837 - Precision: 0.8688 - Recall: 0.9041 - AUC-ROC: 0.8837

The model showed consistently strong performance across all folds, with minimal variance. Validation loss decreased steadily over epochs, and training/validation accuracy tracked closely, indicating no over fitting.

📌 Conclusion

This study implemented a dense neural network to detect the presence of a new particle within a large scientific dataset consisting of over 7 million examples and 28 features. The model was trained using 5-fold stratified cross-validation to ensure generalization and reproducibility.

The final architecture consisted of five hidden layers with Batch Normalization and ReLU activations, culminating in a sigmoid output for binary classification. Mixed precision on an A100 GPU accelerated training while maintaining numerical stability.

Convergence was achieved after only 3 epochs per fold. Across all folds, the model achieved:

  • Accuracy: 0.8837
  • Precision: 0.8688
  • Recall: 0.9041
  • AUC-ROC: 0.8837

Loss declined consistently, and accuracy improved across epochs, confirming model stability. All metrics were reported numerically, and all design choices were justified through iterative tuning and ablation.

This result demonstrates the network’s ability to generalize effectively on large-scale binary classification tasks in the context of particle detection.


LS0tDQp0aXRsZTogIlFUVyBDUzYgLSBOTiINCmF1dGhvcjogIkplc3NpY2EgTWNQSGF1bCINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KLS0tDQoNCiMgRGVuc2UgTmV1cmFsIE5ldHdvcmsgQ2FzZSBTdHVkeSDigJQgUGFydGljbGUgRGV0ZWN0aW9uDQoNCiMjIE9iamVjdGl2ZQ0KDQpUaGUgZ29hbCBvZiB0aGlzIGNhc2Ugc3R1ZHkgd2FzIHRvIGRldmVsb3AgYSBkZW5zZSBuZXVyYWwgbmV0d29yayB0byBwcmVkaWN0IHRoZSBleGlzdGVuY2Ugb2YgYSBuZXcgcGFydGljbGUgZnJvbSBhIGxhcmdlIGRhdGFzZXQgcHJvdmlkZWQgYnkgdGhlIGNsaWVudC4gVGhlIHByZWRpY3Rpb24gdGFzayBpcyBiaW5hcnk6IDEgZm9yIGRldGVjdGlvbiBhbmQgMCBmb3Igbm9uLWRldGVjdGlvbi4gVGhlIGNoYWxsZW5nZSBpbnZvbHZlZCBoYW5kbGluZyBvdmVyIDcgbWlsbGlvbiBleGFtcGxlcyBhY3Jvc3MgMjggZmVhdHVyZXMsIHJlcXVpcmluZyBlZmZpY2llbnQgZGF0YSBsb2FkaW5nLCBtb2RlbCBhcmNoaXRlY3R1cmUgZGVzaWduLCBhbmQgYWNjdXJhdGUgcGVyZm9ybWFuY2UgZXZhbHVhdGlvbiB0aHJvdWdoIGNyb3NzLXZhbGlkYXRpb24uDQoNCiMjIERhdGEgUHJlcGFyYXRpb24NCg0KLSAgIElucHV0IEZlYXR1cmVzOiAyOCB0b3RhbCBmZWF0dXJlcywgaW5jbHVkaW5nIHNjaWVudGlmaWMgbWVhc3VyZW1lbnRzIGFuZCBhIGBtYXNzYCB2YXJpYWJsZS4NCi0gICBUYXJnZXQ6IEJpbmFyeSBjbGFzcyBsYWJlbGVkIGAjIGxhYmVsYCAoMCA9IG5vIGRldGVjdGlvbiwgMSA9IGRldGVjdGlvbikNCi0gICBJbXB1dGF0aW9uOiBOb3QgcmVxdWlyZWQ7IGRhdGFzZXQgd2FzIGNvbXBsZXRlIHdpdGggbm8gbWlzc2luZyB2YWx1ZXMuDQotICAgU2l6ZTogNywwMDAsMDAwIGV4YW1wbGVzLCAyOCBmZWF0dXJlcy4NCi0gICBTcGxpdHRpbmc6IFJlcGxhY2VkIGFsbCB0cmFpbi90ZXN0IHNwbGl0IGxvZ2ljIHdpdGggNS1mb2xkIFN0cmF0aWZpZWQgQ3Jvc3MtVmFsaWRhdGlvbiB1c2luZyBgc2tsZWFybi5tb2RlbF9zZWxlY3Rpb24uU3RyYXRpZmllZEtGb2xkYC4NCg0KIyMgTW9kZWwgQ29uZmlndXJhdGlvbg0KDQotICAgQXJjaGl0ZWN0dXJlOiBEZW5zZSBuZXVyYWwgbmV0d29yayB3aXRoIHRoZSBmb2xsb3dpbmcgbGF5ZXJzOg0KICAgIC0gICBJbnB1dCBMYXllcjogMjggZmVhdHVyZXMNCiAgICAtICAgSGlkZGVuIExheWVyczogWzUwMCwgNDAwLCAzMDAsIDIwMCwgMTAwXSB1bml0cywgZWFjaCBmb2xsb3dlZCBieSBCYXRjaE5vcm1hbGl6YXRpb24gYW5kIFJlTFUgYWN0aXZhdGlvbg0KICAgIC0gICBPdXRwdXQgTGF5ZXI6IDEgdW5pdCB3aXRoIHNpZ21vaWQgYWN0aXZhdGlvbiAoYGZsb2F0MzJgIHRvIHN1cHBvcnQgbWl4ZWQgcHJlY2lzaW9uKQ0KLSAgIExvc3MgRnVuY3Rpb246IEJpbmFyeSBDcm9zc2VudHJvcHkNCi0gICBPcHRpbWl6ZXI6IEFkYW0NCi0gICBQcmVjaXNpb24gUG9saWN5OiBNaXhlZCBwcmVjaXNpb24gKGBmbG9hdDE2YCkgZm9yIGFjY2VsZXJhdGVkIHBlcmZvcm1hbmNlIG9uIEExMDAgR1BVDQotICAgQ2FsbGJhY2tzOiBFYXJseVN0b3BwaW5nIGFuZCBUZW5zb3JCb2FyZCB3ZXJlIGNvbmZpZ3VyZWQgKHRob3VnaCBub3QgdXNlZCBpbiBDVikNCg0KIyMgSHlwZXJwYXJhbWV0ZXIgU2VsZWN0aW9uIChBYmxhdGlvbiBTdHVkeSkNCg0KLSAgIFRlc3RlZCBCYXRjaCBTaXplczogMTAwMCwgMjA0OCAob3B0aW1hbCB3YXMgMTAwMCBmb3IgbWVtb3J5IGJhbGFuY2UpDQotICAgVGVzdGVkIEVwb2NoczogMSwgMywgNSDigJQgRWFybHkgc2lnbnMgb2YgY29udmVyZ2VuY2Ugb2JzZXJ2ZWQgYnkgZXBvY2ggMw0KLSAgIEZpbmFsIFNldHRpbmdzOg0KICAgIC0gICBFcG9jaHM6IDMgcGVyIGZvbGQNCiAgICAtICAgQmF0Y2ggc2l6ZTogMTAwMA0KICAgIC0gICBBY3RpdmF0aW9uIEZ1bmN0aW9uOiBSZUxVDQogICAgLSAgIEZpbmFsIE91dHB1dCBBY3RpdmF0aW9uOiBTaWdtb2lkDQoNCiMjIENyb3NzLVZhbGlkYXRpb24gUmVzdWx0cyAoNS1Gb2xkIFN0cmF0aWZpZWQgSy1Gb2xkKQ0KDQp8IEZvbGQgfCBBY2N1cmFjeSB8IFByZWNpc2lvbiB8IFJlY2FsbCB8IEFVQyAgICB8DQp8LS0tLS0tfC0tLS0tLS0tLS18LS0tLS0tLS0tLS18LS0tLS0tLS18LS0tLS0tLS18DQp8IDEgICAgfCAwLjg4NDEgICB8IDAuODczNyAgICB8IDAuODk4MCB8IDAuODg0MSB8DQp8IDIgICAgfCAwLjg4MzUgICB8IDAuODYxNSAgICB8IDAuOTE0MCB8IDAuODgzNSB8DQp8IDMgICAgfCAwLjg4MzYgICB8IDAuODc2MiAgICB8IDAuODkzNSB8IDAuODgzNiB8DQp8IDQgICAgfCAwLjg4NDEgICB8IDAuODY5OCAgICB8IDAuOTAzNiB8IDAuODg0MSB8DQp8IDUgICAgfCAwLjg4MzQgICB8IDAuODYzMCAgICB8IDAuOTExNiB8IDAuODgzNCB8DQoNCk1lYW4gQWNjdXJhY3k6IDAuODgzN1wNCk1lYW4gUHJlY2lzaW9uOiAwLjg2ODhcDQpNZWFuIFJlY2FsbDogMC45MDQxXA0KTWVhbiBBVUM6IDAuODgzNw0KDQojIyBNb2RlbCBDb252ZXJnZW5jZQ0KDQpUaGUgbW9kZWwgd2FzIGNvbnNpZGVyZWQgZnVsbHkgdHJhaW5lZCBhZnRlciAzIGVwb2NocyBwZXIgZm9sZCwgYXMgbm8gc2lnbmlmaWNhbnQgbG9zcyByZWR1Y3Rpb24gb3IgcGVyZm9ybWFuY2UgZ2FpbiB3YXMgb2JzZXJ2ZWQgYmV5b25kIHRoYXQgcG9pbnQuIFRoaXMgd2FzIHZlcmlmaWVkIGFjcm9zcyBhbGwgZm9sZHMgd2l0aCBzdGFibGUgbG9zcyBhbmQgaW5jcmVhc2luZyBvciBwbGF0ZWF1aW5nIEFVQyBzY29yZXMuDQoNCiFbXShpbWFnZXMvYWNjdXJhY3lfb3Zlcl9lcG9jaHMucG5nKQ0KDQojIyMjICoqRmlndXJlIDEqKiDigJQgQWNjdXJhY3kgT3ZlciBFcG9jaHMNCg0KKlRoaXMgcGxvdCBzaG93cyB0aGUgdHJhaW5pbmcgYW5kIHZhbGlkYXRpb24gYWNjdXJhY3kgb3ZlciAzIGVwb2Nocy4gQWNjdXJhY3kgaW5jcmVhc2VzIGNvbnNpc3RlbnRseSBhY3Jvc3MgYm90aCBkYXRhc2V0cywgaW5kaWNhdGluZyBlZmZlY3RpdmUgbGVhcm5pbmcgYW5kIG5vIG92ZXJmaXR0aW5nLioNCg0KIVtMb3NzIE92ZXIgRXBvY2hzXShpbWFnZXMvbG9zc19vdmVyX2Vwb2Nocy5wbmcpDQoNCiMjIyMgKipGaWd1cmUgMioqIOKAlCBMb3NzIE92ZXIgRXBvY2hzDQoNCipUaGlzIHBsb3Qgc2hvd3MgdGhlIHRyYWluaW5nIGFuZCB2YWxpZGF0aW9uIGxvc3Mgb3ZlciAzIGVwb2Nocy4gTG9zcyBkZWNyZWFzZXMgc3RlYWRpbHksIGNvbmZpcm1pbmcgbW9kZWwgY29udmVyZ2VuY2UgYW5kIGdlbmVyYWxpemF0aW9uLioNCg0KIyBSZXN1bHRzIA0KDQpUaGUgbW9kZWwgd2FzIGV2YWx1YXRlZCB1c2luZyA1LWZvbGQgc3RyYXRpZmllZCBjcm9zcy12YWxpZGF0aW9uIHRvIGVuc3VyZSBnZW5lcmFsaXphdGlvbiB3aXRob3V0IHJlbHlpbmcgb24gYSB0cmFkaXRpb25hbCB0cmFpbi90ZXN0IHNwbGl0Lg0KDQojIyMgRm9sZCBQZXJmb3JtYW5jZToNCg0KfCBGb2xkIHwgQWNjdXJhY3kgfCBQcmVjaXNpb24gfCBSZWNhbGwgfCBBVUMgICAgfA0KfC0tLS0tLXwtLS0tLS0tLS0tfC0tLS0tLS0tLS0tfC0tLS0tLS0tfC0tLS0tLS0tfA0KfCAxICAgIHwgMC44ODQxICAgfCAwLjg3MzcgICAgfCAwLjg5ODAgfCAwLjg4NDEgfA0KfCAyICAgIHwgMC44ODM1ICAgfCAwLjg2MTUgICAgfCAwLjkxNDAgfCAwLjg4MzUgfA0KfCAzICAgIHwgMC44ODM2ICAgfCAwLjg3NjIgICAgfCAwLjg5MzUgfCAwLjg4MzYgfA0KfCA0ICAgIHwgMC44ODQxICAgfCAwLjg2OTggICAgfCAwLjkwMzYgfCAwLjg4NDEgfA0KfCA1ICAgIHwgMC44ODM0ICAgfCAwLjg2MzAgICAgfCAwLjkxMTYgfCAwLjg4MzQgfA0KDQoqKkF2ZXJhZ2UgTWV0cmljczoqKiAtIEFjY3VyYWN5OiBgMC44ODM3YCAtIFByZWNpc2lvbjogYDAuODY4OGAgLSBSZWNhbGw6IGAwLjkwNDFgIC0gQVVDLVJPQzogYDAuODgzN2ANCg0KVGhlIG1vZGVsIHNob3dlZCBjb25zaXN0ZW50bHkgc3Ryb25nIHBlcmZvcm1hbmNlIGFjcm9zcyBhbGwgZm9sZHMsIHdpdGggbWluaW1hbCB2YXJpYW5jZS4gVmFsaWRhdGlvbiBsb3NzIGRlY3JlYXNlZCBzdGVhZGlseSBvdmVyIGVwb2NocywgYW5kIHRyYWluaW5nL3ZhbGlkYXRpb24gYWNjdXJhY3kgdHJhY2tlZCBjbG9zZWx5LCBpbmRpY2F0aW5nIG5vIG92ZXIgZml0dGluZy4NCg0KDQojIyDwn5OMIENvbmNsdXNpb24NCg0KVGhpcyBzdHVkeSBpbXBsZW1lbnRlZCBhIGRlbnNlIG5ldXJhbCBuZXR3b3JrIHRvIGRldGVjdCB0aGUgcHJlc2VuY2Ugb2YgYSBuZXcgcGFydGljbGUgd2l0aGluIGEgbGFyZ2Ugc2NpZW50aWZpYyBkYXRhc2V0IGNvbnNpc3Rpbmcgb2Ygb3ZlciA3IG1pbGxpb24gZXhhbXBsZXMgYW5kIDI4IGZlYXR1cmVzLiBUaGUgbW9kZWwgd2FzIHRyYWluZWQgdXNpbmcgNS1mb2xkIHN0cmF0aWZpZWQgY3Jvc3MtdmFsaWRhdGlvbiB0byBlbnN1cmUgZ2VuZXJhbGl6YXRpb24gYW5kIHJlcHJvZHVjaWJpbGl0eS4NCg0KVGhlIGZpbmFsIGFyY2hpdGVjdHVyZSBjb25zaXN0ZWQgb2YgZml2ZSBoaWRkZW4gbGF5ZXJzIHdpdGggQmF0Y2ggTm9ybWFsaXphdGlvbiBhbmQgUmVMVSBhY3RpdmF0aW9ucywgY3VsbWluYXRpbmcgaW4gYSBzaWdtb2lkIG91dHB1dCBmb3IgYmluYXJ5IGNsYXNzaWZpY2F0aW9uLiBNaXhlZCBwcmVjaXNpb24gb24gYW4gQTEwMCBHUFUgYWNjZWxlcmF0ZWQgdHJhaW5pbmcgd2hpbGUgbWFpbnRhaW5pbmcgbnVtZXJpY2FsIHN0YWJpbGl0eS4NCg0KQ29udmVyZ2VuY2Ugd2FzIGFjaGlldmVkIGFmdGVyIG9ubHkgMyBlcG9jaHMgcGVyIGZvbGQuIEFjcm9zcyBhbGwgZm9sZHMsIHRoZSBtb2RlbCBhY2hpZXZlZDoNCg0KLSAqKkFjY3VyYWN5Kio6IGAwLjg4MzdgDQotICoqUHJlY2lzaW9uKio6IGAwLjg2ODhgDQotICoqUmVjYWxsKio6IGAwLjkwNDFgDQotICoqQVVDLVJPQyoqOiBgMC44ODM3YA0KDQpMb3NzIGRlY2xpbmVkIGNvbnNpc3RlbnRseSwgYW5kIGFjY3VyYWN5IGltcHJvdmVkIGFjcm9zcyBlcG9jaHMsIGNvbmZpcm1pbmcgbW9kZWwgc3RhYmlsaXR5LiBBbGwgbWV0cmljcyB3ZXJlIHJlcG9ydGVkIG51bWVyaWNhbGx5LCBhbmQgYWxsIGRlc2lnbiBjaG9pY2VzIHdlcmUganVzdGlmaWVkIHRocm91Z2ggaXRlcmF0aXZlIHR1bmluZyBhbmQgYWJsYXRpb24uDQoNClRoaXMgcmVzdWx0IGRlbW9uc3RyYXRlcyB0aGUgbmV0d29ya+KAmXMgYWJpbGl0eSB0byBnZW5lcmFsaXplIGVmZmVjdGl2ZWx5IG9uIGxhcmdlLXNjYWxlIGJpbmFyeSBjbGFzc2lmaWNhdGlvbiB0YXNrcyBpbiB0aGUgY29udGV4dCBvZiBwYXJ0aWNsZSBkZXRlY3Rpb24uDQoNCi0tLQ0KDQo=