空洞卷积(Dilated Convolution):有之以为利,无之以为用

https://www.toutiao.com/a6695893685260780044/

 

原论文链接

https://arxiv.org/pdf/1705.09914.pdf

一、论文核心

《Dilated Residual Networks》这篇论文的核心在于创造性地提出了空洞卷积(Dilated Convolution)使 ResNet 在保持参数量不变、每个阶段的卷积层视野不变的前提下,靠后的卷积层也可保持较大的 feature maps 尺寸从而有利于对小目标的检测,提高模型整体性能。具体来说,ResNet最后一层卷积的 整体步长为32,DRN(Dilated ResNet) 则仅为8。当然,既然 feature maps 尺寸大了,计算量当然也会变大,虽然作者在论文中避而不谈,但作为读者可还要心知肚明。

二、什么是空洞卷积

参考链接:如何理解空洞卷积(dilated convolution)?

两张图就可以秒懂:小朋友们,你们学会了吗?

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

普通卷积 i.e. dilation=1

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

空洞卷积 i.e. dilation=2

空洞卷积核中的点距离由 1 增加到了 dilation 值,即中间 dilation-1 的地方都是空着的,这个空着的地方,一方面保持了卷积的参数的单次卷积运算量的不变,同时扩大了卷积的视野。所谓有之以为利,无之以为用是也。

小朋友们,你们学会了吗?

三、DRN 的设计和改进

首先我们看看ResNet,它大致可分为6个阶段,即 conv1~5加上最后的分类层:

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

其中conv2~5为4个分别由相同结构、规模的Residual Block堆砌而成,每个阶段都会进行 stride=2 的下采样,其带来的作用是:

  1. feature maps 尺寸在长宽长都减半下采样后续卷积核的视野翻倍

如何在保持第2点的同时取消第1点呢?DRN是这样处理的:

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

总结来说即以下几点:

  1. 在conv4、conv5阶段不下采样,即保持整体 stride=8 的步长、feature maps 尺寸相较conv3 不变。由于原ResNet 的conv4视野相对于conv3是两倍,conv5是conv3的四倍,为了弥补视野行的缺陷,如上图 DRN 在 conv4 设置卷积的 dilation=2,conv5 的dilation=4,卷积核大小依然为3x3。

然而这样设计虽然在不增加模型参数量的情况下,提高了模型对小物体的识别精度,但存在明显的问题,作者称之为 degridding,如下图(c):

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

为了消除空洞卷积带来的 degridding 效应,作者改进了DRN:

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

绿色竖线表示 stride=2 的下采样,可以看到,DRN 整体下采样只有3次。整体而言的改进有以下几点:

  1. DRN-B、DRN-C 都取消了pooling,使用 stride=2 的卷积层替代。因为作者发现其会导致更严重的 degriding 效应,如下图(b)所示。

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

2. DRN-B 在最后加了两个 dilation 分别是2、1(即正常卷积)的Residual Block,而DRN-C 在此基础上进一步取消了二者的跳层连接,最后使得输出的 fature maps 如丝般顺滑,如下图(d)(e)。

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

一个小问题是,上面这张图是怎么画出来的?NIN里的 AvgPooling + conv1x1 替代全连接层输出分类还有印象么?这样可以使得模型参数量大大减少的同时,提高模型的精度,所以许多模型都采用这种方式输出预测分类,而这样训练出来的模型,将 AvgPooling 取消,对于 hxw 大小的 feature map 上的每一点,即 shape 为 (1,1,c) 的 tensor 使用原有的 conv1x1,即可得到上图,此过程如下图所示:

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

四、DRN 的性能

DRN 的性能如下列图所示,可以看到,在物体检测任务上,模型最后高分辨率输出的feature maps 的确带来了极高的性能提升。

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

图像分类

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

物体检测

空洞卷积(Dilated Convolution):有之以为利,无之以为用

 

语义分割

转自:https://zhuanlan.zhihu.com/p/66796313

