【论文阅读】Dilated Residual Networks(全文翻译)

写在前面:
最近在做毕设,需要文献翻译,因此全文翻译一下,但是这篇文章还需要配合代码才能有一个比较深刻的认识。

Dilated Residual Networks

摘要

在图像分类任务中,卷积网络会逐步减小分辨率直到图像被表示成一个很小的特征图,而这个特征图中,场景的空间结构已经不再能够辨认了。这样的空间敏锐度的损失限制了图像分类的精确度,同时也复杂化了模型在那些要求细节场景理解的下游应用中的迁移使用。这些问题都可以被扩张所解决,它提高了输出特征图的分辨率,同时也不降低单个神经元的感受野。在不增加模型的深度和复杂度的情况下,本文展示了扩张残差网络的表现优于其他已有的方法。本文也进一步研究了扩张引入的网格伪影,提出了一种能去网格化的方法,进一步提高了DRN的表现。除此以外,本文DRN的精确度优势在下游应用上进一步放大,如目标定位和语义分割。

介绍

卷积网络起初是为了分类手写数字而发展的,如今,卷积网络结构已经参与分类更复杂的图片。然而,网络架构的一个核心方面却基本保持不变,图像分类任务所使用的卷积网络不断减小分辨率直到图像被表示成一个很小的特征图,这个特征图保留了很少的空间信息(一般为 7 × 7 7\times7 7×7)。

虽然卷积网络一直能工作的很好,但是几乎完全消除空间的敏锐度可能会这些模型实现更高的精确度,比如保留细小的物体对正确理解图像而言是非常重要的,这些保留可能对手写数字分类而言并不重要(因为单个物体在图像中起主导作用),但是可能对复杂自然场景分析多物体有所帮助(这些物体周围的信息是需要考虑在内的)。

更进一步来说,图像分类并不是卷积网络的最终归宿,图像分类大多数都是在迁移至其他应用之前预训练模型所使用的前置任务,下游任务需要更多的细节场景理解,在这些任务中,严重的空间敏锐度的损失是一种不可容忍的阻碍。现有的方法通过上采样反卷积、跳跃连接和一些其他方式用以补偿分辨率的丢失。

卷积网络一定要为了分辨图像而将其解体吗?在本文中,作者展示了“图片破损”并不是必需的,甚至是不被接受的。自残差网络到目前的SOTA图像分类任务,本文通过用扩张替代内部下采样层提升了网络输出的分辨率。本文展示了DRN提升了图像分类的表现,特别地,相比于其他没有扩张操作的网络,DRN获得了更高的精确度,且比增加网络的深度和复杂度。

在经典数据集ImageNet上,DRN的输出分辨率为 28 × 28 28\times28 28×28,相当于一个包含图像特征的小的缩略图,虽然并没有平均池化能正确处理如此高分辨率输出的先验,但是本文展示了它可以产出显著的精确度收益。本文进一步研究了扩招引入的网格伪影,并且展示了去网格化对DRN精确度的进一步提升。

本文也展示了DRN在下游应用中精确度的提升,如弱监督目标定位和语义分割。使用一个简单的方法,不涉及任何微调,本文就在ImageNet上的弱监督目标定位任务上取得了第一的精确度。本文也研究了DRN在语义分割任务上的表现,42层的DRN超过了ResNet-101在Cityscapes数据集上的表现(4个百分点),同时层数降低了2.4倍。

扩张残差网络

本文的主要想法是为图像分类任务保留空间分辨率。尽管不断的进行下采样在分类手写数字和标志性物体视图上是非常成功的,但是空间信息的损失对分类自然图像而言是不利的,并且严重影响了需要细节图像理解的任务。自然图像通常具有多个物体,这些物体的个体和配置对理解场景十分重要。当关键物体不具有空间主导性时分类就变得困难,比如说,当被标记的物体很细小或具有大背景(如山脉)时,背景信息所传递的信号常常超过感兴趣的物体,更糟糕的是,如果物体信息因为降采样而损失时,那么就很难在训练过程中恢复了。然而,如果我们保持模型间的高分辨率并且提供密集覆盖输入域大小的输出信号,反向传播就能学习去保留有关细小但不突出物体的信息。

