AlonSaguy commited on
Commit
94711f6
·
verified ·
1 Parent(s): afe0db2

Publish 2026_W42_unit

Browse files
README.md CHANGED
@@ -9,27 +9,32 @@ tags:
9
  - international-brain-lab
10
  ---
11
 
12
- # Ephys Atlas unit-level interpolation model (2026_W41)
13
 
14
  Predicts **which kinds of neurons you expect to record at a brain position**, and their expected
15
  waveform phenotype. Trained by the
16
  [International Brain Laboratory](https://www.internationalbrainlab.com/) on spike-sorted units of
17
  the Ephys Atlas release `2026_W41` (56497 training units).
18
 
19
- The model has three stages:
20
 
21
  1. a multimodal autoencoder embeds each unit's multi-channel **waveform**, 3D
22
  **autocorrelogram** and **population coupling** (waveform, acg, stpc) into a
23
  60-d latent -- its phenotype;
24
- 2. a **25-component Gaussian mixture** over the standardised latents, whose
25
- components read as putative cell types. Component shapes are global; the **mixture weights
26
- depend on the molecular and cellular context** (PCA volumes of the molecular and cellular
27
- atlases) at the unit's position;
28
- 3. a **context-local exemplar readout** maps the model back to 10 interpretable waveform features: `depolarisation_slope`, `recovery_slope`, `repolarisation_slope`, `spatial_spread_um`, `tip_val`, `spike_width_secs`, `predepolarisation_width_secs`, `spike_amplitude`, `peak_to_trough_ratio_log`, `polarity`. At a position, each component is represented by its training members whose molecular context resembles the position's (the 4096 nearest in a 3-d context key, shrunk toward all of the component's members -- the more so the farther the context lies from the training data, and entirely where there is no context). So the context sets the mixture weights **and** selects which training exemplars represent each component; the latent density depends on it only through the weights.
 
 
 
 
 
29
 
30
  > **The input is a position.** `predict` takes `x, y, z` (IBL/Allen frame, metres) and returns the
31
- > expected phenotype there: the local component weights times each component's expected features
32
- > there. `mixture_weights` returns the local putative cell-type composition itself.
33
 
34
  ## Quickstart
35
 
@@ -37,27 +42,29 @@ The model has three stages:
37
  import pandas as pd
38
  from ephysatlas import load_pretrained
39
 
40
- model = load_pretrained("int-brain-lab/ea-encoder-unit", revision="2026_W41")
41
  df = pd.read_parquet("example/positions_sample.parquet") # positions (x, y, z)
42
  out = model.predict(df) # one pred_<feature> column each
43
- weights = model.mixture_weights(df) # putative cell-type composition
44
- draws = model.sample(df, n_samples=16) # training units drawn from the predictive distribution
 
45
  model.selftest() # reproduces the shipped outputs
46
  ```
47
 
48
  Units you recorded yourself can be embedded with `model.encode(waveform, acg, stpc)` (arrays shaped
49
- as in `config.json`), then assigned to a putative cell type with `model.assign(z)`.
50
 
51
  ## What ships here
52
 
53
  - `autoencoder.pt`, `shared_latent_scaler.joblib` -- the phenotype encoder and its latent scaler.
54
- - `global_gmm.joblib` -- the mixture's component means and covariances.
55
- - `context_transform.joblib`, `context_weight_model_bundle.pt` -- context -> mixture weights.
56
- - `knn_bank.npz` -- standardised latents, phenotype features, GMM components and context keys of the training units (the exemplars; part of the model, like the stored points of any nearest-neighbour model).
57
- - `component_feature_expectations.npz` -- each component's expected features over the whole
58
- brain.
 
59
  - `agea_vol_pca.npy`, `merfish_vol_pca.npy` -- the molecular and cellular context volumes, the same frozen
60
- volumes as the channel-level model `int-brain-lab/ea-encoder-channel` of this vintage.
61
  - `split.json`, `config.json`, `preprocessing/unit_stats.npz`, `results/` -- the probe split, the
62
  training configuration, the training-data statistics and held-out evaluation summaries.
63
 
@@ -69,12 +76,12 @@ is only needed to retrain the model or to reproduce the atlas-wide analyses.
69
 
70
  ## Reproducibility
71
 
72
- **Pin the revision.** `revision="2026_W41"` is an immutable tag; omitting it resolves to `main`,
73
  which tracks the currently recommended model. `ephysatlas_model.json` records the training-time
74
  environment and random seed; `model.selftest()` verifies your install reproduces the shipped
75
  output (no IBL account needed).
76
 
77
  ## Citation
78
 
79
- Please cite the International Brain Laboratory Ephys Atlas. Model id `2026_W41_unit`, vintage
80
- `2026_W41`.
 
9
  - international-brain-lab
10
  ---
11
 
12
+ # Ephys Atlas unit-level interpolation model (2026_W42)
13
 
14
  Predicts **which kinds of neurons you expect to record at a brain position**, and their expected
15
  waveform phenotype. Trained by the
16
  [International Brain Laboratory](https://www.internationalbrainlab.com/) on spike-sorted units of
17
  the Ephys Atlas release `2026_W41` (56497 training units).
18
 
19
+ The model has four stages:
20
 
21
  1. a multimodal autoencoder embeds each unit's multi-channel **waveform**, 3D
22
  **autocorrelogram** and **population coupling** (waveform, acg, stpc) into a
23
  60-d latent -- its phenotype;
24
+ 2. a **hierarchical Gaussian mixture** over the standardised latents: 30 putative cell
25
+ types, each split into at most 10 sub-types (300 in all). Assignment is
26
+ top-down -- the most likely type, then the most likely of its sub-types -- so a unit's
27
+ sub-type always lies inside its type. The types and sub-types are global;
28
+ 3. the **sub-type weights depend on the molecular and cellular context** (PCA volumes of the
29
+ molecular and cellular atlases) at the position: one network predicts the type weights, a
30
+ second the shares of the sub-types within each type;
31
+ 4. a **members readout** maps the model back to 10 interpretable waveform features:
32
+ `depolarisation_slope`, `recovery_slope`, `repolarisation_slope`, `spatial_spread_um`, `tip_val`, `spike_width_secs`, `predepolarisation_width_secs`, `spike_amplitude`, `peak_to_trough_ratio_log`, `polarity`. Each sub-type is represented by its training units, from anywhere in the brain,
33
+ weighted by their posterior of the sub-type.
34
 
35
  > **The input is a position.** `predict` takes `x, y, z` (IBL/Allen frame, metres) and returns the
36
+ > expected phenotype there: the local sub-type weights times each sub-type's expected features.
37
+ > `mixture_weights` returns the local putative cell-type composition itself.
38
 
39
  ## Quickstart
40
 
 
42
  import pandas as pd
43
  from ephysatlas import load_pretrained
44
 
45
+ model = load_pretrained("int-brain-lab/ea-encoder-unit", revision="2026_W42")
46
  df = pd.read_parquet("example/positions_sample.parquet") # positions (x, y, z)
47
  out = model.predict(df) # one pred_<feature> column each
48
+ types = model.mixture_weights(df, level="type") # putative cell-type composition
49
+ subtypes = model.mixture_weights(df) # ... and of the sub-types
50
+ draws = model.sample(df, n_samples=16) # training units drawn at each position
51
  model.selftest() # reproduces the shipped outputs
52
  ```
53
 
54
  Units you recorded yourself can be embedded with `model.encode(waveform, acg, stpc)` (arrays shaped
55
+ as in `config.json`), then assigned to a putative cell type and sub-type with `model.assign(z)`.
56
 
57
  ## What ships here
58
 
59
  - `autoencoder.pt`, `shared_latent_scaler.joblib` -- the phenotype encoder and its latent scaler.
60
+ - `types_gmm.joblib`, `subtypes_gmm.joblib`, `subtype_parent.npy` -- the types, the sub-types and
61
+ the type of each sub-type.
62
+ - `context_transform.joblib`, `context_weights_types.pt`, `context_weights_subtypes.pt` -- context
63
+ -> type and sub-type weights.
64
+ - `members.npz` -- the phenotype features of the training units and their sub-type posteriors
65
+ (the readout; part of the model, like the stored points of any nearest-neighbour model).
66
  - `agea_vol_pca.npy`, `merfish_vol_pca.npy` -- the molecular and cellular context volumes, the same frozen
67
+ volumes as the channel-level model `int-brain-lab/ea-encoder-channel` of release `2026_W41`.
68
  - `split.json`, `config.json`, `preprocessing/unit_stats.npz`, `results/` -- the probe split, the
69
  training configuration, the training-data statistics and held-out evaluation summaries.
70
 
 
76
 
77
  ## Reproducibility
78
 
79
+ **Pin the revision.** `revision="2026_W42"` is an immutable tag; omitting it resolves to `main`,
80
  which tracks the currently recommended model. `ephysatlas_model.json` records the training-time
81
  environment and random seed; `model.selftest()` verifies your install reproduces the shipped
82
  output (no IBL account needed).
83
 
84
  ## Citation
85
 
86
+ Please cite the International Brain Laboratory Ephys Atlas. Model id `2026_W42_unit`, vintage
87
+ `2026_W42`.
autoencoder.pt CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:3a378b78c8882ed5a67e47ce5c7874952053effba468bd404cfda2efc41eeba7
3
- size 22723365
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e80529fbe476721edbc8564ad7568ced63e5d5aa861628ced2168984ba1c76df
3
+ size 22722341
checksums.json CHANGED
@@ -8,23 +8,13 @@
8
  },
9
  {
10
  "path": "autoencoder.pt",
11
- "hash": "a422fc57e96292f4eda04f4987d4b942e141184f",
12
- "bytes": 22723365
13
- },
14
- {
15
- "path": "component_feature_expectations.npz",
16
- "hash": "e9e2bce209a1cafe397b3418033d1ac145b85a98",
17
- "bytes": 1982
18
- },
19
- {
20
- "path": "conditioning_summary.json",
21
- "hash": "0320fcce083af6390afbecf3a5c36257304e6e95",
22
- "bytes": 4641
23
  },
24
  {
25
  "path": "config.json",
26
- "hash": "960f06662503129eaa1452ce3816dc9f5dbd9d13",
27
- "bytes": 3143
28
  },
29
  {
30
  "path": "context_transform.joblib",
@@ -32,14 +22,19 @@
32
  "bytes": 3049
33
  },
34
  {
35
- "path": "context_weight_model_bundle.pt",
36
- "hash": "c2e3fea134bbfd3ca385d8f8f3906402321016fb",
37
- "bytes": 69189
 
 
 
 
 
38
  },
39
  {
40
  "path": "ephysatlas_model.json",
41
- "hash": "ce8afb84467171502a630dca9168b3ea35b378a9",
42
- "bytes": 3419
43
  },
