# yaml-language-server: $schema=https://raw.githubusercontent.com/the-database/traiNNer-redux/refs/heads/master/schemas/redux-config.schema.json ######################################################################################### # General Settings # https://trainner-redux.readthedocs.io/en/latest/config_reference.html#top-level-options ######################################################################################### name: 4x_figsr scale: 4 # 1, 2, 3, 4, 8 use_amp: true # Speed up training and reduce VRAM usage. NVIDIA only. amp_bf16: false # Use bf16 instead of fp16 for AMP, RTX 3000 series or newer only. Only recommended if fp16 doesn't work. use_channels_last: true # Enable channels last memory format while using AMP. Reduces VRAM and speeds up training for most architectures, but some architectures are slower with channels last. fast_matmul: false # Trade precision for performance. use_compile: false # Enable torch.compile for generator. Takes time on startup to compile the model, but can speed up training after the model is compiled. compile_mode: default # Mode to use with torch.compile. See https://docs.pytorch.org/docs/stable/generated/torch.compile.html for more info. num_gpu: auto # manual_seed: 1024 # Random seed for training, useful for removing randomness when testing the effect of different settings. ######################################################################################################################## # Dataset and Dataloader Settings # https://trainner-redux.readthedocs.io/en/latest/config_reference.html#dataset-options-datasets-train-and-datasets-val ######################################################################################################################## datasets: # Settings for the training dataset. train: name: Train Dataset type: pairedimagedataset # Path to the HR (high res) images in your training dataset. Specify one or multiple folders, separated by commas. dataroot_gt: [datasets/BHI] dataroot_lq: [datasets/BHI_lq] # meta_info: data/meta_info/dataset1.txt lq_size: 64 # During training, a square of this size is cropped from LR images. Larger is usually better but uses more VRAM. Previously gt_size, use lq_size = gt_size / scale to convert. Use multiple of 8 for best performance with AMP. use_hflip: true # Randomly flip the images horizontally. use_rot: true # Randomly rotate the images. num_worker_per_gpu: 8 batch_size_per_gpu: 64 # recommended: 64 # Increasing stabilizes training but with diminishing returns. Use multiple of 8 for best performance with AMP. accum_iter: 1 # Using values larger than 1 simulates higher batch size by trading performance for reduced VRAM usage. If accum_iter = 4 and batch_size_per_gpu = 6 then effective batch size = 4 * 6 = 24 but performance may be as much as 4 times as slow. # Settings for your validation dataset (optional). These settings will # be ignored if val_enabled is false in the Validation section below. val: name: Val Dataset type: pairedimagedataset dataroot_gt: [ datasets/val/dataset1/hr, datasets/val/dataset1/hr2, ] dataroot_lq: [ datasets/val/dataset1/lr, datasets/val/dataset1/lr2 ] ##################################################################### # Network Settings # https://trainner-redux.readthedocs.io/en/latest/arch_reference.html ##################################################################### # Generator model settings network_g: type: FIGSR ######################################################################################### # Pretrain and Resume Paths # https://trainner-redux.readthedocs.io/en/latest/config_reference.html#path-options-path ######################################################################################### path: # pretrain_network_g: experiments/pretrained_models/pretrain.pth param_key_g: ~ strict_load_g: true # Disable strict loading to partially load a pretrain model with a different scale resume_state: ~ ########################################################################################### # Training Settings # https://trainner-redux.readthedocs.io/en/latest/config_reference.html#train-options-train ########################################################################################### train: ema_decay: 0.999 ema_power: 0.75 # Gradually warm up ema decay when training from scratch grad_clip: false # Gradient clipping allows more stable training when using higher learning rates. # Optimizer for generator model optim_g: type: AdamW lr: !!float 5e-4 weight_decay: 0 betas: [0.9, 0.99] scheduler: type: MultiStepLR milestones: [200000, 400000, 600000, 800000] gamma: 0.5 total_iter: 1000000 # Total number of iterations. warmup_iter: -1 # Gradually ramp up learning rates until this iteration, to stabilize early training. Use -1 to disable. # Losses - for any loss set the loss_weight to 0 to disable it. # https://trainner-redux.readthedocs.io/en/latest/loss_reference.html losses: # Charbonnier loss - type: charbonnierloss loss_weight: 1.0 ############################################################################################## # Validation # https://trainner-redux.readthedocs.io/en/latest/config_reference.html#validation-options-val ############################################################################################## val: val_enabled: true # Whether to enable validations. If disabled, all validation settings below are ignored. val_freq: 5000 # How often to run validations, in iterations. save_img: true # Whether to save the validation images during validation, in the experiments//visualization folder. tile_size: 0 # Tile size of input, reduce VRAM usage but slower inference. 0 to disable. tile_overlap: 8 # Number of pixels to overlap tiles by, larger is slower but reduces tile seams. metrics_enabled: true # Whether to run metrics calculations during validation. metrics: psnr: type: calculate_psnr crop_border: 4 test_y_channel: true ssim: type: calculate_ssim crop_border: 4 # Whether to crop border during validation. test_y_channel: true # Whether to convert to Y(CbCr) for validation. #topiq: #type: calculate_topiq #lpips: #type: calculate_lpips #better: lower #dists: #type: calculate_dists #better: lower ############################################################################################## # Logging # https://trainner-redux.readthedocs.io/en/latest/config_reference.html#logging-options-logger ############################################################################################## logger: print_freq: 100 save_checkpoint_freq: 5000 save_checkpoint_format: safetensors use_tb_logger: true