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

update readme

Browse files
README.md CHANGED
@@ -19,7 +19,9 @@ Please see the linked model cards below for more details.
19
  - [clic/clusters/v1.9.0](clic/clusters/v1.9.0/README.md)
20
  - [clic/clusters/v2.0.0](clic/clusters/v2.0.0/README.md)
21
  - [clic/clusters/v2.1.0](clic/clusters/v2.1.0/pyg-clic_20241106_104416_929167/README.md)
 
22
  - [cms/v2.1.0](cms/v2.1.0/pyg-cms_20241101_090645_682892/README.md)
 
23
 
24
 
25
  ## Papers
 
19
  - [clic/clusters/v1.9.0](clic/clusters/v1.9.0/README.md)
20
  - [clic/clusters/v2.0.0](clic/clusters/v2.0.0/README.md)
21
  - [clic/clusters/v2.1.0](clic/clusters/v2.1.0/pyg-clic_20241106_104416_929167/README.md)
22
+ - [clic/clusters/v2.2.0](clic/clusters/v2.2.0/pyg-clic_20250106_193536_269746/README.md)
23
  - [cms/v2.1.0](cms/v2.1.0/pyg-cms_20241101_090645_682892/README.md)
24
+ - [cms/v2.2.0](cms/v2.2.0/pyg-cms_20241212_101648_120237/README.md)
25
 
26
 
27
  ## Papers
