-
Notifications
You must be signed in to change notification settings - Fork 25
/
Copy pathtrain_LEDNet.yml
131 lines (111 loc) · 2.51 KB
/
train_LEDNet.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
# general settings
name: LEDNet
model_type: LEDNetModel
num_gpu: 4
manual_seed: 10
# dataset and data loader settings
datasets:
train:
name: LOLBlurDataset_Train
type: PairedImageDataset
dataroot_gt: /mnt/lustre/sczhou/datasets/deblurring/LOLBlur/train/high_sharp_scaled
dataroot_lq: /mnt/lustre/sczhou/datasets/deblurring/LOLBlur/train/low_blur_noise
filename_tmpl: '{}'
io_backend:
type: disk
mean: [0.5, 0.5, 0.5]
std: [0.5, 0.5, 0.5]
use_flip: true
use_rot: true
crop_size: 256
use_shuffle: true
batch_size_per_gpu: &bsz 4
num_worker_per_gpu: 2
dataset_enlarge_ratio: 100
prefetch_mode: ~
prefetch_mode: cpu
num_prefetch_queue: 4
val:
name: LOLBlurDataset_Test
type: PairedImageDataset
dataroot_gt: /mnt/lustre/sczhou/datasets/deblurring/LOLBlur/test/high_sharp_scaled
dataroot_lq: /mnt/lustre/sczhou/datasets/deblurring/LOLBlur/test/low_blur_noise
io_backend:
type: disk
mean: [0.5, 0.5, 0.5]
std: [0.5, 0.5, 0.5]
# network structures
network_g:
type: LEDNet
channels: [32, 64, 128, 128]
connection: false
# path
path:
pretrain_network_g: ~
strict_load_g: true
resume_state: ~
# training settings
train:
optim_g:
type: Adam
lr: !!float 1e-4
weight_decay: 0
betas: [0.9, 0.99]
# scheduler:
# type: MultiStepLR
# milestones: [200000, 300000, 400000, 450000]
# gamma: 0.5
scheduler:
type: CosineAnnealingRestartLR
periods: [500000]
restart_weights: [1]
eta_min: !!float 1e-7
total_iter: 500000
warmup_iter: -1 # no warm up
# losses
pixel_opt:
type: L1Loss
loss_weight: 1.0
reduction: mean
perceptual_opt:
type: PerceptualLoss
layer_weights:
# before relu
'conv1_2': 1
'conv2_2': 1
'conv3_4': 1
'conv4_4': 1
vgg_type: vgg19
use_input_norm: true
perceptual_weight: 0.01
style_weight: 0
range_norm: true
criterion: l1
use_side_loss: true
side_loss_weight: 0.8
init_weights: false
# validation settings
val:
val_freq: !!float 2e4
save_img: false
metrics:
psnr: # metric name, can be arbitrary
type: calculate_psnr
crop_border: 0
test_y_channel: false
ssim:
type: calculate_ssim
crop_border: 0
test_y_channel: false
# logging settings
logger:
print_freq: 100
save_checkpoint_freq: !!float 2e4
use_tb_logger: true
wandb:
project: ~
resume_id: ~
# dist training settings
dist_params:
backend: nccl
port: 29520