Open zbl929 opened 1 year ago
hi, 看起来你的out_indices=[1, 2, 8, 9]
应该改成out_indices=[0, 1, 7, 9]
,不然backbone其实return的4个stage的channel就是[1024, 2048, 4096, 4096],和FPN的输入对不上。
您好,感谢回答!! 我现在又碰上了另一个问题:加载预训练权重无法匹配!无论是从load_from加载或是从配置文件model里加载,都显示WARNING - No pre-trained weights for Vanillanet, training start from scratch! 期待解答!感谢!
2023-06-30 16:38:52,882 - mmseg - INFO - OpenCV num_threads is `
2023-06-30 16:38:59,145 - mmseg - INFO - Set random seed to 1502961241, deterministic: False 2023-06-30 16:39:01,437 - mmseg - WARNING - No pre-trained weights for Vanillanet, training start from scratch 2023-06-30 16:39:02,380 - mmseg - INFO - initialize FPN with init_cfg {'type': 'Xavier', 'layer': 'Conv2d', 'distribution': 'uniform'} 2023-06-30 16:39:02,785 - mmseg - INFO - initialize FPNHead with init_cfg {'type': 'Normal', 'std': 0.01, 'override': {'name': 'conv_seg'}} Name of parameter - Initialization information
backbone.stem1.0.weight - torch.Size([512, 3, 4, 4]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stem1.0.bias - torch.Size([512]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stem1.1.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stem1.1.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stem2.0.weight - torch.Size([512, 512, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stem2.0.bias - torch.Size([512]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stem2.1.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stem2.1.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stem2.2.weight - torch.Size([512, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stem2.2.bn.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stem2.2.bn.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.0.conv1.0.weight - torch.Size([512, 512, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.0.conv1.0.bias - torch.Size([512]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.0.conv1.1.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.0.conv1.1.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.0.conv2.0.weight - torch.Size([512, 512, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.0.conv2.0.bias - torch.Size([512]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.0.conv2.1.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.0.conv2.1.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.0.act.weight - torch.Size([512, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.0.act.bn.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.0.act.bn.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.1.conv1.0.weight - torch.Size([512, 512, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.1.conv1.0.bias - torch.Size([512]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.1.conv1.1.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.1.conv1.1.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.1.conv2.0.weight - torch.Size([1024, 512, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.1.conv2.0.bias - torch.Size([1024]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.1.conv2.1.weight - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.1.conv2.1.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.1.act.weight - torch.Size([1024, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.1.act.bn.weight - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.1.act.bn.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.2.conv1.0.weight - torch.Size([1024, 1024, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.2.conv1.0.bias - torch.Size([1024]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.2.conv1.1.weight - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.2.conv1.1.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.2.conv2.0.weight - torch.Size([2048, 1024, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.2.conv2.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.2.conv2.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.2.conv2.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.2.act.weight - torch.Size([2048, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.2.act.bn.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.2.act.bn.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.3.conv1.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.3.conv1.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.3.conv1.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.3.conv1.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.3.conv2.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.3.conv2.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.3.conv2.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.3.conv2.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.3.act.weight - torch.Size([2048, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.3.act.bn.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.3.act.bn.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.4.conv1.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.4.conv1.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.4.conv1.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.4.conv1.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.4.conv2.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.4.conv2.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.4.conv2.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.4.conv2.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.4.act.weight - torch.Size([2048, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.4.act.bn.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.4.act.bn.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.5.conv1.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.5.conv1.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.5.conv1.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.5.conv1.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.5.conv2.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.5.conv2.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.5.conv2.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.5.conv2.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.5.act.weight - torch.Size([2048, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.5.act.bn.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.5.act.bn.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.6.conv1.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.6.conv1.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.6.conv1.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.6.conv1.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.6.conv2.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.6.conv2.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.6.conv2.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.6.conv2.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.6.act.weight - torch.Size([2048, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.6.act.bn.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.6.act.bn.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.7.conv1.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.7.conv1.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.7.conv1.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.7.conv1.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.7.conv2.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.7.conv2.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.7.conv2.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.7.conv2.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.7.act.weight - torch.Size([2048, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.7.act.bn.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.7.act.bn.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.8.conv1.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.8.conv1.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.8.conv1.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.8.conv1.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.8.conv2.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.8.conv2.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.8.conv2.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.8.conv2.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.8.act.weight - torch.Size([2048, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.8.act.bn.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.8.act.bn.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.9.conv1.0.weight - torch.Size([2048, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.9.conv1.0.bias - torch.Size([2048]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.9.conv1.1.weight - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.9.conv1.1.bias - torch.Size([2048]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.9.conv2.0.weight - torch.Size([4096, 2048, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.9.conv2.0.bias - torch.Size([4096]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.9.conv2.1.weight - torch.Size([4096]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.9.conv2.1.bias - torch.Size([4096]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.9.act.weight - torch.Size([4096, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.9.act.bn.weight - torch.Size([4096]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.9.act.bn.bias - torch.Size([4096]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.10.conv1.0.weight - torch.Size([4096, 4096, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.10.conv1.0.bias - torch.Size([4096]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.10.conv1.1.weight - torch.Size([4096]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.10.conv1.1.bias - torch.Size([4096]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.10.conv2.0.weight - torch.Size([4096, 4096, 1, 1]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.10.conv2.0.bias - torch.Size([4096]):
Initialized by user-defined init_weights
in Vanillanet
backbone.stages.10.conv2.1.weight - torch.Size([4096]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.10.conv2.1.bias - torch.Size([4096]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.10.act.weight - torch.Size([4096, 1, 9, 9]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.10.act.bn.weight - torch.Size([4096]):
The value is the same before and after calling init_weights
of EncoderDecoder
backbone.stages.10.act.bn.bias - torch.Size([4096]):
The value is the same before and after calling init_weights
of EncoderDecoder
neck.lateral_convs.0.conv.weight - torch.Size([1024, 512, 1, 1]): XavierInit: gain=1, distribution=uniform, bias=0
neck.lateral_convs.0.conv.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
neck.lateral_convs.1.conv.weight - torch.Size([1024, 1024, 1, 1]): XavierInit: gain=1, distribution=uniform, bias=0
neck.lateral_convs.1.conv.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
neck.lateral_convs.2.conv.weight - torch.Size([1024, 2048, 1, 1]): XavierInit: gain=1, distribution=uniform, bias=0
neck.lateral_convs.2.conv.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
neck.lateral_convs.3.conv.weight - torch.Size([1024, 4096, 1, 1]): XavierInit: gain=1, distribution=uniform, bias=0
neck.lateral_convs.3.conv.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
neck.fpn_convs.0.conv.weight - torch.Size([1024, 1024, 3, 3]): XavierInit: gain=1, distribution=uniform, bias=0
neck.fpn_convs.0.conv.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
neck.fpn_convs.1.conv.weight - torch.Size([1024, 1024, 3, 3]): XavierInit: gain=1, distribution=uniform, bias=0
neck.fpn_convs.1.conv.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
neck.fpn_convs.2.conv.weight - torch.Size([1024, 1024, 3, 3]): XavierInit: gain=1, distribution=uniform, bias=0
neck.fpn_convs.2.conv.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
neck.fpn_convs.3.conv.weight - torch.Size([1024, 1024, 3, 3]): XavierInit: gain=1, distribution=uniform, bias=0
neck.fpn_convs.3.conv.bias - torch.Size([1024]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.conv_seg.weight - torch.Size([2, 512, 1, 1]): NormalInit: mean=0, std=0.01, bias=0
decode_head.conv_seg.bias - torch.Size([2]): NormalInit: mean=0, std=0.01, bias=0
decode_head.scale_heads.0.0.conv.weight - torch.Size([512, 1024, 3, 3]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.0.0.bn.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.0.0.bn.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.1.0.conv.weight - torch.Size([512, 1024, 3, 3]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.1.0.bn.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.1.0.bn.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.2.0.conv.weight - torch.Size([512, 1024, 3, 3]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.2.0.bn.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.2.0.bn.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.2.2.conv.weight - torch.Size([512, 512, 3, 3]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.2.2.bn.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.2.2.bn.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.3.0.conv.weight - torch.Size([512, 1024, 3, 3]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.3.0.bn.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.3.0.bn.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.3.2.conv.weight - torch.Size([512, 512, 3, 3]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.3.2.bn.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.3.2.bn.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.3.4.conv.weight - torch.Size([512, 512, 3, 3]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.3.4.bn.weight - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
decode_head.scale_heads.3.4.bn.bias - torch.Size([512]):
The value is the same before and after calling init_weights
of EncoderDecoder
2023-06-30 16:39:02,828 - mmseg - INFO - EncoderDecoder(
(backbone): Vanillanet(
(stem1): Sequential(
(0): Conv2d(3, 512, kernel_size=(4, 4), stride=(4, 4))
(1): _BatchNormXd(512, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(stem2): Sequential(
(0): Conv2d(512, 512, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(512, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
(2): activation(
(bn): _BatchNormXd(512, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(stages): ModuleList(
(0): Block(
(conv1): Sequential(
(0): Conv2d(512, 512, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(512, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(512, 512, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(512, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): Identity()
(act): activation(
(bn): _BatchNormXd(512, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(1): Block(
(conv1): Sequential(
(0): Conv2d(512, 512, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(512, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(512, 1024, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(1024, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
(act): activation(
(bn): _BatchNormXd(1024, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(2): Block(
(conv1): Sequential(
(0): Conv2d(1024, 1024, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(1024, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(1024, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
(act): activation(
(bn): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(3): Block(
(conv1): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): Identity()
(act): activation(
(bn): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(4): Block(
(conv1): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): Identity()
(act): activation(
(bn): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(5): Block(
(conv1): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): Identity()
(act): activation(
(bn): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(6): Block(
(conv1): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): Identity()
(act): activation(
(bn): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(7): Block(
(conv1): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): Identity()
(act): activation(
(bn): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(8): Block(
(conv1): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): Identity()
(act): activation(
(bn): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(9): Block(
(conv1): Sequential(
(0): Conv2d(2048, 2048, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(2048, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(2048, 4096, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(4096, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
(act): activation(
(bn): _BatchNormXd(4096, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
(10): Block(
(conv1): Sequential(
(0): Conv2d(4096, 4096, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(4096, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(conv2): Sequential(
(0): Conv2d(4096, 4096, kernel_size=(1, 1), stride=(1, 1))
(1): _BatchNormXd(4096, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
(pool): Identity()
(act): activation(
(bn): _BatchNormXd(4096, eps=1e-06, momentum=0.1, affine=True, track_running_stats=True)
)
)
)
)
(neck): FPN(
(lateral_convs): ModuleList(
(0): ConvModule(
(conv): Conv2d(512, 1024, kernel_size=(1, 1), stride=(1, 1))
)
(1): ConvModule(
(conv): Conv2d(1024, 1024, kernel_size=(1, 1), stride=(1, 1))
)
(2): ConvModule(
(conv): Conv2d(2048, 1024, kernel_size=(1, 1), stride=(1, 1))
)
(3): ConvModule(
(conv): Conv2d(4096, 1024, kernel_size=(1, 1), stride=(1, 1))
)
)
(fpn_convs): ModuleList(
(0): ConvModule(
(conv): Conv2d(1024, 1024, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
)
(1): ConvModule(
(conv): Conv2d(1024, 1024, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
)
(2): ConvModule(
(conv): Conv2d(1024, 1024, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
)
(3): ConvModule(
(conv): Conv2d(1024, 1024, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
)
)
)
init_cfg={'type': 'Xavier', 'layer': 'Conv2d', 'distribution': 'uniform'}
(decode_head): FPNHead(
input_transform=multiple_select, ignore_index=255, align_corners=False
(loss_decode): CrossEntropyLoss(avg_non_ignore=False)
(conv_seg): Conv2d(512, 2, kernel_size=(1, 1), stride=(1, 1))
(dropout): Dropout2d(p=0.1, inplace=False)
(scale_heads): ModuleList(
(0): Sequential(
(0): ConvModule(
(conv): Conv2d(1024, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(activate): ReLU(inplace=True)
)
)
(1): Sequential(
(0): ConvModule(
(conv): Conv2d(1024, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(activate): ReLU(inplace=True)
)
(1): Upsample()
)
(2): Sequential(
(0): ConvModule(
(conv): Conv2d(1024, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(activate): ReLU(inplace=True)
)
(1): Upsample()
(2): ConvModule(
(conv): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(activate): ReLU(inplace=True)
)
(3): Upsample()
)
(3): Sequential(
(0): ConvModule(
(conv): Conv2d(1024, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(activate): ReLU(inplace=True)
)
(1): Upsample()
(2): ConvModule(
(conv): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(activate): ReLU(inplace=True)
)
(3): Upsample()
(4): ConvModule(
(conv): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(activate): ReLU(inplace=True)
)
(5): Upsample()
)
)
)
init_cfg={'type': 'Normal', 'std': 0.01, 'override': {'name': 'conv_seg'}}
)
2023-06-30 16:39:02,845 - mmseg - INFO - Loaded 1341 images
2023-06-30 16:39:02,847 - mmseg - INFO - Loaded 178 images
2023-06-30 16:39:03,842 - mmseg - INFO - self.paramwise_cfg is {'decay_rate': 0.6, 'decay_type': 'layer_wise', 'num_layers': 6}
2023-06-30 16:39:03,842 - mmseg - INFO - Build LearningRateDecayOptimizerConstructor layer_wise 0.6 - 8
2023-06-30 16:39:03,842 - mmseg - INFO - set param backbone.stem1.0.weight as id 0
2023-06-30 16:39:03,843 - mmseg - INFO - set param backbone.stem1.0.bias as id 0
2023-06-30 16:39:03,843 - mmseg - INFO - set param backbone.stem1.1.weight as id 0
2023-06-30 16:39:03,843 - mmseg - INFO - set param backbone.stem1.1.bias as id 0
2023-06-30 16:39:03,843 - mmseg - INFO - set param backbone.stem2.0.weight as id 0
2023-06-30 16:39:03,843 - mmseg - INFO - set param backbone.stem2.0.bias as id 0
2023-06-30 16:39:03,843 - mmseg - INFO - set param backbone.stem2.1.weight as id 0
2023-06-30 16:39:03,843 - mmseg - INFO - set param backbone.stem2.1.bias as id 0
2023-06-30 16:39:03,843 - mmseg - INFO - set param backbone.stem2.2.weight as id 0
2023-06-30 16:39:03,843 - mmseg - INFO - set param backbone.stem2.2.bn.weight as id 0
2023-06-30 16:39:03,843 - mmseg - INFO - set param backbone.stem2.2.bn.bias as id 0
2023-06-30 16:39:03,844 - mmseg - INFO - set param backbone.stages.0.conv1.0.weight as id 1
2023-06-30 16:39:03,844 - mmseg - INFO - set param backbone.stages.0.conv1.0.bias as id 1
2023-06-30 16:39:03,844 - mmseg - INFO - set param backbone.stages.0.conv1.1.weight as id 1
2023-06-30 16:39:03,844 - mmseg - INFO - set param backbone.stages.0.conv1.1.bias as id 1
2023-06-30 16:39:03,844 - mmseg - INFO - set param backbone.stages.0.conv2.0.weight as id 1
2023-06-30 16:39:03,844 - mmseg - INFO - set param backbone.stages.0.conv2.0.bias as id 1
2023-06-30 16:39:03,844 - mmseg - INFO - set param backbone.stages.0.conv2.1.weight as id 1
2023-06-30 16:39:03,844 - mmseg - INFO - set param backbone.stages.0.conv2.1.bias as id 1
2023-06-30 16:39:03,844 - mmseg - INFO - set param backbone.stages.0.act.weight as id 1
2023-06-30 16:39:03,845 - mmseg - INFO - set param backbone.stages.0.act.bn.weight as id 1
2023-06-30 16:39:03,845 - mmseg - INFO - set param backbone.stages.0.act.bn.bias as id 1
2023-06-30 16:39:03,845 - mmseg - INFO - set param backbone.stages.1.conv1.0.weight as id 1
2023-06-30 16:39:03,845 - mmseg - INFO - set param backbone.stages.1.conv1.0.bias as id 1
2023-06-30 16:39:03,845 - mmseg - INFO - set param backbone.stages.1.conv1.1.weight as id 1
2023-06-30 16:39:03,845 - mmseg - INFO - set param backbone.stages.1.conv1.1.bias as id 1
2023-06-30 16:39:03,845 - mmseg - INFO - set param backbone.stages.1.conv2.0.weight as id 1
2023-06-30 16:39:03,845 - mmseg - INFO - set param backbone.stages.1.conv2.0.bias as id 1
2023-06-30 16:39:03,845 - mmseg - INFO - set param backbone.stages.1.conv2.1.weight as id 1
2023-06-30 16:39:03,845 - mmseg - INFO - set param backbone.stages.1.conv2.1.bias as id 1
2023-06-30 16:39:03,846 - mmseg - INFO - set param backbone.stages.1.act.weight as id 1
2023-06-30 16:39:03,846 - mmseg - INFO - set param backbone.stages.1.act.bn.weight as id 1
2023-06-30 16:39:03,846 - mmseg - INFO - set param backbone.stages.1.act.bn.bias as id 1
2023-06-30 16:39:03,846 - mmseg - INFO - set param backbone.stages.2.conv1.0.weight as id 2
2023-06-30 16:39:03,846 - mmseg - INFO - set param backbone.stages.2.conv1.0.bias as id 2
2023-06-30 16:39:03,846 - mmseg - INFO - set param backbone.stages.2.conv1.1.weight as id 2
2023-06-30 16:39:03,846 - mmseg - INFO - set param backbone.stages.2.conv1.1.bias as id 2
2023-06-30 16:39:03,846 - mmseg - INFO - set param backbone.stages.2.conv2.0.weight as id 2
2023-06-30 16:39:03,846 - mmseg - INFO - set param backbone.stages.2.conv2.0.bias as id 2
2023-06-30 16:39:03,846 - mmseg - INFO - set param backbone.stages.2.conv2.1.weight as id 2
2023-06-30 16:39:03,847 - mmseg - INFO - set param backbone.stages.2.conv2.1.bias as id 2
2023-06-30 16:39:03,847 - mmseg - INFO - set param backbone.stages.2.act.weight as id 2
2023-06-30 16:39:03,847 - mmseg - INFO - set param backbone.stages.2.act.bn.weight as id 2
2023-06-30 16:39:03,847 - mmseg - INFO - set param backbone.stages.2.act.bn.bias as id 2
2023-06-30 16:39:03,847 - mmseg - INFO - set param backbone.stages.3.conv1.0.weight as id 2
2023-06-30 16:39:03,847 - mmseg - INFO - set param backbone.stages.3.conv1.0.bias as id 2
2023-06-30 16:39:03,847 - mmseg - INFO - set param backbone.stages.3.conv1.1.weight as id 2
2023-06-30 16:39:03,847 - mmseg - INFO - set param backbone.stages.3.conv1.1.bias as id 2
2023-06-30 16:39:03,848 - mmseg - INFO - set param backbone.stages.3.conv2.0.weight as id 2
2023-06-30 16:39:03,848 - mmseg - INFO - set param backbone.stages.3.conv2.0.bias as id 2
2023-06-30 16:39:03,848 - mmseg - INFO - set param backbone.stages.3.conv2.1.weight as id 2
2023-06-30 16:39:03,848 - mmseg - INFO - set param backbone.stages.3.conv2.1.bias as id 2
2023-06-30 16:39:03,848 - mmseg - INFO - set param backbone.stages.3.act.weight as id 2
2023-06-30 16:39:03,848 - mmseg - INFO - set param backbone.stages.3.act.bn.weight as id 2
2023-06-30 16:39:03,848 - mmseg - INFO - set param backbone.stages.3.act.bn.bias as id 2
2023-06-30 16:39:03,848 - mmseg - INFO - set param backbone.stages.4.conv1.0.weight as id 3
2023-06-30 16:39:03,848 - mmseg - INFO - set param backbone.stages.4.conv1.0.bias as id 3
2023-06-30 16:39:03,848 - mmseg - INFO - set param backbone.stages.4.conv1.1.weight as id 3
2023-06-30 16:39:03,849 - mmseg - INFO - set param backbone.stages.4.conv1.1.bias as id 3
2023-06-30 16:39:03,849 - mmseg - INFO - set param backbone.stages.4.conv2.0.weight as id 3
2023-06-30 16:39:03,849 - mmseg - INFO - set param backbone.stages.4.conv2.0.bias as id 3
2023-06-30 16:39:03,849 - mmseg - INFO - set param backbone.stages.4.conv2.1.weight as id 3
2023-06-30 16:39:03,849 - mmseg - INFO - set param backbone.stages.4.conv2.1.bias as id 3
2023-06-30 16:39:03,849 - mmseg - INFO - set param backbone.stages.4.act.weight as id 3
2023-06-30 16:39:03,849 - mmseg - INFO - set param backbone.stages.4.act.bn.weight as id 3
2023-06-30 16:39:03,849 - mmseg - INFO - set param backbone.stages.4.act.bn.bias as id 3
2023-06-30 16:39:03,849 - mmseg - INFO - set param backbone.stages.5.conv1.0.weight as id 3
2023-06-30 16:39:03,850 - mmseg - INFO - set param backbone.stages.5.conv1.0.bias as id 3
2023-06-30 16:39:03,850 - mmseg - INFO - set param backbone.stages.5.conv1.1.weight as id 3
2023-06-30 16:39:03,850 - mmseg - INFO - set param backbone.stages.5.conv1.1.bias as id 3
2023-06-30 16:39:03,850 - mmseg - INFO - set param backbone.stages.5.conv2.0.weight as id 3
2023-06-30 16:39:03,850 - mmseg - INFO - set param backbone.stages.5.conv2.0.bias as id 3
2023-06-30 16:39:03,850 - mmseg - INFO - set param backbone.stages.5.conv2.1.weight as id 3
2023-06-30 16:39:03,850 - mmseg - INFO - set param backbone.stages.5.conv2.1.bias as id 3
2023-06-30 16:39:03,850 - mmseg - INFO - set param backbone.stages.5.act.weight as id 3
2023-06-30 16:39:03,850 - mmseg - INFO - set param backbone.stages.5.act.bn.weight as id 3
2023-06-30 16:39:03,850 - mmseg - INFO - set param backbone.stages.5.act.bn.bias as id 3
2023-06-30 16:39:03,851 - mmseg - INFO - set param backbone.stages.6.conv1.0.weight as id 4
2023-06-30 16:39:03,851 - mmseg - INFO - set param backbone.stages.6.conv1.0.bias as id 4
2023-06-30 16:39:03,851 - mmseg - INFO - set param backbone.stages.6.conv1.1.weight as id 4
2023-06-30 16:39:03,851 - mmseg - INFO - set param backbone.stages.6.conv1.1.bias as id 4
2023-06-30 16:39:03,851 - mmseg - INFO - set param backbone.stages.6.conv2.0.weight as id 4
2023-06-30 16:39:03,851 - mmseg - INFO - set param backbone.stages.6.conv2.0.bias as id 4
2023-06-30 16:39:03,851 - mmseg - INFO - set param backbone.stages.6.conv2.1.weight as id 4
2023-06-30 16:39:03,851 - mmseg - INFO - set param backbone.stages.6.conv2.1.bias as id 4
2023-06-30 16:39:03,851 - mmseg - INFO - set param backbone.stages.6.act.weight as id 4
2023-06-30 16:39:03,851 - mmseg - INFO - set param backbone.stages.6.act.bn.weight as id 4
2023-06-30 16:39:03,852 - mmseg - INFO - set param backbone.stages.6.act.bn.bias as id 4
2023-06-30 16:39:03,862 - mmseg - INFO - set param backbone.stages.7.conv1.0.weight as id 4
2023-06-30 16:39:03,862 - mmseg - INFO - set param backbone.stages.7.conv1.0.bias as id 4
2023-06-30 16:39:03,862 - mmseg - INFO - set param backbone.stages.7.conv1.1.weight as id 4
2023-06-30 16:39:03,862 - mmseg - INFO - set param backbone.stages.7.conv1.1.bias as id 4
2023-06-30 16:39:03,862 - mmseg - INFO - set param backbone.stages.7.conv2.0.weight as id 4
2023-06-30 16:39:03,862 - mmseg - INFO - set param backbone.stages.7.conv2.0.bias as id 4
2023-06-30 16:39:03,863 - mmseg - INFO - set param backbone.stages.7.conv2.1.weight as id 4
2023-06-30 16:39:03,863 - mmseg - INFO - set param backbone.stages.7.conv2.1.bias as id 4
2023-06-30 16:39:03,863 - mmseg - INFO - set param backbone.stages.7.act.weight as id 4
2023-06-30 16:39:03,863 - mmseg - INFO - set param backbone.stages.7.act.bn.weight as id 4
2023-06-30 16:39:03,863 - mmseg - INFO - set param backbone.stages.7.act.bn.bias as id 4
2023-06-30 16:39:03,863 - mmseg - INFO - set param backbone.stages.8.conv1.0.weight as id 5
2023-06-30 16:39:03,863 - mmseg - INFO - set param backbone.stages.8.conv1.0.bias as id 5
2023-06-30 16:39:03,863 - mmseg - INFO - set param backbone.stages.8.conv1.1.weight as id 5
2023-06-30 16:39:03,863 - mmseg - INFO - set param backbone.stages.8.conv1.1.bias as id 5
2023-06-30 16:39:03,863 - mmseg - INFO - set param backbone.stages.8.conv2.0.weight as id 5
2023-06-30 16:39:03,864 - mmseg - INFO - set param backbone.stages.8.conv2.0.bias as id 5
2023-06-30 16:39:03,864 - mmseg - INFO - set param backbone.stages.8.conv2.1.weight as id 5
2023-06-30 16:39:03,864 - mmseg - INFO - set param backbone.stages.8.conv2.1.bias as id 5
2023-06-30 16:39:03,864 - mmseg - INFO - set param backbone.stages.8.act.weight as id 5
2023-06-30 16:39:03,864 - mmseg - INFO - set param backbone.stages.8.act.bn.weight as id 5
2023-06-30 16:39:03,864 - mmseg - INFO - set param backbone.stages.8.act.bn.bias as id 5
2023-06-30 16:39:03,864 - mmseg - INFO - set param backbone.stages.9.conv1.0.weight as id 5
2023-06-30 16:39:03,864 - mmseg - INFO - set param backbone.stages.9.conv1.0.bias as id 5
2023-06-30 16:39:03,864 - mmseg - INFO - set param backbone.stages.9.conv1.1.weight as id 5
2023-06-30 16:39:03,864 - mmseg - INFO - set param backbone.stages.9.conv1.1.bias as id 5
2023-06-30 16:39:03,865 - mmseg - INFO - set param backbone.stages.9.conv2.0.weight as id 5
2023-06-30 16:39:03,865 - mmseg - INFO - set param backbone.stages.9.conv2.0.bias as id 5
2023-06-30 16:39:03,865 - mmseg - INFO - set param backbone.stages.9.conv2.1.weight as id 5
2023-06-30 16:39:03,865 - mmseg - INFO - set param backbone.stages.9.conv2.1.bias as id 5
2023-06-30 16:39:03,865 - mmseg - INFO - set param backbone.stages.9.act.weight as id 5
2023-06-30 16:39:03,865 - mmseg - INFO - set param backbone.stages.9.act.bn.weight as id 5
2023-06-30 16:39:03,865 - mmseg - INFO - set param backbone.stages.9.act.bn.bias as id 5
2023-06-30 16:39:03,865 - mmseg - INFO - set param backbone.stages.10.conv1.0.weight as id 6
2023-06-30 16:39:03,865 - mmseg - INFO - set param backbone.stages.10.conv1.0.bias as id 6
2023-06-30 16:39:03,866 - mmseg - INFO - set param backbone.stages.10.conv1.1.weight as id 6
2023-06-30 16:39:03,866 - mmseg - INFO - set param backbone.stages.10.conv1.1.bias as id 6
2023-06-30 16:39:03,866 - mmseg - INFO - set param backbone.stages.10.conv2.0.weight as id 6
2023-06-30 16:39:03,866 - mmseg - INFO - set param backbone.stages.10.conv2.0.bias as id 6
2023-06-30 16:39:03,866 - mmseg - INFO - set param backbone.stages.10.conv2.1.weight as id 6
2023-06-30 16:39:03,866 - mmseg - INFO - set param backbone.stages.10.conv2.1.bias as id 6
2023-06-30 16:39:03,866 - mmseg - INFO - set param backbone.stages.10.act.weight as id 6
2023-06-30 16:39:03,866 - mmseg - INFO - set param backbone.stages.10.act.bn.weight as id 6
2023-06-30 16:39:03,866 - mmseg - INFO - set param backbone.stages.10.act.bn.bias as id 6
2023-06-30 16:39:03,866 - mmseg - INFO - set param neck.lateral_convs.0.conv.weight as id 7
2023-06-30 16:39:03,878 - mmseg - INFO - set param neck.lateral_convs.0.conv.bias as id 7
2023-06-30 16:39:03,878 - mmseg - INFO - set param neck.lateral_convs.1.conv.weight as id 7
2023-06-30 16:39:03,878 - mmseg - INFO - set param neck.lateral_convs.1.conv.bias as id 7
2023-06-30 16:39:03,878 - mmseg - INFO - set param neck.lateral_convs.2.conv.weight as id 7
2023-06-30 16:39:03,878 - mmseg - INFO - set param neck.lateral_convs.2.conv.bias as id 7
2023-06-30 16:39:03,878 - mmseg - INFO - set param neck.lateral_convs.3.conv.weight as id 7
2023-06-30 16:39:03,879 - mmseg - INFO - set param neck.lateral_convs.3.conv.bias as id 7
2023-06-30 16:39:03,879 - mmseg - INFO - set param neck.fpn_convs.0.conv.weight as id 7
2023-06-30 16:39:03,879 - mmseg - INFO - set param neck.fpn_convs.0.conv.bias as id 7
2023-06-30 16:39:03,879 - mmseg - INFO - set param neck.fpn_convs.1.conv.weight as id 7
2023-06-30 16:39:03,879 - mmseg - INFO - set param neck.fpn_convs.1.conv.bias as id 7
2023-06-30 16:39:03,879 - mmseg - INFO - set param neck.fpn_convs.2.conv.weight as id 7
2023-06-30 16:39:03,879 - mmseg - INFO - set param neck.fpn_convs.2.conv.bias as id 7
2023-06-30 16:39:03,879 - mmseg - INFO - set param neck.fpn_convs.3.conv.weight as id 7
2023-06-30 16:39:03,879 - mmseg - INFO - set param neck.fpn_convs.3.conv.bias as id 7
2023-06-30 16:39:03,879 - mmseg - INFO - set param decode_head.conv_seg.weight as id 7
2023-06-30 16:39:03,880 - mmseg - INFO - set param decode_head.conv_seg.bias as id 7
2023-06-30 16:39:03,880 - mmseg - INFO - set param decode_head.scale_heads.0.0.conv.weight as id 7
2023-06-30 16:39:03,880 - mmseg - INFO - set param decode_head.scale_heads.0.0.bn.weight as id 7
2023-06-30 16:39:03,880 - mmseg - INFO - set param decode_head.scale_heads.0.0.bn.bias as id 7
2023-06-30 16:39:03,880 - mmseg - INFO - set param decode_head.scale_heads.1.0.conv.weight as id 7
2023-06-30 16:39:03,880 - mmseg - INFO - set param decode_head.scale_heads.1.0.bn.weight as id 7
2023-06-30 16:39:03,880 - mmseg - INFO - set param decode_head.scale_heads.1.0.bn.bias as id 7
2023-06-30 16:39:03,880 - mmseg - INFO - set param decode_head.scale_heads.2.0.conv.weight as id 7
2023-06-30 16:39:03,880 - mmseg - INFO - set param decode_head.scale_heads.2.0.bn.weight as id 7
2023-06-30 16:39:03,880 - mmseg - INFO - set param decode_head.scale_heads.2.0.bn.bias as id 7
2023-06-30 16:39:03,881 - mmseg - INFO - set param decode_head.scale_heads.2.2.conv.weight as id 7
2023-06-30 16:39:03,881 - mmseg - INFO - set param decode_head.scale_heads.2.2.bn.weight as id 7
2023-06-30 16:39:03,881 - mmseg - INFO - set param decode_head.scale_heads.2.2.bn.bias as id 7
2023-06-30 16:39:03,881 - mmseg - INFO - set param decode_head.scale_heads.3.0.conv.weight as id 7
2023-06-30 16:39:03,881 - mmseg - INFO - set param decode_head.scale_heads.3.0.bn.weight as id 7
2023-06-30 16:39:03,881 - mmseg - INFO - set param decode_head.scale_heads.3.0.bn.bias as id 7
2023-06-30 16:39:03,881 - mmseg - INFO - set param decode_head.scale_heads.3.2.conv.weight as id 7
2023-06-30 16:39:03,881 - mmseg - INFO - set param decode_head.scale_heads.3.2.bn.weight as id 7
2023-06-30 16:39:03,881 - mmseg - INFO - set param decode_head.scale_heads.3.2.bn.bias as id 7
2023-06-30 16:39:03,882 - mmseg - INFO - set param decode_head.scale_heads.3.4.conv.weight as id 7
2023-06-30 16:39:03,882 - mmseg - INFO - set param decode_head.scale_heads.3.4.bn.weight as id 7
2023-06-30 16:39:03,882 - mmseg - INFO - set param decode_head.scale_heads.3.4.bn.bias as id 7
2023-06-30 16:39:03,882 - mmseg - INFO - Param groups = {
"layer_0_decay": {
"param_names": [
"backbone.stem1.0.weight",
"backbone.stem2.0.weight",
"backbone.stem2.2.weight"
],
"lr_scale": 0.027993599999999993,
"lr": 3.639167999999999e-06,
"weight_decay": 0.05
},
"layer_0_no_decay": {
"param_names": [
"backbone.stem1.0.bias",
"backbone.stem1.1.weight",
"backbone.stem1.1.bias",
"backbone.stem2.0.bias",
"backbone.stem2.1.weight",
"backbone.stem2.1.bias",
"backbone.stem2.2.bn.weight",
"backbone.stem2.2.bn.bias"
],
"lr_scale": 0.027993599999999993,
"lr": 3.639167999999999e-06,
"weight_decay": 0.0
},
"layer_1_decay": {
"param_names": [
"backbone.stages.0.conv1.0.weight",
"backbone.stages.0.conv2.0.weight",
"backbone.stages.0.act.weight",
"backbone.stages.1.conv1.0.weight",
"backbone.stages.1.conv2.0.weight",
"backbone.stages.1.act.weight"
],
"lr_scale": 0.04665599999999999,
"lr": 6.065279999999998e-06,
"weight_decay": 0.05
},
"layer_1_no_decay": {
"param_names": [
"backbone.stages.0.conv1.0.bias",
"backbone.stages.0.conv1.1.weight",
"backbone.stages.0.conv1.1.bias",
"backbone.stages.0.conv2.0.bias",
"backbone.stages.0.conv2.1.weight",
"backbone.stages.0.conv2.1.bias",
"backbone.stages.0.act.bn.weight",
"backbone.stages.0.act.bn.bias",
"backbone.stages.1.conv1.0.bias",
"backbone.stages.1.conv1.1.weight",
"backbone.stages.1.conv1.1.bias",
"backbone.stages.1.conv2.0.bias",
"backbone.stages.1.conv2.1.weight",
"backbone.stages.1.conv2.1.bias",
"backbone.stages.1.act.bn.weight",
"backbone.stages.1.act.bn.bias"
],
"lr_scale": 0.04665599999999999,
"lr": 6.065279999999998e-06,
"weight_decay": 0.0
},
"layer_2_decay": {
"param_names": [
"backbone.stages.2.conv1.0.weight",
"backbone.stages.2.conv2.0.weight",
"backbone.stages.2.act.weight",
"backbone.stages.3.conv1.0.weight",
"backbone.stages.3.conv2.0.weight",
"backbone.stages.3.act.weight"
],
"lr_scale": 0.07775999999999998,
"lr": 1.0108799999999997e-05,
"weight_decay": 0.05
},
"layer_2_no_decay": {
"param_names": [
"backbone.stages.2.conv1.0.bias",
"backbone.stages.2.conv1.1.weight",
"backbone.stages.2.conv1.1.bias",
"backbone.stages.2.conv2.0.bias",
"backbone.stages.2.conv2.1.weight",
"backbone.stages.2.conv2.1.bias",
"backbone.stages.2.act.bn.weight",
"backbone.stages.2.act.bn.bias",
"backbone.stages.3.conv1.0.bias",
"backbone.stages.3.conv1.1.weight",
"backbone.stages.3.conv1.1.bias",
"backbone.stages.3.conv2.0.bias",
"backbone.stages.3.conv2.1.weight",
"backbone.stages.3.conv2.1.bias",
"backbone.stages.3.act.bn.weight",
"backbone.stages.3.act.bn.bias"
],
"lr_scale": 0.07775999999999998,
"lr": 1.0108799999999997e-05,
"weight_decay": 0.0
},
"layer_3_decay": {
"param_names": [
"backbone.stages.4.conv1.0.weight",
"backbone.stages.4.conv2.0.weight",
"backbone.stages.4.act.weight",
"backbone.stages.5.conv1.0.weight",
"backbone.stages.5.conv2.0.weight",
"backbone.stages.5.act.weight"
],
"lr_scale": 0.1296,
"lr": 1.6848e-05,
"weight_decay": 0.05
},
"layer_3_no_decay": {
"param_names": [
"backbone.stages.4.conv1.0.bias",
"backbone.stages.4.conv1.1.weight",
"backbone.stages.4.conv1.1.bias",
"backbone.stages.4.conv2.0.bias",
"backbone.stages.4.conv2.1.weight",
"backbone.stages.4.conv2.1.bias",
"backbone.stages.4.act.bn.weight",
"backbone.stages.4.act.bn.bias",
"backbone.stages.5.conv1.0.bias",
"backbone.stages.5.conv1.1.weight",
"backbone.stages.5.conv1.1.bias",
"backbone.stages.5.conv2.0.bias",
"backbone.stages.5.conv2.1.weight",
"backbone.stages.5.conv2.1.bias",
"backbone.stages.5.act.bn.weight",
"backbone.stages.5.act.bn.bias"
],
"lr_scale": 0.1296,
"lr": 1.6848e-05,
"weight_decay": 0.0
},
"layer_4_decay": {
"param_names": [
"backbone.stages.6.conv1.0.weight",
"backbone.stages.6.conv2.0.weight",
"backbone.stages.6.act.weight",
"backbone.stages.7.conv1.0.weight",
"backbone.stages.7.conv2.0.weight",
"backbone.stages.7.act.weight"
],
"lr_scale": 0.21599999999999997,
"lr": 2.8079999999999992e-05,
"weight_decay": 0.05
},
"layer_4_no_decay": {
"param_names": [
"backbone.stages.6.conv1.0.bias",
"backbone.stages.6.conv1.1.weight",
"backbone.stages.6.conv1.1.bias",
"backbone.stages.6.conv2.0.bias",
"backbone.stages.6.conv2.1.weight",
"backbone.stages.6.conv2.1.bias",
"backbone.stages.6.act.bn.weight",
"backbone.stages.6.act.bn.bias",
"backbone.stages.7.conv1.0.bias",
"backbone.stages.7.conv1.1.weight",
"backbone.stages.7.conv1.1.bias",
"backbone.stages.7.conv2.0.bias",
"backbone.stages.7.conv2.1.weight",
"backbone.stages.7.conv2.1.bias",
"backbone.stages.7.act.bn.weight",
"backbone.stages.7.act.bn.bias"
],
"lr_scale": 0.21599999999999997,
"lr": 2.8079999999999992e-05,
"weight_decay": 0.0
},
"layer_5_decay": {
"param_names": [
"backbone.stages.8.conv1.0.weight",
"backbone.stages.8.conv2.0.weight",
"backbone.stages.8.act.weight",
"backbone.stages.9.conv1.0.weight",
"backbone.stages.9.conv2.0.weight",
"backbone.stages.9.act.weight"
],
"lr_scale": 0.36,
"lr": 4.679999999999999e-05,
"weight_decay": 0.05
},
"layer_5_no_decay": {
"param_names": [
"backbone.stages.8.conv1.0.bias",
"backbone.stages.8.conv1.1.weight",
"backbone.stages.8.conv1.1.bias",
"backbone.stages.8.conv2.0.bias",
"backbone.stages.8.conv2.1.weight",
"backbone.stages.8.conv2.1.bias",
"backbone.stages.8.act.bn.weight",
"backbone.stages.8.act.bn.bias",
"backbone.stages.9.conv1.0.bias",
"backbone.stages.9.conv1.1.weight",
"backbone.stages.9.conv1.1.bias",
"backbone.stages.9.conv2.0.bias",
"backbone.stages.9.conv2.1.weight",
"backbone.stages.9.conv2.1.bias",
"backbone.stages.9.act.bn.weight",
"backbone.stages.9.act.bn.bias"
],
"lr_scale": 0.36,
"lr": 4.679999999999999e-05,
"weight_decay": 0.0
},
"layer_6_decay": {
"param_names": [
"backbone.stages.10.conv1.0.weight",
"backbone.stages.10.conv2.0.weight",
"backbone.stages.10.act.weight"
],
"lr_scale": 0.6,
"lr": 7.799999999999999e-05,
"weight_decay": 0.05
},
"layer_6_no_decay": {
"param_names": [
"backbone.stages.10.conv1.0.bias",
"backbone.stages.10.conv1.1.weight",
"backbone.stages.10.conv1.1.bias",
"backbone.stages.10.conv2.0.bias",
"backbone.stages.10.conv2.1.weight",
"backbone.stages.10.conv2.1.bias",
"backbone.stages.10.act.bn.weight",
"backbone.stages.10.act.bn.bias"
],
"lr_scale": 0.6,
"lr": 7.799999999999999e-05,
"weight_decay": 0.0
},
"layer_7_decay": {
"param_names": [
"neck.lateral_convs.0.conv.weight",
"neck.lateral_convs.1.conv.weight",
"neck.lateral_convs.2.conv.weight",
"neck.lateral_convs.3.conv.weight",
"neck.fpn_convs.0.conv.weight",
"neck.fpn_convs.1.conv.weight",
"neck.fpn_convs.2.conv.weight",
"neck.fpn_convs.3.conv.weight",
"decode_head.conv_seg.weight",
"decode_head.scale_heads.0.0.conv.weight",
"decode_head.scale_heads.1.0.conv.weight",
"decode_head.scale_heads.2.0.conv.weight",
"decode_head.scale_heads.2.2.conv.weight",
"decode_head.scale_heads.3.0.conv.weight",
"decode_head.scale_heads.3.2.conv.weight",
"decode_head.scale_heads.3.4.conv.weight"
],
"lr_scale": 1.0,
"lr": 0.00013,
"weight_decay": 0.05
},
"layer_7_no_decay": {
"param_names": [
"neck.lateral_convs.0.conv.bias",
"neck.lateral_convs.1.conv.bias",
"neck.lateral_convs.2.conv.bias",
"neck.lateral_convs.3.conv.bias",
"neck.fpn_convs.0.conv.bias",
"neck.fpn_convs.1.conv.bias",
"neck.fpn_convs.2.conv.bias",
"neck.fpn_convs.3.conv.bias",
"decode_head.conv_seg.bias",
"decode_head.scale_heads.0.0.bn.weight",
"decode_head.scale_heads.0.0.bn.bias",
"decode_head.scale_heads.1.0.bn.weight",
"decode_head.scale_heads.1.0.bn.bias",
"decode_head.scale_heads.2.0.bn.weight",
"decode_head.scale_heads.2.0.bn.bias",
"decode_head.scale_heads.2.2.bn.weight",
"decode_head.scale_heads.2.2.bn.bias",
"decode_head.scale_heads.3.0.bn.weight",
"decode_head.scale_heads.3.0.bn.bias",
"decode_head.scale_heads.3.2.bn.weight",
"decode_head.scale_heads.3.2.bn.bias",
"decode_head.scale_heads.3.4.bn.weight",
"decode_head.scale_heads.3.4.bn.bias"
],
"lr_scale": 1.0,
"lr": 0.00013,
"weight_decay": 0.0
}
}
2023-06-30 16:39:03,896 - mmseg - INFO - Loaded 178 images
2023-06-30 16:39:03,897 - mmseg - INFO - Start running, host: admin@DESKTOP-DS4MTUV, work_dir: E:\zbl\mmsegmentation-0.23.0\tools\logs_vanillanet\13
2023-06-30 16:39:03,897 - mmseg - INFO - Hooks will be executed in the following order:
before_run:
(VERY_HIGH ) StepLrUpdaterHook
(NORMAL ) CheckpointHook
(LOW ) EvalHook
(VERY_LOW ) TextLoggerHook
before_train_epoch:
(VERY_HIGH ) StepLrUpdaterHook
(LOW ) IterTimerHook
(LOW ) EvalHook
(VERY_LOW ) TextLoggerHook
before_train_iter:
(VERY_HIGH ) StepLrUpdaterHook
(LOW ) IterTimerHook
(LOW ) EvalHook
after_train_iter:
(ABOVE_NORMAL) OptimizerHook
(NORMAL ) CheckpointHook
(LOW ) IterTimerHook
(LOW ) EvalHook
(VERY_LOW ) TextLoggerHook
after_train_epoch:
(NORMAL ) CheckpointHook
(LOW ) EvalHook
(VERY_LOW ) TextLoggerHook
before_val_epoch:
(LOW ) IterTimerHook
(VERY_LOW ) TextLoggerHook
before_val_iter: (LOW ) IterTimerHook
after_val_iter: (LOW ) IterTimerHook
after_val_epoch: (VERY_LOW ) TextLoggerHook
after_run: (VERY_LOW ) TextLoggerHook
2023-06-30 16:39:03,898 - mmseg - INFO - workflow: [('train', 1), ('val', 1)], max: 20000 iters 2023-06-30 16:39:03,898 - mmseg - INFO - Checkpoints will be saved to E:\zbl\mmsegmentation-0.23.0\tools\logs_vanillanet\13 by HardDiskBackend. 2023-06-30 16:40:00,779 - mmseg - INFO - Iter [20/20000] lr: 1.418e-07, eta: 5:18:40, time: 0.957, data_time: 0.008, memory: 21203, decode.loss_ce: 0.5422, decode.acc_seg: 39.8719, loss: 0.5422 2023-06-30 16:40:40,739 - mmseg - INFO - Iter [40/20000] lr: 2.872e-07, eta: 5:19:25, time: 0.963, data_time: 0.007, memory: 21203, decode.loss_ce: 0.7923, decode.acc_seg: 47.3142, loss: 0.7923 2023-06-30 16:41:21,888 - mmseg - INFO - Iter [60/20000] lr: 4.326e-07, eta: 5:20:22, time: 0.972, data_time: 0.009, memory: 21203, decode.loss_ce: 0.8685, decode.acc_seg: 57.3759, loss: 0.8685
你可以参考这个config的写法https://github.com/huawei-noah/VanillaNet/blob/main/object_detection/configs/vanillanet/mask_rcnn_vanillanet_13_mstrain_480-1024_adamw.py#L26,把init_cfg=dict(type='Pretrained', checkpoint=checkpoint_file)) 放到 backbone的dict中。
非常感谢您之前的回复!您的网络效果很不错! 想问一句,将预训练权重放在 backbone的dict与其他加载预训练的方式有什么区别吗? 为什么放在dict里就好使了? 期待回复!
没有区别,只是我用的mmdet的版本他们把接口放在了dict里面,我只是调用他们的接口,当然你也可以自己写一个去load ckpt,都是没有区别的。
norm_cfg = dict(type='BN', requires_grad=True) model = dict( type='EncoderDecoder', backbone=dict( delete=True, type='Vanillanet', act_num=3, dims=[512, 512, 1024, 2048, 2048, 2048, 2048, 2048, 2048, 4096, 4096], strides=[1, 2, 2, 1, 1, 1, 1, 1, 2, 1], out_indices=[1, 2, 8, 9], norm_cfg=dict(type='BN', requires_grad=True), with_extra_norm=True), neck=dict( type='FPN', in_channels=[512, 1024, 2048, 4096], out_channels=1024, num_outs=4), decode_head=dict( type='SegformerHead', in_channels=[128, 256, 512, 1024], in_index=[0, 1, 2, 3], channels=512, dropout_ratio=0.1, num_classes=2, norm_cfg=dict(type='BN', requires_grad=True), align_corners=False, loss_decode=dict( type='CrossEntropyLoss', use_sigmoid=True, loss_weight=1.0)), train_cfg=dict(), test_cfg=dict(mode='whole')) dataset_type = 'WaterDataset' data_root = 'E:\zbl\pic\segformer-pytorch-master\VOCdevkit\zbl' img_norm_cfg = dict( mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) crop_size = (512, 512) train_pipeline = [ dict(type='LoadImageFromFile'), dict(type='LoadAnnotations', reduce_zero_label=False), dict(type='Resize', img_scale=(512, 512), ratio_range=(0.5, 2.0)), dict(type='RandomCrop', crop_size=(512, 512), cat_max_ratio=0.75), dict(type='RandomFlip', prob=0.5), dict(type='PhotoMetricDistortion'), dict( type='Normalize', mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True), dict(type='Pad', size=(512, 512), pad_val=0, seg_pad_val=255), dict(type='DefaultFormatBundle'), dict(type='Collect', keys=['img', 'gt_semantic_seg']) ] test_pipeline = [ dict(type='LoadImageFromFile'), dict( type='MultiScaleFlipAug', img_scale=(512, 512), flip=False, transforms=[ dict(type='Resize', keep_ratio=True), dict(type='RandomFlip'), dict( type='Normalize', mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True), dict(type='ImageToTensor', keys=['img']), dict(type='Collect', keys=['img']) ]) ] data = dict( samples_per_gpu=8, workers_per_gpu=2, train=dict( type='WaterDataset', data_root='E:\zbl\pic\segformer-pytorch-master\VOCdevkit\zbl', img_dir='JPEGImages', ann_dir='SegmentationClass', split='ImageSets/Segmentation/train.txt', pipeline=[ dict(type='LoadImageFromFile'), dict(type='LoadAnnotations', reduce_zero_label=False), dict(type='Resize', img_scale=(512, 512), ratio_range=(0.5, 2.0)), dict(type='RandomCrop', crop_size=(512, 512), cat_max_ratio=0.75), dict(type='RandomFlip', prob=0.5), dict(type='PhotoMetricDistortion'), dict( type='Normalize', mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True), dict(type='Pad', size=(512, 512), pad_val=0, seg_pad_val=255), dict(type='DefaultFormatBundle'), dict(type='Collect', keys=['img', 'gt_semantic_seg']) ]), val=dict( type='WaterDataset', data_root='E:\zbl\pic\segformer-pytorch-master\VOCdevkit\zbl', img_dir='JPEGImages', ann_dir='SegmentationClass', split='ImageSets/Segmentation/val.txt', pipeline=[ dict(type='LoadImageFromFile'), dict( type='MultiScaleFlipAug', img_scale=(512, 512), flip=False, transforms=[ dict(type='Resize', keep_ratio=True), dict(type='RandomFlip'), dict( type='Normalize', mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True), dict(type='ImageToTensor', keys=['img']), dict(type='Collect', keys=['img']) ]) ]), test=dict( type='WaterDataset', data_root='E:\zbl\pic\segformer-pytorch-master\VOCdevkit\zbl', img_dir='JPEGImages', ann_dir='SegmentationClass', split='ImageSets/Segmentation/val.txt', pipeline=[ dict(type='LoadImageFromFile'), dict( type='MultiScaleFlipAug', img_scale=(512, 512), flip=False, transforms=[ dict(type='Resize', keep_ratio=True), dict(type='RandomFlip'), dict( type='Normalize', mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True), dict(type='ImageToTensor', keys=['img']), dict(type='Collect', keys=['img']) ]) ])) log_config = dict( interval=50, hooks=[dict(type='TextLoggerHook', by_epoch=False)]) dist_params = dict(backend='nccl') log_level = 'INFO' load_from = 'E:\zbl\mmsegmentation-0.23.0\pretrain\vanillanet_12.pth' resume_from = None workflow = [('train', 1), ('val', 1)] cudnn_benchmark = True optimizer = dict( constructor='LearningRateDecayOptimizerConstructor', type='AdamW', lr=0.00013, betas=(0.9, 0.999), weight_decay=0.05, paramwise_cfg=dict(decay_rate=0.6, decay_type='layer_wise', num_layers=6)) optimizer_config = dict(grad_clip=None) lr_config = dict( policy='step', warmup='linear', warmup_iters=500, warmup_ratio=0.001, step=[15000, 20000]) runner = dict(type='IterBasedRunner', max_iters=20000) checkpoint_config = dict(by_epoch=False, interval=2000) evaluation = dict(interval=2000, metric='mIoU') work_dir = 'logs_vanillanet/pretrain_12' gpu_ids = [0] auto_resume = False
报错信息 Traceback (most recent call last): File "E:/zbl/mmsegmentation-0.23.0/tools/train.py", line 244, in
main()
File "E:/zbl/mmsegmentation-0.23.0/tools/train.py", line 233, in main
train_segmentor(
File "E:\zbl\mmsegmentation-0.23.0\mmseg\apis\train.py", line 174, in train_segmentor
runner.run(data_loaders, cfg.workflow)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\mmcv\runner\iter_based_runner.py", line 134, in run
iter_runner(iter_loaders[i], kwargs)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\mmcv\runner\iter_based_runner.py", line 61, in train
outputs = self.model.train_step(data_batch, self.optimizer, kwargs)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\mmcv\parallel\data_parallel.py", line 75, in train_step
return self.module.train_step(inputs[0], kwargs[0])
File "E:\zbl\mmsegmentation-0.23.0\mmseg\models\segmentors\base.py", line 138, in train_step
losses = self(data_batch)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\torch\nn\modules\module.py", line 1102, in _call_impl
return forward_call(input, kwargs)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\mmcv\runner\fp16_utils.py", line 110, in new_func
return old_func(args, kwargs)
File "E:\zbl\mmsegmentation-0.23.0\mmseg\models\segmentors\base.py", line 108, in forward
return self.forward_train(img, img_metas, kwargs)
File "E:\zbl\mmsegmentation-0.23.0\mmseg\models\segmentors\encoder_decoder.py", line 139, in forward_train
x = self.extract_feat(img)
File "E:\zbl\mmsegmentation-0.23.0\mmseg\models\segmentors\encoder_decoder.py", line 67, in extract_feat
x = self.neck(x)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\torch\nn\modules\module.py", line 1102, in _call_impl
return forward_call(input, kwargs)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\mmcv\runner\fp16_utils.py", line 110, in new_func
return old_func(*args, kwargs)
File "E:\zbl\mmsegmentation-0.23.0\mmseg\models\necks\fpn.py", line 167, in forward
laterals = [
File "E:\zbl\mmsegmentation-0.23.0\mmseg\models\necks\fpn.py", line 168, in
lateral_conv(inputs[i + self.start_level])
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\torch\nn\modules\module.py", line 1102, in _call_impl
return forward_call(*input, *kwargs)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\mmcv\cnn\bricks\conv_module.py", line 201, in forward
x = self.conv(x)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\torch\nn\modules\module.py", line 1102, in _call_impl
return forward_call(input, kwargs)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\torch\nn\modules\conv.py", line 446, in forward
return self._conv_forward(input, self.weight, self.bias)
File "D:\Anaconda3.0\envs\nextvit\lib\site-packages\torch\nn\modules\conv.py", line 442, in _conv_forward
return F.conv2d(input, weight, bias, self.stride,
RuntimeError: Given groups=1, weight of size [1024, 512, 1, 1], expected input[8, 1024, 64, 64] to have 512 channels, but got 1024 channels instead
进程已结束,退出代码1
试验了vanillanet12和vanillanet13,都报同样的错
期望尽快解答!感谢!