最近我在Hugging Face上发布了一组经过特殊训练的ResNet模型,这些模型采用了全新的训练方法。具体来说,我将MobileNet-v4 Conv Small和ResNet Strikes Back的最新超参数配置应用到了基础块结构的ResNet-18和34上,包括V2(预激活)变体。结果令人惊喜——ResNet-18达到了73-74%的准确率,ResNet-34更是达到了77-78%的top-1准确率。
提示:这些新模型在更高分辨率下表现尤为出色,展现了优秀的尺度扩展能力。
让我们先看看这些模型在标准224x224输入分辨率下的表现:
| 模型名称 | 输入尺寸 | Top-1准确率 | Top-5准确率 | 参数量(百万) |
|---|---|---|---|---|
| resnet50d.ra4_e3600_r224_in1k | 224 | 80.958 | 95.372 | 25.58 |
| resnet50.tv2_in1k | 224 | 80.856 | 95.432 | 25.56 |
| resnetv2_34d.ra4_e3600_r224_in1k | 224 | 78.268 | 93.956 | 21.82 |
| resnet34.ra4_e3600_r224_in1k | 224 | 77.448 | 93.502 | 21.8 |
| resnetv2_18d.ra4_e3600_r224_in1k | 224 | 74.412 | 91.928 | 11.71 |
从表格中可以清楚地看到,采用新训练方法的模型(ra4后缀)相比传统训练方法(tv2、a1等后缀)有显著提升。特别是ResNet-34变体,准确率提升了约1-2个百分点,这在计算机视觉领域已经是相当可观的进步。
更有趣的是这些模型在高分辨率下的表现:
| 模型名称 | 输入尺寸 | Top-1准确率 | Top-5准确率 | 参数量(百万) |
|---|---|---|---|---|
| resnet50d.ra4_e3600_r224_in1k | 288 | 81.812 | 95.912 | 25.58 |
| resnet50d.a1_in1k | 288 | 81.4 | 95.216 | 25.58 |
| resnetv2_34d.ra4_e3600_r224_in1k | 288 | 79.59 | 94.77 | 21.82 |
| resnet34.ra4_e3600_r224_in1k | 288 | 78.952 | 94.45 | 21.8 |
| resnetv2_18d.ra4_e3600_r224_in1k | 288 | 76.044 | 93.02 | 11.71 |
高分辨率下的性能提升更为明显,特别是ra4系列的模型,这表明新的训练方法使模型具备了更好的尺度适应性。相比之下,传统方法训练的模型在高分辨率下的提升幅度较小,有些甚至已经过了性能峰值。
这次实验采用了来自MobileNet-v4 Conv Small和ResNet Strikes Back的最新超参数组合。关键配置包括:
注意:虽然训练周期看起来很长(3600个epoch),但实际上采用了渐进式分辨率训练策略,早期使用较小分辨率,逐步增大,这大大提高了训练效率。
除了训练方法的创新,这些模型还包含一些架构上的调整:
这些改进虽然看似微小,但累积起来对模型性能有显著影响,特别是在高分辨率输入时。
根据实际需求,我建议:
在实际部署这些模型时,可以考虑以下优化:
在复现这些结果时,可能会遇到训练不稳定的问题。我的建议是:
当将这些预训练模型用于其他任务时:
虽然这些模型性能优异,但训练它们需要相当的资源:
基于目前的实验结果,我认为有几个值得探索的方向:
这些新训练的ResNet模型证明了经典架构仍有很大潜力可挖。通过精心设计的训练策略和适度的架构调整,我们可以在不显著增加计算成本的情况下获得显著的性能提升。