You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+31-5Lines changed: 31 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -111,8 +111,8 @@ docker run --rm \
111
111
### Arguments
112
112
113
113
The `main.py` file accepts the following required arguments:
114
-
- `--config`: Path to the configuration file. Default: `config/config_default.yml`.
115
-
- `--mode`: Mode to run the project in. Options: `train`, `inference`, `validate`, `tune`. Default: `train`.
114
+
- `--config`: Configuration filename located under `./config` (for example `config_default.yml` or `config.yml`).
115
+
- `--mode`: Mode to run the project in. Options: `train`, `inference`, `validate`, `tune`, `experiment`.
116
116
117
117
The `main.py` file accepts the following optional arguments:
118
118
- `--checkpoint`: Path to a checkpoint to load.
@@ -151,23 +151,49 @@ To skip the preprocessing pipeline, use the `--skip-preprocessing` flag.
151
151
152
152
### Configuration
153
153
154
-
The project configuration is defined in the `config` directory. The configuration file is in`YAML` format. The default configuration file is `config/config_default.yml`.
154
+
The project configuration is defined in the `config` directory and uses `YAML`.
155
155
156
-
**Important:** Copy this file to create a custom configuration. The default configuration will be **overwritten** each time the application is run.
156
+
- `config/config_default.yml`: generic runtime defaults intended for new projects and new datasets.
157
+
- `config/config_example_smri.yml`: a non-runnable example template showing an sMRI-oriented setup with placeholder paths.
158
+
- `config/config_example_experiment.yml`: an experiment-sweep template showing how to define custom `experiment` mode runs.
159
+
160
+
At startup, the app ensures `config/config_default.yml` exists. If it already exists, it is kept as-is (not overwritten).
161
+
For your own run configs, create `config/config.yml` (or another filename in`./config`) and pass it with `--config`.
157
162
158
163
The configuration file contains the following sections:
159
164
160
165
- `dataset`: Configuration for the dataset.
161
166
- `model`: Configuration for the model.
162
167
- `train`: Configuration for the training process.
163
-
- `inference`: Configuration for the inference process.
164
168
- `validation`: Configuration for the validation process.
165
169
- `meta`: Meta information for the project.
166
170
- `general`: General configuration for the project.
167
171
- `system`: System configuration for the project.
168
172
169
173
The configuration is validated against the schema before a task is run. Missing values are filled with default values from the default configuration file.
170
174
175
+
`experiment` mode is fully config-driven via `model.experiment_matrix`:
176
+
177
+
```yaml
178
+
model:
179
+
components:
180
+
vae:
181
+
covariate_embedding: no_embedding
182
+
latent_dim: 32
183
+
experiment_matrix:
184
+
embedding_methods: [no_embedding, fair_embedding]
185
+
latent_dims: [8, 16, 32]
186
+
dataset_files: [dataset_a.csv, dataset_b.csv]
187
+
repetitions: 3
188
+
```
189
+
190
+
For a concrete copy-paste example similar to the previous site-based setup, see `config/config_example_experiment.yml`.
191
+
That example uses explicit dataset filenames (`site_dataset_<rep>_site_<site>.rds`) with `repetitions: 1`.
192
+
193
+
To reproduce the old "harmonized" branch behavior, run a second experiment config where:
0 commit comments