Joosep Pata commited on
Commit
6c752bd
·
1 Parent(s): 54070c0

add readme

Browse files
clic/clusters/v2.2.0/pyg-clic_20250106_193536_269746/README.md ADDED
@@ -0,0 +1,162 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Model Card for mlpf-clic-clusters-v2.2.0
2
+
3
+ This model reconstructs particles in a detector, based on the tracks and calorimeter clusters recorded by the detector.
4
+
5
+ ## Model Details
6
+
7
+ The performance is measured with respect to generator-level jets and MET computed from Pythia particles, i.e. the truth-level jets and MET.
8
+ The primary difference with respect to v2.1.0 is the inclusion of the sqrt(pt) weight in the pT and energy loss term.
9
+
10
+ <details>
11
+ <summary>Jet performance</summary>
12
+
13
+ <img src="plots_checkpoint-05-1.995116/clic_edm_ttbar_pf/jet_response_iqr_over_med_pt.png" alt="ttbar jet resolution" width="300"/>
14
+ <img src="plots_checkpoint-05-1.995116/clic_edm_qq_pf/jet_response_iqr_over_med_pt.png" alt="qq jet resolution" width="300"/>
15
+ <img src="plots_checkpoint-05-1.995116/clic_edm_ww_fullhad_pf/jet_response_iqr_over_med_pt.png" alt="ttbar jet resolution" width="300"/>
16
+
17
+ </details>
18
+
19
+ <details>
20
+ <summary>MET performance</summary>
21
+
22
+ <img src="plots_checkpoint-05-1.995116/clic_edm_ttbar_pf/met_response_iqr_over_med.png" alt="ttbar MET resolution" width="300"/>
23
+ <img src="plots_checkpoint-05-1.995116/clic_edm_qq_pf/met_response_iqr_over_med.png" alt="qq MET resolution" width="300"/>
24
+ <img src="plots_checkpoint-05-1.995116/clic_edm_ww_fullhad_pf/met_response_iqr_over_med.png" alt="ttbar MET resolution" width="300"/>
25
+
26
+ </details>
27
+
28
+ ### Model Description
29
+
30
+ - **Developed by:** Joosep Pata, Eric Wulff, Farouk Mokhtar, Mengke Zhang, David Southwick, Maria Girone, David Southwick, Javier Duarte, Michael Kagan
31
+ - **Model type:** transformer
32
+ - **License:** Apache License
33
+
34
+ ### Model Sources
35
+
36
+ - **Repository:** https://github.com/jpata/particleflow/releases/tag/v2.2.0
37
+
38
+ ## Uses
39
+ ### Direct Use
40
+
41
+ This model may be used to study the physics and computational performance on ML-based reconstruction in simulation.
42
+
43
+ ### Out-of-Scope Use
44
+
45
+ This model is not intended for physics measurements on real data.
46
+
47
+ ## Bias, Risks, and Limitations
48
+
49
+ The model has only been trained on simulation data and has not been validated against real data.
50
+ The model has not been peer reviewed or published in a peer-reviewed journal.
51
+
52
+ ## How to Get Started with the Model
53
+
54
+ Use the code below to get started with the model.
55
+
56
+ ```
57
+ #get the code
58
+ git clone https://github.com/jpata/particleflow
59
+ cd particleflow
60
+ git checkout v2.2.0
61
+
62
+ #get the models
63
+ git clone https://huggingface.co/jpata/particleflow models
64
+ ```
65
+
66
+ ## Training Details
67
+ Trained on 1x A100 for 5 epochs over ~6 days.
68
+ The training was continued from a checkpoint due to a runtime limit.
69
+
70
+ ### Training Data
71
+ The following datasets were used:
72
+ ```
73
+ 4.7G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_qq_pf/1/2.5.0
74
+ 4.8G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_qq_pf/2/2.5.0
75
+ 4.7G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_qq_pf/3/2.5.0
76
+ 4.7G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_qq_pf/4/2.5.0
77
+ 4.7G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_qq_pf/5/2.5.0
78
+ 4.7G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_qq_pf/6/2.5.0
79
+ 4.7G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_qq_pf/7/2.5.0
80
+ 4.7G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_qq_pf/8/2.5.0
81
+ 4.7G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_qq_pf/9/2.5.0
82
+ 4.8G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_qq_pf/10/2.5.0
83
+ 9.3G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ttbar_pf/1/2.5.0
84
+ 9.3G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ttbar_pf/2/2.5.0
85
+ 9.3G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ttbar_pf/3/2.5.0
86
+ 9.3G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ttbar_pf/4/2.5.0
87
+ 9.3G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ttbar_pf/5/2.5.0
88
+ 9.3G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ttbar_pf/6/2.5.0
89
+ 9.3G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ttbar_pf/7/2.5.0
90
+ 9.3G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ttbar_pf/8/2.5.0
91
+ 9.3G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ttbar_pf/9/2.5.0
92
+ 9.3G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ttbar_pf/10/2.5.0
93
+ 7.4G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ww_fullhad_pf/1/2.5.0
94
+ 7.4G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ww_fullhad_pf/2/2.5.0
95
+ 7.4G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ww_fullhad_pf/3/2.5.0
96
+ 7.4G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ww_fullhad_pf/4/2.5.0
97
+ 7.4G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ww_fullhad_pf/5/2.5.0
98
+ 7.4G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ww_fullhad_pf/6/2.5.0
99
+ 7.4G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ww_fullhad_pf/7/2.5.0
100
+ 7.4G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ww_fullhad_pf/8/2.5.0
101
+ 7.4G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ww_fullhad_pf/9/2.5.0
102
+ 7.4G /scratch/persistent/joosep/tensorflow_datasets/clic_edm_ww_fullhad_pf/10/2.5.0
103
+ ```
104
+
105
+ The datasets were generated using Key4HEP with the following scripts:
106
+ - https://github.com/HEP-KBFI/key4hep-sim/releases/tag/v1.1.0
107
+ - https://github.com/HEP-KBFI/key4hep-sim/blob/v1.1.0/clic/run_sim.sh
108
+
109
+ ## Training Procedure
110
+
111
+ ```bash
112
+ #!/bin/bash
113
+ #SBATCH --partition gpu
114
+ #SBATCH --gres gpu:a100:1
115
+ #SBATCH --mem-per-gpu 250G
116
+ #SBATCH -o logs/slurm-%x-%j-%N.out
117
+
118
+ IMG=/home/software/singularity/pytorch.simg:2024-12-03
119
+ cd ~/particleflow
120
+
121
+ ulimit -n 100000
122
+ singularity exec -B /scratch/persistent --nv \
123
+ --env PYTHONPATH=`pwd` \
124
+ --env KERAS_BACKEND=torch \
125
+ $IMG python3 mlpf/pipeline.py --gpus 1 \
126
+ --data-dir /scratch/persistent/joosep/tensorflow_datasets --config parameters/pytorch/pyg-clic.yaml \
127
+ --train --conv-type attention \
128
+ --gpu-batch-multiplier 256 --checkpoint-freq 1 --num-workers 8 --prefetch-factor 100 --comet --ntest 2000 --test-datasets clic_edm_qq_pf
129
+ ```
130
+
131
+ ## Evaluation
132
+ ```bash
133
+ #!/bin/bash
134
+ #SBATCH --partition gpu
135
+ #SBATCH --gres gpu:a100-mig:1
136
+ #SBATCH --mem-per-gpu 100G
137
+ #SBATCH -o logs/slurm-%x-%j-%N.out
138
+
139
+ IMG=/home/software/singularity/pytorch.simg:2024-12-03
140
+ cd ~/particleflow
141
+
142
+ WEIGHTS=experiments/pyg-clic_20250106_193536_269746/checkpoints/checkpoint-05-1.995116.pth
143
+ singularity exec -B /scratch/persistent --nv \
144
+ --env PYTHONPATH=`pwd` \
145
+ --env KERAS_BACKEND=torch \
146
+ $IMG python3 mlpf/pipeline.py --gpus 1 \
147
+ --data-dir /scratch/persistent/joosep/tensorflow_datasets --config parameters/pytorch/pyg-clic.yaml \
148
+ --test --make-plots --gpu-batch-multiplier 100 --load $WEIGHTS --dtype bfloat16 --num-workers 0 --ntest 50000
149
+ ```
150
+
151
+
152
+ ## Citation
153
+
154
+ ## Glossary
155
+
156
+ - PF: particle flow reconstruction
157
+ - MLPF: machine learning for particle flow
158
+ - CLIC: Compact Linear Collider
159
+
160
+ ## Model Card Contact
161
+
162
+ Joosep Pata, [email protected]