44
  {
45
  "path": "example/expected_latents.npy",
@@ -48,7 +43,7 @@
48
  },
49
  {
50
  "path": "example/expected_predictions.parquet",
51
- "hash": "713d2560e759736fea3f7009bb59af5b5a917f78",
52
  "bytes": 32897
53
  },
54
  {
@@ -62,19 +57,14 @@
62
  "bytes": 303532
63
  },
64
  {
65
- "path": "global_gmm.joblib",
66
- "hash": "c4c976013ba9471ab89ae20c2a7b962214e796aa",
67
- "bytes": 2174220
68
- },
69
- {
70
- "path": "global_gmm_summary.json",
71
- "hash": "fdca9c0e029ec048fa836a979125c1275e39c9c2",
72
- "bytes": 951
73
  },
74
  {
75
- "path": "knn_bank.npz",
76
- "hash": "b6bdbf674ff7516293425290cda972c95a30fd04",
77
- "bytes": 14528458
78
  },
79
  {
80
  "path": "merfish_vol_pca.npy",
@@ -83,18 +73,13 @@
83
  },
84
  {
85
  "path": "preprocessing/unit_stats.npz",
86
- "hash": "fffe170d76a8209c3327e037474f3b30141cb9d6",
87
- "bytes": 4684
88
- },
89
- {
90
- "path": "readout_summary.json",
91
- "hash": "c89dc533ed778f2e9f16bf90dc2e1e531a205e3e",
92
- "bytes": 1207
93
  },
94
  {
95
  "path": "results/summary.json",
96
- "hash": "4541c7aa7ccefe25d0f73d708cf83aa7705c5ed2",
97
- "bytes": 2792
98
  },
99
  {
100
  "path": "shared_latent_scaler.joblib",
@@ -105,6 +90,26 @@
105
  "path": "split.json",
106
  "hash": "4929803af5ab981187146b79725bb2262516ab07",
107
  "bytes": 36198
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
108
  }
109
  ]
110
  }
 
8
  },
9
  {
10
  "path": "autoencoder.pt",
11
+ "hash": "b063707006c8b7b6caa6707d41f16758457bdcf7",
12
+ "bytes": 22722341
 
 
 
 
 
 
 
 
 
 
13
  },
14
  {
15
  "path": "config.json",
16
+ "hash": "96da460f3f683a86285d48c879ea5b9441b059ce",
17
+ "bytes": 2161
18
  },
19
  {
20
  "path": "context_transform.joblib",
 
22
  "bytes": 3049
23
  },
24
  {
25
+ "path": "context_weights_subtypes.pt",
26
+ "hash": "7921606bdf8c5de484575b62871069db3ccb3a5c",
27
+ "bytes": 211105
28
+ },
29
+ {
30
+ "path": "context_weights_types.pt",
31
+ "hash": "6652d8695760ea463b1edf26d506d521c3effcb5",
32
+ "bytes": 71613
33
  },
34
  {
35
  "path": "ephysatlas_model.json",
36
+ "hash": "22479fc3735728bfd970417e0b3c72fb7fe4a5f8",
37
+ "bytes": 3280
38
  },
39
  {
40
  "path": "example/expected_latents.npy",
 
43
  },
44
  {
45
  "path": "example/expected_predictions.parquet",
46
+ "hash": "f95ce00efc35becc9e522b1fc41143d1afdec9c1",
47
  "bytes": 32897
48
  },
49
  {
 
57
  "bytes": 303532
58
  },
59
  {
60
+ "path": "hierarchy_summary.json",
61
+ "hash": "89bfc46659f51e2a2ab686442b41f590e1a6df13",
62
+ "bytes": 1575
 
 
 
 
 
63
  },
64
  {
65
+ "path": "members.npz",
66
+ "hash": "4ec553b93c0b1a7ff6e7bf9e4939e01f25f3f975",
67
+ "bytes": 2941047
68
  },
69
  {
70
  "path": "merfish_vol_pca.npy",
 
73
  },
74
  {
75
  "path": "preprocessing/unit_stats.npz",
76
+ "hash": "3aa15fa2747ccfb0f2d19bd18a96f954ec5acd20",
77
+ "bytes": 5931
 
 
 
 
 
78
  },
79
  {
80
  "path": "results/summary.json",
81
+ "hash": "132ae9aaec9c4cc8326916a203de1e9124a02195",
82
+ "bytes": 2193
83
  },
84
  {
85
  "path": "shared_latent_scaler.joblib",
 
90
  "path": "split.json",
91
  "hash": "4929803af5ab981187146b79725bb2262516ab07",
92
  "bytes": 36198
93
+ },
94
+ {
95
+ "path": "subtype_parent.npy",
96
+ "hash": "548469f659f96181124fc77bca7468d2398fc1bd",
97
+ "bytes": 2528
98
+ },
99
+ {
100
+ "path": "subtypes_gmm.joblib",
101
+ "hash": "fea4d2750bf102c2af435a33d7675748f81ec50f",
102
+ "bytes": 17427276
103
+ },
104
+ {
105
+ "path": "training_summary.json",
106
+ "hash": "da346c135e36b53d77ade91c32c80b92a772102c",
107
+ "bytes": 27582
108
+ },
109
+ {
110
+ "path": "types_gmm.joblib",
111
+ "hash": "ed1f6c578389e569690c146f140d73e168c7defa",
112
+ "bytes": 2608443
113
  }
114
  ]
115
  }
conditioning_summary.json DELETED
@@ -1,183 +0,0 @@
1
- {
2
- "best_val_balanced_ce": 2.502358913421631,
3
- "rare_component_class_weights": [
4
- 1.0959323644638062,
5
- 0.8443834185600281,
6
- 0.7508723139762878,
7
- 1.2009798288345337,
8
- 0.7173991799354553,
9
- 1.6520248651504517,
10
- 1.4514827728271484,
11
- 1.766238808631897,
12
- 1.5663753747940063,
13
- 1.136484146118164,
14
- 0.784567654132843,
15
- 1.3841673135757446,
16
- 1.2993239164352417,
17
- 1.0953930616378784,
18
- 0.880633533000946,
19
- 1.443649172782898,
20
- 1.6870092153549194,
21
- 0.942762017250061,
22
- 0.8432743549346924,
23
- 1.1054006814956665,
24
- 1.243672490119934,
25
- 0.9290009140968323,
26
- 1.2716392278671265,
27
- 1.2723108530044556,
28
- 0.6863182187080383
29
- ],
30
- "history": [
31
- {
32
- "epoch": 1,
33
- "train_balanced_ce": 3.1044461077596557,
34
- "val_balanced_ce": 2.940312147140503
35
- },
36
- {
37
- "epoch": 2,
38
- "train_balanced_ce": 2.8550544814358565,
39
- "val_balanced_ce": 2.7653393745422363
40
- },
41
- {
42
- "epoch": 3,
43
- "train_balanced_ce": 2.717028480602673,
44
- "val_balanced_ce": 2.665975332260132
45
- },
46
- {
47
- "epoch": 4,
48
- "train_balanced_ce": 2.6381118051380823,
49
- "val_balanced_ce": 2.60945463180542
50
- },
51
- {
52
- "epoch": 5,
53
- "train_balanced_ce": 2.5907921370467073,
54
- "val_balanced_ce": 2.574721574783325
55
- },
56
- {
57
- "epoch": 6,
58
- "train_balanced_ce": 2.5612764647803012,
59
- "val_balanced_ce": 2.5545220375061035
60
- },
61
- {
62
- "epoch": 7,
63
- "train_balanced_ce": 2.539769241716456,
64
- "val_balanced_ce": 2.5401904582977295
65
- },
66
- {
67
- "epoch": 8,
68
- "train_balanced_ce": 2.524711161564394,
69
- "val_balanced_ce": 2.5301058292388916
70
- },
71
- {
72
- "epoch": 9,
73
- "train_balanced_ce": 2.5107240215293882,
74
- "val_balanced_ce": 2.5225393772125244
75
- },
76
- {
77
- "epoch": 10,
78
- "train_balanced_ce": 2.5011777977737735,
79
- "val_balanced_ce": 2.518281936645508
80
- },
81
- {
82
- "epoch": 11,
83
- "train_balanced_ce": 2.4927975566462672,
84
- "val_balanced_ce": 2.5139763355255127
85
- },
86
- {
87
- "epoch": 12,
88
- "train_balanced_ce": 2.485523729676122,
89
- "val_balanced_ce": 2.5117905139923096
90
- },
91
- {
92
- "epoch": 13,
93
- "train_balanced_ce": 2.4786812922156005,
94
- "val_balanced_ce": 2.509345769882202
95
- },
96
- {
97
- "epoch": 14,
98
- "train_balanced_ce": 2.473920933611214,
99
- "val_balanced_ce": 2.5084235668182373
100
- },
101
- {
102
- "epoch": 15,
103
- "train_balanced_ce": 2.466722688242459,
104
- "val_balanced_ce": 2.506657838821411
105
- },
106
- {
107
- "epoch": 16,
108
- "train_balanced_ce": 2.4628473176030643,
109
- "val_balanced_ce": 2.506051778793335
110
- },
111
- {
112
- "epoch": 17,
113
- "train_balanced_ce": 2.457756945894324,
114
- "val_balanced_ce": 2.5049221515655518
115
- },
116
- {
117
- "epoch": 18,
118
- "train_balanced_ce": 2.4537503601886623,
119
- "val_balanced_ce": 2.5040204524993896
120
- },
121
- {
122
- "epoch": 19,
123
- "train_balanced_ce": 2.4498772444420265,
124
- "val_balanced_ce": 2.503654718399048
125
- },
126
- {
127
- "epoch": 20,
128
- "train_balanced_ce": 2.44552511771527,
129
- "val_balanced_ce": 2.502358913421631
130
- },
131
- {
132
- "epoch": 21,
133
- "train_balanced_ce": 2.4419240016296824,
134
- "val_balanced_ce": 2.5036613941192627
135
- },
136
- {
137
- "epoch": 22,
138
- "train_balanced_ce": 2.438449048670186,
139
- "val_balanced_ce": 2.5030152797698975
140
- },
141
- {
142
- "epoch": 23,
143
- "train_balanced_ce": 2.434962947273629,
144
- "val_balanced_ce": 2.502431631088257
145
- },
146
- {
147
- "epoch": 24,
148
- "train_balanced_ce": 2.433007692690201,
149
- "val_balanced_ce": 2.503234386444092
150
- },
151
- {
152
- "epoch": 25,
153
- "train_balanced_ce": 2.4299673003884696,
154
- "val_balanced_ce": 2.503336191177368
155
- },
156
- {
157
- "epoch": 26,
158
- "train_balanced_ce": 2.42602004544816,
159
- "val_balanced_ce": 2.5042073726654053
160
- },
161
- {
162
- "epoch": 27,
163
- "train_balanced_ce": 2.4244782100102014,
164
- "val_balanced_ce": 2.503185749053955
165
- },
166
- {
167
- "epoch": 28,
168
- "train_balanced_ce": 2.4208548767878075,
169
- "val_balanced_ce": 2.5045764446258545
170
- },
171
- {
172
- "epoch": 29,
173
- "train_balanced_ce": 2.4174641966830315,
174
- "val_balanced_ce": 2.5043716430664062
175
- },
176
- {
177
- "epoch": 30,
178
- "train_balanced_ce": 2.415899703259455,
179
- "val_balanced_ce": 2.50522780418396
180
- }
181
- ],
182
- "context_definition": "50 MERFISH PCs + 50 AGEA PCs; TRAIN-only StandardScaler; mixture weights gamma only"
183
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
config.json CHANGED
@@ -35,15 +35,15 @@
35
  "feature_fidelity_hidden_dim": 128,
36
  "lambda_feature_continuous": 0.25,
37
  "lambda_feature_polarity": 0.1,
38
- "gmm_components": 25,
39
- "gmm_covariance_type": "full",
 
 
 
40
  "gmm_reg_covar": 0.0001,
41
- "gmm_n_init": 10,
42
  "gmm_max_iter": 500,
43
- "gmm_min_component_fraction": 0.001,
44
  "n_cell_pcs": 50,
45
  "n_gene_pcs": 50,
46
- "context_atlas_subdir": "context_atlas",
47
  "context_hidden_dim": 128,
48
  "context_layers": 2,
49
  "context_dropout": 0.1,
@@ -54,25 +54,12 @@
54
  "context_weight_patience": 10,
55
  "rare_component_power": 0.5,
56
  "rare_component_weight_cap": 10.0,
57
- "knn_decoder_k": 20,
58
- "readout_key_dim": 3,
59
- "readout_key_alphas": [
60
- 100.0,
61
- 1000.0,
62
- 10000.0,
63
- 30000.0,
64
- 100000.0
65
- ],
66
- "readout_neighbours": 4096,
67
- "readout_shrinkage": 10.0,
68
- "readout_off_data_quantile": 0.99,
69
  "mirror_x_to_single_hemisphere": true,
70
  "mirror_x_sign": -1.0,
71
  "region_gaussian_variance_floor": 0.001,
72
  "kde_neighbors": 128,
73
  "kde_spatial_bandwidth_um": 350.0,
74
  "kde_latent_bandwidth": 0.55,
75
- "kde_chunk_size": 256,
76
  "waveform_sampling_rate_hz": 30000.0,
77
  "diagnostic_examples": 16,
78
  "diagnostic_hist_bins": 40,
@@ -82,30 +69,12 @@
82
  0.5,
83
  0.8
84
  ],
