作者:v木易杨_920 | 来源:互联网 | 2023-09-14 19:21
文章来源 | 极链AI云(性价比最高的共享算力平台,助力你的技术成长~首次注册可获免费100小时GPU使用时长!官网地址:https://cloud.videojj.com/)
作者 | 小仇【极链AI云技术原创奖励计划】
原文地址 | 【神经网络架构】Pyramid Convolution(金字塔卷积模块)论文笔记(官网论坛)
今年论文提出很多是,在一般backbone上通过添加小模块用于提升分类分割目标检测等任务的精度。下面介绍DeepMind提出的Pyramidal Convolution:Rethinking Convolutional Neural Networks for Visual Recognition
论文链接:https://arxiv.org/pdf/2006.11538.pdf
源码链接:https://github.com/iduta/pyconv
Motivation
尽可能引入少的参数和计算代价,增大backbone的感受野。
Method
类似Inception分支和ASPP模块,提出使用不同卷积核的多分支网络。与类似模块大部分使用不同空洞卷积核的是PyConv提出使用分组卷积的思想。
PyConv中多分支使用不同大小的卷积核,论文中包括33,55,77,99的卷积核。一般的,较小的卷积核感受野较小,可以得到小目标和局部细节信息。较大的卷积核感受野较大,可以得到大目标和全局语义信息。
分组卷积是将输入特征图切分成不同组,使用卷积核独立处理。论文中提出两个版本,PyConv和PyHGConv。PyConv中使用相对较小的分组数,包括16,8,4,2。PyHGConv使用较大的分组数,包括32和64。
在backbone结合时考虑到特征图的空间尺寸减小,分支数逐渐减少。最初阶段特征图通过四个分支,最后阶段特征图仅使用一个分支。
语义分割任务中在一般网络中添加局部PyConv模块和全局PyConv模块。这两个模块都包括使用1*1卷积将通道数增加到512,后使用四分支的PyConv模块,卷积核包括9,7,5,3,分组数分别为16,8,4,2。不同的是全局PyConv模块需要使用Adaptive平均池化层减少特征图大小同时提取全局特征。PyConv分支后使用上采样恢复原始尺寸。之后将局部PyConv提取的特征和全局PyConv提取的特征合并。
Experiment
该模块在ImageNet图像分类数据集任务上表现如下:
近年知名插件比较如下:
该模块在ADE20k语义分割数据集上表现如下:
想要认识更多深度学习小伙伴,交流更多技术问题,欢迎关注公众号“极链AI云”(为你提供性价比最高的共享算力平台,官网地址:https://cloud.videojj.com/)