<think>好的,我现在需要详细分析用户的问题,即“可变形卷积与空洞卷积的区别”。用户已经提供了相关的站内引用资料,我需要结合这些资料以及之前的对话内容来构建一个准确且全面的回答。 首先,回顾用户之前的提问和我的回答,可变形卷积(Deformable Convolution)主要强调通过动态调整卷积核的采样位置来适应物体的几何形变,而空洞卷积Dilated Convolution)则是通过扩大卷积核的感受野而不增加参数或计算量。用户现在希望明确两者的区别,尤其是在应用场景、工作原理和优缺点方面。 接下来,我需要查阅用户提供的引用内容。引用[1]和[3]详细介绍了空洞卷积的背景和原理,指出它通过引入间隔(dilation rate)来扩大感受野,解决传统卷积在语义分割等任务中因下采样导致的空间分辨率损失问题。引用[2]提到空洞卷积在处理不同大小物体时的挑战,如大dilation rate可能对小物体不,需要设计如Hybrid Dilated Convolution来平衡。引用[4]则提到Dilated Block在实时语义分割中的应用,通过不同扩张率的分支提取多尺度特征。 结合这些信息,空洞卷积的核心在于控制感受野的大小,而可变形卷积的核心在于灵活调整采样位置。两者的设计目标不同:空洞卷积解决的是感受野扩展的问题,适用于需要捕捉长距离信息的任务;可变形卷积则解决几何形变问题,适用于目标检测和分割中物体形状变化大的情况。 接下来需要考虑两者的实现方式。空洞卷积通过在卷积核元素之间插入零来扩大间隔,数学上不增加参数,但可能引入网格效应(gridding issue),影响局部信息捕获。可变形卷积则通过额外的卷积层预测偏移量,动态调整采样点位置,增加了参数和计算量,但能更灵活地适应物体形变。 应用场景方面,空洞卷积常见于语义分割(如DeepLab系列)和需要多尺度信息的任务,而可变形卷积在目标检测(如Deformable R-CNN)和复杂形变处理的场景中表现更好。两者的优缺点也需要对比:空洞计算效率高但可能丢失细节,可变形更灵活但训练复杂。 最后,需要确保回答结构清晰,分点对比,并引用用户提供的资料。例如,在提到空洞卷积的多尺度处理时,引用[2]和[4]中的Hybrid Dilated Convolution和D Block结构。同时,结合之前的回答,强调可变形卷积的动态特性与空洞卷积的静态扩张之间的区别。 总结来说,回答需要涵盖工作原理、设计目标、实现机制、应用场景及优缺点对比,并适当引用用户提供的文献支持论点,确保信息准确且符合用户需求。</think>### 可变形卷积 vs 空洞卷积Dilated Convolution)的核心区别 #### 一、**设计目标不同** 1. **空洞卷积** - **核心目标**:扩大卷积核的**感受野**(Receptive Field),避免传统下采样(池化、步长卷积)导致的空间分辨率损失[^1][^3]。 - **适用场景**:语义分割(如DeepLab系列)、需要捕捉长距离依赖的任务(如视频时序建模)。 - **关键特性**:通过**固定间隔(dilation rate)** 在卷积核采样点之间插入空白,数学表达为: $$y(p) = \sum_{k=1}^K w_k \cdot x\left(p + r \cdot p_k\right)$$ 其中$r$为扩张率(dilation rate),$p_k$为预设的规则采样点[^3]。 2. **可变形卷积** - **核心目标**:增强卷积核的**几何形变建模能力**,适应目标物体的非刚性形变(如弯曲、旋转)[^3]。 - **适用场景**:目标检测(如Deformable R-CNN)、复杂形变的图像分割。 - **关键特性**:通过**动态偏移量**调整采样位置,数学表达为: $$y(p) = \sum_{k=1}^K w_k \cdot x\left(p + p_k + \Delta p_k\right)$$ 其中$\Delta p_k$为可学习的偏移量[^3]。 --- #### 二、**实现机制对比** | 特性 | 空洞卷积 | 可变形卷积 | |---------------------|----------------------------------|------------------------------------| | **采样点位置** | 固定间隔(如$r=2$时采样点间隔为2像素) | 动态偏移(由网络学习偏移量$\Delta p_k$) | | **参数增加量** | 无额外参数(仅调整采样间隔) | 需额外卷积层生成偏移量(如$3\times3$卷积核需18个偏移通道) | | **感受野控制** | 显式控制(通过$r$值) | 隐式学习(偏移量可能突破预设感受野) | | **计算复杂度** | 与传统卷积相近 | 增加约20%-30%计算量(偏移量生成+双线性插值) | --- #### 三、**优势与局限性** 1. **空洞卷积的优势** - 保持特征图分辨率,避免上采样误差(语义分割关键需求)[^3]; - 通过**多尺度空洞卷积堆叠**(如ASPP模块)捕获多尺度上下文信息[^2]; - 计算效率高,无额外参数。 **局限性**: - 大$r$值可能导致**网格效应(Gridding Issue)**,丢失局部细节[^2]; - 固定采样模式无法适应物体形变。 2. **可变形卷积的优势** - 自适应调整采样位置,显著提升对几何形变的鲁棒性; - 可突破预设感受野限制,捕捉更灵活的上下文关系。 **局限性**: - 偏移量学习可能不稳定(需配合正则化或渐进训练策略); - 实时性较差,对硬件加速要求高。 --- #### 四、**典型应用对比** | 任务类型 | 空洞卷积典型应用 | 可变形卷积典型应用 | |---------------|------------------------------------|------------------------------------| | **语义分割** | DeepLab系列(ASPP模块)[^1] | 复杂场景分割(如遮挡、形变物体) | | **目标检测** | 少用于检测(感受野扩展有限) | Deformable R-CNN(ROI对齐改进)[^3] | | **视频分析** | 时序建模(扩大时间维度感受野) | 运动形变建模(如光流估计) | --- #### 五、**联合使用案例** 部分先进模型会结合两者优势: - **Hybrid Dilated Convolution**[^2]:混合不同$r$值的空洞卷积,平衡多尺度信息; - **Deformable Dilated Convolution**:在空洞卷积基础上引入偏移量,同时扩展感受野并适应形变。 --- ### 关键区别总结 | | 空洞卷积 | 可变形卷积 | |----------------|----------------------------------|------------------------------------| | **核心改进** | 感受野扩展 | 几何形变建模 | | **参数动态性** | 静态(预定义$r$值) | 动态(可学习偏移量) | | **硬件友好度** | 高(规则计算) | 中(依赖双线性插值) | | **任务侧重** | 密集预测(分割) | 形变敏感任务(检测、姿态估计) | --- ### 相关问题 1. 如何设计混合空洞卷积(Hybrid Dilated Convolution)避免网格效应? 2. 可变形卷积的偏移量学习如何避免过拟合? 3. 空洞卷积在实时语义分割中的优化方法(参考[^4]的D Block设计)?
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值