HamzaCherkaoui commited on
Commit
59aac48
·
verified ·
1 Parent(s): 30c403e

Export trained reference models

Browse files
LICENSE ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Hamza Cherkaoui
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
README.md ADDED
@@ -0,0 +1,168 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ library_name: gendynamics
3
+ license: mit
4
+ tags:
5
+ - diffusion
6
+ - unconditional-generation
7
+ ---
8
+
9
+ # synthetic_alpha_stable_mixture
10
+
11
+ Unconditional reference models trained with gendynamics. The weights correspond to the best validation epoch.
12
+
13
+ ## Dataset
14
+
15
+ Synthetic unbalanced high-dimensional alpha-stable mixture. Generated by `gendynamics.datasets.fetch_synthetic_data('unbalanced_highdim_alpha_stable_mixture')`. Sample the configured mixture, then make a seeded random train/validation/test split.
16
+ The train/validation/test splits contain 10,000/1,000/10,000 samples
17
+ of shape `[150]`. Normalization: None
18
+ The exact generator arguments or processed-file identity, split settings, and seed are in `dataset.json`.
19
+ The source data themselves are not redistributed here; source-data terms remain with their provider.
20
+ The preparation code is in [gendynamics](https://github.com/Diffusion-Research-Lab/gendynamics). API-backed sources can change; the processed-file checksum identifies this snapshot.
21
+
22
+ ## Architecture and training
23
+
24
+ All independently trained models use this network architecture:
25
+
26
+ ```json
27
+ {
28
+ "name": "mlp",
29
+ "params": {
30
+ "width": 240,
31
+ "depth": 4,
32
+ "time_dim": 128,
33
+ "dropout": 0.0,
34
+ "use_norm": true,
35
+ "dim": 150
36
+ }
37
+ }
38
+ ```
39
+
40
+ | Directory | Model | Prediction target | Trainable parameters | Sampling steps | Learning rate | Epochs run / best | Val loss | Test loss |
41
+ |---|---|---|---:|---:|---:|---:|---:|---:|
42
+ | ddpm-v | DDPM-V | velocity | 693,894 | 128 | 0.0002 | 250 / 150 | 6.379 | 5.197 |
43
+ | dlpm-eps | DLPM-Eps | noise | 693,894 | 128 | 0.0005 | 640 / 558 | 0.8109 | 0.8493 |
44
+ | tedm-origin | t-EDM | denoised data | 693,894 | 64 | 0.0005 | 179 / 79 | 1.069 | 2.891 |
45
+
46
+ The complete **selected final** model and training settings are below and in each directory's `config.json`.
47
+ The training settings include the maximum epoch budget; `epochs run / best` reports what actually happened.
48
+ `provenance.json` records software versions and the source revision. Each model was reloaded and checked before upload;
49
+ `export_check.json` records that check. Losses use each model's own objective, so they are not comparable sample-quality scores.
50
+ The number of held-out rows used for each test loss is in `metrics.json`. Sample previews do not establish tail accuracy.
51
+
52
+ ### DDPM-V (`ddpm-v/`)
53
+
54
+ ```json
55
+ {
56
+ "model_parameters": {
57
+ "n_steps": 128,
58
+ "sigma_max": 2.0,
59
+ "sampler": "ddpm"
60
+ },
61
+ "training": {
62
+ "device": "cuda",
63
+ "data_device": "cpu",
64
+ "batch_size": 1024,
65
+ "n_epochs": 640,
66
+ "early_stopping_patience": 100,
67
+ "lr": 0.0002,
68
+ "num_workers": 0,
69
+ "use_adamw": true,
70
+ "weight_decay": 1e-06,
71
+ "grad_clip_norm": 10.0,
72
+ "lr_schedule": "cosine",
73
+ "warmup_steps": 400,
74
+ "cosine_eta_min_ratio": 0.05,
75
+ "freq_logging": 50,
76
+ "stats_freq_epochs": 1,
77
+ "log_grad_norm": true,
78
+ "ckpt_freq_epochs": 64,
79
+ "ckpt_keep_last": 8
80
+ }
81
+ }
82
+ ```
83
+ ### DLPM-Eps (`dlpm-eps/`)
84
+
85
+ ```json
86
+ {
87
+ "model_parameters": {
88
+ "n_steps": 128,
89
+ "alpha": 1.9,
90
+ "sampler": "native"
91
+ },
92
+ "training": {
93
+ "device": "cuda",
94
+ "data_device": "cpu",
95
+ "batch_size": 1024,
96
+ "n_epochs": 640,
97
+ "early_stopping_patience": 100,
98
+ "lr": 0.0005,
99
+ "num_workers": 0,
100
+ "use_adamw": true,
101
+ "weight_decay": 1e-06,
102
+ "grad_clip_norm": 10.0,
103
+ "lr_schedule": "cosine",
104
+ "warmup_steps": 400,
105
+ "cosine_eta_min_ratio": 0.05,
106
+ "freq_logging": 50,
107
+ "stats_freq_epochs": 1,
108
+ "log_grad_norm": true,
109
+ "ckpt_freq_epochs": 64,
110
+ "ckpt_keep_last": 8
111
+ }
112
+ }
113
+ ```
114
+ ### t-EDM (`tedm-origin/`)
115
+
116
+ ```json
117
+ {
118
+ "model_parameters": {
119
+ "n_steps": 64,
120
+ "nu": 2.1,
121
+ "sigma_min": 0.005,
122
+ "sigma_max": 5.0,
123
+ "sigma_data": 1.0,
124
+ "solver": "edm_stochastic_heun"
125
+ },
126
+ "training": {
127
+ "device": "cuda",
128
+ "data_device": "cpu",
129
+ "batch_size": 1024,
130
+ "n_epochs": 640,
131
+ "early_stopping_patience": 100,
132
+ "lr": 0.0005,
133
+ "num_workers": 0,
134
+ "use_adamw": true,
135
+ "weight_decay": 1e-06,
136
+ "grad_clip_norm": 10.0,
137
+ "lr_schedule": "cosine",
138
+ "warmup_steps": 400,
139
+ "cosine_eta_min_ratio": 0.05,
140
+ "freq_logging": 50,
141
+ "stats_freq_epochs": 1,
142
+ "log_grad_norm": true,
143
+ "ckpt_freq_epochs": 64,
144
+ "ckpt_keep_last": 8
145
+ }
146
+ }
147
+ ```
148
+
149
+ DDIM-V (`ddim-v/`) shares the trained DDPM-V weights. Only the reverse sampler changes to deterministic DDIM (`eta=0`); it has no separate training run. Its exact sampling settings are in `ddim-v/config.json`.
150
+
151
+ ## Loading
152
+
153
+ Install the training package and its dependencies:
154
+
155
+ python -m pip install git+https://github.com/Diffusion-Research-Lab/2_training_2026_tail_reference_models.git
156
+
157
+ Then load one of the listed model directories by its underscored name:
158
+
159
+ from toolkit.huggingface import load_huggingface_model
160
+
161
+ model, normalization, data_scale = load_huggingface_model("Diffusion-Research-Lab/alpha-stable-mixture-1p7-150d-diffusion", "ddpm_v", device="cpu")
162
+ samples = model.sample(16).float().cpu()
163
+ if normalization is not None:
164
+ samples = samples * normalization["std"] + normalization["mean"]
165
+
166
+ The model-specific files are `model.safetensors`, `config.json`, `dataset.json`, `metrics.json`,
167
+ `provenance.json`, `export_check.json`, and, when applicable, `normalization.safetensors`.
168
+ This repository is released under the MIT license. Cite the model repository revision when using these weights.
ddim-v/config.json ADDED
@@ -0,0 +1,165 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "config": {
3
+ "run": {
4
+ "name": "synthetic_alpha_stable_mixture",
5
+ "seed": 0,
6
+ "dtype": "float64"
7
+ },
8
+ "dataset": {
9
+ "kind": "synthetic",
10
+ "name": "unbalanced_highdim_alpha_stable_mixture",
11
+ "params": {
12
+ "n_samples": 21000,
13
+ "alpha": 1.7,
14
+ "dim": 150,
15
+ "n_modes": 16,
16
+ "rank": 6,
17
+ "imbalance_tau": 1.2,
18
+ "mean_scale": 7.5,
19
+ "base_scale": 0.55,
20
+ "anisotropy": 1.0,
21
+ "structure_seed": 0
22
+ },
23
+ "split": {
24
+ "val_size": 0.047619047619047616,
25
+ "test_size": 0.47619047619047616,
26
+ "random_state": 0,
27
+ "standardize": false
28
+ }
29
+ },
30
+ "network": {
31
+ "name": "mlp",
32
+ "params": {
33
+ "width": 240,
34
+ "depth": 4,
35
+ "time_dim": 128,
36
+ "dropout": 0.0,
37
+ "use_norm": true
38
+ }
39
+ },
40
+ "models": {
41
+ "ddpm_v": {
42
+ "params": {
43
+ "n_steps": 128,
44
+ "sigma_max": 2.0,
45
+ "sampler": "ddpm"
46
+ }
47
+ },
48
+ "dlpm_eps": {
49
+ "params": {
50
+ "n_steps": 128,
51
+ "alpha": 1.7,
52
+ "sampler": "native"
53
+ }
54
+ },
55
+ "tedm_origin": {
56
+ "params": {
57
+ "n_steps": 64,
58
+ "nu": 2.1,
59
+ "sigma_min": 0.005,
60
+ "sigma_max": 5.0,
61
+ "sigma_data": 1.0,
62
+ "solver": "edm_stochastic_heun"
63
+ }
64
+ }
65
+ },
66
+ "pilot": {
67
+ "n_trials": 3,
68
+ "train": {
69
+ "n_epochs": 96,
70
+ "early_stopping_patience": 32,
71
+ "freq_logging": 16,
72
+ "stats_freq_epochs": 1
73
+ },
74
+ "sweep": {
75
+ "ddpm_v": {
76
+ "model": {
77
+ "sigma_max": [
78
+ 2.0,
79
+ 5.0,
80
+ 8.0
81
+ ]
82
+ },
83
+ "train": {
84
+ "lr": [
85
+ 0.0001,
86
+ 0.0002,
87
+ 0.0005
88
+ ]
89
+ }
90
+ },
91
+ "dlpm_eps": {
92
+ "model": {
93
+ "alpha": [
94
+ 1.7,
95
+ 1.9
96
+ ]
97
+ },
98
+ "train": {
99
+ "lr": [
100
+ 0.0001,
101
+ 0.0002,
102
+ 0.0005
103
+ ]
104
+ }
105
+ },
106
+ "tedm_origin": {
107
+ "model": {
108
+ "nu": [
109
+ 2.1,
110
+ 3.0
111
+ ]
112
+ },
113
+ "train": {
114
+ "lr": [
115
+ 0.0001,
116
+ 0.0002,
117
+ 0.0005
118
+ ]
119
+ }
120
+ }
121
+ }
122
+ },
123
+ "train": {
124
+ "device": "cuda",
125
+ "data_device": "cpu",
126
+ "batch_size": 1024,
127
+ "n_epochs": 640,
128
+ "early_stopping_patience": 100,
129
+ "lr": 0.0002,
130
+ "num_workers": 0,
131
+ "use_adamw": true,
132
+ "weight_decay": 1e-06,
133
+ "grad_clip_norm": 10.0,
134
+ "lr_schedule": "cosine",
135
+ "warmup_steps": 400,
136
+ "cosine_eta_min_ratio": 0.05,
137
+ "freq_logging": 50,
138
+ "stats_freq_epochs": 1,
139
+ "log_grad_norm": true,
140
+ "ckpt_freq_epochs": 64,
141
+ "ckpt_keep_last": 8
142
+ },
143
+ "test": {
144
+ "batch_size": 1024,
145
+ "loss_repeats": 4,
146
+ "n_samples": 32
147
+ },
148
+ "huggingface": {
149
+ "namespace": "Diffusion-Research-Lab",
150
+ "repository": "alpha-stable-mixture-1p7-150d-diffusion"
151
+ }
152
+ },
153
+ "model_name": "ddim_v",
154
+ "model_params": {
155
+ "n_steps": 128,
156
+ "sigma_max": 2.0,
157
+ "sampler": "ddim",
158
+ "eta": 0.0,
159
+ "sample_steps": null
160
+ },
161
+ "sample_shape": [
162
+ 150
163
+ ],
164
+ "data_scale": 0.6880503018650794
165
+ }
ddim-v/dataset.json ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "unbalanced_highdim_alpha_stable_mixture",
3
+ "kind": "synthetic",
4
+ "params": {
5
+ "n_samples": 21000,
6
+ "alpha": 1.7,
7
+ "dim": 150,
8
+ "n_modes": 16,
9
+ "rank": 6,
10
+ "imbalance_tau": 1.2,
11
+ "mean_scale": 7.5,
12
+ "base_scale": 0.55,
13
+ "anisotropy": 1.0,
14
+ "structure_seed": 0
15
+ },
16
+ "split": {
17
+ "val_size": 0.047619047619047616,
18
+ "test_size": 0.47619047619047616,
19
+ "random_state": 0,
20
+ "standardize": false
21
+ },
22
+ "split_mode": "random",
23
+ "counts": {
24
+ "train": 10000,
25
+ "validation": 1000,
26
+ "test": 10000
27
+ },
28
+ "n_samples": 21000,
29
+ "sample_shape": [
30
+ 150
31
+ ],
32
+ "seed": 0,
33
+ "normalization": "None",
34
+ "provenance": {
35
+ "origin": "Synthetic unbalanced high-dimensional alpha-stable mixture",
36
+ "generator": "gendynamics.datasets.fetch_synthetic_data('unbalanced_highdim_alpha_stable_mixture')",
37
+ "preparation": "Sample the configured mixture, then make a seeded random train/validation/test split."
38
+ }
39
+ }
ddim-v/export_check.json ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "passed": true,
3
+ "shape": [
4
+ 4,
5
+ 150
6
+ ],
7
+ "finite": true,
8
+ "seed": 20000,
9
+ "batch_size": 1024,
10
+ "device": "cpu",
11
+ "model_dtype": "torch.float64",
12
+ "sample_dtype": "torch.float32",
13
+ "min": -4.537977695465088,
14
+ "max": 4.132815837860107,
15
+ "std": 1.3834874926946228,
16
+ "clamp_min": null,
17
+ "clipped_fraction": 0.0,
18
+ "scope": "Shape and numerical validity only; not distribution quality or tail accuracy.",
19
+ "reloaded_safetensors": true,
20
+ "trainable_parameters": 693894
21
+ }
ddim-v/metrics.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "best_epoch": 150,
3
+ "validation_loss": 6.378554867091844,
4
+ "test_loss_samples": 10000,
5
+ "test_loss": 5.196955184231518
6
+ }
ddim-v/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3dc36767f1245d4f37b896648a88e7a7995499206883b212c8df7445c7b650b1
3
+ size 5554560
ddim-v/provenance.json ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "recorded_at_utc": "2026-10-04T00:15:48.261096+00:00",
3
+ "python": "3.12.11",
4
+ "platform": "Linux-5.14.0-570.131.1.el9_6.x86_64-x86_64-with-glibc2.34",
5
+ "device": "cuda",
6
+ "gpu": "Tesla V100-SXM2-16GB",
7
+ "cuda_version": "12.8",
8
+ "source": {
9
+ "commit": null,
10
+ "dirty": null
11
+ },
12
+ "dependencies": {
13
+ "torch": "2.8.0",
14
+ "gendynamics": "0.1.0",
15
+ "benchtools": "0.1.0",
16
+ "safetensors": "0.6.2",
17
+ "huggingface-hub": "0.34.4"
18
+ }
19
+ }
ddpm-v/config.json ADDED
@@ -0,0 +1,163 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "config": {
3
+ "run": {
4
+ "name": "synthetic_alpha_stable_mixture",
5
+ "seed": 0,
6
+ "dtype": "float64"
7
+ },
8
+ "dataset": {
9
+ "kind": "synthetic",
10
+ "name": "unbalanced_highdim_alpha_stable_mixture",
11
+ "params": {
12
+ "n_samples": 21000,
13
+ "alpha": 1.7,
14
+ "dim": 150,
15
+ "n_modes": 16,
16
+ "rank": 6,
17
+ "imbalance_tau": 1.2,
18
+ "mean_scale": 7.5,
19
+ "base_scale": 0.55,
20
+ "anisotropy": 1.0,
21
+ "structure_seed": 0
22
+ },
23
+ "split": {
24
+ "val_size": 0.047619047619047616,
25
+ "test_size": 0.47619047619047616,
26
+ "random_state": 0,
27
+ "standardize": false
28
+ }
29
+ },
30
+ "network": {
31
+ "name": "mlp",
32
+ "params": {
33
+ "width": 240,
34
+ "depth": 4,
35
+ "time_dim": 128,
36
+ "dropout": 0.0,
37
+ "use_norm": true
38
+ }
39
+ },
40
+ "models": {
41
+ "ddpm_v": {
42
+ "params": {
43
+ "n_steps": 128,
44
+ "sigma_max": 2.0,
45
+ "sampler": "ddpm"
46
+ }
47
+ },
48
+ "dlpm_eps": {
49
+ "params": {
50
+ "n_steps": 128,
51
+ "alpha": 1.7,
52
+ "sampler": "native"
53
+ }
54
+ },
55
+ "tedm_origin": {
56
+ "params": {
57
+ "n_steps": 64,
58
+ "nu": 2.1,
59
+ "sigma_min": 0.005,
60
+ "sigma_max": 5.0,
61
+ "sigma_data": 1.0,
62
+ "solver": "edm_stochastic_heun"
63
+ }
64
+ }
65
+ },
66
+ "pilot": {
67
+ "n_trials": 3,
68
+ "train": {
69
+ "n_epochs": 96,
70
+ "early_stopping_patience": 32,
71
+ "freq_logging": 16,
72
+ "stats_freq_epochs": 1
73
+ },
74
+ "sweep": {
75
+ "ddpm_v": {
76
+ "model": {
77
+ "sigma_max": [
78
+ 2.0,
79
+ 5.0,
80
+ 8.0
81
+ ]
82
+ },
83
+ "train": {
84
+ "lr": [
85
+ 0.0001,
86
+ 0.0002,
87
+ 0.0005
88
+ ]
89
+ }
90
+ },
91
+ "dlpm_eps": {
92
+ "model": {
93
+ "alpha": [
94
+ 1.7,
95
+ 1.9
96
+ ]
97
+ },
98
+ "train": {
99
+ "lr": [
100
+ 0.0001,
101
+ 0.0002,
102
+ 0.0005
103
+ ]
104
+ }
105
+ },
106
+ "tedm_origin": {
107
+ "model": {
108
+ "nu": [
109
+ 2.1,
110
+ 3.0
111
+ ]
112
+ },
113
+ "train": {
114
+ "lr": [
115
+ 0.0001,
116
+ 0.0002,
117
+ 0.0005
118
+ ]
119
+ }
120
+ }
121
+ }
122
+ },
123
+ "train": {
124
+ "device": "cuda",
125
+ "data_device": "cpu",
126
+ "batch_size": 1024,
127
+ "n_epochs": 640,
128
+ "early_stopping_patience": 100,
129
+ "lr": 0.0002,
130
+ "num_workers": 0,
131
+ "use_adamw": true,
132
+ "weight_decay": 1e-06,
133
+ "grad_clip_norm": 10.0,
134
+ "lr_schedule": "cosine",
135
+ "warmup_steps": 400,
136
+ "cosine_eta_min_ratio": 0.05,
137
+ "freq_logging": 50,
138
+ "stats_freq_epochs": 1,
139
+ "log_grad_norm": true,
140
+ "ckpt_freq_epochs": 64,
141
+ "ckpt_keep_last": 8
142
+ },
143
+ "test": {
144
+ "batch_size": 1024,
145
+ "loss_repeats": 4,
146
+ "n_samples": 32
147
+ },
148
+ "huggingface": {
149
+ "namespace": "Diffusion-Research-Lab",
150
+ "repository": "alpha-stable-mixture-1p7-150d-diffusion"
151
+ }
152
+ },
153
+ "model_name": "ddpm_v",
154
+ "model_params": {
155
+ "n_steps": 128,
156
+ "sigma_max": 2.0,
157
+ "sampler": "ddpm"
158
+ },
159
+ "sample_shape": [
160
+ 150
161
+ ],
162
+ "data_scale": 0.6880503018650794
163
+ }
ddpm-v/dataset.json ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "unbalanced_highdim_alpha_stable_mixture",
3
+ "kind": "synthetic",
4
+ "params": {
5
+ "n_samples": 21000,
6
+ "alpha": 1.7,
7
+ "dim": 150,
8
+ "n_modes": 16,
9
+ "rank": 6,
10
+ "imbalance_tau": 1.2,
11
+ "mean_scale": 7.5,
12
+ "base_scale": 0.55,
13
+ "anisotropy": 1.0,
14
+ "structure_seed": 0
15
+ },
16
+ "split": {
17
+ "val_size": 0.047619047619047616,
18
+ "test_size": 0.47619047619047616,
19
+ "random_state": 0,
20
+ "standardize": false
21
+ },
22
+ "split_mode": "random",
23
+ "counts": {
24
+ "train": 10000,
25
+ "validation": 1000,
26
+ "test": 10000
27
+ },
28
+ "n_samples": 21000,
29
+ "sample_shape": [
30
+ 150
31
+ ],
32
+ "seed": 0,
33
+ "normalization": "None",
34
+ "provenance": {
35
+ "origin": "Synthetic unbalanced high-dimensional alpha-stable mixture",
36
+ "generator": "gendynamics.datasets.fetch_synthetic_data('unbalanced_highdim_alpha_stable_mixture')",
37
+ "preparation": "Sample the configured mixture, then make a seeded random train/validation/test split."
38
+ }
39
+ }
ddpm-v/export_check.json ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "passed": true,
3
+ "shape": [
4
+ 4,
5
+ 150
6
+ ],
7
+ "finite": true,
8
+ "seed": 20000,
9
+ "batch_size": 1024,
10
+ "device": "cpu",
11
+ "model_dtype": "torch.float64",
12
+ "sample_dtype": "torch.float32",
13
+ "min": -4.71538782119751,
14
+ "max": 3.6429829597473145,
15
+ "std": 1.3612132868099323,
16
+ "clamp_min": null,
17
+ "clipped_fraction": 0.0,
18
+ "scope": "Shape and numerical validity only; not distribution quality or tail accuracy.",
19
+ "reloaded_safetensors": true,
20
+ "trainable_parameters": 693894
21
+ }
ddpm-v/metrics.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "best_epoch": 150,
3
+ "validation_loss": 6.378554867091844,
4
+ "test_loss_samples": 10000,
5
+ "test_loss": 5.196955184231518
6
+ }
ddpm-v/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3dc36767f1245d4f37b896648a88e7a7995499206883b212c8df7445c7b650b1
3
+ size 5554560
ddpm-v/provenance.json ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "recorded_at_utc": "2026-10-04T00:15:48.261096+00:00",
3
+ "python": "3.12.11",
4
+ "platform": "Linux-5.14.0-570.131.1.el9_6.x86_64-x86_64-with-glibc2.34",
5
+ "device": "cuda",
6
+ "gpu": "Tesla V100-SXM2-16GB",
7
+ "cuda_version": "12.8",
8
+ "source": {
9
+ "commit": null,
10
+ "dirty": null
11
+ },
12
+ "dependencies": {
13
+ "torch": "2.8.0",
14
+ "gendynamics": "0.1.0",
15
+ "benchtools": "0.1.0",
16
+ "safetensors": "0.6.2",
17
+ "huggingface-hub": "0.34.4"
18
+ }
19
+ }
ddpm-v/samples.png ADDED
dlpm-eps/config.json ADDED
@@ -0,0 +1,163 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "config": {
3
+ "run": {
4
+ "name": "synthetic_alpha_stable_mixture",
5
+ "seed": 0,
6
+ "dtype": "float64"
7
+ },
8
+ "dataset": {
9
+ "kind": "synthetic",
10
+ "name": "unbalanced_highdim_alpha_stable_mixture",
11
+ "params": {
12
+ "n_samples": 21000,
13
+ "alpha": 1.7,
14
+ "dim": 150,
15
+ "n_modes": 16,
16
+ "rank": 6,
17
+ "imbalance_tau": 1.2,
18
+ "mean_scale": 7.5,
19
+ "base_scale": 0.55,
20
+ "anisotropy": 1.0,
21
+ "structure_seed": 0
22
+ },
23
+ "split": {
24
+ "val_size": 0.047619047619047616,
25
+ "test_size": 0.47619047619047616,
26
+ "random_state": 0,
27
+ "standardize": false
28
+ }
29
+ },
30
+ "network": {
31
+ "name": "mlp",
32
+ "params": {
33
+ "width": 240,
34
+ "depth": 4,
35
+ "time_dim": 128,
36
+ "dropout": 0.0,
37
+ "use_norm": true
38
+ }
39
+ },
40
+ "models": {
41
+ "ddpm_v": {
42
+ "params": {
43
+ "n_steps": 128,
44
+ "sigma_max": 5.0,
45
+ "sampler": "ddpm"
46
+ }
47
+ },
48
+ "dlpm_eps": {
49
+ "params": {
50
+ "n_steps": 128,
51
+ "alpha": 1.9,
52
+ "sampler": "native"
53
+ }
54
+ },
55
+ "tedm_origin": {
56
+ "params": {
57
+ "n_steps": 64,
58
+ "nu": 2.1,
59
+ "sigma_min": 0.005,
60
+ "sigma_max": 5.0,
61
+ "sigma_data": 1.0,
62
+ "solver": "edm_stochastic_heun"
63
+ }
64
+ }
65
+ },
66
+ "pilot": {
67
+ "n_trials": 3,
68
+ "train": {
69
+ "n_epochs": 96,
70
+ "early_stopping_patience": 32,
71
+ "freq_logging": 16,
72
+ "stats_freq_epochs": 1
73
+ },
74
+ "sweep": {
75
+ "ddpm_v": {
76
+ "model": {
77
+ "sigma_max": [
78
+ 2.0,
79
+ 5.0,
80
+ 8.0
81
+ ]
82
+ },
83
+ "train": {
84
+ "lr": [
85
+ 0.0001,
86
+ 0.0002,
87
+ 0.0005
88
+ ]
89
+ }
90
+ },
91
+ "dlpm_eps": {
92
+ "model": {
93
+ "alpha": [
94
+ 1.7,
95
+ 1.9
96
+ ]
97
+ },
98
+ "train": {
99
+ "lr": [
100
+ 0.0001,
101
+ 0.0002,
102
+ 0.0005
103
+ ]
104
+ }
105
+ },
106
+ "tedm_origin": {
107
+ "model": {
108
+ "nu": [
109
+ 2.1,
110
+ 3.0
111
+ ]
112
+ },
113
+ "train": {
114
+ "lr": [
115
+ 0.0001,
116
+ 0.0002,
117
+ 0.0005
118
+ ]
119
+ }
120
+ }
121
+ }
122
+ },
123
+ "train": {
124
+ "device": "cuda",
125
+ "data_device": "cpu",
126
+ "batch_size": 1024,
127
+ "n_epochs": 640,
128
+ "early_stopping_patience": 100,
129
+ "lr": 0.0005,
130
+ "num_workers": 0,
131
+ "use_adamw": true,
132
+ "weight_decay": 1e-06,
133
+ "grad_clip_norm": 10.0,
134
+ "lr_schedule": "cosine",
135
+ "warmup_steps": 400,
136
+ "cosine_eta_min_ratio": 0.05,
137
+ "freq_logging": 50,
138
+ "stats_freq_epochs": 1,
139
+ "log_grad_norm": true,
140
+ "ckpt_freq_epochs": 64,
141
+ "ckpt_keep_last": 8
142
+ },
143
+ "test": {
144
+ "batch_size": 1024,
145
+ "loss_repeats": 4,
146
+ "n_samples": 32
147
+ },
148
+ "huggingface": {
149
+ "namespace": "Diffusion-Research-Lab",
150
+ "repository": "alpha-stable-mixture-1p7-150d-diffusion"
151
+ }
152
+ },
153
+ "model_name": "dlpm_eps",
154
+ "model_params": {
155
+ "n_steps": 128,
156
+ "alpha": 1.9,
157
+ "sampler": "native"
158
+ },
159
+ "sample_shape": [
160
+ 150
161
+ ],
162
+ "data_scale": 0.6880503018650794
163
+ }
dlpm-eps/dataset.json ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "unbalanced_highdim_alpha_stable_mixture",
3
+ "kind": "synthetic",
4
+ "params": {
5
+ "n_samples": 21000,
6
+ "alpha": 1.7,
7
+ "dim": 150,
8
+ "n_modes": 16,
9
+ "rank": 6,
10
+ "imbalance_tau": 1.2,
11
+ "mean_scale": 7.5,
12
+ "base_scale": 0.55,
13
+ "anisotropy": 1.0,
14
+ "structure_seed": 0
15
+ },
16
+ "split": {
17
+ "val_size": 0.047619047619047616,
18
+ "test_size": 0.47619047619047616,
19
+ "random_state": 0,
20
+ "standardize": false
21
+ },
22
+ "split_mode": "random",
23
+ "counts": {
24
+ "train": 10000,
25
+ "validation": 1000,
26
+ "test": 10000
27
+ },
28
+ "n_samples": 21000,
29
+ "sample_shape": [
30
+ 150
31
+ ],
32
+ "seed": 0,
33
+ "normalization": "None",
34
+ "provenance": {
35
+ "origin": "Synthetic unbalanced high-dimensional alpha-stable mixture",
36
+ "generator": "gendynamics.datasets.fetch_synthetic_data('unbalanced_highdim_alpha_stable_mixture')",
37
+ "preparation": "Sample the configured mixture, then make a seeded random train/validation/test split."
38
+ }
39
+ }
dlpm-eps/export_check.json ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "passed": true,
3
+ "shape": [
4
+ 4,
5
+ 150
6
+ ],
7
+ "finite": true,
8
+ "seed": 20000,
9
+ "batch_size": 1024,
10
+ "device": "cpu",
11
+ "model_dtype": "torch.float64",
12
+ "sample_dtype": "torch.float32",
13
+ "min": -2.6529760360717773,
14
+ "max": 3.236975908279419,
15
+ "std": 0.9366270955322801,
16
+ "clamp_min": null,
17
+ "clipped_fraction": 0.0,
18
+ "scope": "Shape and numerical validity only; not distribution quality or tail accuracy.",
19
+ "reloaded_safetensors": true,
20
+ "trainable_parameters": 693894
21
+ }
dlpm-eps/metrics.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "best_epoch": 558,
3
+ "validation_loss": 0.810883340373693,
4
+ "test_loss_samples": 10000,
5
+ "test_loss": 0.8492910243112395
6
+ }
dlpm-eps/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5064bc90ac0c04de7f65721adc5af6d914d9c7f11d99b7006b8630a110c9668c
3
+ size 5554560
dlpm-eps/provenance.json ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "recorded_at_utc": "2026-10-04T00:15:40.661444+00:00",
3
+ "python": "3.12.11",
4
+ "platform": "Linux-5.14.0-570.131.1.el9_6.x86_64-x86_64-with-glibc2.34",
5
+ "device": "cuda",
6
+ "gpu": "Tesla V100-SXM2-16GB",
7
+ "cuda_version": "12.8",
8
+ "source": {
9
+ "commit": null,
10
+ "dirty": null
11
+ },
12
+ "dependencies": {
13
+ "torch": "2.8.0",
14
+ "gendynamics": "0.1.0",
15
+ "benchtools": "0.1.0",
16
+ "safetensors": "0.6.2",
17
+ "huggingface-hub": "0.34.4"
18
+ }
19
+ }
dlpm-eps/samples.png ADDED
tedm-origin/config.json ADDED
@@ -0,0 +1,166 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "config": {
3
+ "run": {
4
+ "name": "synthetic_alpha_stable_mixture",
5
+ "seed": 0,
6
+ "dtype": "float64"
7
+ },
8
+ "dataset": {
9
+ "kind": "synthetic",
10
+ "name": "unbalanced_highdim_alpha_stable_mixture",
11
+ "params": {
12
+ "n_samples": 21000,
13
+ "alpha": 1.7,
14
+ "dim": 150,
15
+ "n_modes": 16,
16
+ "rank": 6,
17
+ "imbalance_tau": 1.2,
18
+ "mean_scale": 7.5,
19
+ "base_scale": 0.55,
20
+ "anisotropy": 1.0,
21
+ "structure_seed": 0
22
+ },
23
+ "split": {
24
+ "val_size": 0.047619047619047616,
25
+ "test_size": 0.47619047619047616,
26
+ "random_state": 0,
27
+ "standardize": false
28
+ }
29
+ },
30
+ "network": {
31
+ "name": "mlp",
32
+ "params": {
33
+ "width": 240,
34
+ "depth": 4,
35
+ "time_dim": 128,
36
+ "dropout": 0.0,
37
+ "use_norm": true
38
+ }
39
+ },
40
+ "models": {
41
+ "ddpm_v": {
42
+ "params": {
43
+ "n_steps": 128,
44
+ "sigma_max": 5.0,
45
+ "sampler": "ddpm"
46
+ }
47
+ },
48
+ "dlpm_eps": {
49
+ "params": {
50
+ "n_steps": 128,
51
+ "alpha": 1.7,
52
+ "sampler": "native"
53
+ }
54
+ },
55
+ "tedm_origin": {
56
+ "params": {
57
+ "n_steps": 64,
58
+ "nu": 2.1,
59
+ "sigma_min": 0.005,
60
+ "sigma_max": 5.0,
61
+ "sigma_data": 1.0,
62
+ "solver": "edm_stochastic_heun"
63
+ }
64
+ }
65
+ },
66
+ "pilot": {
67
+ "n_trials": 3,
68
+ "train": {
69
+ "n_epochs": 96,
70
+ "early_stopping_patience": 32,
71
+ "freq_logging": 16,
72
+ "stats_freq_epochs": 1
73
+ },
74
+ "sweep": {
75
+ "ddpm_v": {
76
+ "model": {
77
+ "sigma_max": [
78
+ 2.0,
79
+ 5.0,
80
+ 8.0
81
+ ]
82
+ },
83
+ "train": {
84
+ "lr": [
85
+ 0.0001,
86
+ 0.0002,
87
+ 0.0005
88
+ ]
89
+ }
90
+ },
91
+ "dlpm_eps": {
92
+ "model": {
93
+ "alpha": [
94
+ 1.7,
95
+ 1.9
96
+ ]
97
+ },
98
+ "train": {
99
+ "lr": [
100
+ 0.0001,
101
+ 0.0002,
102
+ 0.0005
103
+ ]
104
+ }
105
+ },
106
+ "tedm_origin": {
107
+ "model": {
108
+ "nu": [
109
+ 2.1,
110
+ 3.0
111
+ ]
112
+ },
113
+ "train": {
114
+ "lr": [
115
+ 0.0001,
116
+ 0.0002,
117
+ 0.0005
118
+ ]
119
+ }
120
+ }
121
+ }
122
+ },
123
+ "train": {
124
+ "device": "cuda",
125
+ "data_device": "cpu",
126
+ "batch_size": 1024,
127
+ "n_epochs": 640,
128
+ "early_stopping_patience": 100,
129
+ "lr": 0.0005,
130
+ "num_workers": 0,
131
+ "use_adamw": true,
132
+ "weight_decay": 1e-06,
133
+ "grad_clip_norm": 10.0,
134
+ "lr_schedule": "cosine",
135
+ "warmup_steps": 400,
136
+ "cosine_eta_min_ratio": 0.05,
137
+ "freq_logging": 50,
138
+ "stats_freq_epochs": 1,
139
+ "log_grad_norm": true,
140
+ "ckpt_freq_epochs": 64,
141
+ "ckpt_keep_last": 8
142
+ },
143
+ "test": {
144
+ "batch_size": 1024,
145
+ "loss_repeats": 4,
146
+ "n_samples": 32
147
+ },
148
+ "huggingface": {
149
+ "namespace": "Diffusion-Research-Lab",
150
+ "repository": "alpha-stable-mixture-1p7-150d-diffusion"
151
+ }
152
+ },
153
+ "model_name": "tedm_origin",
154
+ "model_params": {
155
+ "n_steps": 64,
156
+ "nu": 2.1,
157
+ "sigma_min": 0.005,
158
+ "sigma_max": 5.0,
159
+ "sigma_data": 1.0,
160
+ "solver": "edm_stochastic_heun"
161
+ },
162
+ "sample_shape": [
163
+ 150
164
+ ],
165
+ "data_scale": 0.6880503018650794
166
+ }
tedm-origin/dataset.json ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "unbalanced_highdim_alpha_stable_mixture",
3
+ "kind": "synthetic",
4
+ "params": {
5
+ "n_samples": 21000,
6
+ "alpha": 1.7,
7
+ "dim": 150,
8
+ "n_modes": 16,
9
+ "rank": 6,
10
+ "imbalance_tau": 1.2,
11
+ "mean_scale": 7.5,
12
+ "base_scale": 0.55,
13
+ "anisotropy": 1.0,
14
+ "structure_seed": 0
15
+ },
16
+ "split": {
17
+ "val_size": 0.047619047619047616,
18
+ "test_size": 0.47619047619047616,
19
+ "random_state": 0,
20
+ "standardize": false
21
+ },
22
+ "split_mode": "random",
23
+ "counts": {
24
+ "train": 10000,
25
+ "validation": 1000,
26
+ "test": 10000
27
+ },
28
+ "n_samples": 21000,
29
+ "sample_shape": [
30
+ 150
31
+ ],
32
+ "seed": 0,
33
+ "normalization": "None",
34
+ "provenance": {
35
+ "origin": "Synthetic unbalanced high-dimensional alpha-stable mixture",
36
+ "generator": "gendynamics.datasets.fetch_synthetic_data('unbalanced_highdim_alpha_stable_mixture')",
37
+ "preparation": "Sample the configured mixture, then make a seeded random train/validation/test split."
38
+ }
39
+ }
tedm-origin/export_check.json ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "passed": true,
3
+ "shape": [
4
+ 4,
5
+ 150
6
+ ],
7
+ "finite": true,
8
+ "seed": 20000,
9
+ "batch_size": 1024,
10
+ "device": "cpu",
11
+ "model_dtype": "torch.float64",
12
+ "sample_dtype": "torch.float32",
13
+ "min": -5.119678974151611,
14
+ "max": 5.398929119110107,
15
+ "std": 1.3876008204771824,
16
+ "clamp_min": null,
17
+ "clipped_fraction": 0.0,
18
+ "scope": "Shape and numerical validity only; not distribution quality or tail accuracy.",
19
+ "reloaded_safetensors": true,
20
+ "trainable_parameters": 693894
21
+ }
tedm-origin/metrics.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "best_epoch": 79,
3
+ "validation_loss": 1.0691735461594984,
4
+ "test_loss_samples": 10000,
5
+ "test_loss": 2.891158615260325
6
+ }
tedm-origin/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:73cb3cc7c91bccee6cbdcc2f7257ffdf0131458ff454e4d2fef81cd522f29168
3
+ size 5554560
tedm-origin/provenance.json ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "recorded_at_utc": "2026-10-04T00:15:18.189854+00:00",
3
+ "python": "3.12.11",
4
+ "platform": "Linux-5.14.0-570.131.1.el9_6.x86_64-x86_64-with-glibc2.34",
5
+ "device": "cuda",
6
+ "gpu": "Tesla V100-SXM2-16GB",
7
+ "cuda_version": "12.8",
8
+ "source": {
9
+ "commit": null,
10
+ "dirty": null
11
+ },
12
+ "dependencies": {
13
+ "torch": "2.8.0",
14
+ "gendynamics": "0.1.0",
15
+ "benchtools": "0.1.0",
16
+ "safetensors": "0.6.2",
17
+ "huggingface-hub": "0.34.4"
18
+ }
19
+ }
tedm-origin/samples.png ADDED