85
- "diagnostic_spatial_pcs": 3,
86
  "diagnostic_voxel_size_um": 100.0,
87
- "diagnostic_slice_cmap": "seismic",
88
  "diagnostic_feature_slice_cmap": "seismic",
89
- "diagnostic_save_voxel_predictions": false,
90
  "max_regions_in_distribution_plot": 16,
91
  "feature_slice_count": 5,
92
  "feature_slice_seed": 20260831,
93
- "feature_slice_reference_max_units": 20000,
94
- "feature_slice_component_mc_samples": 128,
95
- "feature_slice_regional_mc_samples": 128,
96
- "feature_slice_display_quantiles": [
97
- 0.02,
98
- 0.98
99
- ],
100
- "feature_slice_display_padding_fraction": 0.03,
101
- "feature_slice_center": "median",
102
  "feature_nll_samples_per_test_unit": 4,
103
  "feature_nll_min_bandwidth_fraction": 0.02,
104
- "feature_categorical_alpha": 1.0,
105
- "latent_fidelity_test_units": 8000,
106
- "latent_fidelity_sliced_wasserstein_projections": 128,
107
- "merfish_correlation_voxel_um": 200,
108
- "merfish_correlation_cmap": "inferno",
109
- "merfish_correlation_vmin": 0.0,
110
- "merfish_correlation_vmax": 0.5
111
  }
 
35
  "feature_fidelity_hidden_dim": 128,
36
  "lambda_feature_continuous": 0.25,
37
  "lambda_feature_polarity": 0.1,
38
+ "n_types": 30,
39
+ "max_subtypes": 10,
40
+ "min_units_per_subtype": 20,
41
+ "type_n_init": 1,
42
+ "subtype_n_init": 3,
43
  "gmm_reg_covar": 0.0001,
 
44
  "gmm_max_iter": 500,
 
45
  "n_cell_pcs": 50,
46
  "n_gene_pcs": 50,
 
47
  "context_hidden_dim": 128,
48
  "context_layers": 2,
49
  "context_dropout": 0.1,
 
54
  "context_weight_patience": 10,
55
  "rare_component_power": 0.5,
56
  "rare_component_weight_cap": 10.0,
 
 
 
 
 
 
 
 
 
 
 
 
57
  "mirror_x_to_single_hemisphere": true,
58
  "mirror_x_sign": -1.0,
59
  "region_gaussian_variance_floor": 0.001,
60
  "kde_neighbors": 128,
61
  "kde_spatial_bandwidth_um": 350.0,
62
  "kde_latent_bandwidth": 0.55,
 
63
  "waveform_sampling_rate_hz": 30000.0,
64
  "diagnostic_examples": 16,
65
  "diagnostic_hist_bins": 40,
 
69
  0.5,
70
  0.8
71
  ],
 
72
  "diagnostic_voxel_size_um": 100.0,
 
73
  "diagnostic_feature_slice_cmap": "seismic",
 
74
  "max_regions_in_distribution_plot": 16,
75
  "feature_slice_count": 5,
76
  "feature_slice_seed": 20260831,
 
 
 
 
 
 
 
 
 
77
  "feature_nll_samples_per_test_unit": 4,
78
  "feature_nll_min_bandwidth_fraction": 0.02,
79
+ "feature_categorical_alpha": 1.0
 
 
 
 
 
 
80
  }
global_gmm.joblib → context_weights_subtypes.pt RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:d2cf14fedcfa5dca6254a53e5cbe3070f9ac90f1fa071651d0c989c9636dc5f8
3
- size 2174220
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:43c2a0dd38a8e20d52bb5bf398c70d97eefefb246dcfa715dafd5875aa07f4af
3
+ size 211105
context_weight_model_bundle.pt → context_weights_types.pt RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:c0264ccc23b040f549c1d55808196d3b97fedb9201ca6ca0fb923d0c08640bd4
3
- size 69189
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7b8a1107449b17cc60862bf88f1f82e073f330f362093a7c348122c2f274e02a
3
+ size 71613
ephysatlas_model.json CHANGED
@@ -1,8 +1,8 @@
1
  {
2
- "model_id": "2026_W41_unit",
3
  "task": "unit-encoding",
4
  "model_class": "UnitAutoencoder",
5
- "vintage": "2026_W41",
6
  "training": {
7
  "random_seed": 0,
8
  "training_size": 572,
@@ -22,17 +22,19 @@
22
  "ephysatlas": "0.9.0",
23
  "iblatlas": "1.2.0"
24
  },
25
- "method": "gmm",
26
  "granularity": "unit",
27
  "artifacts": {
28
  "autoencoder": "autoencoder.pt",
29
  "config": "config.json",
30
  "scaler": "shared_latent_scaler.joblib",
31
- "gmm": "global_gmm.joblib",
 
 
32
  "context_transform": "context_transform.joblib",
33
- "context_weights": "context_weight_model_bundle.pt",
34
- "knn_bank": "knn_bank.npz",
35
- "component_features": "component_feature_expectations.npz",
36
  "stats": "preprocessing/unit_stats.npz",
37
  "split": "split.json",
38
  "context": [
@@ -85,31 +87,28 @@
85
  ],
86
  "modality_latent_dim": 20,
87
  "latent_dim": 60,
88
- "gmm_components": 25,
89
- "gmm_covariance_type": "full",
90
- "knn_k": 20
 
 
91
  },
92
  "context": {
93
  "n_cell_pcs": 50,
94
  "n_gene_pcs": 50,
95
- "conditions": "mixture weights, and which training exemplars represent each component in the phenotype readout; component means/covariances are global",
96
- "source_model": "int-brain-lab/ea-encoder-channel"
 
 
 
 
 
97
  },
98
  "preprocessing": {
99
  "waveforms": "per-unit max-abs normalized, 20 channels centred on the peak channel",
100
  "stats_file": "preprocessing/unit_stats.npz",
101
  "mirror_x_to_single_hemisphere": true,
102
  "mirror_x_sign": -1.0
103
- },
104
- "readout": {
105
- "method": "context_local_members",
106
- "description": "the molecular context sets the mixture weights gamma_k(x) and selects which training exemplars represent each component: its members nearest to x in a context key, shrunk toward all of its members -- further as the key leaves the training data, and entirely without context",
107
- "key_dim": 3,
108
- "key_ridge_alpha": 1000.0,
109
- "neighbours": 4096,
110
- "shrinkage": 10.0,
111
- "off_data_quantile": 0.99,
112
- "absent_context": "global member means"
113
  }
114
  },
