Skip to content
Snippets Groups Projects
Select Git revision
  • main default protected
1 result

README.md

Blame
    • 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.