深度学习论文(九)---DeepLabV2-Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution,

DeepLabV2对主要在V1的基础上做了一些改进。

1.回顾Atrous Convolution

作者先回顾了一下V1里面讲到的内容

Atrous Convolution 也就是V1那篇论文里面的hole algorithm,本篇论文依然先叙述了一下这个方法:

一维时,就如下这个公式所述,

The rate parameter r corresponds to thestride with which we sample the input signal.

r表征了要填进去的0的个数,个数为(r-1)个,所以标准的卷积是r=1,也就是不插0;

二维时如下图所示:

上面一行表示原来的一些方法比如FCN这种,图像的分辨率缩小了,就算增采样之后,最终也只能获取部分的像素点的位置信息。 下面一行,表示采用插了0的卷积核去对原图像进行卷积,尽管filter的size变大了,但是他们只考虑卷积核中非零的值,所以其实the number of filter parameters and the number of operations per position stay constant。 然后作者说的确可以使用一连串的Atrous Convolution来使网络最后输出的结果feature map的分辨率和原始图像的分辨率一样大,但是这样计算量就显得有点大,所以他们是采用了一种混合的方法: …but this ends up being too costly. We have adopted instead a hybrid approach that strikes a good efficiency/accuracy trade-off, using atrous convolution to increase by a factor of 4 the density of computed feature maps, followed by fast bilinear interpolation by an additional factor of 8 to recover feature maps at the original image resolution. 上面这段话的意思是,他们并不是把整个网络都运用成Atrous Convolution,而是既用了Atrous Conv, 也用了传统的思路—增采样。

所以他称之为混合的方法(a hybrid approach)。 具体来讲,就是只运用Atrous Conv使得feature map能够达到原来的密度的4倍就ok了,然后使用双线性插值法来进行插值处理(也就是简单的增采样),再把feature map放大8倍,这样就使得分辨率恢复到原来的大小了(4x8=32)。 (注,作者举这样说是因为他基于的VGG16Layer模型,这个模型的5个pooling层让图片总共缩小了2^5=32倍.详见DeepLabV1的论文,我上篇博文也讲了)

2、Atrous Convolution的变动

Atrous Convolution也能使得我们能扩大卷积核的感受野!

Atrous convolution with rate r introduces r-1 zerosbetween consecutive filter values, effectively enlarging the kernel size of a kxk filter to ke= k + (k - 1)(r - 1) without increasing the numberof parameters or the amount of computation.

然后作者提到有两种方法来实现Atrous Convolution:

The first is to implicitly upsample the filters by inserting holes (zeros), or equivalently sparsely sample the input feature maps

第一个是通过插入空洞(零)来隐式地对kernel进行上采样,或者等效稀疏地对输入特征图进行采样。他们在之前的工作中用的就是这种方法,比如DeepLabV1中用的就是这个方法。

to subsample the input feature map by a factor equal to the atrous convolution rate r, deinterlacing it to produce r2 reduced resolution maps, one for each of the r x r possible shifts.

对输入feature map进行降采样,降采样率设置为 atrous convolution rate r,对其进行去隔行操作以获得r^2大小的分辨率减小的maps,……

然后用这种方式进行操作,我们的卷积kernel就不用进行改变,还是用标准的kernel。

3、Multiscale ImageRepresentations using Atrous Spatial Pyramid Pooling

多尺度处理

这里他们也提及两个方法:

The first approach amounts to standardmultiscale processing.

第一个是标准的多尺度处理。我们使用共享相同参数的并行DCNN分支从多个(我们的实验中有三个)提取原始图像的重新定标版本的DCNN分数图。

We extract DCNN score maps from multiple(three in our experiments) rescaled versions of the original image usingparallel DCNN branches that share the same parameters.

他们从多个(他们的实验中是3个)经过重新缩放过的原始图像来提取DCNN得分图,利用多个并行的、共享相同参数的DCNN分支。

简单点说就是把原来的图像缩放一下得到几个尺寸不同的图,然后把这些图都各自送进相同的DCNN处理。