本文结构的起点是由一系列由何恺明提出的网络,这些结构中的每一个都包含五组卷积层。每组的第一层通过步长来进行下采样:卷积核只在奇数行和列上进行卷积操作。将一组网络层定义为 G l , l = 1 , 2 , ⋯   , 5 \mathcal{G}^l,l=1,2,\cdots,5 Gl,l=1,2,,5,定义 G i l \mathcal{G}^l_i Gil 为组 l l l 中的第 i i i 层。简单来说,考虑一个理想模型,它的每一层包含单个的特征图:扩展到多个特征图就很简单,定义 f i l f_i^l fil 为第 G i l \mathcal{G}^l_i Gil 层的卷积核,在原始模型中,第 G i l \mathcal{G}^l_i Gil 层的输出为 ( G i l ∗ f i l ) ( p ) = ∑ a + b = p G i l ( a ) f i l ( b ) (\mathcal{G}^l_i*f^l_i)(p)=\sum_{a+b=p}\mathcal{G}^l_i(a)f^l_i(b) (Gilfil)(p)=a+b=pGil(a)fil(b),其中 p p p 的域就是第 G i l \mathcal{G}^l_i Gil 层的特征图,在这之后会加上一个非线性层,但并不影响上式表示的结构。

一个简单的在网络的更高层提高分辨率的方法是移除内部层中的下采样,这确实提高了下游的分辨率,但是有一个副作用:移除下采样相应的也减小了后续层的感受野,因此移除步长虽然将输出的分辨率扩大了4倍但是也将输出单元的感受野缩小了4倍。这严重影响了每个单元能够产生的预测信息的数量。由于上下文信息在利用局部信息时是非常主要的,为了提高分辨率而缩小感受野这样的交易是极其不划算的。出于以上原因,本文使用扩张卷积来提高更高层的感受野,补偿因移除下采样而减少感受野的影响。在扩张卷积层的单元中有和原始模型中一样的感受野。

本文聚焦于最后两个卷积层中组 G 4 \mathcal{G}^4 G4 G 5 \mathcal{G}^5 G5。在原始的ResNet中,每组的第一层( G 1 4 \mathcal{G}^4_1 G14 G 1 5 \mathcal{G}^5_1 G15)都采用了步长:卷积在奇数行列上产生效果,每层的输出分辨率都减小了2倍。将ResNet转化为DRN的第一步就是去除 G 1 4 \mathcal{G}^4_1 G14 G 1 5 \mathcal{G}^5_1 G15 中的步长,注意 G 1 4 \mathcal{G}^4_1 G14 的感受野仍不受影响:我们只是把 G 1 4 \mathcal{G}^4_1 G14 输出的分辨率加倍了而不影响其感受野。然而后续层都会受到影响:它们的感受野缩小了两倍。因此,本文将这些层中的卷积操作用2倍的扩张卷积: ( G i 4 ∗ 2 f i 4 ) ( p ) = ∑ a + 2 b = p G i 4 ( a ) f i 4 ( b ) (\mathcal{G}^4_i*_2f^4_i)(p)=\sum_{a+2b=p}\mathcal{G}^4_i(a)f^4_i(b) (Gi42fi4)(p)=a+2b=pGi4(a)fi4(b)(对所有的大于等于2的 i i i)。相同的操作也应用于 G 1 5 \mathcal{G}^5_1 G15 ( G 1 5 ∗ 2 f 1 5 ) ( p ) = ∑ a + 2 b = p G 1 5 ( a ) f 1 5 ( b ) (\mathcal{G}^5_1*_2f^5_1)(p)=\sum_{a+2b=p}\mathcal{G}^5_1(a)f^5_1(b) (G152f15)(p)=a+2b=pG15(a)f15(b),在已经被消除的两层步长层之后是 G 5 \mathcal{G}^5 G5 的后续层,步长的移除使感受野减少了4倍,因此卷积需要4倍扩张以补偿损失: ( G i 5 ∗ 4 f i 5 ) ( p ) = ∑ a + 4 b = p G i 5 ( a ) f i 5 ( b ) (\mathcal{G}^5_i*_4f^5_i)(p)=\sum_{a+4b=p}\mathcal{G}^5_i(a)f^5_i(b) (Gi54fi5)(p)=a+4b=pGi5(a)fi5(b)(对所有大于等于2的 i i i)。最后,像原始网络结构中的一样,用一个全局平均池化将输出的特征图减小为一个向量,然后用一个 1 × 1 1\times1 1×1 卷积将这个向量映射到另一个能包含所有类预测分数的向量当中。从ResNet到DRN的转化过程如下图所示:

