IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> AUTO-DeepLab:NAS在语义分割上的里程碑之作 -> 正文阅读

[人工智能]AUTO-DeepLab:NAS在语义分割上的里程碑之作

AUTO-DeepLab:

NAS在语义分割上的里程碑之作

Population Based Augmentation:Efficient Learning of Augmentation Policy Schedules

论文:https://arxiv.org/pdf/1901.02985.pdf

解决的问题

近些年来,NAS在图像分类领域取得了长足的进步,但在语义分割领域还是空白的存在,本文是NAS在语义分割领域的开篇之作。现有的NAS往往侧重寻找可重复的cell的结构,人工设计控制图片分辨率变化的外部网络结构。这样做虽然简化了搜索空间,但是对于密集的图像预测而言,在网络层级上的结构变化太多了。论文提出了在cell级结构的基础上,对网络结构搜索,形成一个分层结构的搜索空间。最终在VOC2012等数据集上获得了SOTA的表现。

论文地址:

https://arxiv.org/pdf/1901.02985.pdf

简介:

神经网络在处理各项任务上都取得了长足的进展,尽管更好的优化器和归一化操作有很重要的作用,但许多进展来自于神经网络结构的设计。近些年来,NAS在大规模图像分类任务中取得的成效已经超过人工设计的网络结构。然而,图像分类不应该是NAS的终点,为此本文研究了NAS在语义分割方面的神经网络结构搜索。

然而,单单移植图像分类的思想到语义分割中是远远不够的。因为图像分类领域,NAS把低分辨率图片上学到的东西迁移到高分辨率的图片上,但是最佳的语义分割结构必须采用高分辨率图像,这就需要我们做到以下两点:(1)一个更松弛和通用的搜索空间用于捕获高分辨率图像带来的网络结构的变化。(2)一个更高效的网络结构以应对高分辨率带来的巨大计算量。

作者注意到,主流的CNN设计遵循两层设计结构:即外层网络控制分辨率,内层网络控制特定层级的计算。目前的NAS也遵循这种设计,但NAS只搜索内部的cell,但外部的网络是人工设计的。但是对密集图像的预测而言,这样有限的搜索空间是有问题的:密集图像对空间分辨率的变化非常敏感。因此,本文提出了一种网格状的网络级搜索空间,扩大了常用的cell级搜索空间,形成了一个层次结构的搜索空间。本文的目标是共同学习、结合可重复cell结构和网络结构,用于语义图像分割。

在网络结构搜索使用的方法中,强化学习和进化算法存在密集计算型的问题,对语义分割可能不适用。本文从NAS的可微分公式中获得灵感,并开发了一种离散架构的连续松弛,以精确匹配分层架构的搜索空间。采用随机梯度下降法进行分层结构搜索。当搜索结束时,解码最好的cell结构,然后通过Viterbi算法解码最好的网络结构。

在网络结构搜索使用的方法中,强化学习和进化算法存在密集计算型的问题,对语义分割可能不适用。本文从NAS的可微分公式中获得灵感,并开发了一种离散架构的连续松弛,以精确匹配分层架构的搜索空间。采用随机梯度下降法进行分层结构搜索。当搜索结束时,解码最好的cell结构,然后通过Viterbi算法解码最好的网络结构。论文搜出的Auto-DeepLab在模型获得了与DeepLabV3+相同的性能,但是在Multi-Add速度是它的2.23倍,搜出来的轻量级网络结构在性能只降低1.2%的前提下, 参数量减少了76.7%,比multi-add快了4.65倍。本文的贡献如下:

  • 第一次将NAS从图像分类扩展到密集图像预测上。

  • 提出了一种网络级的搜索空间,扩充了目前主流的cell级搜索空间,并考虑了更具挑战性的网络级和单元级结构的联合搜索

  • 开发了一个可微的连续公式,可以有效进行两层结构搜索,用一块GPU搜索三天即可获得结果。

在没有ImageNet预训练的前提下,模型的训练也取得了SOTA的效果。

网络搜索空间:

cell级搜索空间

将cell定义为一个小的全卷积模块,重复多次形成整个神经网络。具体来说,cell是由B个块组成的有向无环图。每个块是一个双分支结构,从2个输入张量映射到1个输出张量。单元格中的i块可以使用5元组来指定 (I1, I2, O1, O2, C),其中I代表两个输入,两个O分别代表两个输入对应层操作的类型,C是组合输出的方法。每个cell的输出H由这个cell中所有的B块block的输出H1~HB拼接得到。第i个cell的输入可能由第1~i-1个cell的输出组成,因此随着cell数量的增加,后面的cell的输入将会有更多的选择。其中,操作O的集合如下:

网络级的搜索空间

在NAS分类网络中,一旦cell被搜索出来,整个网络就会以预先定义好的模式搭建。因此,网络层不是体系结构搜索的一部分,因此它的搜索空间从未被提出和设计。这种预先定义的模式简单而直接: 在N个normal cell后添加一个reduction cell。这种下采样的策略在分类网络中是合理的,但在密集图像预测中保持高分辨率也很重要。在密集图像预测的各种网络体系结构中,有两个一致的原则:(1)下一层的空间分辨率可能扩大或缩小两倍,也可能保持不变。(2)最小的分辨率是32倍下采样。

