youngsm commited on
Commit
ebe3500
·
verified ·
1 Parent(s): 89676da

pimm export (config.json)

Browse files
Files changed (2) hide show
  1. README.md +8 -34
  2. config.json +109 -0
README.md CHANGED
@@ -1,27 +1,16 @@
1
  ---
2
- license: mit
3
  library_name: pimm
4
- datasets:
5
- - DeepLearnPhysics/PILArNet-M
6
  tags:
7
- - particle
8
- - physics
9
- - 3D
10
- - lartpc
11
- - panda
12
- - point-transformer-v3
13
  ---
14
 
15
-
16
  # Panda — interaction panoptic detector
17
 
18
- A query-based panoptic detector that groups LArTPC points into
19
- interactions (Mask2Former / OneFormer3D-style masked cross-attention decoder over a
20
- PTv3 backbone), with a per-query classification head and an auxiliary stuff head.
21
 
22
- - **pimm type:** `detector-v4`
23
- - **queries:** 12 · **classes:** 2 · **stuff classes:** [0]
24
- - **decoder depth:** 3 · **hidden:** 256 · **heads:** 16
25
 
26
  ## Loading
27
 
@@ -30,24 +19,9 @@ import pimm
30
  model = pimm.from_pretrained("hf://deeplearnphysics/panda-interaction")
31
  ```
32
 
33
- The architecture and all hyper-parameters are carried in `training_config.json`,
34
- so no config file is needed. Weights are bitwise-identical to the original
35
- checkpoint.
36
-
37
- ## Input
38
-
39
- A pimm `Point` dict for LArTPC (PILArNet) point clouds: `coord` (xyz) + `energy`,
40
- collected as `feat_keys=("coord", "energy")` (4 input channels). Coordinates are
41
- normalized in the model forward.
42
-
43
- ## Notes
44
-
45
- - Config sets `enable_flash=True`. On CPU or non-FlashAttention setups, override
46
- it (e.g. pass `enable_flash=False` to `from_pretrained`, or for detectors set it
47
- on the `backbone`).
48
 
49
  ## Provenance
50
 
51
- Repackaged from the original [`DeepLearnPhysics/panda`](https://github.com/DeepLearnPhysics/panda) checkpoints into the
52
- [`pimm`](https://github.com/youngsm/particle-imaging-models) export format. Inherits
53
- the license of the source repository.
 
1
  ---
 
2
  library_name: pimm
 
 
3
  tags:
4
+ - particle-physics
5
+ - lartpc
6
+ - point-cloud
 
 
 
7
  ---
8
 
 
9
  # Panda — interaction panoptic detector
10
 
11
+ Query-based panoptic detector grouping LArTPC points into interactions (masked cross-attention decoder over a PTv3 backbone).
 
 
12
 
13
+ - **pimm type:** `detector-v4` · 12 queries · 2 classes
 
 
14
 
15
  ## Loading
16
 
 
19
  model = pimm.from_pretrained("hf://deeplearnphysics/panda-interaction")
20
  ```
21
 
22
+ Architecture + hyper-parameters travel in `config.json`, so no config file is
23
+ needed. Weights are bitwise-identical to the original checkpoint.
 
 
 
 
 
 
 
 
 
 
 
 
 
24
 
25
  ## Provenance
26
 
27
+ Repackaged from the original [`panda`](https://github.com/DeepLearnPhysics/panda) checkpoints into the [`pimm`](https://github.com/youngsm/particle-imaging-models) export format. Inherits the source repo's license.
 
 
config.json ADDED
@@ -0,0 +1,109 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": {
3
+ "type": "detector-v4",
4
+ "labels": [
5
+ "interaction"
6
+ ],
7
+ "num_queries": 12,
8
+ "num_classes": 2,
9
+ "use_stuff_head": true,
10
+ "stuff_classes": [
11
+ 0
12
+ ],
13
+ "mlp_point_proj": false,
14
+ "full_in_channels": 1232,
15
+ "hidden_channels": 256,
16
+ "num_heads": 16,
17
+ "depth": 3,
18
+ "mlp_ratio": 4.0,
19
+ "qkv_bias": true,
20
+ "qk_scale": null,
21
+ "layer_scale": null,
22
+ "pre_norm": true,
23
+ "query_type": "learned",
24
+ "pos_emb": true,
25
+ "supervise_attn_mask": true,
26
+ "enable_flash": false,
27
+ "upcast_attention": false,
28
+ "upcast_softmax": false,
29
+ "backbone": {
30
+ "type": "PT-v3m2",
31
+ "in_channels": 4,
32
+ "order": [
33
+ "hilbert",
34
+ "hilbert-trans",
35
+ "z",
36
+ "z-trans"
37
+ ],
38
+ "stride": [
39
+ 2,
40
+ 2,
41
+ 2,
42
+ 2
43
+ ],
44
+ "enc_depths": [
45
+ 3,
46
+ 3,
47
+ 3,
48
+ 9,
49
+ 3
50
+ ],
51
+ "enc_channels": [
52
+ 48,
53
+ 96,
54
+ 192,
55
+ 384,
56
+ 512
57
+ ],
58
+ "enc_num_head": [
59
+ 3,
60
+ 6,
61
+ 12,
62
+ 24,
63
+ 32
64
+ ],
65
+ "enc_patch_size": [
66
+ 256,
67
+ 256,
68
+ 256,
69
+ 256,
70
+ 256
71
+ ],
72
+ "mlp_ratio": 4,
73
+ "qkv_bias": true,
74
+ "qk_scale": null,
75
+ "layer_scale": 1e-05,
76
+ "attn_drop": 0.0,
77
+ "proj_drop": 0.0,
78
+ "drop_path": 0.3,
79
+ "shuffle_orders": true,
80
+ "pre_norm": true,
81
+ "enable_rpe": false,
82
+ "enable_flash": true,
83
+ "upcast_attention": false,
84
+ "upcast_softmax": false,
85
+ "traceable": false,
86
+ "mask_token": false,
87
+ "enc_mode": true,
88
+ "freeze_encoder": false
89
+ },
90
+ "criteria": [
91
+ {
92
+ "type": "FastUnifiedInstanceLoss",
93
+ "cost_mask": 1.0,
94
+ "cost_dice": 1.0,
95
+ "cost_class": 1.0,
96
+ "loss_weight_focal": 2.0,
97
+ "loss_weight_dice": 5.0,
98
+ "cls_weight_matched": 2.0,
99
+ "cls_weight_noobj": 0.5,
100
+ "focal_alpha": 0.25,
101
+ "focal_gamma": 2.0,
102
+ "aux_loss_weight": 1.0,
103
+ "num_points": 100000,
104
+ "truth_label": "instance",
105
+ "noobj_mask_loss_weight": 0.0
106
+ }
107
+ ]
108
+ }
109
+ }