乐趣区

关于算法:ESPNetESPNetV2空洞卷积金字塔-轻量级网络

ESPNet 系列的外围在于空洞卷积金字塔,每层具备不同的 dilation rate,在参数量不减少的状况下,可能交融多尺度特色,绝对于深度可拆散卷积,深度可拆散空洞卷积金字塔性价比更高。另外,HFF 的多尺度特色交融办法也很值得借鉴

起源:晓飞的算法工程笔记 公众号

ESPNet


论文: ESPNet: Efficient Spatial Pyramid of Dilated Convolutions for Semantic Segmentation

  • 论文地址:https://arxiv.org/abs/1803.06815
  • 论文代码:https://github.com/sacmehta/ESPNet

Introduction

  ESPNet 是用于语义宰割的轻量级网络,外围在于 ESP 模块,该模块蕴含 point-wise 卷积和空洞卷积金字塔,别离用于升高计算复杂度以及重采样各无效感触域的特色。ESP 模块比其它卷积合成办法 (mobilenet/shufflenet) 更高效,ESPNet 能在 GPU/ 笔记本 / 终端设备上达到 112FPS/21FPS/9FPS。

ESP module

  ESP 模块将规范卷积分解成 point-wise 卷积和空洞卷积金字塔(spatial pyramid of dilated convolutions),point-wise 卷积将输出映射到低维特色空间,空洞卷积金字塔应用 $K$ 组 $n\times n$ 空洞卷积同时重采样低维特色,每个空洞卷积的 dilation rate 为 $2^{k-1}$,$k=\{1, \cdots, K\}$。这种合成办法可能大量缩小 ESP 模块的参数量和内存,并且放弃较大的无效感触域。

  • Width divider K

  对于输入输出维度为 $M$ 和 $N$,卷积核大小为 $n\times n$ 的规范卷积,须要学习的参数量为 $n^2MN$,无效感触域为 $n^2$。超参数 $K$ 用来调节 ESP 模块的计算复杂度,首先应用 point-wise 卷积将输出维度从 $M$ 降为 $\frac{N}{K}$(reduce),而后将低维特色别离应用上述的空洞卷积金字塔进行解决(split and transform),最初将 K 组空洞卷积的输入合并(merge)。ESP 模块蕴含 $\frac{MN}{K}+\frac{(nN)^2}{K}$ 参数,无效感触域为 $[(n-1)2^{K-1} + 1]^2$,在参数和感触域方面都有肯定的晋升。

  • Hierarchical feature fusion (HFF) for de-gridding

  论文发现,只管空洞卷积金字塔带来更大的感触域,但间接 concate 输入却会带来奇怪网格纹路,如图 2 所示。为了解决这个问题,在 concate 之前先将输入进行层级相加,绝对于增加额定的卷积来进行后处理,HFF 可能无效地解决网格纹路而不带来过多的计算量。另外,为了保障网络的梯度传递,在 ESP 模块增加了一条从输出到输入的 shortcut 连贯。

Relationship with other CNN modules

  论文列举了局部轻量级网络的外围模块进行了比照,能够看到 ESP 模块在参数量 / 内存 / 感触域方面都有很不错的数值。

ESPNet

  图 4 为 ESPNet 的演进过程,$l$ 为特色图大小,雷同 $l$ 的模块具备雷同大小的特色图,红色和绿色模块别离为下采样和上采样模块,个别无阐明即 $\alpha_2=2$、$\alpha_3=8$。

Experiments

  这里只列举了局部试验,具体的其它试验能够去看看论文。

  替换图 4d 中的 ESP 模块进行试验比照。

  与其它语义宰割模型进行比照。

Conclusion

  ESPNet 是语义宰割的轻量级网络,在保障轻量化的同时,针对语义宰割的场景进行了外围模块的设计,应用空洞卷积金字塔进行多感触域的特征提取以及参数量的缩小,并且应用 HFF 来奇妙打消网格纹路,非常值得借鉴。

ESPNetV2


论文: ESPNetv2: A Light-weight, Power Efficient, and General Purpose Convolutional Neural Network

  • 论文地址:https://arxiv.org/abs/1811.11431
  • 论文代码:https://github.com/sacmehta/ESPNetv2

