|
DataParallel( |
|
(module): BETALAMBDANET( |
|
(sub_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(add_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(head): Sequential( |
|
(0): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(body): Sequential( |
|
(0): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(1): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(2): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(3): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(4): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(5): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(6): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(7): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(8): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(9): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(10): LambdaLayer( |
|
(to_q): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_k): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_v): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(norm_q): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(norm_v): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(pos_conv): Conv3d(4, 16, kernel_size=(1, 23, 23), stride=(1, 1, 1), padding=(0, 11, 11)) |
|
) |
|
(11): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(12): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(13): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(14): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(15): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(16): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(17): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(18): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(19): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(20): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(21): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(tail): Sequential( |
|
(0): Conv2d(64, 3, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
DataParallel( |
|
(module): BETALAMBDANET( |
|
(sub_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(add_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(head): Sequential( |
|
(0): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(body): Sequential( |
|
(0): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(1): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(2): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(3): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(4): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(5): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(6): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(7): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(8): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(9): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(10): LambdaLayer( |
|
(to_q): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_k): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_v): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(norm_q): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(norm_v): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(pos_conv): Conv3d(4, 16, kernel_size=(1, 23, 23), stride=(1, 1, 1), padding=(0, 11, 11)) |
|
) |
|
(11): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(12): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(13): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(14): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(15): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(16): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(17): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(18): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(19): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(20): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(21): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(tail): Sequential( |
|
(0): Conv2d(64, 3, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
[Epoch 1] Learning rate: 1.00e-4 |
|
DataParallel( |
|
(module): BETALAMBDANET( |
|
(sub_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(add_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(head): Sequential( |
|
(0): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(body): Sequential( |
|
(0): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(1): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(2): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(3): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(4): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(5): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(6): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(7): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(8): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(9): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(10): LambdaLayer( |
|
(to_q): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_k): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_v): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(norm_q): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(norm_v): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(pos_conv): Conv3d(4, 16, kernel_size=(1, 23, 23), stride=(1, 1, 1), padding=(0, 11, 11)) |
|
) |
|
(11): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(12): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(13): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(14): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(15): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(16): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(17): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(18): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(19): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(20): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(21): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(tail): Sequential( |
|
(0): Conv2d(64, 3, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
[Epoch 1] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.8399] 53.9+0.7s |
|
[3200/16000] [L1: 0.5667] 47.8+0.1s |
|
[4800/16000] [L1: 0.4601] 49.9+0.1s |
|
[6400/16000] [L1: 0.3973] 51.9+0.1s |
|
[8000/16000] [L1: 0.3518] 50.7+0.0s |
|
[9600/16000] [L1: 0.3197] 51.6+0.1s |
|
[11200/16000] [L1: 0.2953] 50.5+0.0s |
|
[12800/16000] [L1: 0.2765] 50.2+0.0s |
|
[14400/16000] [L1: 0.2600] 49.8+0.0s |
|
[16000/16000] [L1: 0.2465] 49.4+0.0s |
|
|
|
Evaluation: |
|
DataParallel( |
|
(module): BETALAMBDANET( |
|
(sub_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(add_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(head): Sequential( |
|
(0): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(body): Sequential( |
|
(0): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(1): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(2): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(3): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(4): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(5): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(6): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(7): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(8): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(9): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(10): LambdaLayer( |
|
(to_q): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_k): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_v): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(norm_q): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(norm_v): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(pos_conv): Conv3d(4, 16, kernel_size=(1, 23, 23), stride=(1, 1, 1), padding=(0, 11, 11)) |
|
) |
|
(11): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(12): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(13): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(14): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(15): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(16): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(17): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(18): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(19): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(20): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(21): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(tail): Sequential( |
|
(0): Conv2d(64, 3, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
[Epoch 1] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.9625] 53.1+0.6s |
|
[3200/16000] [L1: 0.6529] 46.9+0.1s |
|
[4800/16000] [L1: 0.5266] 49.0+0.1s |
|
[6400/16000] [L1: 0.4501] 50.7+0.0s |
|
[8000/16000] [L1: 0.3975] 49.9+0.0s |
|
[9600/16000] [L1: 0.3587] 52.0+0.1s |
|
[11200/16000] [L1: 0.3298] 51.7+0.1s |
|
[12800/16000] [L1: 0.3071] 51.3+0.1s |
|
[14400/16000] [L1: 0.2886] 51.1+0.1s |
|
[16000/16000] [L1: 0.2732] 51.7+0.1s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 9.242 (Best: 9.242 @epoch 1) |
|
Forward: 37.15s |
|
|
|
Saving... |
|
Total: 37.97s |
|
|
|
[Epoch 2] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.1219] 50.4+0.8s |
|
[3200/16000] [L1: 0.1163] 51.1+0.1s |
|
[4800/16000] [L1: 0.1140] 51.5+0.1s |
|
[6400/16000] [L1: 0.1121] 51.5+0.1s |
|
[8000/16000] [L1: 0.1095] 51.0+0.1s |
|
[9600/16000] [L1: 0.1074] 51.4+0.1s |
|
[11200/16000] [L1: 0.1048] 50.9+0.1s |
|
[12800/16000] [L1: 0.1028] 51.5+0.1s |
|
[14400/16000] [L1: 0.1001] 51.6+0.1s |
|
[16000/16000] [L1: 0.0979] 51.7+0.1s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 8.841 (Best: 9.242 @epoch 1) |
|
Forward: 37.01s |
|
|
|
Saving... |
|
Total: 37.63s |
|
|
|
[Epoch 3] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0766] 50.7+0.9s |
|
[3200/16000] [L1: 0.0752] 50.9+0.1s |
|
[4800/16000] [L1: 0.0738] 51.1+0.1s |
|
[6400/16000] [L1: 0.0725] 51.6+0.1s |
|
[8000/16000] [L1: 0.0709] 51.4+0.1s |
|
[9600/16000] [L1: 0.0693] 51.6+0.1s |
|
[11200/16000] [L1: 0.0680] 52.2+0.1s |
|
[12800/16000] [L1: 0.0666] 51.2+0.0s |
|
[14400/16000] [L1: 0.0652] 51.2+0.1s |
|
[16000/16000] [L1: 0.0642] 51.8+0.1s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 8.655 (Best: 9.242 @epoch 1) |
|
Forward: 36.69s |
|
|
|
Saving... |
|
Total: 37.20s |
|
|
|
[Epoch 4] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0514] 51.0+0.7s |
|
[3200/16000] [L1: 0.0499] 49.7+0.0s |
|
[4800/16000] [L1: 0.0500] 49.4+0.0s |
|
[6400/16000] [L1: 0.0490] 50.8+0.0s |
|
[8000/16000] [L1: 0.0494] 51.4+0.0s |
|
[9600/16000] [L1: 0.0481] 49.9+0.0s |
|
[11200/16000] [L1: 0.0473] 49.5+0.0s |
|
[12800/16000] [L1: 0.0467] 51.4+0.1s |
|
[14400/16000] [L1: 0.0464] 50.3+0.0s |
|
[16000/16000] [L1: 0.0461] 49.6+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 8.560 (Best: 9.242 @epoch 1) |
|
Forward: 36.81s |
|
|
|
Saving... |
|
Total: 37.34s |
|
|
|
[Epoch 5] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0393] 51.0+0.8s |
|
[3200/16000] [L1: 0.0423] 52.6+0.1s |
|
[4800/16000] [L1: 0.0403] 51.3+0.1s |
|
[6400/16000] [L1: 0.0392] 51.0+0.0s |
|
[8000/16000] [L1: 0.0391] 51.4+0.1s |
|
[9600/16000] [L1: 0.0385] 51.3+0.1s |
|
[11200/16000] [L1: 0.0383] 51.8+0.0s |
|
[12800/16000] [L1: 0.0383] 51.2+0.0s |
|
[14400/16000] [L1: 0.0382] 51.1+0.0s |
|
[16000/16000] [L1: 0.0377] 50.9+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 8.452 (Best: 9.242 @epoch 1) |
|
Forward: 36.58s |
|
|
|
Saving... |
|
Total: 37.01s |
|
|
|
[Epoch 6] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0340] 50.9+0.8s |
|
[3200/16000] [L1: 0.0341] 51.7+0.1s |
|
[4800/16000] [L1: 0.0325] 49.8+0.0s |
|
[6400/16000] [L1: 0.0325] 51.7+0.1s |
|
[8000/16000] [L1: 0.0324] 51.4+0.1s |
|
[9600/16000] [L1: 0.0328] 51.0+0.1s |
|
[11200/16000] [L1: 0.0326] 50.9+0.0s |
|
[12800/16000] [L1: 0.0326] 50.8+0.0s |
|
[14400/16000] [L1: 0.0325] 50.2+0.0s |
|
[16000/16000] [L1: 0.0328] 50.0+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 8.209 (Best: 9.242 @epoch 1) |
|
Forward: 36.75s |
|
|
|
Saving... |
|
Total: 37.15s |
|
|
|
[Epoch 7] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0289] 51.0+0.7s |
|
[3200/16000] [L1: 0.0301] 50.4+0.1s |
|
[4800/16000] [L1: 0.0297] 50.2+0.0s |
|
[6400/16000] [L1: 0.0297] 49.9+0.0s |
|
[8000/16000] [L1: 0.0302] 49.7+0.0s |
|
[9600/16000] [L1: 0.0304] 50.6+0.0s |
|
[11200/16000] [L1: 0.0299] 50.1+0.0s |
|
[12800/16000] [L1: 0.0301] 50.2+0.0s |
|
[14400/16000] [L1: 0.0301] 50.0+0.0s |
|
[16000/16000] [L1: 0.0298] 49.9+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 8.177 (Best: 9.242 @epoch 1) |
|
Forward: 36.82s |
|
|
|
Saving... |
|
Total: 37.28s |
|
|
|
[Epoch 8] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0295] 50.5+0.8s |
|
[3200/16000] [L1: 0.0302] 51.2+0.1s |
|
[4800/16000] [L1: 0.0296] 51.6+0.1s |
|
[6400/16000] [L1: 0.0289] 51.5+0.1s |
|
[8000/16000] [L1: 0.0288] 49.8+0.0s |
|
[9600/16000] [L1: 0.0289] 51.5+0.1s |
|
[11200/16000] [L1: 0.0285] 51.4+0.0s |
|
[12800/16000] [L1: 0.0282] 52.1+0.0s |
|
[14400/16000] [L1: 0.0281] 51.7+0.0s |
|
[16000/16000] [L1: 0.0286] 51.9+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 8.225 (Best: 9.242 @epoch 1) |
|
Forward: 36.72s |
|
|
|
Saving... |
|
Total: 37.26s |
|
|
|
[Epoch 9] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0261] 50.5+0.8s |
|
[3200/16000] [L1: 0.0260] 49.5+0.0s |
|
[4800/16000] [L1: 0.0267] 49.1+0.0s |
|
[6400/16000] [L1: 0.0262] 49.9+0.0s |
|
[8000/16000] [L1: 0.0264] 50.6+0.1s |
|
[9600/16000] [L1: 0.0260] 51.2+0.1s |
|
[11200/16000] [L1: 0.0259] 49.7+0.1s |
|
[12800/16000] [L1: 0.0257] 49.9+0.1s |
|
[14400/16000] [L1: 0.0257] 48.9+0.0s |
|
[16000/16000] [L1: 0.0255] 50.1+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.989 (Best: 9.242 @epoch 1) |
|
Forward: 36.74s |
|
|
|
Saving... |
|
Total: 37.15s |
|
|
|
[Epoch 10] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0241] 51.1+0.7s |
|
[3200/16000] [L1: 0.0231] 51.0+0.0s |
|
[4800/16000] [L1: 0.0222] 51.5+0.1s |
|
[6400/16000] [L1: 0.0223] 51.8+0.0s |
|
[8000/16000] [L1: 0.0227] 51.3+0.0s |
|
[9600/16000] [L1: 0.0228] 50.8+0.0s |
|
[11200/16000] [L1: 0.0224] 49.5+0.0s |
|
[12800/16000] [L1: 0.0228] 49.5+0.0s |
|
[14400/16000] [L1: 0.0225] 51.3+0.1s |
|
[16000/16000] [L1: 0.0226] 51.0+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.853 (Best: 9.242 @epoch 1) |
|
Forward: 36.66s |
|
|
|
Saving... |
|
Total: 37.12s |
|
|
|
[Epoch 11] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0253] 50.1+0.8s |
|
[3200/16000] [L1: 0.0232] 51.8+0.1s |
|
[4800/16000] [L1: 0.0225] 52.0+0.0s |
|
[6400/16000] [L1: 0.0221] 51.9+0.1s |
|
[8000/16000] [L1: 0.0218] 49.9+0.0s |
|
[9600/16000] [L1: 0.0215] 48.5+0.0s |
|
[11200/16000] [L1: 0.0223] 51.0+0.0s |
|
[12800/16000] [L1: 0.0219] 51.3+0.0s |
|
[14400/16000] [L1: 0.0221] 51.6+0.0s |
|
[16000/16000] [L1: 0.0219] 49.7+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.427 (Best: 9.242 @epoch 1) |
|
Forward: 36.72s |
|
|
|
Saving... |
|
Total: 37.18s |
|
|
|
[Epoch 12] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0190] 50.7+0.8s |
|
[3200/16000] [L1: 0.0192] 50.9+0.1s |
|
[4800/16000] [L1: 0.0196] 52.3+0.1s |
|
[6400/16000] [L1: 0.0202] 51.8+0.1s |
|
[8000/16000] [L1: 0.0202] 51.4+0.0s |
|
[9600/16000] [L1: 0.0200] 51.5+0.0s |
|
[11200/16000] [L1: 0.0199] 51.1+0.0s |
|
[12800/16000] [L1: 0.0200] 50.8+0.1s |
|
[14400/16000] [L1: 0.0200] 49.7+0.0s |
|
[16000/16000] [L1: 0.0199] 49.9+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.278 (Best: 9.242 @epoch 1) |
|
Forward: 36.90s |
|
|
|
Saving... |
|
Total: 37.43s |
|
|
|
[Epoch 13] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0186] 50.5+0.9s |
|
[3200/16000] [L1: 0.0189] 50.0+0.0s |
|
[4800/16000] [L1: 0.0184] 49.8+0.1s |
|
[6400/16000] [L1: 0.0182] 50.3+0.1s |
|
[8000/16000] [L1: 0.0183] 51.8+0.1s |
|
[9600/16000] [L1: 0.0182] 51.8+0.1s |
|
[11200/16000] [L1: 0.0185] 51.6+0.1s |
|
[12800/16000] [L1: 0.0183] 51.4+0.0s |
|
[14400/16000] [L1: 0.0182] 49.9+0.0s |
|
[16000/16000] [L1: 0.0184] 50.1+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.229 (Best: 9.242 @epoch 1) |
|
Forward: 36.88s |
|
|
|
Saving... |
|
Total: 37.41s |
|
|
|
[Epoch 14] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0209] 50.7+0.8s |
|
[3200/16000] [L1: 0.0195] 51.5+0.0s |
|
[4800/16000] [L1: 0.0197] 50.0+0.0s |
|
[6400/16000] [L1: 0.0187] 49.7+0.0s |
|
[8000/16000] [L1: 0.0185] 51.0+0.1s |
|
[9600/16000] [L1: 0.0191] 51.2+0.0s |
|
[11200/16000] [L1: 0.0188] 51.4+0.1s |
|
[12800/16000] [L1: 0.0184] 51.8+0.0s |
|
[14400/16000] [L1: 0.0181] 51.8+0.0s |
|
[16000/16000] [L1: 0.0180] 51.4+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.075 (Best: 9.242 @epoch 1) |
|
Forward: 36.78s |
|
|
|
Saving... |
|
Total: 37.16s |
|
|
|
[Epoch 15] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0169] 50.9+0.7s |
|
[3200/16000] [L1: 0.0166] 52.0+0.1s |
|
[4800/16000] [L1: 0.0172] 51.8+0.1s |
|
[6400/16000] [L1: 0.0180] 51.1+0.1s |
|
[8000/16000] [L1: 0.0181] 50.3+0.1s |
|
[9600/16000] [L1: 0.0178] 50.9+0.0s |
|
[11200/16000] [L1: 0.0178] 50.4+0.0s |
|
[12800/16000] [L1: 0.0176] 50.7+0.0s |
|
[14400/16000] [L1: 0.0175] 50.3+0.0s |
|
[16000/16000] [L1: 0.0171] 51.9+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.071 (Best: 9.242 @epoch 1) |
|
Forward: 36.69s |
|
|
|
Saving... |
|
Total: 37.09s |
|
|
|
[Epoch 16] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0174] 50.5+0.7s |
|
[3200/16000] [L1: 0.0173] 51.3+0.1s |
|
[4800/16000] [L1: 0.0165] 50.7+0.1s |
|
[6400/16000] [L1: 0.0162] 49.6+0.1s |
|
[8000/16000] [L1: 0.0168] 50.9+0.1s |
|
[9600/16000] [L1: 0.0164] 48.9+0.0s |
|
[11200/16000] [L1: 0.0161] 50.5+0.1s |
|
[12800/16000] [L1: 0.0164] 50.1+0.0s |
|
[14400/16000] [L1: 0.0164] 49.2+0.0s |
|
[16000/16000] [L1: 0.0165] 50.4+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.554 (Best: 9.242 @epoch 1) |
|
Forward: 36.81s |
|
|
|
Saving... |
|
Total: 37.32s |
|
|
|
[Epoch 17] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0169] 51.4+0.8s |
|
[3200/16000] [L1: 0.0164] 49.7+0.0s |
|
[4800/16000] [L1: 0.0162] 48.5+0.0s |
|
[6400/16000] [L1: 0.0159] 48.6+0.0s |
|
[8000/16000] [L1: 0.0161] 48.6+0.0s |
|
[9600/16000] [L1: 0.0160] 48.2+0.0s |
|
[11200/16000] [L1: 0.0158] 48.2+0.0s |
|
[12800/16000] [L1: 0.0158] 48.1+0.0s |
|
[14400/16000] [L1: 0.0157] 49.0+0.0s |
|
[16000/16000] [L1: 0.0155] 50.5+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.106 (Best: 9.242 @epoch 1) |
|
Forward: 36.74s |
|
|
|
Saving... |
|
Total: 37.13s |
|
|
|
[Epoch 18] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0136] 50.9+0.8s |
|
[3200/16000] [L1: 0.0143] 51.0+0.0s |
|
[4800/16000] [L1: 0.0147] 50.3+0.0s |
|
[6400/16000] [L1: 0.0147] 49.0+0.0s |
|
[8000/16000] [L1: 0.0143] 48.9+0.0s |
|
[9600/16000] [L1: 0.0144] 48.9+0.0s |
|
[11200/16000] [L1: 0.0144] 48.9+0.0s |
|
[12800/16000] [L1: 0.0144] 49.7+0.0s |
|
[14400/16000] [L1: 0.0142] 50.7+0.1s |
|
[16000/16000] [L1: 0.0142] 50.7+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.309 (Best: 9.242 @epoch 1) |
|
Forward: 36.61s |
|
|
|
Saving... |
|
Total: 37.18s |
|
|
|
[Epoch 19] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0154] 50.7+0.8s |
|
[3200/16000] [L1: 0.0142] 52.2+0.1s |
|
[4800/16000] [L1: 0.0140] 51.6+0.1s |
|
[6400/16000] [L1: 0.0138] 51.4+0.1s |
|
[8000/16000] [L1: 0.0138] 51.5+0.1s |
|
[9600/16000] [L1: 0.0137] 51.3+0.1s |
|
[11200/16000] [L1: 0.0138] 51.6+0.0s |
|
[12800/16000] [L1: 0.0139] 50.7+0.1s |
|
[14400/16000] [L1: 0.0138] 49.9+0.1s |
|
[16000/16000] [L1: 0.0140] 51.3+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.066 (Best: 9.242 @epoch 1) |
|
Forward: 36.78s |
|
|
|
Saving... |
|
Total: 37.20s |
|
|
|
[Epoch 20] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0151] 50.7+0.7s |
|
[3200/16000] [L1: 0.0145] 50.4+0.1s |
|
[4800/16000] [L1: 0.0142] 49.9+0.0s |
|
[6400/16000] [L1: 0.0140] 51.4+0.1s |
|
[8000/16000] [L1: 0.0139] 52.0+0.1s |
|
[9600/16000] [L1: 0.0145] 51.9+0.1s |
|
[11200/16000] [L1: 0.0144] 52.0+0.1s |
|
[12800/16000] [L1: 0.0143] 51.4+0.1s |
|
[14400/16000] [L1: 0.0149] 49.4+0.0s |
|
[16000/16000] [L1: 0.0148] 49.2+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.223 (Best: 9.242 @epoch 1) |
|
Forward: 36.78s |
|
|
|
Saving... |
|
Total: 37.28s |
|
|
|
[Epoch 21] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0122] 50.3+0.7s |
|
[3200/16000] [L1: 0.0126] 51.4+0.1s |
|
[4800/16000] [L1: 0.0133] 51.8+0.1s |
|
[6400/16000] [L1: 0.0134] 51.8+0.0s |
|
[8000/16000] [L1: 0.0136] 50.1+0.1s |
|
[9600/16000] [L1: 0.0134] 49.9+0.0s |
|
[11200/16000] [L1: 0.0135] 50.3+0.0s |
|
[12800/16000] [L1: 0.0134] 52.0+0.1s |
|
[14400/16000] [L1: 0.0136] 51.3+0.1s |
|
[16000/16000] [L1: 0.0138] 49.6+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.074 (Best: 9.242 @epoch 1) |
|
Forward: 36.79s |
|
|
|
Saving... |
|
Total: 37.26s |
|
|
|
[Epoch 22] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0144] 50.9+1.0s |
|
[3200/16000] [L1: 0.0135] 51.2+0.0s |
|
[4800/16000] [L1: 0.0132] 51.5+0.0s |
|
[6400/16000] [L1: 0.0133] 51.8+0.0s |
|
[8000/16000] [L1: 0.0130] 51.0+0.0s |
|
[9600/16000] [L1: 0.0132] 50.9+0.0s |
|
[11200/16000] [L1: 0.0134] 50.4+0.1s |
|
[12800/16000] [L1: 0.0133] 48.7+0.0s |
|
[14400/16000] [L1: 0.0134] 49.9+0.0s |
|
[16000/16000] [L1: 0.0133] 51.3+0.0s |
|
|
|
Evaluation: |
|
[DIV2K x1] PSNR: 7.211 (Best: 9.242 @epoch 1) |
|
Forward: 36.74s |
|
|
|
Saving... |
|
Total: 37.12s |
|
|
|
[Epoch 23] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.0121] 50.9+0.8s |
|
[3200/16000] [L1: 0.0122] 51.7+0.1s |
|
[4800/16000] [L1: 0.0127] 51.3+0.1s |
|
[6400/16000] [L1: 0.0125] 50.8+0.1s |
|
[8000/16000] [L1: 0.0128] 51.6+0.1s |
|
DataParallel( |
|
(module): BETALAMBDANET( |
|
(sub_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(add_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(head): Sequential( |
|
(0): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(body): Sequential( |
|
(0): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(1): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(2): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(3): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(4): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(5): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(6): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(7): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(8): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(9): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(10): LambdaLayer( |
|
(to_q): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_k): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_v): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(norm_q): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(norm_v): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(pos_conv): Conv3d(4, 16, kernel_size=(1, 23, 23), stride=(1, 1, 1), padding=(0, 11, 11)) |
|
) |
|
(11): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(12): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(13): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(14): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(15): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(16): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(17): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(18): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(19): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(20): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(21): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(tail): Sequential( |
|
(0): Conv2d(64, 3, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
[Epoch 1] Learning rate: 1.00e-4 |
|
[1600/16000] [L1: 0.8249] 53.4+0.7s |
|
DataParallel( |
|
(module): BETALAMBDANET( |
|
(sub_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(add_mean): MeanShift(3, 3, kernel_size=(1, 1), stride=(1, 1)) |
|
(head): Sequential( |
|
(0): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(body): Sequential( |
|
(0): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(1): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(2): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(3): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(4): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(5): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(6): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(7): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(8): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(9): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(10): LambdaLayer( |
|
(to_q): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_k): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(to_v): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False) |
|
(norm_q): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(norm_v): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) |
|
(pos_conv): Conv3d(4, 16, kernel_size=(1, 23, 23), stride=(1, 1, 1), padding=(0, 11, 11)) |
|
) |
|
(11): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(12): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(13): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(14): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(15): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(16): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(17): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(18): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(19): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(20): ResBlock( |
|
(body): Sequential( |
|
(0): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(1): PReLU(num_parameters=1) |
|
(2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
(21): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
(tail): Sequential( |
|
(0): Conv2d(64, 3, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
[Epoch 1] Learning rate: 1.00e-4 |
|
|