MMDet与TorchVision同骨干网络收敛差异问题排查求助
排查MMDet骨干网络收敛问题的实用步骤
一、核查数据预处理细节
- 对比MMDet与TorchVision的归一化参数:MMDet默认的
img_norm_cfg基于原始像素值(0-255)的均值方差,而TorchVision的归一化是先将像素值除以255后再用[0.485, 0.456, 0.406]和[0.229, 0.224, 0.225],需确认两者逻辑完全一致。示例对齐配置:# 匹配TorchVision的归一化逻辑 img_norm_cfg = dict( mean=[0.485 * 255, 0.456 * 255, 0.406 * 255], std=[0.229 * 255, 0.224 * 255, 0.225 * 255], to_rgb=True) - 检查图像resize、裁剪等操作参数:确认MMDet的
Resize组件的keep_ratio、插值方法(interpolation),以及随机翻转、裁剪等增强的概率、范围与TorchVision完全匹配。 - 验证标签处理逻辑:检查MMDet数据集的标签索引是否从0开始(与TorchVision一致),排除标签偏移或映射错误。
二、检查损失函数与优化器配置
- 对齐损失函数参数:MMDet的
CrossEntropyLoss默认可能开启标签平滑(label_smooth)或设置类别权重,而TorchVision默认无这些配置,需手动关闭或对齐;同时确认损失的reduction方式(mean/sum)一致。 - 核查优化器细节:
- 统一权重衰减范围:MMDet默认的
paramwise_cfg会排除BN层和bias的权重衰减,而TorchVision默认对所有参数应用衰减,需调整配置对齐:# 关闭MMDet的参数级权重衰减排除 optimizer = dict( type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001, paramwise_cfg=None) - 匹配学习率调度:检查MMDet的warmup设置(
warmup_iters、warmup_ratio)、CosineAnnealingLR的T_max等参数是否与TorchVision一致;若TorchVision未使用warmup,需关闭MMDet的对应配置。 - 检查梯度裁剪:MMDet默认可能开启梯度裁剪(
grad_clip),若TorchVision未开启,需关闭该配置消除差异。
- 统一权重衰减范围:MMDet默认的
三、验证骨干网络初始化与结构细节
- 统一初始化逻辑:即使网络结构一致,MMDet与TorchVision的权重初始化方法可能不同(如ResNet的卷积层、BN层初始化),需显式指定初始化方式对齐:
backbone=dict( type='ResNet', depth=50, init_cfg=dict(type='Kaiming', layer='Conv2d', a=math.sqrt(5)) ) - 排查SwinTransformer特殊初始化:MMDet的Swin实现对位置编码、注意力层的初始化逻辑可能与TorchVision不同,若未加载预训练权重,需手动调整初始化参数匹配TorchVision逻辑。
四、训练流程与数值精度检查
- 确认batch size一致性:检查MMDet的
samples_per_gpu× GPU数量是否等于TorchVision的batch size,避免多GPU设置导致的实际batch size差异;排查是否开启梯度累积(accumulation_steps),若TorchVision未使用则关闭。 - 关闭自动混合精度:MMDet默认可能开启AMP(自动混合精度),而TorchVision未开启,这会导致数值精度差异,可关闭AMP重试:
optimizer_config = dict(grad_clip=None, type='OptimizerHook', coalesce=True, bucket_size_mb=-1, use_fp16=False) - 监控梯度与损失组成:
- 打印骨干网络关键层的梯度范数,对比MMDet与TorchVision的梯度分布,排查梯度消失或异常情况。
- 拆解总损失的组成部分(如分类损失、辅助损失),确认是否存在某一分支损失占比过高导致主损失无法下降。
五、环境与版本相关检查
- 升级到稳定版本:尝试将MMCV/MMDet升级到最新稳定版本,排查是否存在已知的初始化或训练流程bug。
- 对齐底层依赖版本:确保MMDet与TorchVision使用的PyTorch、CUDA版本一致,避免底层算子差异导致的训练行为不同。
内容的提问来源于stack exchange,提问作者user28432806
相关产品推荐
相关产品推荐