115
  "data_source": {
 
1
  {
2
+ "model_id": "2026_W42_unit",
3
  "task": "unit-encoding",
4
  "model_class": "UnitAutoencoder",
5
+ "vintage": "2026_W42",
6
  "training": {
7
  "random_seed": 0,
8
  "training_size": 572,
 
22
  "ephysatlas": "0.9.0",
23
  "iblatlas": "1.2.0"
24
  },
25
+ "method": "hierarchical_gmm",
26
  "granularity": "unit",
27
  "artifacts": {
28
  "autoencoder": "autoencoder.pt",
29
  "config": "config.json",
30
  "scaler": "shared_latent_scaler.joblib",
31
+ "types": "types_gmm.joblib",
32
+ "subtypes": "subtypes_gmm.joblib",
33
+ "subtype_parent": "subtype_parent.npy",
34
  "context_transform": "context_transform.joblib",
35
+ "type_weights": "context_weights_types.pt",
36
+ "subtype_weights": "context_weights_subtypes.pt",
37
+ "members": "members.npz",
38
  "stats": "preprocessing/unit_stats.npz",
39
  "split": "split.json",
40
  "context": [
 
87
  ],
88
  "modality_latent_dim": 20,
89
  "latent_dim": 60,
90
+ "density": "hierarchical Gaussian mixture, full covariances, top-down assignment",
91
+ "n_types": 30,
92
+ "n_subtypes": 300,
93
+ "max_subtypes_per_type": 10,
94
+ "min_units_per_subtype": 20
95
  },
96
  "context": {
97
  "n_cell_pcs": 50,
98
  "n_gene_pcs": 50,
99
+ "conditions": "the sub-type weights gamma_k(x) gamma_j|k(x) only; the type and sub-type means and covariances are global",
100
+ "source_model": "int-brain-lab/ea-encoder-channel",
101
+ "data_vintage": "2026_W41"
102
+ },
103
+ "readout": {
104
+ "method": "members",
105
+ "description": "each sub-type is represented by its training units, from anywhere in the brain, weighted by their top-down posterior of the sub-type"
106
  },
107
  "preprocessing": {
108
  "waveforms": "per-unit max-abs normalized, 20 channels centred on the peak channel",
109
  "stats_file": "preprocessing/unit_stats.npz",
110
  "mirror_x_to_single_hemisphere": true,
111
  "mirror_x_sign": -1.0
 
 
 
 
 
 
 
 
 
 
112
  }
113
  },
114
  "data_source": {
example/expected_predictions.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:cb33586780bd88be3409d10775315260daba26fdb6ef94c9efcd6f038fbebd1e
3
  size 32897
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:84bb33f879a1c23b317468c2f066ddd4cd4f72aa0f5bf2d68638850f77ae3fec
3
  size 32897
global_gmm_summary.json DELETED
@@ -1,37 +0,0 @@
1
- {
2
- "n_components": 25,
3
- "covariance_type": "full",
4
- "converged": true,
5
- "n_iter": 54,
6
- "component_mass_train": [
7
- 0.03589438647031784,
8
- 0.06046649068593979,
9
- 0.07646486163139343,
10
- 0.029889777302742004,
11
- 0.0837668851017952,
12
- 0.01579650305211544,
13
- 0.020463047549128532,
14
- 0.013819593004882336,
15
- 0.017571240663528442,
16
- 0.03337854519486427,
17
- 0.07003793865442276,
18
- 0.022501781582832336,
19
- 0.025536373257637024,
20
- 0.03592975065112114,
21
- 0.05559089034795761,
22
- 0.020685726776719093,
23
- 0.015148136764764786,
24
- 0.04850538820028305,
25
- 0.06062563508749008,
26
- 0.03528212010860443,
27
- 0.027872895821928978,
28
- 0.04995303228497505,
29
- 0.0266603734344244,
30
- 0.026632236316800117,
31
- 0.09152570366859436
32
- ],
33
- "min_component_mass": 0.013819593004882336,
34
- "max_component_mass": 0.09152570366859436,
35
- "rare_component_indices": [],
36
- "rare_component_threshold": 0.001
37
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
hierarchy_summary.json ADDED
@@ -0,0 +1,102 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "n_types": 30,
3
+ "n_subtypes": 300,
4
+ "subtypes_per_type": [
5
+ 10,
6
+ 10,
7
+ 10,
8
+ 10,
9
+ 10,
10
+ 10,
11
+ 10,
12
+ 10,
13
+ 10,
14
+ 10,
15
+ 10,
16
+ 10,
17
+ 10,
18
+ 10,
19
+ 10,
20
+ 10,
21
+ 10,
22
+ 10,
23
+ 10,
24
+ 10,
25
+ 10,
26
+ 10,
27
+ 10,
28
+ 10,
29
+ 10,
30
+ 10,
31
+ 10,
32
+ 10,
33
+ 10,
34
+ 10
35
+ ],
36
+ "type_weights": [
37
+ 0.04381398293679264,
38
+ 0.037172569501938674,
39
+ 0.02427903521234171,
40
+ 0.0069111436405017565,
41
+ 0.017799655051780185,
42
+ 0.08154949179254226,
43
+ 0.029276411132847943,
44
+ 0.03978187889420966,
45
+ 0.008872282071696878,
46
+ 0.021841680566053713,
47
+ 0.03599554057292672,
48
+ 0.053692554384372676,
49
+ 0.01754854426983168,
50
+ 0.011899622430156388,
51
+ 0.03709573105577985,
52
+ 0.04909497542907621,
53
+ 0.030531050409611953,
54
+ 0.03478716229065524,
55
+ 0.03012711696831558,
56
+ 0.019278565200257378,
57
+ 0.03976877612734015,
58
+ 0.05570118528050738,
59
+ 0.017418595054987426,
60
+ 0.028776960521673715,
61
+ 0.04041748391924934,
62
+ 0.023711837517380444,
63
+ 0.021711902004824212,
64
+ 0.019385190425204944,
65
+ 0.09577338399742967,
66
+ 0.025985691339713582
67
+ ],
68
+ "type_converged": true,
69
+ "type_n_iter": 43,
70
+ "train_units_per_type": [
71
+ 2486,
72
+ 2103,
73
+ 1373,
74
+ 391,
75
+ 1004,
76
+ 4608,
77
+ 1659,
78
+ 2233,
79
+ 502,
80
+ 1229,
81
+ 2023,
82
+ 3055,
83
+ 990,
84
+ 672,
85
+ 2100,
86
+ 2769,
87
+ 1709,
88
+ 1968,
89
+ 1710,
90
+ 1092,
91
+ 2246,
92
+ 3158,
93
+ 983,
94
+ 1629,
95
+ 2259,
96
+ 1332,
97
+ 1225,
98
+ 1094,
99
+ 5424,
100
+ 1471
101
+ ]
102
+ }
knn_bank.npz → members.npz RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:c5e979bb32760c5dc82cee934dd13892909d08f74e0fa1d4b424c0bce6359203
3
- size 14528458
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8f0a9655f4c4d38db3156ef8529eddeae2dc6b27bb6f856da2612a4cb72232b5
3
+ size 2941047
preprocessing/unit_stats.npz CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:ca5c928ed76ff8f6a2cdca816b408cf1ae54235af91e2cbaf4b2cf4376953c1c
3
- size 4684
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9db8b415b11accc45d314d5c8472c95228d344d2878df028959cea83d599b156
3
+ size 5931
readout_summary.json DELETED
@@ -1,64 +0,0 @@
1
- {
2
- "method": "context_local_members",
3
- "key_features": [
4
- "depolarisation_slope",
5
- "recovery_slope",
6
- "repolarisation_slope",
7
- "spatial_spread_um",
8
- "tip_val",
9
- "spike_width_secs",
10
- "predepolarisation_width_secs",
11
- "spike_amplitude",
12
- "peak_to_trough_ratio_log"
13
- ],
14
- "key_alpha": 1000.0,
15
- "key_alpha_validation_mse": {
16
- "100.0": 1.1037312015628236,
17
- "1000.0": 1.1033603851820213,
18
- "10000.0": 1.1033679139310546,
19
- "30000.0": 1.1048441456682687,
20
- "100000.0": 1.1105265257126138
21
- },
22
- "key_dim": 3,
23
- "key_singular_values": [
24
- 95.02516531228356,
25
- 62.48198561115676,
26
- 51.015579869285794,
27
- 35.38328421883545,
28
- 21.195708629676567,
29
- 16.722950989014983,
30
- 10.308581820566737,
31
- 10.023965043087022,
32
- 4.122605997586523
33
- ],
34
- "neighbours": 4096,
35
- "shrinkage": 10.0,
36
- "off_data_quantile": 0.99,
37
- "train_members_per_component": [
38
- 2036,
39
- 3412,
40
- 4319,
41
- 1685,
42
- 4732,
43
- 889,
44
- 1159,
45
- 780,
46
- 991,
47
- 1885,
48
- 3953,
49
- 1277,
50
- 1444,
51
- 2027,
52
- 3144,
53
- 1173,
54
- 855,
55
- 2740,
56
- 3417,
57
- 1989,
58
- 1571,
59
- 2826,
60
- 1503,
61
- 1505,
62
- 5185
63
- ]
64
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
results/summary.json CHANGED
@@ -1,6 +1,7 @@
1
  {
2
- "model_name": "context_weights_k25_knn20",
3
- "vintage": "2026_W41",
 
4
  "architecture": {
5
  "modalities": [
6
  "waveform",
@@ -9,22 +10,15 @@
9
  ],
10
  "modality_latent_dim": 20,
11
  "joint_latent_dim": 60,
12
- "gmm_components": 25,
13
- "gmm_covariance_type": "full",
14
- "gmm_geometry": "global means and covariance matrices",
15
- "context_conditioning": "mixture weights gamma, and the TRAIN exemplars representing each component",
 
 
 
16
  "context_definition": "50 MERFISH PCs + 50 AGEA PCs",
17
- "knn_k": 20,
18
- "knn_policy": "distance-weighted empirical TRAIN-exemplar projection in standardized latent space",
19
- "phenotype_readout": {
20
- "method": "context-local members: gamma_k(x) weights the mean of component k's TRAIN members nearest to x in a context key, shrunk toward all its members",
21
- "key_dim": 3,
22
- "key_ridge_alpha": 1000.0,
23
- "neighbours": 4096,
24
- "shrinkage": 10.0,
25
- "off_data_quantile": 0.99,
26
- "absent_context": "global member means"
27
- }
28
  },
29
  "split_counts": {
30
  "train_units": 56497,
@@ -35,7 +29,7 @@
35
  "test_pids": 149
36
  },
37
  "heldout_basic_test": {
38
- "model": "context_weights_k25_knn20",
39
  "split": "held-out test PIDs",
40
  "reconstruction": {
41
  "waveform_mse": 0.000788584933616221,
@@ -44,30 +38,23 @@
44
  "n_test_units": 4096
45
  },
46
  "latent_nll": {
47
- "conditional_k25": -26.648546443872384,
48
- "unconditional_k25": -26.095386854718793,
49
- "conditional_improvement": 0.5531595891535908,
 
50
  "lower_is_better": true
51
  },
52
- "knn20": {
53
- "k": 20,
54
- "nearest_distance_mean": 3.551875114440918,
55
- "nearest_distance_median": 3.415438652038574,
56
- "kth_distance_mean": 4.589000225067139,
57
- "kth_distance_median": 4.397944450378418,
58
- "effective_neighbors_mean": 19.91122817993164,
59
- "effective_neighbors_median": 19.925037384033203
60
- },
61
  "sanity_checks": {
62
  "all_metrics_finite": true,
63
- "conditional_beats_unconditional": true
 
64
  }
65
  },
66
  "invariants": [
67
- "TEST PIDs are never used for AE/GMM/context training or as kNN retrieval exemplars.",
68
- "The GMM means and covariance matrices are global.",
69
- "Molecular context sets the GMM mixture weights gamma_k(x) and selects which TRAIN exemplars represent each component in the phenotype readout; the conditional latent density depends on it only through gamma_k(x).",
70
- "The kNN stage changes phenotype projection only; it does not change the conditional latent density.",
71
  "All spatial modeling uses the configured single-hemisphere mirroring convention."
72
  ]
73
  }
 
1
  {
2
+ "model_name": "hierarchical_gmm_30_types_300_subtypes",
3
+ "release_tag": "2026_W42",
4
+ "data_vintage": "2026_W41",
5
  "architecture": {
6
  "modalities": [
7
  "waveform",
 
10
  ],
11
  "modality_latent_dim": 20,
12
  "joint_latent_dim": 60,
13
+ "density": "hierarchical Gaussian mixture, full covariances",
14
+ "n_types": 30,
15
+ "n_subtypes": 300,
16
+ "max_subtypes_per_type": 10,
17
+ "min_units_per_subtype": 20,
18
+ "assignment": "top-down: P(k, j | z) = P(k | z) P(j | k, z), P(j | k, z) among the sub-types of k",
19
+ "context_conditioning": "sub-type weights gamma_k(x) gamma_j|k(x), from two context networks",
20
  "context_definition": "50 MERFISH PCs + 50 AGEA PCs",
21
+ "phenotype_readout": "members: each sub-type's TRAIN units from anywhere in the brain, weighted by their top-down posterior of the sub-type"
 
 
 
 
 
 
 
 
 
 
22
  },
23
  "split_counts": {
24
  "train_units": 56497,
 
29
  "test_pids": 149
30
  },
31
  "heldout_basic_test": {
32
+ "model": "hierarchical_gmm_30_types_300_subtypes",
33
  "split": "held-out test PIDs",
34
  "reconstruction": {
35
  "waveform_mse": 0.000788584933616221,
 
38
  "n_test_units": 4096
39
  },
40
  "latent_nll": {
41
+ "context_weights": -29.065819952667763,
42
+ "brain_wide_weights": -28.336594620975855,
43
+ "context_improvement": 0.7292253316919073,
44
+ "n_test_units": 15880,
45
  "lower_is_better": true
46
  },
 
 
 
 
 
 
 
 
 
47
  "sanity_checks": {
48
  "all_metrics_finite": true,
49
+ "context_beats_brain_wide": true,
50
+ "subtypes_inside_types": true
51
  }
52
  },
53
  "invariants": [
54
+ "TEST PIDs are never used for AE/mixture/context training or as readout members.",
55
+ "The type and sub-type means and covariance matrices are global.",
56
+ "Molecular context changes only the sub-type weights gamma_k(x) gamma_j|k(x).",
57
+ "A unit's sub-type always lies inside its type (top-down assignment).",
58
  "All spatial modeling uses the configured single-hemisphere mirroring convention."
59
  ]
60
  }
component_feature_expectations.npz → subtype_parent.npy RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:c1dabd6400099ea571918ca34a9b579de46ebd9ec6cc7187ef48641096221d60
3
- size 1982
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f6935879013bedeb209c8a0d152dbb98e195b1d8a21555451d4bd33150ff5ba8
3
+ size 2528
subtypes_gmm.joblib ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c2601d34df695e9f18c4be160e592d90d42c0e1e8701e3cf3024d3494269066a
3
+ size 17427276
training_summary.json ADDED
@@ -0,0 +1,1348 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "autoencoder": "C:\\Users\\bodic\\.cache\\ephysatlas\\models\\models--int-brain-lab--ea-encoder-unit\\snapshots\\afe0db21c8e53286ecfd36513e4b6e4c202f41d9\\autoencoder.pt",
3
+ "n_types": 30,
4
+ "n_subtypes": 300,
5
+ "train_units_per_type": [
6
+ 2486,
7
+ 2103,
8
+ 1373,
9
+ 391,
10
+ 1004,
11
+ 4608,
12
+ 1659,
13
+ 2233,
14
+ 502,
15
+ 1229,
16
+ 2023,
17
+ 3055,
18
+ 990,
19
+ 672,
20
+ 2100,
21
+ 2769,
22
+ 1709,
23
+ 1968,
24
+ 1710,
25
+ 1092,
26
+ 2246,
27
+ 3158,
28
+ 983,
29
+ 1629,
30
+ 2259,
31
+ 1332,
32
+ 1225,
33
+ 1094,
34
+ 5424,
35
+ 1471
36
+ ],
37
+ "train_units_per_subtype": [
38
+ 267,
39
+ 134,
40
+ 337,
41
+ 265,
42
+ 230,
43
+ 249,
44
+ 255,
45
+ 261,
46
+ 159,
47
+ 329,
48
+ 166,
49
+ 161,
50
+ 140,
51
+ 460,
52
+ 241,
53
+ 129,
54
+ 134,
55
+ 268,
56
+ 218,
57
+ 186,
58
+ 146,
59
+ 155,
60
+ 111,
61
+ 166,
62
+ 167,
63
+ 194,
64
+ 112,
65
+ 52,
66
+ 160,
67
+ 110,
68
+ 26,
69
+ 44,
70
+ 43,
71
+ 42,
72
+ 36,
73
+ 33,
74
+ 39,
75
+ 27,
76
+ 41,
77
+ 60,
78
+ 69,
79
+ 58,
80
+ 107,
81
+ 70,
82
+ 101,
83
+ 156,
84
+ 133,
85
+ 106,
86
+ 84,
87
+ 120,
88
+ 467,
89
+ 520,
90
+ 382,
91
+ 588,
92
+ 533,
93
+ 207,
94
+ 406,
95
+ 529,
96
+ 724,
97
+ 252,
98
+ 186,
99
+ 157,
100
+ 140,
101
+ 155,
102
+ 173,
103
+ 185,
104
+ 175,
105
+ 156,
106
+ 159,
107
+ 173,
108
+ 155,
109
+ 203,
110
+ 242,
111
+ 273,
112
+ 296,
113
+ 257,
114
+ 293,
115
+ 271,
116
+ 119,
117
+ 124,
118
+ 48,
119
+ 18,
120
+ 53,
121
+ 53,
122
+ 56,
123
+ 52,
124
+ 63,
125
+ 44,
126
+ 66,
127
+ 49,
128
+ 134,
129
+ 144,
130
+ 71,
131
+ 150,
132
+ 154,
133
+ 156,
134
+ 71,
135
+ 112,
136
+ 100,
137
+ 137,
138
+ 208,
139
+ 178,
140
+ 331,
141
+ 211,
142
+ 160,
143
+ 160,
144
+ 208,
145
+ 180,
146
+ 201,
147
+ 186,
148
+ 111,
149
+ 281,
150
+ 276,
151
+ 314,
152
+ 267,
153
+ 826,
154
+ 158,
155
+ 192,
156
+ 385,
157
+ 245,
158
+ 51,
159
+ 168,
160
+ 122,
161
+ 96,
162
+ 34,
163
+ 84,
164
+ 100,
165
+ 142,
166
+ 138,
167
+ 55,
168
+ 42,
169
+ 94,
170
+ 87,
171
+ 43,
172
+ 21,
173
+ 88,
174
+ 98,
175
+ 70,
176
+ 95,
177
+ 34,
178
+ 154,
179
+ 262,
180
+ 215,
181
+ 142,
182
+ 232,
183
+ 152,
184
+ 113,
185
+ 290,
186
+ 195,
187
+ 345,
188
+ 270,
189
+ 477,
190
+ 270,
191
+ 336,
192
+ 180,
193
+ 256,
194
+ 147,
195
+ 278,
196
+ 335,
197
+ 220,
198
+ 141,
199
+ 148,
200
+ 94,
201
+ 217,
202
+ 168,
203
+ 205,
204
+ 100,
205
+ 231,
206
+ 176,
207
+ 229,
208
+ 155,
209
+ 184,
210
+ 181,
211
+ 214,
212
+ 139,
213
+ 236,
214
+ 186,
215
+ 199,
216
+ 202,
217
+ 272,
218
+ 173,
219
+ 150,
220
+ 124,
221
+ 191,
222
+ 134,
223
+ 192,
224
+ 202,
225
+ 194,
226
+ 168,
227
+ 182,
228
+ 167,
229
+ 133,
230
+ 53,
231
+ 296,
232
+ 120,
233
+ 85,
234
+ 61,
235
+ 46,
236
+ 52,
237
+ 79,
238
+ 137,
239
+ 243,
240
+ 189,
241
+ 194,
242
+ 282,
243
+ 189,
244
+ 257,
245
+ 318,
246
+ 270,
247
+ 167,
248
+ 160,
249
+ 222,
250
+ 412,
251
+ 169,
252
+ 429,
253
+ 597,
254
+ 440,
255
+ 262,
256
+ 201,
257
+ 266,
258
+ 74,
259
+ 89,
260
+ 173,
261
+ 9,
262
+ 122,
263
+ 112,
264
+ 135,
265
+ 42,
266
+ 103,
267
+ 124,
268
+ 158,
269
+ 149,
270
+ 227,
271
+ 131,
272
+ 273,
273
+ 177,
274
+ 95,
275
+ 164,
276
+ 168,
277
+ 87,
278
+ 257,
279
+ 274,
280
+ 214,
281
+ 192,
282
+ 202,
283
+ 319,
284
+ 217,
285
+ 169,
286
+ 244,
287
+ 171,
288
+ 160,
289
+ 135,
290
+ 110,
291
+ 137,
292
+ 173,
293
+ 126,
294
+ 122,
295
+ 110,
296
+ 121,
297
+ 138,
298
+ 117,
299
+ 138,
300
+ 93,
301
+ 149,
302
+ 140,
303
+ 136,
304
+ 135,
305
+ 98,
306
+ 143,
307
+ 76,
308
+ 81,
309
+ 77,
310
+ 117,
311
+ 149,
312
+ 120,
313
+ 120,
314
+ 154,
315
+ 118,
316
+ 66,
317
+ 92,
318
+ 447,
319
+ 351,
320
+ 285,
321
+ 456,
322
+ 411,
323
+ 469,
324
+ 1173,
325
+ 921,
326
+ 425,
327
+ 486,
328
+ 126,
329
+ 180,
330
+ 130,
331
+ 145,
332
+ 120,
333
+ 183,
334
+ 124,
335
+ 127,
336
+ 145,
337
+ 191
338
+ ],
339
+ "context_definition": "50 MERFISH PCs + 50 AGEA PCs; TRAIN-only StandardScaler; mixture weights only",
340
+ "context_networks": {
341
+ "types": {
342
+ "best_val_balanced_ce": 2.6379599571228027,
343
+ "rare_component_class_weights": [
344
+ 0.9054701328277588,
345
+ 0.9834902882575989,
346
+ 1.2183433771133423,
347
+ 2.2823283672332764,
348
+ 1.4210728406906128,
349
+ 0.664006769657135,
350
+ 1.1088823080062866,
351
+ 0.9519424438476562,
352
+ 2.006247043609619,
353
+ 1.284959316253662,
354
+ 1.0000585317611694,
355
+ 0.816394031047821,
356
+ 1.4308336973190308,
357
+ 1.7419129610061646,
358
+ 0.9850553870201111,
359
+ 0.8560022711753845,
360
+ 1.0894670486450195,
361
+ 1.0166257619857788,
362
+ 1.093315839767456,
363
+ 1.3658338785171509,
364
+ 0.9505099058151245,
365
+ 0.8030210137367249,
366
+ 1.4378496408462524,
367
+ 1.1177414655685425,
368
+ 0.9447774291038513,
369
+ 1.2320972681045532,
370
+ 1.2877594232559204,
371
+ 1.3630703687667847,
372
+ 0.6125376224517822,
373
+ 1.1779147386550903
374
+ ],
375
+ "history": [
376
+ {
377
+ "epoch": 1,
378
+ "train_balanced_ce": 3.327133729668561,
379
+ "val_balanced_ce": 3.1560418605804443
380
+ },
381
+ {
382
+ "epoch": 2,
383
+ "train_balanced_ce": 3.0558692987554674,
384
+ "val_balanced_ce": 2.9454360008239746
385
+ },
386
+ {
387
+ "epoch": 3,
388
+ "train_balanced_ce": 2.8952569323986936,
389
+ "val_balanced_ce": 2.8263261318206787
390
+ },
391
+ {
392
+ "epoch": 4,
393
+ "train_balanced_ce": 2.8059206115424487,
394
+ "val_balanced_ce": 2.7610409259796143
395
+ },
396
+ {
397
+ "epoch": 5,
398
+ "train_balanced_ce": 2.753854021155978,
399
+ "val_balanced_ce": 2.7239744663238525
400
+ },
401
+ {
402
+ "epoch": 6,
403
+ "train_balanced_ce": 2.719195930359015,
404
+ "val_balanced_ce": 2.7010092735290527
405
+ },
406
+ {
407
+ "epoch": 7,
408
+ "train_balanced_ce": 2.696662917370007,
409
+ "val_balanced_ce": 2.6844496726989746
410
+ },
411
+ {
412
+ "epoch": 8,
413
+ "train_balanced_ce": 2.6802184304965353,
414
+ "val_balanced_ce": 2.6739776134490967
415
+ },
416
+ {
417
+ "epoch": 9,
418
+ "train_balanced_ce": 2.6667175963488035,
419
+ "val_balanced_ce": 2.6649386882781982
420
+ },
421
+ {
422
+ "epoch": 10,
423
+ "train_balanced_ce": 2.655342041759328,
424
+ "val_balanced_ce": 2.6595187187194824
425
+ },
426
+ {
427
+ "epoch": 11,
428
+ "train_balanced_ce": 2.646644865784778,
429
+ "val_balanced_ce": 2.6531670093536377
430
+ },
431
+ {
432
+ "epoch": 12,
433
+ "train_balanced_ce": 2.638922105893132,
434
+ "val_balanced_ce": 2.650050401687622
435
+ },
436
+ {
437
+ "epoch": 13,
438
+ "train_balanced_ce": 2.6301155032011327,
439
+ "val_balanced_ce": 2.6474475860595703
440
+ },
441
+ {
442
+ "epoch": 14,
443
+ "train_balanced_ce": 2.624973926805493,
444
+ "val_balanced_ce": 2.6443593502044678
445
+ },
446
+ {
447
+ "epoch": 15,
448
+ "train_balanced_ce": 2.6193918219616528,
449
+ "val_balanced_ce": 2.6420750617980957
450
+ },
451
+ {
452
+ "epoch": 16,
453
+ "train_balanced_ce": 2.6124381206435547,
454
+ "val_balanced_ce": 2.6418068408966064
455
+ },
456
+ {
457
+ "epoch": 17,
458
+ "train_balanced_ce": 2.6091645328416666,
459
+ "val_balanced_ce": 2.640631675720215
460
+ },
461
+ {
462
+ "epoch": 18,
463
+ "train_balanced_ce": 2.602932117494973,
464
+ "val_balanced_ce": 2.6399850845336914
465
+ },
466
+ {
467
+ "epoch": 19,
468
+ "train_balanced_ce": 2.6001689587702512,
469
+ "val_balanced_ce": 2.63948655128479
470
+ },
471
+ {
472
+ "epoch": 20,
473
+ "train_balanced_ce": 2.5957646330476876,
474
+ "val_balanced_ce": 2.6383752822875977
475
+ },
476
+ {
477
+ "epoch": 21,
478
+ "train_balanced_ce": 2.5922095317014464,
479
+ "val_balanced_ce": 2.6388683319091797
480
+ },
481
+ {
482
+ "epoch": 22,
483
+ "train_balanced_ce": 2.588658949846774,
484
+ "val_balanced_ce": 2.638301134109497
485
+ },
486
+ {
487
+ "epoch": 23,
488
+ "train_balanced_ce": 2.5849562701051028,
489
+ "val_balanced_ce": 2.6379599571228027
490
+ },
491
+ {
492
+ "epoch": 24,
493
+ "train_balanced_ce": 2.5813809114508808,
494
+ "val_balanced_ce": 2.63814115524292
495
+ },
496
+ {
497
+ "epoch": 25,
498
+ "train_balanced_ce": 2.5773516544327726,
499
+ "val_balanced_ce": 2.6385602951049805
500
+ },
501
+ {
502
+ "epoch": 26,
503
+ "train_balanced_ce": 2.5750698106724457,
504
+ "val_balanced_ce": 2.6393325328826904
505
+ },
506
+ {
507
+ "epoch": 27,
508
+ "train_balanced_ce": 2.5713846944510554,
509
+ "val_balanced_ce": 2.6387481689453125
510
+ },
511
+ {
512
+ "epoch": 28,
513
+ "train_balanced_ce": 2.569814251969721,
514
+ "val_balanced_ce": 2.6385443210601807
515
+ },
516
+ {
517
+ "epoch": 29,
518
+ "train_balanced_ce": 2.5651087804897923,
519
+ "val_balanced_ce": 2.6396148204803467
520
+ },
521
+ {
522
+ "epoch": 30,
523
+ "train_balanced_ce": 2.562243485110189,
524
+ "val_balanced_ce": 2.6402180194854736
525
+ },
526
+ {
527
+ "epoch": 31,
528
+ "train_balanced_ce": 2.560101227952157,
529
+ "val_balanced_ce": 2.6405320167541504
530
+ },
531
+ {
532
+ "epoch": 32,
533
+ "train_balanced_ce": 2.55661426061132,
534
+ "val_balanced_ce": 2.6417434215545654
535
+ },
536
+ {
537
+ "epoch": 33,
538
+ "train_balanced_ce": 2.5544163542350695,
539
+ "val_balanced_ce": 2.6424314975738525
540
+ }
541
+ ]
542
+ },
543
+ "subtypes": {
544
+ "best_val_balanced_ce": 4.74838399887085,
545
+ "rare_component_class_weights": [
546
+ 0.8858819007873535,
547
+ 1.2492200136184692,
548
+ 0.7882211208343506,
549
+ 0.8914970755577087,
550
+ 0.9558954238891602,
551
+ 0.9178048968315125,
552
+ 0.9075556993484497,
553
+ 0.891228437423706,
554
+ 1.1599836349487305,
555
+ 0.7979210615158081,
556
+ 1.1246016025543213,
557
+ 1.1421326398849487,
558
+ 1.2242275476455688,
559
+ 0.6736546754837036,
560
+ 0.9256846904754639,
561
+ 1.2787002325057983,
562
+ 1.2536908388137817,
563
+ 0.8889058828353882,
564
+ 0.9807614088058472,
565
+ 1.0556004047393799,
566
+ 1.202488660812378,
567
+ 1.1546354293823242,
568
+ 1.376981496810913,
569
+ 1.1242632865905762,
570
+ 1.1243021488189697,
571
+ 1.0378310680389404,
572
+ 1.3716754913330078,
573
+ 2.021135091781616,
574
+ 1.1408162117004395,
575
+ 1.3846776485443115,
576
+ 2.8380837440490723,
577
+ 2.185183048248291,
578
+ 2.2021446228027344,
579
+ 2.237412214279175,
580
+ 2.4206273555755615,
581
+ 2.520090103149414,
582
+ 2.332657814025879,
583
+ 2.7840943336486816,
584
+ 2.2599968910217285,
585
+ 1.859877347946167,
586
+ 1.7452892065048218,
587
+ 1.8992681503295898,
588
+ 1.4001833200454712,
589
+ 1.7323801517486572,
590
+ 1.4351166486740112,
591
+ 1.1526896953582764,
592
+ 1.253915548324585,
593
+ 1.3997482061386108,
594
+ 1.5742850303649902,
595
+ 1.3191519975662231,
596
+ 0.6708050966262817,
597
+ 0.636965274810791,
598
+ 0.7368935942649841,
599
+ 0.5934725999832153,
600
+ 0.626522958278656,
601
+ 1.0054035186767578,
602
+ 0.7200466394424438,
603
+ 0.6271424293518066,
604
+ 0.5370163321495056,
605
+ 0.9150728583335876,
606
+ 1.0626749992370605,
607
+ 1.1559722423553467,
608
+ 1.2219047546386719,
609
+ 1.155783772468567,
610
+ 1.1023613214492798,
611
+ 1.058719515800476,
612
+ 1.100713849067688,
613
+ 1.1606889963150024,
614
+ 1.158084511756897,
615
+ 1.1032922267913818,
616
+ 1.1628111600875854,
617
+ 1.01945161819458,
618
+ 0.9254534840583801,
619
+ 0.8744521141052246,
620
+ 0.8398566842079163,
621
+ 0.9014085531234741,
622
+ 0.8376497626304626,
623
+ 0.8717156052589417,
624
+ 1.332512378692627,
625
+ 1.299177885055542,
626
+ 2.0868031978607178,
627
+ 3.4089150428771973,
628
+ 1.9909248352050781,
629
+ 1.9970426559448242,
630
+ 1.9287986755371094,
631
+ 1.999740719795227,
632
+ 1.8038841485977173,
633
+ 2.1949074268341064,
634
+ 1.7484748363494873,
635
+ 2.0651419162750244,
636
+ 1.243155837059021,
637
+ 1.2069836854934692,
638
+ 1.7190134525299072,
639
+ 1.1851561069488525,
640
+ 1.1607916355133057,
641
+ 1.1630581617355347,
642
+ 1.7190017700195312,
643
+ 1.360692024230957,
644
+ 1.4396873712539673,
645
+ 1.232232689857483,
646
+ 0.9987742304801941,
647
+ 1.084010124206543,
648
+ 0.7905126214027405,
649
+ 0.9897034764289856,
650
+ 1.1475404500961304,
651
+ 1.1406830549240112,
652
+ 1.0047473907470703,
653
+ 1.0724925994873047,
654
+ 1.0209473371505737,
655
+ 1.0578889846801758,
656
+ 1.3793096542358398,
657
+ 0.8652750253677368,
658
+ 0.8736939430236816,
659
+ 0.8187217116355896,
660
+ 0.8903610706329346,
661
+ 0.5031332969665527,
662
+ 1.1494258642196655,
663
+ 1.0478267669677734,
664
+ 0.7324241995811462,
665
+ 0.9238020777702332,
666
+ 2.0251972675323486,
667
+ 1.1150853633880615,
668
+ 1.2893805503845215,
669
+ 1.4819084405899048,
670
+ 2.4805164337158203,
671
+ 1.5903620719909668,
672
+ 1.4423091411590576,
673
+ 1.2132774591445923,
674
+ 1.225212812423706,
675
+ 1.9723249673843384,
676
+ 2.2322027683258057,
677
+ 1.4976388216018677,
678
+ 1.5567967891693115,
679
+ 2.207969903945923,
680
+ 3.1560420989990234,
681
+ 1.5449531078338623,
682
+ 1.463883876800537,
683
+ 1.7291325330734253,
684
+ 1.4824727773666382,
685
+ 2.4803500175476074,
686
+ 1.1695085763931274,
687
+ 0.8962638974189758,
688
+ 0.9883393049240112,
689
+ 1.2157013416290283,
690
+ 0.9510790109634399,
691
+ 1.1813758611679077,
692
+ 1.3688195943832397,
693
+ 0.8484463095664978,
694
+ 1.0364807844161987,
695
+ 0.7757946848869324,
696
+ 0.8799888491630554,
697
+ 0.6632192134857178,
698
+ 0.8812764883041382,
699
+ 0.7899048924446106,
700
+ 1.0740567445755005,
701
+ 0.9035863876342773,
702
+ 1.191146731376648,
703
+ 0.8661423325538635,
704
+ 0.7856558561325073,
705
+ 0.9731124639511108,
706
+ 1.2248855829238892,
707
+ 1.1858422756195068,
708
+ 1.498724102973938,
709
+ 0.9769347906112671,
710
+ 1.114836573600769,
711
+ 1.0007638931274414,
712
+ 1.446586012840271,
713
+ 0.9534030556678772,
714
+ 1.0899989604949951,
715
+ 0.9565661549568176,
716
+ 1.161697268486023,
717
+ 1.0621118545532227,
718
+ 1.0778300762176514,
719
+ 0.9906702041625977,
720
+ 1.2265868186950684,
721
+ 0.9392117857933044,
722
+ 1.0629667043685913,
723
+ 1.0261123180389404,
724
+ 1.019930124282837,
725
+ 0.8771238923072815,
726
+ 1.1024092435836792,
727
+ 1.1846909523010254,
728
+ 1.310926079750061,
729
+ 1.0492393970489502,
730
+ 1.2498825788497925,
731
+ 1.045751929283142,
732
+ 1.021209955215454,
733
+ 1.0378952026367188,
734
+ 1.1257129907608032,
735
+ 1.0707148313522339,
736
+ 1.1208940744400024,
737
+ 1.2543745040893555,
738
+ 1.9790464639663696,
739
+ 0.8429514765739441,
740
+ 1.3230818510055542,
741
+ 1.5686808824539185,
742
+ 1.852584958076477,
743
+ 2.1324236392974854,
744
+ 2.007986068725586,
745
+ 1.627545714378357,
746
+ 1.2397407293319702,
747
+ 0.9259937405586243,
748
+ 1.049759864807129,
749
+ 1.0352611541748047,
750
+ 0.8641874194145203,
751
+ 1.0544763803482056,
752
+ 0.9003723859786987,
753
+ 0.8041791915893555,
754
+ 0.8812156319618225,
755
+ 1.1240761280059814,
756
+ 1.1459218263626099,
757
+ 0.9727397561073303,
758
+ 0.7126681208610535,
759
+ 1.11687433719635,
760
+ 0.6999203562736511,
761
+ 0.5906533598899841,
762
+ 0.6883585453033447,
763
+ 0.8988834023475647,
764
+ 1.020295262336731,
765
+ 0.8898656964302063,
766
+ 1.6926125288009644,
767
+ 1.5300184488296509,
768
+ 1.0966424942016602,
769
+ 4.820933818817139,
770
+ 1.301947832107544,
771
+ 1.3714900016784668,
772
+ 1.252974033355713,
773
+ 2.23488450050354,
774
+ 1.4274699687957764,
775
+ 1.291433334350586,
776
+ 1.1498477458953857,
777
+ 1.1872669458389282,
778
+ 0.9627104997634888,
779
+ 1.2622126340866089,
780
+ 0.8774643540382385,
781
+ 1.0874232053756714,
782
+ 1.4879547357559204,
783
+ 1.1244398355484009,
784
+ 1.1150504350662231,
785
+ 1.5549542903900146,
786
+ 0.8934657573699951,
787
+ 0.8667140603065491,
788
+ 0.9911537170410156,
789
+ 1.0433052778244019,
790
+ 1.0105829238891602,
791
+ 0.8080525398254395,
792
+ 0.9776186943054199,
793
+ 1.1107953786849976,
794
+ 0.9223783016204834,
795
+ 1.1027956008911133,
796
+ 1.1353992223739624,
797
+ 1.2483879327774048,
798
+ 1.3906948566436768,
799
+ 1.230483889579773,
800
+ 1.0961272716522217,
801
+ 1.2923738956451416,
802
+ 1.311789870262146,
803
+ 1.3655481338500977,
804
+ 1.3092725276947021,
805
+ 1.2180919647216797,
806
+ 1.3389089107513428,
807
+ 1.2350339889526367,
808
+ 1.499922275543213,
809
+ 1.185589075088501,
810
+ 1.2140130996704102,
811
+ 1.2390824556350708,
812
+ 1.243676781654358,
813
+ 1.4656331539154053,
814
+ 1.2080615758895874,
815
+ 1.660159945487976,
816
+ 1.6063001155853271,
817
+ 1.6516400575637817,
818
+ 1.3429843187332153,
819
+ 1.1819355487823486,
820
+ 1.3197319507598877,
821
+ 1.3205816745758057,
822
+ 1.1656744480133057,
823
+ 1.3268711566925049,
824
+ 1.782961368560791,
825
+ 1.5089362859725952,
826
+ 0.6819408535957336,
827
+ 0.770066499710083,
828
+ 0.8574084043502808,
829
+ 0.6776633262634277,
830
+ 0.7155359983444214,
831
+ 0.6677842140197754,
832
+ 0.4237954914569855,
833
+ 0.47637006640434265,
834
+ 0.6997332572937012,
835
+ 0.6579715609550476,
836
+ 1.2903233766555786,
837
+ 1.0791043043136597,
838
+ 1.275104284286499,
839
+ 1.2030340433120728,
840
+ 1.3166049718856812,
841
+ 1.0697232484817505,
842
+ 1.2875763177871704,
843
+ 1.2980549335479736,
844
+ 1.202796220779419,
845
+ 1.0546985864639282
846
+ ],
847
+ "history": [
848
+ {
849
+ "epoch": 1,
850
+ "train_balanced_ce": 5.666822061502066,
851
+ "val_balanced_ce": 5.566389083862305
852
+ },
853
+ {
854
+ "epoch": 2,
855
+ "train_balanced_ce": 5.472308804158065,
856
+ "val_balanced_ce": 5.3895487785339355
857
+ },
858
+ {
859
+ "epoch": 3,
860
+ "train_balanced_ce": 5.301024833573665,
861
+ "val_balanced_ce": 5.229682445526123
862
+ },
863
+ {
864
+ "epoch": 4,
865
+ "train_balanced_ce": 5.152229858647048,
866
+ "val_balanced_ce": 5.097817420959473
867
+ },
868
+ {
869
+ "epoch": 5,
870
+ "train_balanced_ce": 5.0383959429022305,
871
+ "val_balanced_ce": 5.002829551696777
872
+ },
873
+ {
874
+ "epoch": 6,
875
+ "train_balanced_ce": 4.954631677755819,
876
+ "val_balanced_ce": 4.93775749206543
877
+ },
878
+ {
879
+ "epoch": 7,
880
+ "train_balanced_ce": 4.894083097782557,
881
+ "val_balanced_ce": 4.892715930938721
882
+ },
883
+ {
884
+ "epoch": 8,
885
+ "train_balanced_ce": 4.8506515156027,
886
+ "val_balanced_ce": 4.8612542152404785
887
+ },
888
+ {
889
+ "epoch": 9,
890
+ "train_balanced_ce": 4.818030038377822,
891
+ "val_balanced_ce": 4.837561130523682
892
+ },
893
+ {
894
+ "epoch": 10,
895
+ "train_balanced_ce": 4.78920033082841,
896
+ "val_balanced_ce": 4.819528579711914
897
+ },
898
+ {
899
+ "epoch": 11,
900
+ "train_balanced_ce": 4.7647132249478314,
901
+ "val_balanced_ce": 4.8058037757873535
902
+ },
903
+ {
904
+ "epoch": 12,
905
+ "train_balanced_ce": 4.743304482978629,
906
+ "val_balanced_ce": 4.794022083282471
907
+ },
908
+ {
909
+ "epoch": 13,
910
+ "train_balanced_ce": 4.726508649431089,
911
+ "val_balanced_ce": 4.784908294677734
912
+ },
913
+ {
914
+ "epoch": 14,
915
+ "train_balanced_ce": 4.711932225111474,
916
+ "val_balanced_ce": 4.777336120605469
917
+ },
918
+ {
919
+ "epoch": 15,
920
+ "train_balanced_ce": 4.696698321248227,
921
+ "val_balanced_ce": 4.771921634674072
922
+ },
923
+ {
924
+ "epoch": 16,
925
+ "train_balanced_ce": 4.684071786750078,
926
+ "val_balanced_ce": 4.766389846801758
927
+ },
928
+ {
929
+ "epoch": 17,
930
+ "train_balanced_ce": 4.671723687720725,
931
+ "val_balanced_ce": 4.763198375701904
932
+ },
933
+ {
934
+ "epoch": 18,
935
+ "train_balanced_ce": 4.660583729241521,
936
+ "val_balanced_ce": 4.759703159332275
937
+ },
938
+ {
939
+ "epoch": 19,
940
+ "train_balanced_ce": 4.6499694841217,
941
+ "val_balanced_ce": 4.756467342376709
942
+ },
943
+ {
944
+ "epoch": 20,
945
+ "train_balanced_ce": 4.639899801435261,
946
+ "val_balanced_ce": 4.75478982925415
947
+ },
948
+ {
949
+ "epoch": 21,
950
+ "train_balanced_ce": 4.631779058153828,
951
+ "val_balanced_ce": 4.752882480621338
952
+ },
953
+ {
954
+ "epoch": 22,
955
+ "train_balanced_ce": 4.624053954917764,
956
+ "val_balanced_ce": 4.751321315765381
957
+ },
958
+ {
959
+ "epoch": 23,
960
+ "train_balanced_ce": 4.61459136138771,
961
+ "val_balanced_ce": 4.749642848968506
962
+ },
963
+ {
964
+ "epoch": 24,
965
+ "train_balanced_ce": 4.608131133123974,
966
+ "val_balanced_ce": 4.749549388885498
967
+ },
968
+ {
969
+ "epoch": 25,
970
+ "train_balanced_ce": 4.600742366370187,
971
+ "val_balanced_ce": 4.749795436859131
972
+ },
973
+ {
974
+ "epoch": 26,
975
+ "train_balanced_ce": 4.593222081375318,
976
+ "val_balanced_ce": 4.74838399887085
977
+ },
978
+ {
979
+ "epoch": 27,
980
+ "train_balanced_ce": 4.585634634182795,
981
+ "val_balanced_ce": 4.748930931091309
982
+ },
983
+ {
984
+ "epoch": 28,
985
+ "train_balanced_ce": 4.579226414735358,
986
+ "val_balanced_ce": 4.748929023742676
987
+ },
988
+ {
989
+ "epoch": 29,
990
+ "train_balanced_ce": 4.573005742110314,
991
+ "val_balanced_ce": 4.749650955200195
992
+ },
993
+ {
994
+ "epoch": 30,
995
+ "train_balanced_ce": 4.565381892519081,
996
+ "val_balanced_ce": 4.749942302703857
997
+ },
998
+ {
999
+ "epoch": 31,
1000
+ "train_balanced_ce": 4.560266610708739,
1001
+ "val_balanced_ce": 4.750671863555908
1002
+ },
1003
+ {
1004
+ "epoch": 32,
1005
+ "train_balanced_ce": 4.554183052563381,
1006
+ "val_balanced_ce": 4.751022815704346
1007
+ },
1008
+ {
1009
+ "epoch": 33,
1010
+ "train_balanced_ce": 4.548510943728996,
1011
+ "val_balanced_ce": 4.75252103805542
1012
+ },
1013
+ {
1014
+ "epoch": 34,
1015
+ "train_balanced_ce": 4.54363978846566,
1016
+ "val_balanced_ce": 4.754114151000977
1017
+ },
1018
+ {
1019
+ "epoch": 35,
1020
+ "train_balanced_ce": 4.537244271014157,
1021
+ "val_balanced_ce": 4.755335330963135
1022
+ },
1023
+ {
1024
+ "epoch": 36,
1025
+ "train_balanced_ce": 4.53145268155969,
1026
+ "val_balanced_ce": 4.756485462188721
1027
+ }
1028
+ ]
1029
+ }
1030
+ },
1031
+ "readout": {
1032
+ "method": "members",
1033
+ "features": [
1034
+ "depolarisation_slope",
1035
+ "recovery_slope",
1036
+ "repolarisation_slope",
1037
+ "spatial_spread_um",
1038
+ "tip_val",
1039
+ "spike_width_secs",
1040
+ "predepolarisation_width_secs",
1041
+ "spike_amplitude",
1042
+ "peak_to_trough_ratio_log",
1043
+ "polarity"
1044
+ ],
1045
+ "stored_members_per_subtype": [
1046
+ 570,
1047
+ 287,
1048
+ 1019,
1049
+ 678,
1050
+ 634,
1051
+ 609,
1052
+ 641,
1053
+ 608,
1054
+ 412,
1055
+ 671,
1056
+ 396,
1057
+ 317,
1058
+ 380,
1059
+ 807,
1060
+ 615,
1061
+ 302,
1062
+ 354,
1063
+ 781,
1064
+ 530,
1065
+ 497,
1066
+ 327,
1067
+ 285,
1068
+ 158,
1069
+ 342,
1070
+ 320,
1071
+ 391,
1072
+ 218,
1073
+ 53,
1074
+ 356,
1075
+ 146,
1076
+ 26,
1077
+ 78,
1078
+ 45,
1079
+ 74,
1080
+ 38,
1081
+ 33,
1082
+ 48,
1083
+ 27,
1084
+ 42,
1085
+ 196,
1086
+ 80,
1087
+ 58,
1088
+ 186,
1089
+ 95,
1090
+ 210,
1091
+ 503,
1092
+ 190,
1093
+ 251,
1094
+ 144,
1095
+ 164,
1096
+ 1400,
1097
+ 1011,
1098
+ 1047,
1099
+ 1859,
1100
+ 1015,
1101
+ 895,
1102
+ 1140,
1103
+ 1273,
1104
+ 1407,
1105
+ 597,
1106
+ 429,
1107
+ 456,
1108
+ 357,
1109
+ 459,
1110
+ 494,
1111
+ 494,
1112
+ 347,
1113
+ 360,
1114
+ 518,
1115
+ 422,
1116
+ 544,
1117
+ 664,
1118
+ 695,
1119
+ 926,
1120
+ 1085,
1121
+ 1306,
1122
+ 888,
1123
+ 749,
1124
+ 272,
1125
+ 293,
1126
+ 58,
1127
+ 18,
1128
+ 74,
1129
+ 80,
1130
+ 89,
1131
+ 73,
1132
+ 118,
1133
+ 45,
1134
+ 160,
1135
+ 101,
1136
+ 502,
1137
+ 296,
1138
+ 117,
1139
+ 312,
1140
+ 349,
1141
+ 404,
1142
+ 107,
1143
+ 376,
1144
+ 245,
1145
+ 397,
1146
+ 496,
1147
+ 329,
1148
+ 722,
1149
+ 715,
1150
+ 357,
1151
+ 446,
1152
+ 426,
1153
+ 427,
1154
+ 472,
1155
+ 428,
1156
+ 190,
1157
+ 789,
1158
+ 1140,
1159
+ 1004,
1160
+ 738,
1161
+ 1908,
1162
+ 422,
1163
+ 688,
1164
+ 1361,
1165
+ 458,
1166
+ 51,
1167
+ 200,
1168
+ 487,
1169
+ 274,
1170
+ 34,
1171
+ 125,
1172
+ 327,
1173
+ 352,
1174
+ 324,
1175
+ 61,
1176
+ 42,
1177
+ 155,
1178
+ 122,
1179
+ 43,
1180
+ 21,
1181
+ 119,
1182
+ 239,
1183
+ 105,
1184
+ 229,
1185
+ 34,
1186
+ 369,
1187
+ 488,
1188
+ 514,
1189
+ 330,
1190
+ 555,
1191
+ 418,
1192
+ 255,
1193
+ 534,
1194
+ 497,
1195
+ 912,
1196
+ 968,
1197
+ 1083,
1198
+ 985,
1199
+ 979,
1200
+ 577,
1201
+ 1068,
1202
+ 483,
1203
+ 1246,
1204
+ 1666,
1205
+ 1135,
1206
+ 245,
1207
+ 268,
1208
+ 118,
1209
+ 384,
1210
+ 296,
1211
+ 511,
1212
+ 111,
1213
+ 501,
1214
+ 280,
1215
+ 417,
1216
+ 249,
1217
+ 487,
1218
+ 304,
1219
+ 542,
1220
+ 237,
1221
+ 456,
1222
+ 486,
1223
+ 318,
1224
+ 558,
1225
+ 511,
1226
+ 339,
1227
+ 262,
1228
+ 259,
1229
+ 389,
1230
+ 174,
1231
+ 497,
1232
+ 474,
1233
+ 540,
1234
+ 459,
1235
+ 267,
1236
+ 247,
1237
+ 181,
1238
+ 59,
1239
+ 429,
1240
+ 171,
1241
+ 88,
1242
+ 62,
1243
+ 47,
1244
+ 52,
1245
+ 79,
1246
+ 213,
1247
+ 412,
1248
+ 424,
1249
+ 533,
1250
+ 711,
1251
+ 600,
1252
+ 835,
1253
+ 1120,
1254
+ 688,
1255
+ 463,
1256
+ 386,
1257
+ 337,
1258
+ 622,
1259
+ 305,
1260
+ 719,
1261
+ 1266,
1262
+ 844,
1263
+ 587,
1264
+ 363,
1265
+ 960,
1266
+ 79,
1267
+ 124,
1268
+ 390,
1269
+ 9,
1270
+ 239,
1271
+ 245,
1272
+ 334,
1273
+ 42,
1274
+ 132,
1275
+ 196,
1276
+ 405,
1277
+ 254,
1278
+ 444,
1279
+ 168,
1280
+ 520,
1281
+ 245,
1282
+ 141,
1283
+ 532,
1284
+ 426,
1285
+ 127,
1286
+ 1178,
1287
+ 997,
1288
+ 546,
1289
+ 691,
1290
+ 839,
1291
+ 1286,
1292
+ 1006,
1293
+ 764,
1294
+ 992,
1295
+ 652,
1296
+ 576,
1297
+ 370,
1298
+ 268,
1299
+ 453,
1300
+ 429,
1301
+ 360,
1302
+ 200,
1303
+ 283,
1304
+ 292,
1305
+ 601,
1306
+ 189,
1307
+ 181,
1308
+ 98,
1309
+ 269,
1310
+ 295,
1311
+ 233,
1312
+ 238,
1313
+ 149,
1314
+ 330,
1315
+ 113,
1316
+ 86,
1317
+ 84,
1318
+ 242,
1319
+ 252,
1320
+ 211,
1321
+ 133,
1322
+ 274,
1323
+ 201,
1324
+ 69,
1325
+ 106,
1326
+ 1697,
1327
+ 1305,
1328
+ 1160,
1329
+ 990,
1330
+ 997,
1331
+ 1389,
1332
+ 2132,
1333
+ 2419,
1334
+ 1212,
1335
+ 1154,
1336
+ 351,
1337
+ 747,
1338
+ 399,
1339
+ 427,
1340
+ 249,
1341
+ 850,
1342
+ 519,
1343
+ 357,
1344
+ 373,
1345
+ 574
1346
+ ]
1347
+ }
1348
+ }
types_gmm.joblib ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9ecb10a764de5607004108310818bedbc85368da41c876bf064a210285bfbbbf
3
+ size 2608443