# Previous-study DINO baseline: full-field diffusion, not residual diffusion. config_type: diffusion model_params: model_type: elucidated base_dim: 128 dim_mults: [1, 2, 3, 5, 8, 12] channels: 3 self_condition: true learned_variance: false learned_sinusoidal_cond: false random_fourier_features: false sinusoidal_pos_emb_theta: 10000 learned_sinusoidal_dim: 16 dropout: 0.0 attn_heads: 8 attn_dim_head: 64 flash_attn: true image_size: 128 num_sample_steps: 32 sigma_min: 0.002 sigma_max: 80 sigma_data: 0.5 rho: 7 P_mean: -1.2 P_std: 1.2 S_churn: 80 S_tmin: 0.05 S_tmax: 50 S_noise: 1.003 helmholtz_projection: false project_velocity: false project_B: false normalization_params: type: minmax feature_range: [-1, 1] inputs_stats_file: ${MODEL_ROOT}/normalization/diffusion_inputs_stats.npz targets_stats_file: ${MODEL_ROOT}/normalization/diffusion_targets_stats.npz dataset_params: train_path: ${FEATURE_ROOT}/train val_path: ${FEATURE_ROOT}/val test_path: ${FEATURE_ROOT}/test prediction_mode: direct residual_target: false dataloader_params: train: {batch_size: 64, num_workers: 1, shuffle: true, pin_memory: true} # Backward-compatible key consumed by the shared diffusion dataloader. train_loader_params: batch_size: 64 shuffle: true num_workers: 1 pin_memory: true optimizer_params: optimizer_type: adamw lr: 1.0e-4 weight_decay: 1.0e-4 betas: [0.9, 0.999] use_scheduler: true scheduler_type: cosine T_max: 1000 eta_min: 5.0e-5 train_params: recipe: previous_dino epochs: 101 checkpoint_path: ${OUTPUT_ROOT}/checkpoints/dino_re1000.pt load_checkpoint: "" validation_interval: 10 checkpoint_metric: denorm_rel_l2 clip_grad: true clip_grad_max_norm: 1.0