论文提出的网络结构:网络的起点是一个两层的“主干”结构,每一层都将空间分辨率降低2倍。之后,总共有L个空间分辨率未知的层,其中最大的下采样4,最小的下采样32。由于每层的空间分辨率最多相差2,主干结构后的第一层只能下采样4或8,目标是在这个l层网格中找到一个最佳路径。

如图所示,左图是网络级搜索空间,横向表示layer,纵向表示图像分辨率(2表示原图是特征图的2倍,其他同理),L = 12。灰色节点表示固定的“主干”层,可以理解为固定的预处理层,即原图会首先经过一些列操作后得到缩小4倍的特征图,然后会在该特征图上进行模型结构搜索。沿着蓝色节点(候选结点,每个节点都可以是一个cell结构)的路径表示候选网络级别架构。ASPP模块被附加到第L层的每个分辨率上(atrous参数相应有所调整)。它们的输出是双线性插值上采样到原始分辨率,然后求和产生预测。右图表示在搜索过程中,每个cell都是紧密连接的结构。每个黄色箭头都与值αj→i的集合相关联。concat后面的三个箭头(最右边的三个箭头)将Bs/2、Bs和B2s相联系。

因为搜索空间足够广泛,所以可以覆盖许多流行的设计,如下图所示。(a)是使用了DeepLabv3的网络结构 (b)使用了编码器-解码器的结构 (c)使用了堆叠沙漏的结构。

方法:

首先引入离散网络结构的连续松弛操作。然后讨论了如何通过优化来执行体系结构搜索,以及如何在搜索结束后对离散体系结构进行解码。

网络结构的连续松弛

Cell的结构:

首先,重用DARTS中描述的连续松弛。每个块的输出张量Hl连接到中所有的隐藏状态il。

然后将每个Oj→i近似为连续松弛ˉOj→i,定义为

其中

简单来说,αk j->i是与每个算子Ok∈O相关联的归一化标量,很容易实现为softmax。也就是将每个操作以不同的权重组合成一个松弛的空间。总的来看,cell的更新可以概括为:

网络结构:

在一个cell内,所有的张量具有相同的空间大小,可以加权求和。但是在网络的层面上,不同层的张量可能有不同的大小,所以为了设置成连续松弛的空间,每一层都得有最多4种隐藏的状态{4Hl,8Hl,16Hl,32Hl},其中数字代表分辨率。网络更新为:

该公式表示两个层级的搜索空间连续松弛,其中 s = 4,8,16,32 l = 1,2, . . . , L。β需要标准化如下,并且也用softmax实现:

β控制着外部网络结构,因此取决于空间大小和层指数。β中的每个标量控制着α的整个集合,α指定了既不依赖于空间大小或层索引的相同结构 。

引入这种连续松弛的优点是:用来控制不同隐藏状态之间连接强度的标量(α和β),也变成了可微计算图的一部分。因此可以使用梯度下降法优化。论文采用和DARTS相似的方法,将训练数据分为不相交的A,B两个训练集,不相交训练集划分是为了防止网络结构对训练数据的过拟合。优化方法如下(损失函数L为在语义分割每个mini-batch上计算的交叉熵):

解码为离散的网络结构:

cell的结构:

和DARTS中所用方法相似,保留排名top-2的前两个block(不能是zero操作,即没有连接的操作)作为每个block的输入,选择策略采用argmax。

网络结构:

β值可以解释为不同“状态”(空间分辨率)在不同“时间步长”(层数)之间的“转移概率”。直观来讲,我们的目标是找到从头到尾概率最大的路径。

实验:

实验细节:

网络共有L=12层, 每层的cell由B=5个block构成。当特征图尺寸减半时,filter的数量要翻倍。网络结构图中每个采样率为s的蓝色节点都有B*F*s/4个filter,其中F为控制模型容量的滤波器乘法器,设置F = 8。然后是双线性上采样,对于所有的2s→s连接都使用1 × 1卷积,既可以增加空间大小,又可以将filter数量减半。将ASPP简化为3个分支而不是5个,只需使用一个3×3卷积和atrous速率变为96/s。在输入图片方面,对图片采用尺寸为321*321的随机裁剪。

实验共进行了40个epoch的架构搜索优化。batch_size为2。因为如果α和β一开始就被优化,w就得不到充分训练,网络结构会陷入比较差的局部优化,因此选择在20个eopoch以后再开始优化α,β。

下图是搜索出的最佳架构(黑色实线)。在网络级体系结构上,一开始都要有较高的分辨率。灰色虚线箭头表示每个节点上β值最大的连接。atr:空洞卷积。sep:depthwise-separable卷积。通过搜索,总结出这样一个一般的趋势:网络在前3/4处进行下采样,在后1/4处进行上采样。

实验采用的网络结构:编码器是由搜索出的网络架构和ASPP模块组成的,解码器同DeepLabv3+,下采样率设置为4,利用低层特征恢复边界信息。重新设计了具有3个卷积层(第1,3个卷积层的步距为2)的主干结构,其中前两个卷积filter数量是64,第三个卷积的filter为128。

ASCAL VOC 2012 测试集结果中,AutoDeepLab-L 取得了可与众多在 ImageNet 和 COCO 数据集上预训练的顶级模型相媲美的结果。

更多前沿学术论文、AI小知识,尽在极链AI云

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-04-01 23:22:47  更:2022-04-01 23:23:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/9 0:36:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码