在这里插入图片描述

转换后的DRN拥有和原始ResNet一样的层数和参数数量,主要的区别是:原始的ResNet将输入图片下采样32倍,但DRN只下采样8倍。例如,当输入分辨率为 224 × 224 224\times224 224×224 时,ResNet中 G 5 \mathcal{G}^5 G5 层的输出分辨率为 7 × 7 7\times 7 7×7,这使得输入的空间结构无法被辨认,而DRN的 G 5 \mathcal{G}^5 G5 层输出分辨率为 28 × 28 28\times28 28×28,最大池化层需要多考虑 2 4 2^4 24 倍的值,这将帮助分类器辨认在输入图像中包含更小数量像素的物体并且在预测中将其考虑在内。

提出的结构也能被应用于更前的网络层中( G 1 \mathcal{G}^1 G1 G 2 \mathcal{G}^2 G2 G 3 \mathcal{G}^3 G3),在极限情况下保留输入的全分辨率(但是并不这样做,因为8倍下采样的特征图就能够保留大多数能够像素级正确解析图像的信息)。 28 × 28 28\times28 28×28的缩略图虽然小,但是足够解决人类对场景结构的理解。在分辨率上额外的增加是有代价的,不应该在没有相应收益时被无脑追求:当每个特征图增加2倍分辨率时,特征图存储的消耗就会扩大4倍,使用没有降采样的全分辨率超出了目前硬件的能力。

定位

给定一个为图像分类训练好的GRN,在没有任何额外训练或参数微调的情况下可以直接得到像素级类激活图。这意味着为图像分类任务训练的DRN可以直接应用于目标定位和分割。

为了得到高分辨率的类激活图,本文移除了全局最大池化层,在 G 5 \mathcal{G}^5 G5 层后直接加了一个 1 × 1 1\times1 1×1的卷积操作,然后使用 softmax 作用于每个像素对应的通道向量,将其转化为像素级预测分数对应合理的概率分布。具体过程如下图所示:

在这里插入图片描述

最终网络的输出是一个激活图的集合,与 G 5 \mathcal{G}^5 G5 层有相同的分辨率( 28 × 28 28\times28 28×28),每个分类 y y y 都具有一个对应的激活图,在图上的每个像素都包含了这个像素是目标物体分类 y y y 的概率。

由本文的结构产生的激活图与Zhou等人的工作有相同的目标但是过程是不一样的。Zhou等人发现卷积网络大量的下采样输出对目标定位而言是不足够的,出于这个原因,Zhou等人从分类网络中移除了一部分网络层,为消融层引入了更多参数来补偿,并且将修改后的模型进行微调来训练新的参数。即使这样,Zhou等人得到的输出分辨率也非常小( 14 × 14 14\times14 14×14),并且修改后网络的性能也有一定的损失。

作为对比,DRN被设计用来产生高分辨率的输出图并且从一开始就以此训练。正如后续实验中展示的,DRN在图像分类任务上的准确率是要强于原始的ResNet的,因为DRN从一开始就产生高分辨率的输出图,并不需要移除中间层或增加参数或为目标定位重新进行训练,最初的准确分类模型可以直接用于定位。

去网格化

扩张卷积的使用会造成网格伪影,如下图©所示:

在这里插入图片描述

这样的网格伪影在语义分割任务上被发现,当特征图拥有比扩张卷积采样率更高频率的内容时,网格伪影就会出现。下图展示了一个经典案例,在(a)中,输入特征图只有单个激活像素,(b)展示的2倍扩张卷积在输出©中引入了一个对应的网格模式。

在这里插入图片描述

在本节中,作者提出了一个方法来消除扩张卷积产生的输出图中的网格伪影。这种方法如下图所示,其中第二部分扩张残差网络描述的结构如(a)DRN-A所示,中间阶段的结构如(b)DRN-B所示,最终结构如©DRN-C所示:

在这里插入图片描述

去除最大池化

正如上图(a)中所示,DRN-A继承了ResNet的结构,在最初的 7 × 7 7\times7 7×7卷积之后有一个最大池化操作,本文发现这个最大池化操作导致高振幅高频激活,如下图所示,这样的高频激活会被传播到后续层中并且加剧网格伪影。因此本文用一个卷积代替了最大池化,形成了DRN-B。

在这里插入图片描述

增加网络层

