zouinkhim commited on
Commit
1fb3b1b
·
verified ·
1 Parent(s): 7179352

Add experimental 2D-slice distilled mito students (setup_53/54, step 20000)

Browse files
2d/README.md ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # 2D-slice mito models (experimental)
2
+
3
+ One z-slice in, one slice out: `input` float32 `[1,1,1,N,N]` → `output` float32 raw logits `[1,3,1,N-88,N-88]`
4
+ (mito affinities z, y, x; threshold at 0). 16 nm, input norm `uint8/255*2-1`, same as the 3D models.
5
+
6
+ These are **distilled students** of the 3D models `setup_53` / `setup_54`: every 3D kernel collapsed to 2D (sum of depth
7
+ taps) and fine-tuned to reproduce the 3D model's predictions slice by slice (no labels; random axis permutations so
8
+ xz/yz views work too). Collapsing alone gives F1 ≈ 0.08 (53) / 0.38 (54); distillation recovers most of the 3D accuracy.
9
+ Checkpoint step and per-file fidelity (vs the PyTorch student) are in each folder's `manifest.json`.
10
+
11
+ WebGPU (Chrome, Apple M-series, fp16): setup_53 1068² → 980² in 264 ms (3.6 Mpix/s), 556² → 468² in 64 ms,
12
+ vs 752 ms per 172³ → 84³ block for the 3D model (0.79 Mvox/s).
13
+
14
+ cellmap-flow serverless: Input size `1,N,N`, Output size `1,N-88,N-88`, voxel 16,16,16, Channels 3, Has channel axis true.
2d/setup_53/manifest.json ADDED
@@ -0,0 +1,80 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "setup_53",
3
+ "kind": "2D slice student distilled from the 3D model (train_2d_distill.py)",
4
+ "checkpoint": "runs/setup_53_2d/student_20000.pt",
5
+ "step": 20000,
6
+ "channels": [
7
+ "mito_aff_z",
8
+ "mito_aff_y",
9
+ "mito_aff_x"
10
+ ],
11
+ "voxel_size_nm": 16,
12
+ "io": "input float32 [1,1,1,N,N] (one z-slice); output float32 raw logits [1,3,1,N-88,N-88]",
13
+ "input_norm": [
14
+ {
15
+ "name": "MinMaxNormalizer",
16
+ "min_value": 0,
17
+ "max_value": 255
18
+ },
19
+ {
20
+ "name": "LambdaNormalizer",
21
+ "expression": "2*x-1"
22
+ }
23
+ ],
24
+ "variants": [
25
+ {
26
+ "variant": "fp32",
27
+ "input_size": 300,
28
+ "output_size": 212,
29
+ "file": "setup_53_mito_affinities_16nm_2d_in300_fp32.onnx",
30
+ "file_mb": 7.75,
31
+ "max_abs": 6.103515625e-05,
32
+ "flip_frac": 0.0
33
+ },
34
+ {
35
+ "variant": "fp16",
36
+ "input_size": 300,
37
+ "output_size": 212,
38
+ "file": "setup_53_mito_affinities_16nm_2d_in300_fp16.onnx",
39
+ "file_mb": 3.9,
40
+ "max_abs": 0.13983917236328125,
41
+ "flip_frac": 5.1916459000830666e-05
42
+ },
43
+ {
44
+ "variant": "fp32",
45
+ "input_size": 556,
46
+ "output_size": 468,
47
+ "file": "setup_53_mito_affinities_16nm_2d_in556_fp32.onnx",
48
+ "file_mb": 7.75,
49
+ "max_abs": 6.103515625e-05,
50
+ "flip_frac": 0.0
51
+ },
52
+ {
53
+ "variant": "fp16",
54
+ "input_size": 556,
55
+ "output_size": 468,
56
+ "file": "setup_53_mito_affinities_16nm_2d_in556_fp16.onnx",
57
+ "file_mb": 3.9,
58
+ "max_abs": 0.15328407287597656,
59
+ "flip_frac": 4.717900017045316e-05
60
+ },
61
+ {
62
+ "variant": "fp32",
63
+ "input_size": 1068,
64
+ "output_size": 980,
65
+ "file": "setup_53_mito_affinities_16nm_2d_in1068_fp32.onnx",
66
+ "file_mb": 7.75,
67
+ "max_abs": 6.866455078125e-05,
68
+ "flip_frac": 0.0
69
+ },
70
+ {
71
+ "variant": "fp16",
72
+ "input_size": 1068,
73
+ "output_size": 980,
74
+ "file": "setup_53_mito_affinities_16nm_2d_in1068_fp16.onnx",
75
+ "file_mb": 3.9,
76
+ "max_abs": 0.16084671020507812,
77
+ "flip_frac": 2.8807441343884494e-05
78
+ }
79
+ ]
80
+ }
2d/setup_53/setup_53_mito_affinities_16nm_2d_in1068_fp16.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5167d62987b1af5f4b58f18eb4da869659837a760469859b690dbb9442f15415
3
+ size 3897097
2d/setup_53/setup_53_mito_affinities_16nm_2d_in1068_fp32.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e7e60f8b97a525563da923932e53992453a72e84c0528dc45ef1b740f3c94787
3
+ size 7749427
2d/setup_53/setup_53_mito_affinities_16nm_2d_in300_fp16.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:587586837af4f77d4f08d2fd6b151a024dea4b6c448914d3b899e4837003fb71
3
+ size 3896990
2d/setup_53/setup_53_mito_affinities_16nm_2d_in300_fp32.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3b8761332db032a4fcac5a15bbf4e1a5cfcbc696731ff8cd8a7e6005184ddd7a
3
+ size 7749427
2d/setup_53/setup_53_mito_affinities_16nm_2d_in556_fp16.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cdead7b8116e610681e4525f013f3497b504c1e6db37a6253f973cccb27a412f
3
+ size 3897050
2d/setup_53/setup_53_mito_affinities_16nm_2d_in556_fp32.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e99fe7296ecdc8cffb45861d0d2a440a50d1d854957470bded600bc1e1d506bb
3
+ size 7749427
2d/setup_54/manifest.json ADDED
@@ -0,0 +1,80 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "setup_54",
3
+ "kind": "2D slice student distilled from the 3D model (train_2d_distill.py)",
4
+ "checkpoint": "runs/setup_54_2d/student_20000.pt",
5
+ "step": 20000,
6
+ "channels": [
7
+ "mito_aff_z",
8
+ "mito_aff_y",
9
+ "mito_aff_x"
10
+ ],
11
+ "voxel_size_nm": 16,
12
+ "io": "input float32 [1,1,1,N,N] (one z-slice); output float32 raw logits [1,3,1,N-88,N-88]",
13
+ "input_norm": [
14
+ {
15
+ "name": "MinMaxNormalizer",
16
+ "min_value": 0,
17
+ "max_value": 255
18
+ },
19
+ {
20
+ "name": "LambdaNormalizer",
21
+ "expression": "2*x-1"
22
+ }
23
+ ],
24
+ "variants": [
25
+ {
26
+ "variant": "fp32",
27
+ "input_size": 300,
28
+ "output_size": 212,
29
+ "file": "setup_54_mito_affinities_16nm_2d_in300_fp32.onnx",
30
+ "file_mb": 15.05,
31
+ "max_abs": 1.9550323486328125e-05,
32
+ "flip_frac": 0.0
33
+ },
34
+ {
35
+ "variant": "fp16",
36
+ "input_size": 300,
37
+ "output_size": 212,
38
+ "file": "setup_54_mito_affinities_16nm_2d_in300_fp16.onnx",
39
+ "file_mb": 7.56,
40
+ "max_abs": 0.012979507446289062,
41
+ "flip_frac": 0.0
42
+ },
43
+ {
44
+ "variant": "fp32",
45
+ "input_size": 556,
46
+ "output_size": 468,
47
+ "file": "setup_54_mito_affinities_16nm_2d_in556_fp32.onnx",
48
+ "file_mb": 15.05,
49
+ "max_abs": 4.76837158203125e-05,
50
+ "flip_frac": 0.0
51
+ },
52
+ {
53
+ "variant": "fp16",
54
+ "input_size": 556,
55
+ "output_size": 468,
56
+ "file": "setup_54_mito_affinities_16nm_2d_in556_fp16.onnx",
57
+ "file_mb": 7.56,
58
+ "max_abs": 0.024660348892211914,
59
+ "flip_frac": 1.2175225850439526e-05
60
+ },
61
+ {
62
+ "variant": "fp32",
63
+ "input_size": 1060,
64
+ "output_size": 972,
65
+ "file": "setup_54_mito_affinities_16nm_2d_in1060_fp32.onnx",
66
+ "file_mb": 15.05,
67
+ "max_abs": 0.0002117156982421875,
68
+ "flip_frac": 0.0
69
+ },
70
+ {
71
+ "variant": "fp16",
72
+ "input_size": 1060,
73
+ "output_size": 972,
74
+ "file": "setup_54_mito_affinities_16nm_2d_in1060_fp16.onnx",
75
+ "file_mb": 7.56,
76
+ "max_abs": 0.02630472183227539,
77
+ "flip_frac": 2.2932931407249348e-05
78
+ }
79
+ ]
80
+ }
2d/setup_54/setup_54_mito_affinities_16nm_2d_in1060_fp16.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e09dc8db59afb8d6d5d0a3be313a0535f7eac624d618337d3cea5bbe17612212
3
+ size 7564282
2d/setup_54/setup_54_mito_affinities_16nm_2d_in1060_fp32.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5ca8401b5c4fb6bf8fdfab780109ad4e4f5aabae127c8905081d783e87343efd
3
+ size 15048743
2d/setup_54/setup_54_mito_affinities_16nm_2d_in300_fp16.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ae0a92d5c48934a0dc410cc2f90c983700424d9559fa17da10725e2760ecc09b
3
+ size 7564138
2d/setup_54/setup_54_mito_affinities_16nm_2d_in300_fp32.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fabcf3cfb738febb98ecd6a471b7f5313d68ed472ad1d7f17bcb3159a45b549c
3
+ size 15048743
2d/setup_54/setup_54_mito_affinities_16nm_2d_in556_fp16.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ff877ef54076e0e5474a0446ef5d43a280edfb9e0327457225eb73bf61d014ef
3
+ size 7564224
2d/setup_54/setup_54_mito_affinities_16nm_2d_in556_fp32.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b2cd9a024fc390b667de11fd92f301a81a4884fe756ded8650348506e50dbfd5
3
+ size 15048743