Skip to content
Snippets Groups Projects
  • grheine's avatar
    db653a99
    - added graph building without superlayer separation · db653a99
    grheine authored
    - made usage of MC information optional
    - removed unnecessary code snippets
    - upgrade from release 6 to release 9
    - added newest trained models
    - simplified calling tracking code
    - moved evaluation modules to extra file to simplify main file
    - added example events
    - fixed bugs in MC generation
    db653a99
    History
    - added graph building without superlayer separation
    grheine authored
    - made usage of MC information optional
    - removed unnecessary code snippets
    - upgrade from release 6 to release 9
    - added newest trained models
    - simplified calling tracking code
    - moved evaluation modules to extra file to simplify main file
    - added example events
    - fixed bugs in MC generation

GNN Cleanup

GNN Cleanup is a tool designed to improve tracking performance in the Belle II experiment by filtering background hits in the Central Drift Chamber (CDC) using a Graph Neural Network (GNN)-based approach. By leveraging graph-based inference, the HitCleanupModule efficiently distinguishes between signal and background hits, enhancing tracking accuracy and computational efficiency, especially in high-background conditions.

Features

  • Hit Cleanup Module: Filters background hits in the CDC using GNN inference, improving robustness to high-luminosity environments.

    • get CDC Hit Info Module: Extracts CDC information on hit level.
    • Graph Construction: Builds graph representations of CDC hits, including nodes (e.g., wire positions) and edges (e.g., spatial-temporal relationships).
    • Preprocessing: Applies feature clipping, scaling, and shifting to prepare graph data.
    • GNN-Based Filtering: Uses pretrained GNN models to perform hit filtering.
  • Example Scripts:

    • A ready-to-use script demonstrates the full pipeline, including cleanup and tracking evaluation.
    • Runs full tracking workflows, including track finding and fitting, with or without the cleanup step.
    • Outputs tracking metrics, such as fitting charge efficiency, fake rate, and clone rate.

Setup and Installation

  1. Clone the Repository:
    git clone git@gitlab.etp.kit.edu:grheine/gnn_cleanup.git
    cd gnn_cleanup
  2. Run Setup Script: Open your terminal and run:
    source setup.sh
    This sets up basf2 release 6, sources an virtual python environment and sets the PATH variables.

Example Usage

To test the gnn_cleanup, run the example script with the appropriate options:

python3 examples/testing_withoutb2luigi.py --n 100

Using other event files

For using other events first update the testing_config.json file. There you can specify the following settings:

  • load_path: path to existing event root file
  • expList: experiment number list for EventInfoSetter
  • runList: run number list for EventInfoSetter
  • bg_file_list_path: path to background file lists

You can either use existing event root files by setting the load_path to point to your files or generate new MC events by using the --generate flag and updating the bg_file_list_path, expList and runList.