学习用于语义分割的动态路径
一、简介
语义分割面临的问题:图像中存在尺寸不一的物体及背景区域,这种尺寸分布的差异给特征表示和关系建模带来了不少困难。
传统的解决方法: 设计精巧的模型结构来缓解这种差异,然而无论是人工设计还是基于NAS模型搜索得到的网络,都尝试在单个网络框架中编码所有的像素区域,在现实环境中缺乏对各种尺度分布的适应能力。
本文提出一种在概念上新颖的语义分割框架——动态路径。
动态路径会在推理过程中生成与数据相关的前向传播路径,这意味着特定的网络结构会随着输入的不同而改变。使用这种方法,不同尺寸的实例或者背景可以分配到相应的分辨率层级上进行有针对性的特征变换。
本文侧重于语义表示,目的是减轻尺度变化,从而提高网络效率。
在动态路径方面,设计了一个数据相关的路径门控,称为软条件门控,来根据输入图像选择不同的路径。
二、Related Work
2.1、Handcrafted Architectures
总而言之,手动搭建的网络架构旨在利用静态网络中不同阶段的多尺度特征,而不是动态地适应输入。
2.2、NAS-based Approaches
与基于NAS的方法(先搜索单个体系结构然后对其进行重新训练)不同,所提出的动态路径无需搜索就可以动态生成前向路径。
2.3、Dynamic Networks
为了利用动态特性,本文提出了一种端到端的动态路径框架,以减轻输入之间的规模差异。
三、Learning Dynamic Routing
3.1、Routing Space
三个约束:
在相邻层之间设置一种具有一些先验约束的完全连接来释放动态路径的潜力。
网络最开始的地方是一个固定的3×3的“STEM”块,主要用来将输入图像尺寸降低到四分之一。
在路径空间中,相邻单元间的比例因子被限制为2,这是在ResNet中广泛使用的。
在这些约束条件下,每个层中的候选数量最多为4个。在每个候选样本中有3条尺度变换路径,即上采样、保持分辨率和下采样。在每个候选单元中,基本单元被设计用于特征聚合,而基本门被设计用于路径选择。将逐层采样模块固定在网络的末端以产生预测。
3.2、Routing Process
3.2.1、Cell Operation
我们在每个单元中采用广泛使用的独立卷积堆栈和恒等映射。
这里每个单元的操作都会用于特征聚合。
3.2.2、Soft Conditional Gate
在门控中采用轻量级的卷积操作来学习与数据相关的向量
不同于传统的基于强化学习的采用策略梯度来更新智能体(agent)从而进行分离路径的选择。本文提出了可微路径的软条件门。
激活函数
路径会随输入的变化而变化。
每一个路径都会被单独考虑,而不是仅仅选择相关的重要的一条来传播。
使用激活因子,只要保留一条路径(也就是α大于0的那条路径),通过反向传播,门控中的参数就可以得到优化。
3.3、Budget Constraint
3.4、Architecture Details
s到s/2,步长为2的逐点卷积,为了减小特征图大小以及加倍卷积核的数量。
s到2s,逐点卷积后面跟着上采样,提高空间分辨以及减半卷积核数量。