为了产生最终的结果,他们对各个分支的输出map都采用双线性插值的方法来恢复到原始图像的分辨率大小,然后融合他们,

融合的办法是对于每个点都取这些不同的map中的最大的那个值就ok。

The second approach is inspired by thesuccess of the R-CNN spatial pyramid pooling method.

第二中方法是收到R-CNN中的空间金字塔池化方法的启发:

这种方法显示,对于任意尺度的一块区域,都能通过重采样 在单一尺度提取的卷积特征 来准确的且有效的被分类。

因此他们提出了“atrousspatial pyramid pooling” (DeepLab-ASPP)

具体来说,就是使用多个不同采样率的atrous conv layers,被不同的采样率提取出的feature会进一步在各自独立的分支中进行处理,最后融合到一起,得到最终的结果。如图所示:

4、总结

所以DeepLabV2相较于V1来说,做了两个改动:

①atrous的方法改了一下;

②提出了ASPP方法,这个是重点,

做实验的对比如下:

图7,左侧是原来的单尺度处理,右侧是V2的多尺度处理

表3:显示了添加CRF前后准确度的提升,以及是否采用ASPP和ASPP的采样率的大小(也就是感受野的大小)对结果的影响。

然后就没了,谢谢观看。╰( ̄▽ ̄)╮

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI科技大本营的专栏

别磨叽,学完这篇你也是图像识别专家了

图像识别是当今深度学习的主流应用,而Keras是入门最容易、使用最便捷的深度学习框架,所以搞图像识别,你也得强调速度,不能磨叽。本文让你在最短时间内突破五个流行...

7057
来自专栏红色石头的机器学习之路

台湾大学林轩田机器学习技法课程学习笔记9 -- Decision Tree

上节课我们主要介绍了Adaptive Boosting。AdaBoost演算法通过调整每笔资料的权重,得到不同的hypotheses,然后将不同的hypothe...

2720
来自专栏PaddlePaddle

【结构化语义模型】深度结构化语义模型

导语 PaddlePaddle提供了丰富的运算单元,帮助大家以模块化的方式构建起千变万化的深度学习模型来解决不同的应用问题。这里,我们针对常见的机器学习任务,提...

5328
来自专栏IT大咖说

阿猫还是阿狗?AI视觉识别中目标检测的关键技术

内容来源:2018 年 04 月 21 日,AI教育求职平台景略集智创始人王文凯在“百度深度学习公开课·北京站:AI工程师的快速进阶之路”进行《目标检测面面观》...

961
来自专栏人工智能LeadAI

卷积神经网络看见了什么

这是众多卷积神经网络可视化方法之一,方法来自于论文《Learning Deep Features for Discriminative Localization...

1491
来自专栏生信小驿站

R 支持向量机②

支持向量机是一个相对较新和较先进的机器学习技术,最初提出是为了解决二类分类问题,现在被广泛用于解决多类非线性分类问题和回归问题。其流行归功于两个方面,一个方面,...

882
来自专栏专知

【干货】使用Pytorch实现卷积神经网络

2.9K3
来自专栏AI科技大本营的专栏

数据科学家必须要掌握的5种聚类算法

编译 | AI科技大本营 参与 | 刘 畅 编辑 | 明 明 【AI科技大本营导读】聚类是一种将数据点按一定规则分群的机器学习技术。给定一组数据点,我们可...

3425
来自专栏云时之间

深度学习与神经网络:正则化小栗子(附代码)

在上一篇文章中我们简单说了说AIC,BIC和L1,L2正则化的东西,而今天这篇文章,我们将着重说说正则化.

4176
来自专栏机器之心

教程 | 从基本概念到实现,全卷积网络实现更简洁的图像识别

选自 Medium 机器之心编译 参与:蒋思源、晏奇、黄小天 众所周知,图像就是像素值的集合,而这个观点可以帮助计算机科学家和研究者们构建一个和人类大脑相似并能...

36311

扫码关注云+社区

领取腾讯云代金券