Meloo commited on
Commit
3d8e8e8
·
verified ·
1 Parent(s): 6b321cb

Upload 3594 files

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +0 -0
  2. visual_results/test_SSANet_color_denoising_15_visual/test_test_SSANet_color_denoising_15_visual_20260307_232946.log +1549 -0
  3. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/101085_test_SSANet_color_denoising_15_visual.png +3 -0
  4. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/101087_test_SSANet_color_denoising_15_visual.png +3 -0
  5. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/102061_test_SSANet_color_denoising_15_visual.png +3 -0
  6. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/103070_test_SSANet_color_denoising_15_visual.png +3 -0
  7. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/105025_test_SSANet_color_denoising_15_visual.png +3 -0
  8. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/106024_test_SSANet_color_denoising_15_visual.png +3 -0
  9. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/108005_test_SSANet_color_denoising_15_visual.png +3 -0
  10. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/108070_test_SSANet_color_denoising_15_visual.png +3 -0
  11. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/108082_test_SSANet_color_denoising_15_visual.png +3 -0
  12. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/109053_test_SSANet_color_denoising_15_visual.png +3 -0
  13. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/119082_test_SSANet_color_denoising_15_visual.png +3 -0
  14. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/12084_test_SSANet_color_denoising_15_visual.png +3 -0
  15. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/123074_test_SSANet_color_denoising_15_visual.png +3 -0
  16. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/126007_test_SSANet_color_denoising_15_visual.png +3 -0
  17. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/130026_test_SSANet_color_denoising_15_visual.png +3 -0
  18. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/134035_test_SSANet_color_denoising_15_visual.png +3 -0
  19. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/14037_test_SSANet_color_denoising_15_visual.png +3 -0
  20. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/143090_test_SSANet_color_denoising_15_visual.png +3 -0
  21. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/145086_test_SSANet_color_denoising_15_visual.png +3 -0
  22. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/147091_test_SSANet_color_denoising_15_visual.png +3 -0
  23. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/148026_test_SSANet_color_denoising_15_visual.png +3 -0
  24. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/148089_test_SSANet_color_denoising_15_visual.png +3 -0
  25. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/157055_test_SSANet_color_denoising_15_visual.png +3 -0
  26. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/159008_test_SSANet_color_denoising_15_visual.png +3 -0
  27. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/160068_test_SSANet_color_denoising_15_visual.png +3 -0
  28. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/16077_test_SSANet_color_denoising_15_visual.png +3 -0
  29. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/163085_test_SSANet_color_denoising_15_visual.png +3 -0
  30. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/167062_test_SSANet_color_denoising_15_visual.png +3 -0
  31. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/167083_test_SSANet_color_denoising_15_visual.png +3 -0
  32. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/170057_test_SSANet_color_denoising_15_visual.png +3 -0
  33. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/175032_test_SSANet_color_denoising_15_visual.png +3 -0
  34. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/175043_test_SSANet_color_denoising_15_visual.png +3 -0
  35. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/182053_test_SSANet_color_denoising_15_visual.png +3 -0
  36. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/189080_test_SSANet_color_denoising_15_visual.png +3 -0
  37. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/19021_test_SSANet_color_denoising_15_visual.png +3 -0
  38. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/196073_test_SSANet_color_denoising_15_visual.png +3 -0
  39. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/197017_test_SSANet_color_denoising_15_visual.png +3 -0
  40. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/208001_test_SSANet_color_denoising_15_visual.png +3 -0
  41. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/210088_test_SSANet_color_denoising_15_visual.png +3 -0
  42. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/21077_test_SSANet_color_denoising_15_visual.png +3 -0
  43. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/216081_test_SSANet_color_denoising_15_visual.png +3 -0
  44. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/219090_test_SSANet_color_denoising_15_visual.png +3 -0
  45. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/220075_test_SSANet_color_denoising_15_visual.png +3 -0
  46. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/223061_test_SSANet_color_denoising_15_visual.png +3 -0
  47. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/227092_test_SSANet_color_denoising_15_visual.png +3 -0
  48. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/229036_test_SSANet_color_denoising_15_visual.png +3 -0
  49. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/236037_test_SSANet_color_denoising_15_visual.png +3 -0
  50. visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/24077_test_SSANet_color_denoising_15_visual.png +3 -0
.gitattributes CHANGED
The diff for this file is too large to render. See raw diff
 