cms/v2.2.0/pyg-cms_20241212_101648_120237/README.md ADDED
@@ -0,0 +1,189 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Model Card for mlpf-cms-v2.2.0
2
+
3
+ This model reconstructs particles in a detector, based on the tracks and calorimeter clusters recorded by the detector.
4
+ The primary difference with respect to v2.2.0 is the inclusion of the sqrt(pt) weight term in the pT and energy regression loss.
5
+ Additionally, the model has been scaled down to ~5M parameters (previously ~100M) for more efficient inference.
6
+
7
+ ## Model Details
8
+
9
+ The performance is measured with respect to generator-level jets and MET computed from Pythia particles, i.e. the truth-level jets and MET.
10
+
11
+ <details>
12
+ <summary>Jet performance</summary>
13
+
14
+ <img src="plots_checkpoint-05-3.498507/cms_pf_qcd/jet_response_iqr_over_med_pt.png" alt="ttbar jet resolution" width="300"/>
15
+ <img src="plots_checkpoint-05-3.498507/cms_pf_ttbar/jet_response_iqr_over_med_pt.png" alt="qq jet resolution" width="300"/>
16
+ <img src="plots_checkpoint-05-3.498507/cms_pf_ztt/jet_response_iqr_over_med_pt.png" alt="ttbar jet resolution" width="300"/>
17
+
18
+ </details>
19
+
20
+ <details>
21
+ <summary>MET performance</summary>
22
+
23
+ <img src="plots_checkpoint-05-3.498507/cms_pf_qcd/met_response_iqr_over_med.png" alt="ttbar MET resolution" width="300"/>
24
+ <img src="plots_checkpoint-05-3.498507/cms_pf_ttbar/met_response_iqr_over_med.png" alt="qq MET resolution" width="300"/>
25
+ <img src="plots_checkpoint-05-3.498507/cms_pf_ztt/met_response_iqr_over_med.png" alt="ttbar MET resolution" width="300"/>
26
+
27
+ </details>
28
+
29
+ ### Model Description
30
+
31
+ - **Developed by:** CMS MLPF Team
32
+ - **Model type:** transformer
33
+ - **License:** Apache License
34
+
35
+ ### Model Sources
36
+
37
+ - **Repository:** https://github.com/jpata/particleflow/releases/tag/v2.2.0
38
+
39
+ ## Uses
40
+ ### Direct Use
41
+
42
+ This model may be used to study the physics and computational performance on ML-based reconstruction in simulation within the CMS collaboration.
43
+
44
+ ### Out-of-Scope Use
45
+
46
+ This model is not intended for physics measurements on real data or for use outside the CMS collaboration.
47
+
48
+ ## Bias, Risks, and Limitations
49
+
50
+ The model has only been trained on simulation data and has not been validated against real data.
51
+ The model has not been peer reviewed or published in a peer-reviewed journal.
52
+
53
+ ## How to Get Started with the Model
54
+
55
+ Use the code below to get started with the model.
56
+
57
+ ```
58
+ #get the code
59
+ git clone https://github.com/jpata/particleflow
60
+ cd particleflow
61
+ git checkout v2.2.0
62
+
63
+ #get the models
64
+ git clone https://huggingface.co/jpata/particleflow models
65
+ ```
66
+
67
+ ## Training Details
68
+ Trained on 1x A100 for 5 epochs over ~2 days.
69
+
70
+ ### Training Data
71
+ The following datasets were used:
72
+ ```
73
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd/1/2.5.0
74
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd/2/2.5.0
75
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd/3/2.5.0
76
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd/4/2.5.0
77
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd/5/2.5.0
78
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd/6/2.5.0
79
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd/7/2.5.0
80
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd/8/2.5.0
81
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd/9/2.5.0
82
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd/10/2.5.0
83
+ 8.4G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd_nopu/1/2.5.0
84
+ 8.4G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd_nopu/2/2.5.0
85
+ 8.4G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd_nopu/3/2.5.0
86
+ 8.4G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd_nopu/4/2.5.0
87
+ 8.4G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd_nopu/5/2.5.0
88
+ 8.4G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd_nopu/6/2.5.0
89
+ 8.4G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd_nopu/7/2.5.0
90
+ 8.4G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd_nopu/8/2.5.0
91
+ 8.4G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd_nopu/9/2.5.0
92
+ 8.4G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_qcd_nopu/10/2.5.0
93
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar/1/2.5.0
94
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar/2/2.5.0
95
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar/3/2.5.0
96
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar/4/2.5.0
97
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar/5/2.5.0
98
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar/6/2.5.0
99
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar/7/2.5.0
100
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar/8/2.5.0
101
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar/9/2.5.0
102
+ 19G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar/10/2.5.0
103
+ 8.6G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar_nopu/1/2.5.0
104
+ 8.6G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar_nopu/2/2.5.0
105
+ 8.6G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar_nopu/3/2.5.0
106
+ 8.6G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar_nopu/4/2.5.0
107
+ 8.6G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar_nopu/5/2.5.0
108
+ 8.6G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar_nopu/6/2.5.0
109
+ 8.6G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar_nopu/7/2.5.0
110
+ 8.6G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar_nopu/8/2.5.0
111
+ 8.6G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar_nopu/9/2.5.0
112
+ 8.6G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ttbar_nopu/10/2.5.0
113
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt/1/2.5.0
114
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt/2/2.5.0
115
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt/3/2.5.0
116
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt/4/2.5.0
117
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt/5/2.5.0
118
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt/6/2.5.0
119
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt/7/2.5.0
120
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt/8/2.5.0
121
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt/9/2.5.0
122
+ 18G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt/10/2.5.0
123
+ 5.8G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt_nopu/1/2.5.0
124
+ 5.8G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt_nopu/2/2.5.0
125
+ 5.7G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt_nopu/3/2.5.0
126
+ 5.8G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt_nopu/4/2.5.0
127
+ 5.7G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt_nopu/5/2.5.0
128
+ 5.7G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt_nopu/6/2.5.0
129
+ 5.7G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt_nopu/7/2.5.0
130
+ 5.7G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt_nopu/8/2.5.0
131
+ 5.7G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt_nopu/9/2.5.0
132
+ 5.8G /scratch/persistent/joosep/tensorflow_datasets/cms_pf_ztt_nopu/10/2.5.0
133
+ ```
134
+
135
+ ## Training Procedure
136
+
137
+ ```bash
138
+ #!/bin/bash
139
+ #SBATCH --partition gpu
140
+ #SBATCH --gres gpu:a100:1
141
+ #SBATCH --mem-per-gpu 300G
142
+ #SBATCH -o logs/slurm-%x-%j-%N.out
143
+
144
+ IMG=/home/software/singularity/pytorch.simg:2024-12-03
145
+ cd ~/particleflow
146
+
147
+ ulimit -n 100000
148
+ singularity exec -B /scratch/persistent --nv \
149
+ --env PYTHONPATH=`pwd` \
150
+ --env KERAS_BACKEND=torch \
151
+ $IMG python3 mlpf/pipeline.py --gpus 1 \
152
+ --data-dir /scratch/persistent/joosep/tensorflow_datasets --config parameters/pytorch/pyg-cms.yaml \
153
+ --train --conv-type attention \
154
+ --gpu-batch-multiplier 5 --checkpoint-freq 1 --num-workers 8 --prefetch-factor 50 --comet --ntest 1000 --test-datasets cms_pf_qcd_nopu
155
+ ```
156
+
157
+ ## Evaluation
158
+ ```bash
159
+ #!/bin/bash
160
+ #SBATCH --partition gpu
161
+ #SBATCH --gres gpu:mig:1
162
+ #SBATCH --mem-per-gpu 100G
163
+ #SBATCH -o logs/slurm-%x-%j-%N.out
164
+
165
+ IMG=/home/software/singularity/pytorch.simg:2024-08-18
166
+ cd ~/particleflow
167
+
168
+ WEIGHTS=experiments/pyg-cms_20241212_101648_120237/checkpoints/checkpoint-05-3.498507.pth
169
+ DATASET=$1
170
+ env
171
+ singularity exec -B /local -B /scratch/persistent --nv \
172
+ --env PYTHONPATH=`pwd` \
173
+ --env KERAS_BACKEND=torch \
174
+ $IMG python mlpf/pipeline.py --gpus 1 \
175
+ --data-dir /scratch/persistent/joosep/tensorflow_datasets --config parameters/pytorch/pyg-cms.yaml \
176
+ --test --make-plots --gpu-batch-multiplier 2 --load $WEIGHTS --ntest 10000 --dtype bfloat16 --num-workers 1 --prefetch-factor 10 --test-datasets $DATASET
177
+ ```
178
+ ## Citation
179
+
180
+ ## Glossary
181
+
182
+ - PF: particle flow reconstruction
183
+ - MLPF: machine learning for particle flow
184
+ - CMS: Compact Muon Solenoid
185
+
186
+ ## Model Card Contact
187
+
188
+ Joosep Pata, [email protected]
189
+