为了移除网格伪影,本文在网络的最后增加了卷积层,用于逐步降低扩张。特别地,在DRN-A的4倍扩张层之后,增加2倍扩张层和1倍扩张层,形成DRN-B中的第七层和第八层。这类似于使用适当频率的滤波核移除混合伪影。

去除残差连接

用不断下降的扩张倍数增加了网络层之后,由于残差连接的存在,并没有完全移除伪影,DRN-B中第7和第8层中的残差连接能够传播第6层的伪影。为了更有效的去除伪影,本文移除了第7和第8层中的残差连接,形成了DRN-C。值得注意的是,DRN-C相较于DRN-A和ResNet而言层数更深,然而,本文展示了去网格伪影化的方法在精确度上有惊人的提升,精确度的收益补偿了网络深度和体积。例如,实验证明,DRN-C-26与DRN-A-34具有相似的分类准确率,并且DRN-C-26相比于DRN-A-50有更高的目标定位准确率和更高的语义分割准确率。

DRN-C中各层的激活效果如下图所示,下图展示了网络各层级输出的特征图:

在这里插入图片描述

实验

图像分类

网络在ImageNet2012训练集上进行训练,训练过程与何恺明等人的过程类似,同时本文也修改scale和aspect以及颜色,用于数据增强。训练使用带动量(0.9)和权重下降( 1 0 − 4 10^{-4} 104)的随机梯度下降,学习率为0.1,并且每30轮以10倍的比例减小学习率,训练总共进行了120轮迭代。

训练后模型的效果在ImageNet2012验证集上进行评估。图像大小被重设,短边为256像素。使用两种评估策略:1-crop和10-crop。在1-crop策略中,预测准确率将在中心的 224 × 224 224\times224 224×224划分中评估;在10-crop策略中,预测准确率将从每幅图像中的10个裁剪部分中评估。特别地,对每幅图像,本文进行中心裁剪,四角裁剪,并且将这些裁剪进行翻转,列出的10-crop准确率是在10个裁剪图像中取平均得到的。

在这里插入图片描述

ResNet和DRN-A的比较

上表展示了不同模型准确率的差异,每个DRN-A都超过了对应的ResNet(二者拥有相同的深度和体积),例如,DRN-A-18和DRN-A-34的表现超过了ResNet-18和ResNet-34,在1-crop的准确率高了2.43%和2.92%(在ResNet-34到DRN-A-34的变化中,降低了10.5%的误差)。

DRN-A-50的表现超过了ResNet-50,作为对比,由ResNet-152到ResNet-101误差降低了0.3%,这些结果表明即使直接从ResNet变化为DRN-A在不改变模型深度和体积的前提下也显著提升了分类准确率。

DRN-A和DRN-C的比较

上表也展示了去网格伪影结构是有益的,每个DRN-C网络的表现都超过了对应的DRN-A,尽管去网格伪影的过程增加了网络的深度和体积,但是在结果上的提升是巨大的(需要更深的网络才能达到DRN相似的准确率)。特别地,DRN-C-26是由DRN-A-18改进的,但是DRN-A-34才达到相似的准确率;DRN-C-42是由DRN-A-34改进的,但是DRN-A-50才达到对应的准确率。将去网格伪影后的DRN和ResNet作比较,发现DRN-C-42就达到了ResNet-101的准确率,但后者是前者层数的2.4倍。

目标定位

本节评估了DRN在弱监督目标定位上的表现,DRN产生的类激活图相比月ResNet提取的图有更好的空间解析。

