try modify swin

This commit is contained in:
thanhvc3 2024-04-29 19:57:20 +07:00
parent 2b6e356e60
commit d3a6cfe041

View File

@ -532,9 +532,9 @@ class FouriER(torch.nn.Module):
self.patch_embed = PatchEmbed(in_chans=channels, patch_size=self.p.patch_size, self.patch_embed = PatchEmbed(in_chans=channels, patch_size=self.p.patch_size,
embed_dim=self.p.embed_dim, stride=4, padding=2) embed_dim=self.p.embed_dim, stride=4, padding=2)
network = [] network = []
layers = [4, 4, 12, 4] layers = [2, 2, 6, 2]
embed_dims = [self.p.embed_dim, 128, 320, 128] embed_dims = [self.p.embed_dim, 320, 256, 128]
mlp_ratios = [4, 4, 4, 4] mlp_ratios = [4, 4, 8, 12]
num_heads = [2, 4, 8, 16] num_heads = [2, 4, 8, 16]
downsamples = [True, True, True, True] downsamples = [True, True, True, True]
pool_size=3 pool_size=3
@ -558,7 +558,7 @@ class FouriER(torch.nn.Module):
use_layer_scale=use_layer_scale, use_layer_scale=use_layer_scale,
layer_scale_init_value=layer_scale_init_value, layer_scale_init_value=layer_scale_init_value,
num_heads=num_heads[i], input_resolution=(image_h // (2**i), image_w // (2**i)), num_heads=num_heads[i], input_resolution=(image_h // (2**i), image_w // (2**i)),
window_size=window_size, shift_size=0 if (i % 2 == 0) else window_size // 2) window_size=window_size, shift_size=0)
network.append(stage) network.append(stage)
if i >= len(layers) - 1: if i >= len(layers) - 1:
break break
@ -949,7 +949,7 @@ class PoolFormerBlock(nn.Module):
self.window_size = window_size self.window_size = window_size
self.shift_size = shift_size self.shift_size = shift_size
self.input_resolution = input_resolution self.input_resolution = input_resolution
self.token_mixer = WindowAttention(dim=dim, window_size=to_2tuple(self.window_size), num_heads=num_heads) self.token_mixer = WindowAttention(dim=dim, window_size=to_2tuple(self.window_size), num_heads=num_heads, attn_drop=0.2, proj_drop=0.1)
self.norm2 = norm_layer(dim) self.norm2 = norm_layer(dim)
mlp_hidden_dim = int(dim * mlp_ratio) mlp_hidden_dim = int(dim * mlp_ratio)
self.mlp = Mlp(in_features=dim, hidden_features=mlp_hidden_dim, self.mlp = Mlp(in_features=dim, hidden_features=mlp_hidden_dim,