Introduction

  模型轻量化共蕴含 3 种办法,别离为模型压缩,模型量化以及轻量化设计。论文设计了轻量级网络 ESPNetv2,次要奉献如下:

  • 通用的轻量化网络结构,可能反对视觉数据以及序列化数据,即能反对视觉工作和自然语言解决工作。
  • 在 ESPNet 根底上,退出深度可拆散空洞卷积进行拓展,绝对于 ESPNet 领有更好的精度以及更少的参数。
  • 从试验来看,ESPNetv2 在多个视觉工作上有较好的准确率和较低的参数量,工作包含图像分类、语义宰割、指标检测。
  • 设计了 cyclic learning rate scheduler,比个别的固定学习率的 scheduler 要好。

Depth-wise dilated separable convolution

  假如输出为 $X\in \mathbb{R}^{W\times H\times c}$,卷积核为 $X\in \mathbb{K}^{n\times n\times c \times \hat{c}}$,输入为 $Y\in \mathbb{R}^{W\times H\times \hat{c}}$,规范卷积、分组卷积,深度拆散卷积以及深度可拆散空洞卷积的参数量和无效感触域如表 1 所示。

EESP unit

  论文基于深度可拆散空洞卷积以及分组 point-wise 卷积改良 ESP 模块,提出了 EESP(Extremely Efficient Spatial Pyramid)模块。原始的 ESP 模块构造如图 1a 所示,论文首先将 point-wise 卷积替换为分组 point-wise 卷积,而后将计算量较大的空洞卷积替换为深度可拆散空洞卷积,最初仍然应用 HFF 来打消网格纹路,构造如图 1b 所示,可能升高 $\frac{Md+n^2d^2K}{\frac{Md}{g}+(n^2+d)dK}$ 倍计算复杂度,$K$ 为空洞卷积金字塔层数。思考到独自计算 $K$ 个 point-wise 卷积等同于单个分组数为 $K$ 的 point-wise 分组卷积,而分组卷积的在实现上更高效,于是改良为图 1c 的最终构造。

  为了更高效地学习多尺度特色,论文提出下采样版本的 EESP 模块(Strided EESP with shortcut connection to an input image),次要进行以下改良:

  • 批改深度可拆散空洞卷积为 stride= 2 的版本。
  • 为模块本来的 shortcut 增加均匀池化操作。
  • 将 element-wise 相加操作替换为 concate 操作,这样能减少输入的特色维度。
  • 为避免随着下采样产生的信息失落,增加一条连贯输出图像的 shortcut,该门路应用多个池化操作来使其空间大小与模块输入的特色图统一,而后应用两个卷积来提取特色并调整维度,最初进行 element-wise 相加。

Network architecture

  ESPNetv2 的网络结构如表 2 所示,ESSP 模块的每个卷积前面都接 BN 层以及 PReLU,模块最初的分组卷积的 PReLU 在 element-wise 相加后进行,$g=K=4$,其它与 ESPNet 相似。

Cyclic learning rate scheduler

  在图像分类的训练中,论文设计了循环学习率调度器,在每个周期 $t$,学习率的计算为:

  $\eta_{max}$ 和 $\eta_{min}$ 别离为最大和最小学习率,$T$ 为循环周期。

  循环学习率调度器的可视化如图 4 所示。

Experiments

  图像分类性能比照。

  语义宰割性能比照。

  指标检测性能比照。

  文本生成性能比照。

Conclusion

  ESPNetv2 在 ESPNet 的根底上联合深度拆散卷积的设计办法,进行了进一步的模型轻量化,联合了更丰盛的特色交融,模型可能拓展到多种工作中,具备很不错的性能。

CONCLUSION


  ESPNet 系列的外围在于空洞卷积金字塔,每层具备不同的 dilation rate,在参数量不减少的状况下,可能交融多尺度特色,绝对于深度可拆散卷积,深度可拆散空洞卷积金字塔性价比更高。另外,HFF 的多尺度特色交融办法也很值得借鉴。



如果本文对你有帮忙,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

退出移动版