使用ImageNet2012验证集对DRN产生的高分辨率激活图进行目标定位任务上的评估,首先在10-crop测试的基础上预测图像的类别,由于真实标签是边界框的形式,因此需要将边界框适配到激活图上,通过分析类别在所有相应图上的响应,预测物体的边界框。一个通用的想法是找到一个最小的能包含所有像素的边界框,这些像素反应了正确的物体分类。特别地,给定C个分辨率为W×H的响应图,定义第 c c c 个响应图在 ( w , h ) (w,h) (w,h) 位置处的响应大小为 f ( c , w , h ) f(c,w,h) f(c,w,h),在ImageNet数据集中,C为100,定义在每个位置上占据主导地位的类为: g ( w , h ) = { c ∣ ∀ 1 ≤ c ′ ≤ C , f ( c , w , h ) ≥ f ( c ′ , w , h ) } g(w,h)=\{c|\forall 1\leq c'\leq C,f(c,w,h)\geq f(c',w,h)\} g(w,h)={c∣∀1cC,f(c,w,h)f(c,w,h)},对灭个类 c i c_i ci,定义一组可能的边界框为: B i = { ( ( w 1 , h 1 ) , ( w 2 , h 2 ) ) ∣ ∀ g ( w , h ) = c i & f ( w , h , c i ) > t , w 1 ≤ w ≤ w 2 & h 1 ≤ h ≤ h 2 } \mathcal{B}_i=\{((w_1,h_1),(w_2,h_2))|\forall g(w,h)=c_i \&f(w,h,c_i)>t,w_1\leq w\leq w_2\& h_1\leq h\leq h_2\} Bi={((w1,h1),(w2,h2))∣∀g(w,h)=ci&f(w,h,ci)>t,w1ww2&h1hh2},其中 t t t 是激活阈值,类 c i c_i ci 对应的最小的边界框定义为: b i = arg ⁡ min ⁡ ( ( w 1 , h 1 ) , ( w 2 , h 2 ) ) ( w 2 − w 1 ) ( h 2 − h 1 ) b_i=\underset{((w_1,h_1),(w_2,h_2))}{\arg\min}(w_2-w_1)(h_2-h_1) bi=((w1,h1),(w2,h2))argmin(w2w1)(h2h1)

为了评估DRN在弱监督目标定位任务上的准确率,本文简单的在每张图像上为每个类 i i i 计算一个最小的边界框 b i b_i bi。在目标定位任务中,当预测的边界框与真实标签的边界框计算出的IoU大于0.5是就认为是定位正确的,下表展示了评估结果,注意到分类网络直接被用于定位,没有任何微调。

在这里插入图片描述

上表中,DRN的表现超过了相应的ResNet,这再一次说明基础DRN网络的优势,此外,尽管DRN-C-26的深度更浅,但是表现超过了DRN-A-50,这表明去网格伪影对需要细节空间信息的应用而言有非常大的提升,DRN-C-26的表现也超过了ResNet-101。

语义分割

本节将DRN网络用于语义分割任务,高分辨率的内部表征对这项任务极其重要。由于现有工作的图像分类结构中严重的下采样,将其用于语义分割任务需要事后采用上采样卷积、跳跃连接和事后扩张等操作。相比之下,DRN在输出层就产生的高分辨率图像意味着可以直接将分类训练的DRN网络在移除最大池化层后直接用于语义分割任务,不需要任何额外的结构改变,预测结果的合成是由输出层进行上采样和双线性插值完成的,并不涉及额外的参数。

本文使用Cityscapes数据集进行评估,使用标准Cityscapes训练集和验证集。为了理解模型本身的能力,只使用裁剪和镜像进行训练,并不使用其他的数据增强方式,也不在网络中增加任何额外的部分。实验结果如下表所示:

在这里插入图片描述

所有本文提出的模型都在表现上超过了由ResNet-101构建的基准模型,平均IoU达到66.6。例如,DRN-C-26在表现上超过了ResNet-101一个百分点,而深度却减小了4倍;DRN-C-42较ResNet-101提高了4个百分点,深度却减小了2.4倍。

通过比较不同的DRN模型,发现DRN-C-26和DRN-C-42的表现都超过DRN-A-50,表明去网格伪影结构对稠密预测任务是非常有益的。DRN-A-50和DRN-C-26的量化对比如下图所示:

在这里插入图片描述

如上图所示,DRN-A-50的预测结构受网格伪影的影响非常严重(即使模型是稠密像素级监督下训练的),而DRN-C-26的预测结果不仅更精确,在视觉观感上也更为纯净。

结论

本文提出了一种为图像分析设计的卷积网络,相比于不断内部表达的分辨率指导空间信息不再能辨认,本文在所有输出层上都保持了高空间分辨率。本文也展示了简单的变化提高了图像分类的准确率,表现超过了目前的SOTA方法。本文也进一步展示了准确率可以通过消除由扩张引入的网格伪影的方式进一步提高。

提出的图像分类网络得到了具有极高信息量的输出激活图,能够被直接用于弱监督目标定位任务而不需要任何微调。预训练的网络也能被用于稠密预测任务如语义分割,表现超出了更深和更大体积的基准模型。

实验结果表明扩张残差网络可以作为一个基准模型用于包含复杂自然图像的图像分析任务,特别是当场景的细节理解非常重要的时候,本文发布了预训练模型来支持未来的研究工作和应用。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值