Skip to content

[PWGJE] Add Particle Transformer b-jet tagger to jetTaggerHF - #18409

Open
ahmadtabikh wants to merge 1 commit into
AliceO2Group:masterfrom
ahmadtabikh:part-implementation
Open

ahmadtabikh wants to merge 1 commit into
AliceO2Group:masterfrom
ahmadtabikh:part-implementation

Conversation

@ahmadtabikh

Copy link
Copy Markdown

Adds a Particle Transformer (ParT) b-jet tagger to jetTaggerHF, alongside the existing GNN tagger. It writes its D_b score to the same scoreML / tagging tables.

  1. jetTaggerHF.cxx: new `processAlgorithmParT (data and MCD, off by default) and a part ConfigurableGroup (nConstit, nFeat, nVec, padWrap, minTracks). The model is loaded from CCDB or from a local file.
  2. JetTaggingUtilities.h: analyzeJetTrackInfo4ParT() builds the 10 per-constituent features and the 4-vector. getDbFromProb() computes D_b directly from the probabilities, with no softmax since the exported model already applies it.
  3. MlResponseHfTagging.h: ParTBjetAllocator reproduces the input preparation of weaver (the framework used to train the ParT model): pf_features (1, nFeat, nConstit), pf_vectors (1, nVec, nConstit) and pf_mask (1, 1, nConstit), with truncation at nConstit, wrap or zero padding (mask 0 on padded slots), and non-finite values set to 0. getModelOutputMultiInput() evaluates models with several input tensors.
    ParT_O2_pipeline_colored.pdf

@github-actions

Copy link
Copy Markdown

O2 linter results: ❌ 0 errors, ⚠️ 38 warnings, 🔕 7 disabled


// The exported graph applies the softmax itself, so the output is already
// [p_b, p_c, p_udsg] and must not be passed through getDb(), which would softmax again.
auto modelOutput = bMlResponse.getModelOutputMultiInput(parTInput, 0);

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

doesnt this always take the model in the first pT bin? is it intended?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

2 participants