| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- # Pipline Scenario to run
- # "scen_train_all" - Train and evaluate model, with noise
- # "scen_load_all" - Load and evaluate model, with noise
- # "scen_load_eval" - Load and evaluate model, without noise
- # "scen_analyze" - Analyze existing evaluation files only (no training/eval)
- # "scen_kfold" - Patient-grouped k-fold CV: train+eval per fold, then OOF + analyze
- scenario = "scen_train_all"
- [run]
- # Script/automation options. Leave both false for normal interactive use.
- autorun = false # start the pipeline automatically once the config loads
- autoquit = false # exit the app when the pipeline finishes (0/1 return code)
- # In autorun, allow overwriting PROTECTED outputs (models/evaluations) without a
- # prompt. Not needed for "scen_analyze", which only writes regeneratable analysis
- # artifacts and therefore never triggers the overwrite guard.
- force_overwrite = false
- [data]
- mri_files_path = "../data/PET_volumes_customtemplate_float32/"
- xls_file_path = "../data/LP_ADNIMERGE.csv"
- seed = 42
- data_splits = [0.7, 0.2, 0.1] # train, validation, test
- image_channels = 1
- clin_data_channels = 2
- num_classes = 2 # AD, NL
- [training]
- device = "cuda:0" # "cpu", "cuda", "mps"
- batch_size = 32
- ensemble_size = 30
- droprate = 0.05
- learning_rate = 0.0001
- num_epochs = 25
- deterministic = false # force deterministic cuDNN kernels (slower, exact reproduction)
- [evaluation]
- # Gaussian noise standard deviations applied to images during noisy evaluation
- # (step 6). 0.0 is the clean baseline and should be kept first.
- noise_levels = [0.0, 0.05, 0.1, 0.2, 0.3, 0.5, 0.7, 1.0, 1.5, 2.0, 3.0, 5.0]
- # Monte-Carlo forward passes used to estimate Bayesian predictive/model
- # uncertainty (step 5/6). Ignored for the deterministic ensemble.
- mc_passes = 30
- [kfold]
- # Used only by the "scen_kfold" scenario. Each fold trains a full ensemble on
- # ~(k-1)/k of the patients and evaluates on the held-out 1/k; out-of-fold results
- # are pooled to cover every sample. NOTE: cost is ~k * a normal train+eval run.
- k_folds = 4 # number of patient-grouped folds (each ~1/k held out)
- val_fraction = 0.15 # fraction of each fold's non-test patients used for validation
- include_noise = false # also run the noise sweep within each fold (much slower)
|