为什么随机挖点挡不住卷积网络:DropBlock的遮挡机制与训练日程 | xkmchenmu Blog

为什么随机挖点挡不住卷积网络:DropBlock的遮挡机制与训练日程

卷积特征具有空间冗余,随机丢弃单点常被邻居轻易补回。本文从掩码采样、有效种子区域、保留率日程到残差网络落点,给出DropBlock可复核的实现逻辑。

正则方式 被隐藏的对象 网络还能怎样绕开
普通Dropout 彼此独立的激活点 从相邻位置读取高度相关信息
通道丢弃 整张特征通道 依靠其他通道补偿,扰动可能过强
DropPath 完整分支或计算路径 只适合存在多分支的结构
DropBlock 每张特征图上的连续方块 必须转向空间上更远的证据

问题不在丢得少,而在丢得太零散

全连接层的单元没有明确空间邻接,随机关闭一个单元能够切断一条独立信息通道。卷积层不同:同一物体边缘会同时激活附近多个位置,一个点被清零后,邻居仍可能携带几乎相同的语义。训练损失看似加入噪声,模型实际并未失去关键证据,正则作用自然有限。

DropBlock把扰动从散点改成连续区域。当一个方块覆盖物体局部,分类器不能只依赖最显眼的一小块,而要从其他位置寻找证据。它与输入端Cutout有亲缘关系,但操作发生在网络内部的特征图,因而能作用于不同层级和不同抽象程度的表示。

为什么随机挖点挡不住卷积网络:DropBlock的遮挡机制与训练日程 - 散点与连续遮挡

掩码生成要处理边界和重叠

实现时并不是在任意像素选中中心,再粗暴向四周扩张。若方块必须完整落在特征图内,种子只能从一块缩小的有效区域采样。设特征图边长为f、方块边长为b、目标保留率为q,种子概率需要同时补偿方块面积和有效中心数量。常见近似可写成:

gamma = ((1 - q) / (b × b)) × (f × f / (f - b + 1)²)

采到种子后,可用最大池化或形态膨胀把每个种子扩展为方块,再将掩码取反并乘到特征上。多个方块可能重叠,所以实际删除比例不会与公式完全一致。最后要按保留下来的单元比例缩放激活,避免训练期整体幅值系统性变小;极端情况下掩码全零,还要用安全分母防止数值错误。

每通道独立还是所有通道共享

共享掩码会在相同空间位置同时遮掉所有通道,语义打击更集中;每个通道独立采样则保留更多组合方式。原研究的实验更偏向每通道独立掩码,但这并非所有架构的固定答案。实现应把该选择暴露为参数,并用相同随机种子比较,不要让不同采样方式和不同保留率同时变化。

为什么随机挖点挡不住卷积网络:DropBlock的遮挡机制与训练日程 - 掩码采样几何

方块大小决定正则化的空间尺度

边长为一时,DropBlock退化为接近普通Dropout的散点扰动;边长接近整张特征图时,它又趋向通道级删除。中间尺度才体现“遮掉局部语义但不摧毁整幅表示”的目的。

不同层的特征图分辨率不同,固定七像素方块在高分辨率层只覆盖很小局部,在低分辨率层却可能占据大部分区域。可以沿用固定像素边长以复现实验,也可以按特征图比例设定,但两种定义必须在报告中说清楚。若希望跨输入尺寸运行,比例化方案通常更容易保持扰动强度。

  • 方块过小:模型仍能从紧邻位置取回同一证据,收益接近散点丢弃。
  • 方块过大:早期训练几乎看不到目标结构,梯度方差上升,收敛变慢。
  • 浅层使用大块:可能抹去纹理与边缘,尤其伤害小目标和密集预测。
  • 深层使用适中块:更容易迫使分类器分散关注区域,也是常见起点。

保留率需要从温和逐步走向目标值

网络刚开始学习时,特征尚未形成,立即施加强遮挡相当于在地基未稳时拆掉大量支撑。Scheduled DropBlock从接近不删除开始,随训练进度逐渐降低保留率,让模型先建立基本表示,再接受更强的局部缺失。线性日程实现简单,也被旧实验观察到比一开始固定强扰动更稳健。

日程不一定只按epoch。若数据规模、梯度累积或恢复训练会改变每轮步数,按全局优化步推进更可复现。恢复检查点时必须一并保存当前进度,否则保留率会突然回到起点。混合精度下还要检查掩码和缩放是否使用合适类型,防止小保留比例造成溢出。

为什么随机挖点挡不住卷积网络:DropBlock的遮挡机制与训练日程 - 正则强度日程

在残差网络里放错位置会稀释效果

残差块有卷积分支和跳跃通路。只在卷积分支末端遮挡时,恒等路径仍可把完整信息送到下一层;把扰动覆盖到合并后的表示或同时考虑跳跃通路,正则作用更直接。旧研究在ResNet后段组上取得较好结果,并发现对较高分辨率组适当减弱采样强度更稳。迁移到新骨干时,应依据实际张量图确认落点,不能仅凭层名复制。

检测和分割还会使用特征金字塔,多尺度层承担不同目标尺寸。对所有尺度使用同一绝对方块可能让小分辨率层过度受损。建议记录每个金字塔层的有效删除比例和梯度范数,并按小、中、大目标分别看指标,避免总体AP掩盖小目标退化。

一套不会把变量搅在一起的消融顺序

  1. 锁定训练配方,先比较无正则、普通Dropout和边长为一的DropBlock,验证实现基线。
  2. 保持目标保留率不变,只扫描方块尺度,并记录真实删除比例而非仅记录gamma。
  3. 固定最佳尺度,比较恒定保留率与逐步增强日程。
  4. 最后改变插入位置、通道掩码策略和训练时长,每次只动一个因素。
  5. 至少重复多个随机种子,报告均值、波动和最佳轮次,防止只挑一次高点。

资料中的ResNet-50分类实验曾从约76.5%的基线提升到约78.1%,RetinaNet检测的平均精度也从36.8提高到38.4;这些数值证明方法在特定配方中有效,却不是今天任何模型的保证。训练轮数、增强、标签平滑和预训练方式都会改变正则化需求。

推理阶段关闭它,训练证据仍要保留

DropBlock只在训练时制造缺失,推理时使用完整特征图。上线模型因此没有额外遮挡开销,但团队仍应保存方块尺度、保留率曲线、实际遮挡比例和插入位置。若新数据域上性能下降,这些记录能帮助判断模型是否过度依赖分散特征,还是训练时扰动已经损伤了关键小目标。

结构化正则化的核心不是“丢更多”,而是让丢失模式贴合网络的信息冗余方式。卷积表示在空间上相关,就用连续遮挡迫使证据迁移;训练早期脆弱,就让强度逐步增加。把这些因果关系落到可测的实现细节,DropBlock才从一个论文名词变成能被审计的训练工具。

(0)
打赏 支付宝扫一扫 支付宝扫一扫

发表回复

登录后才能评论