[论文解读] Partial Convolution based Padding
本文提出一种名为部分卷积基础填充的就地填充方案,它将填充区域视为孔洞,并重新加权卷积输出以考虑缺失数据,从而提升 ImageNet 精度和边界区域分割的稳定性。
In this paper, we present a simple yet effective padding scheme that can be used as a drop-in module for existing convolutional neural networks. We call it partial convolution based padding, with the intuition that the padded region can be treated as holes and the original input as non-holes. Specifically, during the convolution operation, the convolution results are re-weighted near image borders based on the ratios between the padded area and the convolution sliding window area. Extensive experiments with various deep network models on ImageNet classification and semantic segmentation demonstrate that the proposed padding scheme consistently outperforms standard zero padding with better accuracy.
研究动机与目标
- 在图像边界处动机并解决标准填充方案(零填充、对称填充、复制填充)的不足。
- 提出一种利用部分卷积概念仅以有效输入为条件来输出卷积结果的填充方法。
- 证明所提填充在 ImageNet 上对多种 CNN 架构的准确性和收敛性有提升。
- 展示在推理阶段对填充类型的鲁棒性以及在边界区域分割任务中的改进。
提出的方法
- 将填充定义为边界孔洞,并应用部分卷积重加权,通过滑动窗口中有效输入与总输入的比值来调整卷积输出。
- 使用重加权因子 r(i,j) = ||1_p1(i,j)||1 / ||M_p0(i,j)||1,在填充引入缺失数据时对卷积进行缩放。
- 在每次卷积后更新掩码,以标记至少有一个有效输入作为条件的位置。
- 解释当 r(i,j) = 1 时,零填充是基于部分卷积填充的一个特例。
- 提供一个纯 PyTorch 实现,在第一轮迭代后缓存重加权因子以提高效率。
- 演示如何通过在各层传播和更新掩码来将部分卷积扩展到较大的填充尺寸。
实验结果
研究问题
- RQ1用基于部分卷积的填充替代零填充是否能在 ImageNet 和 CityScapes 上提升各 CNN 架构的准确性?
- RQ2在推理阶段对填充类型的变化,基于部分卷积的填充是否具有鲁棒性?
- RQ3面向边界的重新加权如何影响接近图像边界的分割性能?
- RQ4与标准填充方案相比,使用基于部分卷积的填充对收敛性和稳定性有哪些影响?
主要发现
- 基于部分卷积的填充在 ImageNet 的 VGG 和 ResNet 家族上,验证集准确性持续优于零填充。
- 对于 VGG19 和 ResNet50 的提升尤其明显(在报告的运行中 top-1 提升约为 0.32–0.68%。)
- 基于部分卷积的填充比零填充具有更小的性能方差(更低的标准差),表明鲁棒性更强。
- 采用基于部分卷积的填充的模型比其零填充对应物更快收敛到相当或更高的准确性。
- 在语义分割(Cityscapes 的 DeepLabV3+)中,基于部分卷积的填充提升了 ResNet50 和 WideResNet38 主干的 mIOU, Tile-based 评估相对于常规评估还显示额外的提升,尤其在边界区域。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。