visual_results/test_SSANet_color_denoising_15_visual/test_test_SSANet_color_denoising_15_visual_20260307_232946.log ADDED
@@ -0,0 +1,1549 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ 2026-03-07 23:29:46,696 INFO:
2
+ ____ _ _____ ____
3
+ / __ ) ____ _ _____ (_)_____/ ___/ / __ \
4
+ / __ |/ __ `// ___// // ___/\__ \ / /_/ /
5
+ / /_/ // /_/ /(__ )/ // /__ ___/ // _, _/
6
+ /_____/ \__,_//____//_/ \___//____//_/ |_|
7
+ ______ __ __ __ __
8
+ / ____/____ ____ ____/ / / / __ __ _____ / /__ / /
9
+ / / __ / __ \ / __ \ / __ / / / / / / // ___// //_/ / /
10
+ / /_/ // /_/ // /_/ // /_/ / / /___/ /_/ // /__ / /< /_/
11
+ \____/ \____/ \____/ \____/ /_____/\____/ \___//_/|_| (_)
12
+
13
+ Version Information:
14
+ BasicSR: 1.4.2
15
+ PyTorch: 2.1.1+cu121
16
+ TorchVision: 0.16.1+cu121
17
+ 2026-03-07 23:29:46,697 INFO:
18
+ name: test_SSANet_color_denoising_15_visual
19
+ model_type: SRModel
20
+ scale: 1
21
+ num_gpu: 8
22
+ manual_seed: 0
23
+ datasets:[
24
+ val_0:[
25
+ name: Kodak24
26
+ type: DatasetDnCNN
27
+ dataroot_gt: /data2/songlianhong/Color_denoise/Kodak24
28
+ dataroot_lq: None
29
+ io_backend:[
30
+ type: disk
31
+ ]
32
+ sigma: 15
33
+ sigma_test: 15
34
+ phase: val
35
+ scale: 1
36
+ ]
37
+ val_1:[
38
+ name: CBSD68
39
+ type: DatasetDnCNN
40
+ dataroot_gt: /data2/songlianhong/Color_denoise/CBSD68
41
+ dataroot_lq: None
42
+ io_backend:[
43
+ type: disk
44
+ ]
45
+ sigma: 15
46
+ sigma_test: 15
47
+ phase: val
48
+ scale: 1
49
+ ]
50
+ val_2:[
51
+ name: McMaster
52
+ type: DatasetDnCNN
53
+ dataroot_gt: /data2/songlianhong/Color_denoise/McMaster
54
+ dataroot_lq: None
55
+ io_backend:[
56
+ type: disk
57
+ ]
58
+ sigma: 15
59
+ sigma_test: 15
60
+ phase: val
61
+ scale: 1
62
+ ]
63
+ val_3:[
64
+ name: Urban100
65
+ type: DatasetDnCNN
66
+ dataroot_gt: /data2/songlianhong/Color_denoise/Urban100
67
+ dataroot_lq: None
68
+ io_backend:[
69
+ type: disk
70
+ ]
71
+ sigma: 15
72
+ sigma_test: 15
73
+ phase: val
74
+ scale: 1
75
+ ]
76
+ ]
77
+ network_g:[
78
+ type: SSANet
79
+ dim: 160
80
+ num_blocks: 8
81
+ num_layers: 8
82
+ upscale: 1
83
+ num_heads: 1
84
+ ffn_expansion_factor: 2.0
85
+ img_range: 1.0
86
+ use_pixelunshuffle: True
87
+ tlc_flag: True
88
+ tlc_kernel: 72
89
+ activation: relu
90
+ ]
91
+ path:[
92
+ pretrain_network_g: experiments/denoising/ASSANet_15.pth
93
+ strict_load_g: True
94
+ resume_state: None
95
+ results_root: /data2/songlianhong/DLGSANet/20241107/results/test_SSANet_color_denoising_15_visual
96
+ log: /data2/songlianhong/DLGSANet/20241107/results/test_SSANet_color_denoising_15_visual
97
+ visualization: /data2/songlianhong/DLGSANet/20241107/results/test_SSANet_color_denoising_15_visual/visualization
98
+ ]
99
+ val:[
100
+ save_img: True
101
+ suffix: None
102
+ metrics:[
103
+ psnr:[
104
+ type: calculate_psnr
105
+ crop_border: 0
106
+ test_y_channel: False
107
+ ]
108
+ ]
109
+ ]
110
+ dist_params:[
111
+ backend: nccl
112
+ port: 22144
113
+ ]
114
+ dist: False
115
+ rank: 0
116
+ world_size: 1
117
+ auto_resume: False
118
+ is_train: False
119
+
120
+ 2026-03-07 23:29:46,697 INFO: Dataset [DatasetDnCNN] - Kodak24 is built.
121
+ 2026-03-07 23:29:46,698 INFO: Number of test images in Kodak24: 24
122
+ 2026-03-07 23:29:46,698 INFO: Dataset [DatasetDnCNN] - CBSD68 is built.
123
+ 2026-03-07 23:29:46,698 INFO: Number of test images in CBSD68: 68
124
+ 2026-03-07 23:29:46,699 INFO: Dataset [DatasetDnCNN] - McMaster is built.
125
+ 2026-03-07 23:29:46,699 INFO: Number of test images in McMaster: 18
126
+ 2026-03-07 23:29:46,699 INFO: Dataset [DatasetDnCNN] - Urban100 is built.
127
+ 2026-03-07 23:29:46,700 INFO: Number of test images in Urban100: 100
128
+ 2026-03-07 23:29:46,895 INFO: Network [SSANet] is created.
129
+ 2026-03-07 23:29:47,149 INFO: Network: DataParallel - SSANet, with parameters: 18,923,756
130
+ 2026-03-07 23:29:47,150 INFO: SSANet(
131
+ (overlap_embed): Sequential(
132
+ (0): OverlapPatchEmbed(
133
+ (proj): Sequential(
134
+ (0): PixelUnshuffle(downscale_factor=2)
135
+ (1): Conv2d(12, 160, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
136
+ )
137
+ )
138
+ )
139
+ (deep_feature_extraction): Sequential(
140
+ (0): BuildBlock(
141
+ (body): Sequential(
142
+ (0): AttBlock(
143
+ (norm1): LayerNorm(
144
+ (body): WithBias_LayerNorm()
145
+ )
146
+ (norm2): LayerNorm(
147
+ (body): WithBias_LayerNorm()
148
+ )
149
+ (attn): SparseSelfAttention(
150
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
151
+ (dynamic_conv): IDynamicDWConv(
152
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
153
+ )
154
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
155
+ (act): ReLU()
156
+ )
157
+ (ffn): FeedForward(
158
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
159
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
160
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
161
+ )
162
+ )
163
+ (1): AttBlock(
164
+ (norm1): LayerNorm(
165
+ (body): WithBias_LayerNorm()
166
+ )
167
+ (norm2): LayerNorm(
168
+ (body): WithBias_LayerNorm()
169
+ )
170
+ (attn): SparseSelfAttention(
171
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
172
+ (dynamic_conv): IDynamicDWConv(
173
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
174
+ )
175
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
176
+ (act): ReLU()
177
+ )
178
+ (ffn): FeedForward(
179
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
180
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
181
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
182
+ )
183
+ )
184
+ (2): AttBlock(
185
+ (norm1): LayerNorm(
186
+ (body): WithBias_LayerNorm()
187
+ )
188
+ (norm2): LayerNorm(
189
+ (body): WithBias_LayerNorm()
190
+ )
191
+ (attn): SparseSelfAttention(
192
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
193
+ (dynamic_conv): IDynamicDWConv(
194
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
195
+ )
196
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
197
+ (act): ReLU()
198
+ )
199
+ (ffn): FeedForward(
200
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
201
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
202
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
203
+ )
204
+ )
205
+ (3): AttBlock(
206
+ (norm1): LayerNorm(
207
+ (body): WithBias_LayerNorm()
208
+ )
209
+ (norm2): LayerNorm(
210
+ (body): WithBias_LayerNorm()
211
+ )
212
+ (attn): SparseSelfAttention(
213
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
214
+ (dynamic_conv): IDynamicDWConv(
215
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
216
+ )
217
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
218
+ (act): ReLU()
219
+ )
220
+ (ffn): FeedForward(
221
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
222
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
223
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
224
+ )
225
+ )
226
+ (4): AttBlock(
227
+ (norm1): LayerNorm(
228
+ (body): WithBias_LayerNorm()
229
+ )
230
+ (norm2): LayerNorm(
231
+ (body): WithBias_LayerNorm()
232
+ )
233
+ (attn): SparseSelfAttention(
234
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
235
+ (dynamic_conv): IDynamicDWConv(
236
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
237
+ )
238
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
239
+ (act): ReLU()
240
+ )
241
+ (ffn): FeedForward(
242
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
243
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
244
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
245
+ )
246
+ )
247
+ (5): AttBlock(
248
+ (norm1): LayerNorm(
249
+ (body): WithBias_LayerNorm()
250
+ )
251
+ (norm2): LayerNorm(
252
+ (body): WithBias_LayerNorm()
253
+ )
254
+ (attn): SparseSelfAttention(
255
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
256
+ (dynamic_conv): IDynamicDWConv(
257
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
258
+ )
259
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
260
+ (act): ReLU()
261
+ )
262
+ (ffn): FeedForward(
263
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
264
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
265
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
266
+ )
267
+ )
268
+ (6): AttBlock(
269
+ (norm1): LayerNorm(
270
+ (body): WithBias_LayerNorm()
271
+ )
272
+ (norm2): LayerNorm(
273
+ (body): WithBias_LayerNorm()
274
+ )
275
+ (attn): SparseSelfAttention(
276
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
277
+ (dynamic_conv): IDynamicDWConv(
278
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
279
+ )
280
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
281
+ (act): ReLU()
282
+ )
283
+ (ffn): FeedForward(
284
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
285
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
286
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
287
+ )
288
+ )
289
+ (7): AttBlock(
290
+ (norm1): LayerNorm(
291
+ (body): WithBias_LayerNorm()
292
+ )
293
+ (norm2): LayerNorm(
294
+ (body): WithBias_LayerNorm()
295
+ )
296
+ (attn): SparseSelfAttention(
297
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
298
+ (dynamic_conv): IDynamicDWConv(
299
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
300
+ )
301
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
302
+ (act): ReLU()
303
+ )
304
+ (ffn): FeedForward(
305
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
306
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
307
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
308
+ )
309
+ )
310
+ (8): Conv2d(160, 160, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
311
+ )
312
+ )
313
+ (1): BuildBlock(
314
+ (body): Sequential(
315
+ (0): AttBlock(
316
+ (norm1): LayerNorm(
317
+ (body): WithBias_LayerNorm()
318
+ )
319
+ (norm2): LayerNorm(
320
+ (body): WithBias_LayerNorm()
321
+ )
322
+ (attn): SparseSelfAttention(
323
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
324
+ (dynamic_conv): IDynamicDWConv(
325
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
326
+ )
327
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
328
+ (act): ReLU()
329
+ )
330
+ (ffn): FeedForward(
331
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
332
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
333
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
334
+ )
335
+ )
336
+ (1): AttBlock(
337
+ (norm1): LayerNorm(
338
+ (body): WithBias_LayerNorm()
339
+ )
340
+ (norm2): LayerNorm(
341
+ (body): WithBias_LayerNorm()
342
+ )
343
+ (attn): SparseSelfAttention(
344
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
345
+ (dynamic_conv): IDynamicDWConv(
346
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
347
+ )
348
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
349
+ (act): ReLU()
350
+ )
351
+ (ffn): FeedForward(
352
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
353
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
354
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
355
+ )
356
+ )
357
+ (2): AttBlock(
358
+ (norm1): LayerNorm(
359
+ (body): WithBias_LayerNorm()
360
+ )
361
+ (norm2): LayerNorm(
362
+ (body): WithBias_LayerNorm()
363
+ )
364
+ (attn): SparseSelfAttention(
365
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
366
+ (dynamic_conv): IDynamicDWConv(
367
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
368
+ )
369
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
370
+ (act): ReLU()
371
+ )
372
+ (ffn): FeedForward(
373
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
374
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
375
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
376
+ )
377
+ )
378
+ (3): AttBlock(
379
+ (norm1): LayerNorm(
380
+ (body): WithBias_LayerNorm()
381
+ )
382
+ (norm2): LayerNorm(
383
+ (body): WithBias_LayerNorm()
384
+ )
385
+ (attn): SparseSelfAttention(
386
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
387
+ (dynamic_conv): IDynamicDWConv(
388
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
389
+ )
390
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
391
+ (act): ReLU()
392
+ )
393
+ (ffn): FeedForward(
394
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
395
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
396
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
397
+ )
398
+ )
399
+ (4): AttBlock(
400
+ (norm1): LayerNorm(
401
+ (body): WithBias_LayerNorm()
402
+ )
403
+ (norm2): LayerNorm(
404
+ (body): WithBias_LayerNorm()
405
+ )
406
+ (attn): SparseSelfAttention(
407
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
408
+ (dynamic_conv): IDynamicDWConv(
409
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
410
+ )
411
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
412
+ (act): ReLU()
413
+ )
414
+ (ffn): FeedForward(
415
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
416
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
417
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
418
+ )
419
+ )
420
+ (5): AttBlock(
421
+ (norm1): LayerNorm(
422
+ (body): WithBias_LayerNorm()
423
+ )
424
+ (norm2): LayerNorm(
425
+ (body): WithBias_LayerNorm()
426
+ )
427
+ (attn): SparseSelfAttention(
428
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
429
+ (dynamic_conv): IDynamicDWConv(
430
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
431
+ )
432
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
433
+ (act): ReLU()
434
+ )
435
+ (ffn): FeedForward(
436
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
437
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
438
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
439
+ )
440
+ )
441
+ (6): AttBlock(
442
+ (norm1): LayerNorm(
443
+ (body): WithBias_LayerNorm()
444
+ )
445
+ (norm2): LayerNorm(
446
+ (body): WithBias_LayerNorm()
447
+ )
448
+ (attn): SparseSelfAttention(
449
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
450
+ (dynamic_conv): IDynamicDWConv(
451
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
452
+ )
453
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
454
+ (act): ReLU()
455
+ )
456
+ (ffn): FeedForward(
457
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
458
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
459
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
460
+ )
461
+ )
462
+ (7): AttBlock(
463
+ (norm1): LayerNorm(
464
+ (body): WithBias_LayerNorm()
465
+ )
466
+ (norm2): LayerNorm(
467
+ (body): WithBias_LayerNorm()
468
+ )
469
+ (attn): SparseSelfAttention(
470
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
471
+ (dynamic_conv): IDynamicDWConv(
472
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
473
+ )
474
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
475
+ (act): ReLU()
476
+ )
477
+ (ffn): FeedForward(
478
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
479
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
480
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
481
+ )
482
+ )
483
+ (8): Conv2d(160, 160, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
484
+ )
485
+ )
486
+ (2): BuildBlock(
487
+ (body): Sequential(
488
+ (0): AttBlock(
489
+ (norm1): LayerNorm(
490
+ (body): WithBias_LayerNorm()
491
+ )
492
+ (norm2): LayerNorm(
493
+ (body): WithBias_LayerNorm()
494
+ )
495
+ (attn): SparseSelfAttention(
496
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
497
+ (dynamic_conv): IDynamicDWConv(
498
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
499
+ )
500
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
501
+ (act): ReLU()
502
+ )
503
+ (ffn): FeedForward(
504
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
505
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
506
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
507
+ )
508
+ )
509
+ (1): AttBlock(
510
+ (norm1): LayerNorm(
511
+ (body): WithBias_LayerNorm()
512
+ )
513
+ (norm2): LayerNorm(
514
+ (body): WithBias_LayerNorm()
515
+ )
516
+ (attn): SparseSelfAttention(
517
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
518
+ (dynamic_conv): IDynamicDWConv(
519
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
520
+ )
521
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
522
+ (act): ReLU()
523
+ )
524
+ (ffn): FeedForward(
525
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
526
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
527
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
528
+ )
529
+ )
530
+ (2): AttBlock(
531
+ (norm1): LayerNorm(
532
+ (body): WithBias_LayerNorm()
533
+ )
534
+ (norm2): LayerNorm(
535
+ (body): WithBias_LayerNorm()
536
+ )
537
+ (attn): SparseSelfAttention(
538
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
539
+ (dynamic_conv): IDynamicDWConv(
540
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
541
+ )
542
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
543
+ (act): ReLU()
544
+ )
545
+ (ffn): FeedForward(
546
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
547
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
548
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
549
+ )
550
+ )
551
+ (3): AttBlock(
552
+ (norm1): LayerNorm(
553
+ (body): WithBias_LayerNorm()
554
+ )
555
+ (norm2): LayerNorm(
556
+ (body): WithBias_LayerNorm()
557
+ )
558
+ (attn): SparseSelfAttention(
559
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
560
+ (dynamic_conv): IDynamicDWConv(
561
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
562
+ )
563
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
564
+ (act): ReLU()
565
+ )
566
+ (ffn): FeedForward(
567
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
568
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
569
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
570
+ )
571
+ )
572
+ (4): AttBlock(
573
+ (norm1): LayerNorm(
574
+ (body): WithBias_LayerNorm()
575
+ )
576
+ (norm2): LayerNorm(
577
+ (body): WithBias_LayerNorm()
578
+ )
579
+ (attn): SparseSelfAttention(
580
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
581
+ (dynamic_conv): IDynamicDWConv(
582
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
583
+ )
584
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
585
+ (act): ReLU()
586
+ )
587
+ (ffn): FeedForward(
588
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
589
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
590
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
591
+ )
592
+ )
593
+ (5): AttBlock(
594
+ (norm1): LayerNorm(
595
+ (body): WithBias_LayerNorm()
596
+ )
597
+ (norm2): LayerNorm(
598
+ (body): WithBias_LayerNorm()
599
+ )
600
+ (attn): SparseSelfAttention(
601
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
602
+ (dynamic_conv): IDynamicDWConv(
603
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
604
+ )
605
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
606
+ (act): ReLU()
607
+ )
608
+ (ffn): FeedForward(
609
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
610
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
611
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
612
+ )
613
+ )
614
+ (6): AttBlock(
615
+ (norm1): LayerNorm(
616
+ (body): WithBias_LayerNorm()
617
+ )
618
+ (norm2): LayerNorm(
619
+ (body): WithBias_LayerNorm()
620
+ )
621
+ (attn): SparseSelfAttention(
622
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
623
+ (dynamic_conv): IDynamicDWConv(
624
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
625
+ )
626
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
627
+ (act): ReLU()
628
+ )
629
+ (ffn): FeedForward(
630
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
631
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
632
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
633
+ )
634
+ )
635
+ (7): AttBlock(
636
+ (norm1): LayerNorm(
637
+ (body): WithBias_LayerNorm()
638
+ )
639
+ (norm2): LayerNorm(
640
+ (body): WithBias_LayerNorm()
641
+ )
642
+ (attn): SparseSelfAttention(
643
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
644
+ (dynamic_conv): IDynamicDWConv(
645
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
646
+ )
647
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
648
+ (act): ReLU()
649
+ )
650
+ (ffn): FeedForward(
651
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
652
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
653
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
654
+ )
655
+ )
656
+ (8): Conv2d(160, 160, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
657
+ )
658
+ )
659
+ (3): BuildBlock(
660
+ (body): Sequential(
661
+ (0): AttBlock(
662
+ (norm1): LayerNorm(
663
+ (body): WithBias_LayerNorm()
664
+ )
665
+ (norm2): LayerNorm(
666
+ (body): WithBias_LayerNorm()
667
+ )
668
+ (attn): SparseSelfAttention(
669
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
670
+ (dynamic_conv): IDynamicDWConv(
671
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
672
+ )
673
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
674
+ (act): ReLU()
675
+ )
676
+ (ffn): FeedForward(
677
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
678
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
679
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
680
+ )
681
+ )
682
+ (1): AttBlock(
683
+ (norm1): LayerNorm(
684
+ (body): WithBias_LayerNorm()
685
+ )
686
+ (norm2): LayerNorm(
687
+ (body): WithBias_LayerNorm()
688
+ )
689
+ (attn): SparseSelfAttention(
690
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
691
+ (dynamic_conv): IDynamicDWConv(
692
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
693
+ )
694
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
695
+ (act): ReLU()
696
+ )
697
+ (ffn): FeedForward(
698
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
699
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
700
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
701
+ )
702
+ )
703
+ (2): AttBlock(
704
+ (norm1): LayerNorm(
705
+ (body): WithBias_LayerNorm()
706
+ )
707
+ (norm2): LayerNorm(
708
+ (body): WithBias_LayerNorm()
709
+ )
710
+ (attn): SparseSelfAttention(
711
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
712
+ (dynamic_conv): IDynamicDWConv(
713
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
714
+ )
715
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
716
+ (act): ReLU()
717
+ )
718
+ (ffn): FeedForward(
719
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
720
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
721
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
722
+ )
723
+ )
724
+ (3): AttBlock(
725
+ (norm1): LayerNorm(
726
+ (body): WithBias_LayerNorm()
727
+ )
728
+ (norm2): LayerNorm(
729
+ (body): WithBias_LayerNorm()
730
+ )
731
+ (attn): SparseSelfAttention(
732
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
733
+ (dynamic_conv): IDynamicDWConv(
734
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
735
+ )
736
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
737
+ (act): ReLU()
738
+ )
739
+ (ffn): FeedForward(
740
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
741
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
742
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
743
+ )
744
+ )
745
+ (4): AttBlock(
746
+ (norm1): LayerNorm(
747
+ (body): WithBias_LayerNorm()
748
+ )
749
+ (norm2): LayerNorm(
750
+ (body): WithBias_LayerNorm()
751
+ )
752
+ (attn): SparseSelfAttention(
753
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
754
+ (dynamic_conv): IDynamicDWConv(
755
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
756
+ )
757
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
758
+ (act): ReLU()
759
+ )
760
+ (ffn): FeedForward(
761
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
762
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
763
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
764
+ )
765
+ )
766
+ (5): AttBlock(
767
+ (norm1): LayerNorm(
768
+ (body): WithBias_LayerNorm()
769
+ )
770
+ (norm2): LayerNorm(
771
+ (body): WithBias_LayerNorm()
772
+ )
773
+ (attn): SparseSelfAttention(
774
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
775
+ (dynamic_conv): IDynamicDWConv(
776
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
777
+ )
778
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
779
+ (act): ReLU()
780
+ )
781
+ (ffn): FeedForward(
782
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
783
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
784
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
785
+ )
786
+ )
787
+ (6): AttBlock(
788
+ (norm1): LayerNorm(
789
+ (body): WithBias_LayerNorm()
790
+ )
791
+ (norm2): LayerNorm(
792
+ (body): WithBias_LayerNorm()
793
+ )
794
+ (attn): SparseSelfAttention(
795
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
796
+ (dynamic_conv): IDynamicDWConv(
797
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
798
+ )
799
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
800
+ (act): ReLU()
801
+ )
802
+ (ffn): FeedForward(
803
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
804
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
805
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
806
+ )
807
+ )
808
+ (7): AttBlock(
809
+ (norm1): LayerNorm(
810
+ (body): WithBias_LayerNorm()
811
+ )
812
+ (norm2): LayerNorm(
813
+ (body): WithBias_LayerNorm()
814
+ )
815
+ (attn): SparseSelfAttention(
816
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
817
+ (dynamic_conv): IDynamicDWConv(
818
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
819
+ )
820
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
821
+ (act): ReLU()
822
+ )
823
+ (ffn): FeedForward(
824
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
825
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
826
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
827
+ )
828
+ )
829
+ (8): Conv2d(160, 160, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
830
+ )
831
+ )
832
+ (4): BuildBlock(
833
+ (body): Sequential(
834
+ (0): AttBlock(
835
+ (norm1): LayerNorm(
836
+ (body): WithBias_LayerNorm()
837
+ )
838
+ (norm2): LayerNorm(
839
+ (body): WithBias_LayerNorm()
840
+ )
841
+ (attn): SparseSelfAttention(
842
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
843
+ (dynamic_conv): IDynamicDWConv(
844
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
845
+ )
846
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
847
+ (act): ReLU()
848
+ )
849
+ (ffn): FeedForward(
850
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
851
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
852
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
853
+ )
854
+ )
855
+ (1): AttBlock(
856
+ (norm1): LayerNorm(
857
+ (body): WithBias_LayerNorm()
858
+ )
859
+ (norm2): LayerNorm(
860
+ (body): WithBias_LayerNorm()
861
+ )
862
+ (attn): SparseSelfAttention(
863
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
864
+ (dynamic_conv): IDynamicDWConv(
865
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
866
+ )
867
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
868
+ (act): ReLU()
869
+ )
870
+ (ffn): FeedForward(
871
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
872
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
873
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
874
+ )
875
+ )
876
+ (2): AttBlock(
877
+ (norm1): LayerNorm(
878
+ (body): WithBias_LayerNorm()
879
+ )
880
+ (norm2): LayerNorm(
881
+ (body): WithBias_LayerNorm()
882
+ )
883
+ (attn): SparseSelfAttention(
884
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
885
+ (dynamic_conv): IDynamicDWConv(
886
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
887
+ )
888
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
889
+ (act): ReLU()
890
+ )
891
+ (ffn): FeedForward(
892
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
893
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
894
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
895
+ )
896
+ )
897
+ (3): AttBlock(
898
+ (norm1): LayerNorm(
899
+ (body): WithBias_LayerNorm()
900
+ )
901
+ (norm2): LayerNorm(
902
+ (body): WithBias_LayerNorm()
903
+ )
904
+ (attn): SparseSelfAttention(
905
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
906
+ (dynamic_conv): IDynamicDWConv(
907
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
908
+ )
909
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
910
+ (act): ReLU()
911
+ )
912
+ (ffn): FeedForward(
913
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
914
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
915
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
916
+ )
917
+ )
918
+ (4): AttBlock(
919
+ (norm1): LayerNorm(
920
+ (body): WithBias_LayerNorm()
921
+ )
922
+ (norm2): LayerNorm(
923
+ (body): WithBias_LayerNorm()
924
+ )
925
+ (attn): SparseSelfAttention(
926
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
927
+ (dynamic_conv): IDynamicDWConv(
928
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
929
+ )
930
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
931
+ (act): ReLU()
932
+ )
933
+ (ffn): FeedForward(
934
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
935
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
936
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
937
+ )
938
+ )
939
+ (5): AttBlock(
940
+ (norm1): LayerNorm(
941
+ (body): WithBias_LayerNorm()
942
+ )
943
+ (norm2): LayerNorm(
944
+ (body): WithBias_LayerNorm()
945
+ )
946
+ (attn): SparseSelfAttention(
947
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
948
+ (dynamic_conv): IDynamicDWConv(
949
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
950
+ )
951
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
952
+ (act): ReLU()
953
+ )
954
+ (ffn): FeedForward(
955
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
956
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
957
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
958
+ )
959
+ )
960
+ (6): AttBlock(
961
+ (norm1): LayerNorm(
962
+ (body): WithBias_LayerNorm()
963
+ )
964
+ (norm2): LayerNorm(
965
+ (body): WithBias_LayerNorm()
966
+ )
967
+ (attn): SparseSelfAttention(
968
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
969
+ (dynamic_conv): IDynamicDWConv(
970
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
971
+ )
972
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
973
+ (act): ReLU()
974
+ )
975
+ (ffn): FeedForward(
976
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
977
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
978
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
979
+ )
980
+ )
981
+ (7): AttBlock(
982
+ (norm1): LayerNorm(
983
+ (body): WithBias_LayerNorm()
984
+ )
985
+ (norm2): LayerNorm(
986
+ (body): WithBias_LayerNorm()
987
+ )
988
+ (attn): SparseSelfAttention(
989
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
990
+ (dynamic_conv): IDynamicDWConv(
991
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
992
+ )
993
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
994
+ (act): ReLU()
995
+ )
996
+ (ffn): FeedForward(
997
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
998
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
999
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1000
+ )
1001
+ )
1002
+ (8): Conv2d(160, 160, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
1003
+ )
1004
+ )
1005
+ (5): BuildBlock(
1006
+ (body): Sequential(
1007
+ (0): AttBlock(
1008
+ (norm1): LayerNorm(
1009
+ (body): WithBias_LayerNorm()
1010
+ )
1011
+ (norm2): LayerNorm(
1012
+ (body): WithBias_LayerNorm()
1013
+ )
1014
+ (attn): SparseSelfAttention(
1015
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1016
+ (dynamic_conv): IDynamicDWConv(
1017
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1018
+ )
1019
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1020
+ (act): ReLU()
1021
+ )
1022
+ (ffn): FeedForward(
1023
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1024
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1025
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1026
+ )
1027
+ )
1028
+ (1): AttBlock(
1029
+ (norm1): LayerNorm(
1030
+ (body): WithBias_LayerNorm()
1031
+ )
1032
+ (norm2): LayerNorm(
1033
+ (body): WithBias_LayerNorm()
1034
+ )
1035
+ (attn): SparseSelfAttention(
1036
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1037
+ (dynamic_conv): IDynamicDWConv(
1038
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1039
+ )
1040
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1041
+ (act): ReLU()
1042
+ )
1043
+ (ffn): FeedForward(
1044
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1045
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1046
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1047
+ )
1048
+ )
1049
+ (2): AttBlock(
1050
+ (norm1): LayerNorm(
1051
+ (body): WithBias_LayerNorm()
1052
+ )
1053
+ (norm2): LayerNorm(
1054
+ (body): WithBias_LayerNorm()
1055
+ )
1056
+ (attn): SparseSelfAttention(
1057
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1058
+ (dynamic_conv): IDynamicDWConv(
1059
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1060
+ )
1061
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1062
+ (act): ReLU()
1063
+ )
1064
+ (ffn): FeedForward(
1065
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1066
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1067
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1068
+ )
1069
+ )
1070
+ (3): AttBlock(
1071
+ (norm1): LayerNorm(
1072
+ (body): WithBias_LayerNorm()
1073
+ )
1074
+ (norm2): LayerNorm(
1075
+ (body): WithBias_LayerNorm()
1076
+ )
1077
+ (attn): SparseSelfAttention(
1078
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1079
+ (dynamic_conv): IDynamicDWConv(
1080
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1081
+ )
1082
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1083
+ (act): ReLU()
1084
+ )
1085
+ (ffn): FeedForward(
1086
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1087
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1088
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1089
+ )
1090
+ )
1091
+ (4): AttBlock(
1092
+ (norm1): LayerNorm(
1093
+ (body): WithBias_LayerNorm()
1094
+ )
1095
+ (norm2): LayerNorm(
1096
+ (body): WithBias_LayerNorm()
1097
+ )
1098
+ (attn): SparseSelfAttention(
1099
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1100
+ (dynamic_conv): IDynamicDWConv(
1101
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1102
+ )
1103
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1104
+ (act): ReLU()
1105
+ )
1106
+ (ffn): FeedForward(
1107
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1108
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1109
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1110
+ )
1111
+ )
1112
+ (5): AttBlock(
1113
+ (norm1): LayerNorm(
1114
+ (body): WithBias_LayerNorm()
1115
+ )
1116
+ (norm2): LayerNorm(
1117
+ (body): WithBias_LayerNorm()
1118
+ )
1119
+ (attn): SparseSelfAttention(
1120
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1121
+ (dynamic_conv): IDynamicDWConv(
1122
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1123
+ )
1124
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1125
+ (act): ReLU()
1126
+ )
1127
+ (ffn): FeedForward(
1128
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1129
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1130
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1131
+ )
1132
+ )
1133
+ (6): AttBlock(
1134
+ (norm1): LayerNorm(
1135
+ (body): WithBias_LayerNorm()
1136
+ )
1137
+ (norm2): LayerNorm(
1138
+ (body): WithBias_LayerNorm()
1139
+ )
1140
+ (attn): SparseSelfAttention(
1141
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1142
+ (dynamic_conv): IDynamicDWConv(
1143
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1144
+ )
1145
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1146
+ (act): ReLU()
1147
+ )
1148
+ (ffn): FeedForward(
1149
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1150
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1151
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1152
+ )
1153
+ )
1154
+ (7): AttBlock(
1155
+ (norm1): LayerNorm(
1156
+ (body): WithBias_LayerNorm()
1157
+ )
1158
+ (norm2): LayerNorm(
1159
+ (body): WithBias_LayerNorm()
1160
+ )
1161
+ (attn): SparseSelfAttention(
1162
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1163
+ (dynamic_conv): IDynamicDWConv(
1164
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1165
+ )
1166
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1167
+ (act): ReLU()
1168
+ )
1169
+ (ffn): FeedForward(
1170
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1171
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1172
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1173
+ )
1174
+ )
1175
+ (8): Conv2d(160, 160, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
1176
+ )
1177
+ )
1178
+ (6): BuildBlock(
1179
+ (body): Sequential(
1180
+ (0): AttBlock(
1181
+ (norm1): LayerNorm(
1182
+ (body): WithBias_LayerNorm()
1183
+ )
1184
+ (norm2): LayerNorm(
1185
+ (body): WithBias_LayerNorm()
1186
+ )
1187
+ (attn): SparseSelfAttention(
1188
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1189
+ (dynamic_conv): IDynamicDWConv(
1190
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1191
+ )
1192
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1193
+ (act): ReLU()
1194
+ )
1195
+ (ffn): FeedForward(
1196
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1197
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1198
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1199
+ )
1200
+ )
1201
+ (1): AttBlock(
1202
+ (norm1): LayerNorm(
1203
+ (body): WithBias_LayerNorm()
1204
+ )
1205
+ (norm2): LayerNorm(
1206
+ (body): WithBias_LayerNorm()
1207
+ )
1208
+ (attn): SparseSelfAttention(
1209
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1210
+ (dynamic_conv): IDynamicDWConv(
1211
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1212
+ )
1213
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1214
+ (act): ReLU()
1215
+ )
1216
+ (ffn): FeedForward(
1217
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1218
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1219
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1220
+ )
1221
+ )
1222
+ (2): AttBlock(
1223
+ (norm1): LayerNorm(
1224
+ (body): WithBias_LayerNorm()
1225
+ )
1226
+ (norm2): LayerNorm(
1227
+ (body): WithBias_LayerNorm()
1228
+ )
1229
+ (attn): SparseSelfAttention(
1230
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1231
+ (dynamic_conv): IDynamicDWConv(
1232
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1233
+ )
1234
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1235
+ (act): ReLU()
1236
+ )
1237
+ (ffn): FeedForward(
1238
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1239
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1240
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1241
+ )
1242
+ )
1243
+ (3): AttBlock(
1244
+ (norm1): LayerNorm(
1245
+ (body): WithBias_LayerNorm()
1246
+ )
1247
+ (norm2): LayerNorm(
1248
+ (body): WithBias_LayerNorm()
1249
+ )
1250
+ (attn): SparseSelfAttention(
1251
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1252
+ (dynamic_conv): IDynamicDWConv(
1253
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1254
+ )
1255
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1256
+ (act): ReLU()
1257
+ )
1258
+ (ffn): FeedForward(
1259
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1260
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1261
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1262
+ )
1263
+ )
1264
+ (4): AttBlock(
1265
+ (norm1): LayerNorm(
1266
+ (body): WithBias_LayerNorm()
1267
+ )
1268
+ (norm2): LayerNorm(
1269
+ (body): WithBias_LayerNorm()
1270
+ )
1271
+ (attn): SparseSelfAttention(
1272
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1273
+ (dynamic_conv): IDynamicDWConv(
1274
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1275
+ )
1276
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1277
+ (act): ReLU()
1278
+ )
1279
+ (ffn): FeedForward(
1280
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1281
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1282
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1283
+ )
1284
+ )
1285
+ (5): AttBlock(
1286
+ (norm1): LayerNorm(
1287
+ (body): WithBias_LayerNorm()
1288
+ )
1289
+ (norm2): LayerNorm(
1290
+ (body): WithBias_LayerNorm()
1291
+ )
1292
+ (attn): SparseSelfAttention(
1293
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1294
+ (dynamic_conv): IDynamicDWConv(
1295
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1296
+ )
1297
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1298
+ (act): ReLU()
1299
+ )
1300
+ (ffn): FeedForward(
1301
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1302
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1303
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1304
+ )
1305
+ )
1306
+ (6): AttBlock(
1307
+ (norm1): LayerNorm(
1308
+ (body): WithBias_LayerNorm()
1309
+ )
1310
+ (norm2): LayerNorm(
1311
+ (body): WithBias_LayerNorm()
1312
+ )
1313
+ (attn): SparseSelfAttention(
1314
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1315
+ (dynamic_conv): IDynamicDWConv(
1316
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1317
+ )
1318
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1319
+ (act): ReLU()
1320
+ )
1321
+ (ffn): FeedForward(
1322
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1323
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1324
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1325
+ )
1326
+ )
1327
+ (7): AttBlock(
1328
+ (norm1): LayerNorm(
1329
+ (body): WithBias_LayerNorm()
1330
+ )
1331
+ (norm2): LayerNorm(
1332
+ (body): WithBias_LayerNorm()
1333
+ )
1334
+ (attn): SparseSelfAttention(
1335
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1336
+ (dynamic_conv): IDynamicDWConv(
1337
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1338
+ )
1339
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1340
+ (act): ReLU()
1341
+ )
1342
+ (ffn): FeedForward(
1343
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1344
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1345
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1346
+ )
1347
+ )
1348
+ (8): Conv2d(160, 160, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
1349
+ )
1350
+ )
1351
+ (7): BuildBlock(
1352
+ (body): Sequential(
1353
+ (0): AttBlock(
1354
+ (norm1): LayerNorm(
1355
+ (body): WithBias_LayerNorm()
1356
+ )
1357
+ (norm2): LayerNorm(
1358
+ (body): WithBias_LayerNorm()
1359
+ )
1360
+ (attn): SparseSelfAttention(
1361
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1362
+ (dynamic_conv): IDynamicDWConv(
1363
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1364
+ )
1365
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1366
+ (act): ReLU()
1367
+ )
1368
+ (ffn): FeedForward(
1369
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1370
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1371
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1372
+ )
1373
+ )
1374
+ (1): AttBlock(
1375
+ (norm1): LayerNorm(
1376
+ (body): WithBias_LayerNorm()
1377
+ )
1378
+ (norm2): LayerNorm(
1379
+ (body): WithBias_LayerNorm()
1380
+ )
1381
+ (attn): SparseSelfAttention(
1382
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1383
+ (dynamic_conv): IDynamicDWConv(
1384
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1385
+ )
1386
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1387
+ (act): ReLU()
1388
+ )
1389
+ (ffn): FeedForward(
1390
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1391
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1392
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1393
+ )
1394
+ )
1395
+ (2): AttBlock(
1396
+ (norm1): LayerNorm(
1397
+ (body): WithBias_LayerNorm()
1398
+ )
1399
+ (norm2): LayerNorm(
1400
+ (body): WithBias_LayerNorm()
1401
+ )
1402
+ (attn): SparseSelfAttention(
1403
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1404
+ (dynamic_conv): IDynamicDWConv(
1405
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1406
+ )
1407
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1408
+ (act): ReLU()
1409
+ )
1410
+ (ffn): FeedForward(
1411
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1412
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1413
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1414
+ )
1415
+ )
1416
+ (3): AttBlock(
1417
+ (norm1): LayerNorm(
1418
+ (body): WithBias_LayerNorm()
1419
+ )
1420
+ (norm2): LayerNorm(
1421
+ (body): WithBias_LayerNorm()
1422
+ )
1423
+ (attn): SparseSelfAttention(
1424
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1425
+ (dynamic_conv): IDynamicDWConv(
1426
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1427
+ )
1428
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1429
+ (act): ReLU()
1430
+ )
1431
+ (ffn): FeedForward(
1432
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1433
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1434
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1435
+ )
1436
+ )
1437
+ (4): AttBlock(
1438
+ (norm1): LayerNorm(
1439
+ (body): WithBias_LayerNorm()
1440
+ )
1441
+ (norm2): LayerNorm(
1442
+ (body): WithBias_LayerNorm()
1443
+ )
1444
+ (attn): SparseSelfAttention(
1445
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1446
+ (dynamic_conv): IDynamicDWConv(
1447
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1448
+ )
1449
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1450
+ (act): ReLU()
1451
+ )
1452
+ (ffn): FeedForward(
1453
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1454
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1455
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1456
+ )
1457
+ )
1458
+ (5): AttBlock(
1459
+ (norm1): LayerNorm(
1460
+ (body): WithBias_LayerNorm()
1461
+ )
1462
+ (norm2): LayerNorm(
1463
+ (body): WithBias_LayerNorm()
1464
+ )
1465
+ (attn): SparseSelfAttention(
1466
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1467
+ (dynamic_conv): IDynamicDWConv(
1468
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1469
+ )
1470
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1471
+ (act): ReLU()
1472
+ )
1473
+ (ffn): FeedForward(
1474
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1475
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1476
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1477
+ )
1478
+ )
1479
+ (6): AttBlock(
1480
+ (norm1): LayerNorm(
1481
+ (body): WithBias_LayerNorm()
1482
+ )
1483
+ (norm2): LayerNorm(
1484
+ (body): WithBias_LayerNorm()
1485
+ )
1486
+ (attn): SparseSelfAttention(
1487
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1488
+ (dynamic_conv): IDynamicDWConv(
1489
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1490
+ )
1491
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1492
+ (act): ReLU()
1493
+ )
1494
+ (ffn): FeedForward(
1495
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1496
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1497
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1498
+ )
1499
+ )
1500
+ (7): AttBlock(
1501
+ (norm1): LayerNorm(
1502
+ (body): WithBias_LayerNorm()
1503
+ )
1504
+ (norm2): LayerNorm(
1505
+ (body): WithBias_LayerNorm()
1506
+ )
1507
+ (attn): SparseSelfAttention(
1508
+ (project_in): Conv2d(160, 320, kernel_size=(1, 1), stride=(1, 1), bias=False)
1509
+ (dynamic_conv): IDynamicDWConv(
1510
+ (weight): Conv2d(320, 2880, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=320, bias=False)
1511
+ )
1512
+ (project_out): Conv2d(160, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1513
+ (act): ReLU()
1514
+ )
1515
+ (ffn): FeedForward(
1516
+ (project_in): Conv2d(160, 640, kernel_size=(1, 1), stride=(1, 1), bias=False)
1517
+ (dwconv): Conv2d(640, 640, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=640, bias=False)
1518
+ (project_out): Conv2d(320, 160, kernel_size=(1, 1), stride=(1, 1), bias=False)
1519
+ )
1520
+ )
1521
+ (8): Conv2d(160, 160, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
1522
+ )
1523
+ )
1524
+ (8): Conv2d(160, 160, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
1525
+ )
1526
+ (upsample): UpsampleOneStep(
1527
+ (0): Conv2d(160, 12, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
1528
+ (1): PixelShuffle(upscale_factor=2)
1529
+ )
1530
+ )
1531
+ 2026-03-07 23:29:47,261 INFO: Loading SSANet model from experiments/denoising/ASSANet_15.pth, with param key: [params].
1532
+ 2026-03-07 23:29:47,387 INFO: Model [SRModel] is created.
1533
+ 2026-03-07 23:29:47,632 INFO: Loading SSANet model from experiments/denoising/ASSANet_15.pth, with param key: [params_ema].
1534
+ 2026-03-07 23:29:47,750 INFO: Testing Kodak24...
1535
+ 2026-03-07 23:30:29,585 INFO: Validation Kodak24
1536
+ # psnr: 35.4199 Best: 35.4199 @ test_SSANet_color_denoising_15_visual iter
1537
+
1538
+ 2026-03-07 23:30:29,587 INFO: Testing CBSD68...
1539
+ 2026-03-07 23:31:53,098 INFO: Validation CBSD68
1540
+ # psnr: 34.4658 Best: 34.4658 @ test_SSANet_color_denoising_15_visual iter
1541
+
1542
+ 2026-03-07 23:31:53,098 INFO: Testing McMaster...
1543
+ 2026-03-07 23:32:39,971 INFO: Validation McMaster
1544
+ # psnr: 35.6979 Best: 35.6979 @ test_SSANet_color_denoising_15_visual iter
1545
+
1546
+ 2026-03-07 23:32:39,972 INFO: Testing Urban100...
1547
+ 2026-03-07 23:42:44,597 INFO: Validation Urban100
1548
+ # psnr: 35.3656 Best: 35.3656 @ test_SSANet_color_denoising_15_visual iter
1549
+
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/101085_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 66d574d23c0084b8b92099f6debea486740d2909ab4406a8732a242d18cfcb99
  • Pointer size: 131 Bytes
  • Size of remote file: 356 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/101087_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 5d2bb08a2737946c27892ce62e2194b3f7de3af7f4bfa62b7df47c29117064bd
  • Pointer size: 131 Bytes
  • Size of remote file: 210 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/102061_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: e3f22b053aa9a9107577bc57def8efc03061fb560062e63f5937d709274c3eda
  • Pointer size: 131 Bytes
  • Size of remote file: 239 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/103070_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 27d50dfd3008b2b1e9a4a175c5e2e4e690e0f2fee162e439eeb8890c657e63e9
  • Pointer size: 131 Bytes
  • Size of remote file: 251 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/105025_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: e52d0dde3280ffa39c7437f1097330669019b72958959e36edfc1e2b8fb1ebf0
  • Pointer size: 131 Bytes
  • Size of remote file: 290 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/106024_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: fead09d8d00e703be82f46c89ff00f10f52c9e950d8b4b0be3e7788921702463
  • Pointer size: 131 Bytes
  • Size of remote file: 177 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/108005_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 15d34dafe1ec1614b8cf5cdb4e5ee3efa5a0f51351e9f0128ed0ca5d117c87d4
  • Pointer size: 131 Bytes
  • Size of remote file: 310 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/108070_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: ec98ac6b32de32d14de1fe62041b178d455d1968c75eeaa8a423d2585303a4a0
  • Pointer size: 131 Bytes
  • Size of remote file: 342 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/108082_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: d09318d5f668e34e4ea27d0065402a5119d2c880b67fd97bac658730d64986f5
  • Pointer size: 131 Bytes
  • Size of remote file: 267 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/109053_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 76feef7a38c7fdae6214d4611b9ca35fa42037bf02ea100c7e47d4008e57dddd
  • Pointer size: 131 Bytes
  • Size of remote file: 268 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/119082_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: ec6457eaf0d8dedb0dd0aa66f03c0ad9f2159259c2588241330c274905142b59
  • Pointer size: 131 Bytes
  • Size of remote file: 265 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/12084_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 7b330ad13dec0967d47cdb2a9200f2405f4e192403ba16a78a31ee83033309d3
  • Pointer size: 131 Bytes
  • Size of remote file: 315 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/123074_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 7029613a1cf4e9a7569ccbe27dd95e03f7524ecdcc50e8017943c12dafd26b20
  • Pointer size: 131 Bytes
  • Size of remote file: 270 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/126007_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 0598a615a63ce946625bfb6e357bf54a53e29857b99fe5962634ca5e8bc8636d
  • Pointer size: 131 Bytes
  • Size of remote file: 215 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/130026_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 1b990f49084e3ca98f85bc6847aa51cc55bbe54c4a519709257fa2872778eaf2
  • Pointer size: 131 Bytes
  • Size of remote file: 309 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/134035_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 6b1b4c4c10f796a0a5a16f92c982f46e97cbc26330dde0f044985060e9918877
  • Pointer size: 131 Bytes
  • Size of remote file: 333 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/14037_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 6be9673b525482c1355292fd66eac64333533a939d51476013b9169c6c48ac2d
  • Pointer size: 131 Bytes
  • Size of remote file: 167 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/143090_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 8ef78ac2298d243cd2e42f82bb97889ce42f34ce1f70f01cb0d36e01a933ef6f
  • Pointer size: 131 Bytes
  • Size of remote file: 157 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/145086_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: ce38008699e3d217b289433286be8e37b2dc0384fd8c785da4fa9fb28c8ec716
  • Pointer size: 131 Bytes
  • Size of remote file: 283 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/147091_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 01df2e203b68b65446c79a03c4bb218e6c13d21fa6aaa10ad0afc04e49ee37c5
  • Pointer size: 131 Bytes
  • Size of remote file: 249 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/148026_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 5860b26c4e5e9a3694ff1bb356e4ce3f6b2f9453ffe4275c08cc969ce3a6b0aa
  • Pointer size: 131 Bytes
  • Size of remote file: 327 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/148089_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: ad1bc455ab60836fd83268b843af688d61903a6d8aed488d6d9f9483354a4660
  • Pointer size: 131 Bytes
  • Size of remote file: 344 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/157055_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 254400ab437c330e61c27c0f3d455cf6f097cb09ab86eafcce0a1b8168b7daed
  • Pointer size: 131 Bytes
  • Size of remote file: 305 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/159008_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: b8d8c2a0cd18777f50a485ac69631697eb16cfd1224c94faaaf38d931ccd016f
  • Pointer size: 131 Bytes
  • Size of remote file: 298 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/160068_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: eb1df9d6ea1e59fa57fd51fb811bc7892a57ce23ea61a7d29f4e35d9d36d72e4
  • Pointer size: 131 Bytes
  • Size of remote file: 217 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/16077_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 50cb699e847dad0546e080f7d3213149d37b5203561244e4b898765e8b5e63b5
  • Pointer size: 131 Bytes
  • Size of remote file: 290 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/163085_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: bf57a691b341231499d98f7b7f599ee7ffa2f6ec6327b4edf538420151ae3dce
  • Pointer size: 131 Bytes
  • Size of remote file: 266 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/167062_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: f2801b0099bf9680d99c7f531a72ed5568d1730130a6564c6aa8d9607f1c9a1b
  • Pointer size: 131 Bytes
  • Size of remote file: 136 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/167083_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: e8447f3602df249bcaa291f8ab4b092cdf71591505d20f37e167723204cdd5ab
  • Pointer size: 131 Bytes
  • Size of remote file: 354 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/170057_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 5c6cb7ded1148b350208f920901f3600652da359060e98d298e2cc95f0a421d4
  • Pointer size: 131 Bytes
  • Size of remote file: 276 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/175032_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: bb9f16f4e01c064d5b8ce846179afc229cbd7b85a65fc5b279c18c3a4ba45f60
  • Pointer size: 131 Bytes
  • Size of remote file: 403 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/175043_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: f97bfe3c958a6e214279d3f1ecdef24df32d7bd7da7311ba6b70b1c32a705b15
  • Pointer size: 131 Bytes
  • Size of remote file: 347 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/182053_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: e3a1bf8933a788d0d8279ba8cb2bd7c512ddd7d1cf8c2d326bc1a1f7e613dc4d
  • Pointer size: 131 Bytes
  • Size of remote file: 237 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/189080_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 91ebf4fa4e4b767a963a4e939e51461da593dd18385d43bf758a6bff84c6a1f2
  • Pointer size: 131 Bytes
  • Size of remote file: 211 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/19021_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 5a46d8460aa46174540dd5b39cf65739e358ad7d02a42428729e2aa2e646f6b6
  • Pointer size: 131 Bytes
  • Size of remote file: 295 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/196073_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 9bc0d867b75d42db47ec95f5d9d6b324fcfb83e431e91f47e46571456ea9f7b2
  • Pointer size: 131 Bytes
  • Size of remote file: 311 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/197017_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: aacb73ac39a6b750e4ffdd998f5121baf8f99633348422dd3b23b630b2bf6324
  • Pointer size: 131 Bytes
  • Size of remote file: 253 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/208001_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: e30493a6a46cfda8a78e2be2f7d238dfc504a81acdbefbe27e5b38b5916603f7
  • Pointer size: 131 Bytes
  • Size of remote file: 293 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/210088_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 3b532ff4ad2e3a8e8f047b30b361a76e318433c279c12d97dcbbf22f9099917d
  • Pointer size: 131 Bytes
  • Size of remote file: 235 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/21077_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 6fb562445f84cddb686dd3b3fdb3ed0970a3afc35888fa4575e3b69552c05fd6
  • Pointer size: 131 Bytes
  • Size of remote file: 261 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/216081_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 5377e01c5bcc4b23c3f5c965c3980adaae89a3ef394f324f2708fd46cca36483
  • Pointer size: 131 Bytes
  • Size of remote file: 286 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/219090_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 0f16955aef436b5cddd47256f2f6da57963754f3c921f2b26ed1e2678dc6ea2b
  • Pointer size: 131 Bytes
  • Size of remote file: 229 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/220075_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 502ae3da5044eefcae362d4804ac9d76fe04cfc85a2ea42f8a8344b4782d27c4
  • Pointer size: 131 Bytes
  • Size of remote file: 261 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/223061_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 07b8289dd861569dc7c50f2b7dafb76e68ff4dc1494990c2fc7947fdf095a3a3
  • Pointer size: 131 Bytes
  • Size of remote file: 292 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/227092_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: b8a09a2f158e678acaab10899c43cf767cf320ff68b34e43f61d0b127001853e
  • Pointer size: 131 Bytes
  • Size of remote file: 184 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/229036_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 36853442ac88811eb5e2c909625bd7c1e18276a8570b124e5be848ed8eaefde3
  • Pointer size: 131 Bytes
  • Size of remote file: 352 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/236037_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: dc4e51688e6fac403d06554242a8c171dbf47702723cd35f90b5692350b802c8
  • Pointer size: 131 Bytes
  • Size of remote file: 332 kB
visual_results/test_SSANet_color_denoising_15_visual/visualization/CBSD68/24077_test_SSANet_color_denoising_15_visual.png ADDED

Git LFS Details

  • SHA256: 3348087468746b6b79b1d94d4303a4a21fbebf32981f27fc21b158b0329223e3
  • Pointer size: 131 Bytes
  • Size of remote file: 282 kB