van
model.backbone.van
PyTorch Visual Attention Network (VAN) model.
URL: https://github.com/Visual-Attention-Network/VAN-Classification
model_urls
module-attribute
model_urls = {'van_b0': 'https://huggingface.co/Visual-Attention-Network/VAN-Tiny-original/resolve/main/van_tiny_754.pth.tar', 'van_b1': 'https://huggingface.co/Visual-Attention-Network/VAN-Small-original/resolve/main/van_small_811.pth.tar', 'van_b2': 'https://huggingface.co/Visual-Attention-Network/VAN-Base-original/resolve/main/van_base_828.pth.tar', 'van_b3': 'https://huggingface.co/Visual-Attention-Network/VAN-Large-original/resolve/main/van_large_839.pth.tar'}
DWConv
Bases: Module
Source code in SaigeToolkit/model/backbone/van.py
Mlp
Bases: Module
Source code in SaigeToolkit/model/backbone/van.py
_init_weights
Source code in SaigeToolkit/model/backbone/van.py
LKA
Bases: Module
Source code in SaigeToolkit/model/backbone/van.py
conv_spatial
instance-attribute
forward
Source code in SaigeToolkit/model/backbone/van.py
Attention
Bases: Module
Source code in SaigeToolkit/model/backbone/van.py
Block
Bases: Module
Source code in SaigeToolkit/model/backbone/van.py
mlp
instance-attribute
mlp = Mlp(in_features=dim, hidden_features=mlp_hidden_dim, act_layer=act_layer, drop=drop)
layer_scale_1
instance-attribute
layer_scale_2
instance-attribute
_init_weights
Source code in SaigeToolkit/model/backbone/van.py
forward
OverlapPatchEmbed
Bases: Module
Image to Patch Embedding
Source code in SaigeToolkit/model/backbone/van.py
proj
instance-attribute
proj = Conv2d(in_channels, embed_dim, kernel_size=patch_size, stride=stride, padding=(patch_size[0] // 2, patch_size[1] // 2))
_init_weights
Source code in SaigeToolkit/model/backbone/van.py
VAN
VAN(img_size: int = 224, in_channels: int = 3, embed_dims: List[int] = [64, 128, 256, 512], mlp_ratios: List[int] = [4, 4, 4, 4], drop_rate: float = 0.0, drop_path_rate: float = 0.0, norm_layer: Module = nn.LayerNorm, depths: List[int] = [3, 4, 6, 3], num_stages: int = 4, clip_attn: Optional[float] = None)
Bases: Module
Source code in SaigeToolkit/model/backbone/van.py
_init_weights
Source code in SaigeToolkit/model/backbone/van.py
freeze_patch_emb
no_weight_decay
forward
Source code in SaigeToolkit/model/backbone/van.py
load_state_dict
Source code in SaigeToolkit/model/backbone/van.py
extend_state_dict_input_channel
extend_state_dict_input_channel(state_dict: Mapping[str, Any], input_weight_key: str, input_conv_layer: Conv2d) -> None
(Multipage) 3채널 이상인 이미지를 사용하기 위해 필요한 기능이며, state_dict의 input conv 채널이 네트워크의 input conv 채널보다 작은 경우 해당 weight의 채널을 늘려줍니다. 현재 네트워크가 가진 input conv 웨이트에서 앞 3 채널을 state_dict의 input conv 웨이트로 치환하는 방식을 사용합니다.
Parameters:
-
state_dict(Mapping[str, Any]) –로드하려는 weight
-
input_weight_key(str) –input conv weight의 이름
-
input_conv_layer(Conv2d) –input conv layer