CVPR2020-AutoNL,超越FBNet、EfficientNet | Neural Architecture Search for Lightweight Non-Local Networks

针对Non-Local模块的神经网络搜索,因为效果SOTA+对Non-Local感兴趣,Mark一下
论文地址:https://arxiv.org/pdf/2004.01961.pdf
Github(Tensorflow):https://github.com/LiYingwei/AutoNL
Github(Pytorch):https://github.com/meijieru/yet_another_mobilenet_series

在这里插入图片描述

Abstract:

Non-Local(NL)模块已在各种视觉任务中得到了广泛的研究。但是,由于以下挑战,很少将NL块嵌入移动神经网络中:
1)NL块通常具有沉重的计算成本,这使得难以将其应用于计算资源有限的应用中;
2)发现将NL块嵌入到移动神经网络的最佳配置是一个悬而未决的问题。
我们提出AutoNL克服以上两个障碍。首先,我们通过压缩转换操作并合并紧凑特征来提出轻量级Non-Local(LightNL)块。通过新颖的设计选择,所提出的LightNL模块在计算上比传统模块降低400倍,而不会牺牲性能。其次,通过放松LightNL块的结构使其在训练过程中可区分,我们提出了一种有效的神经体系结构搜索算法,以端到端的方式学习LightNL块的最佳配置。值得注意的是,仅使用32个GPU小时,在典型的移动设置(3.5亿个FLOP)下,搜索到的AutoNL模型在ImageNet上就达到了77.7%的top-1精度,大大优于以前的移动模型,包括MobileNetV2(+5.7%),FBNet(+ 2.8%)和MnasNet(+ 2.1%)。

Introduction:

Non-Local模块的优势是可以捕获长距离的特征依赖关系,然后现有Non-Local模块存在以下两个缺点:

1.Non-Local模块会引入沉重的计算负担。虽然最近有很多关于Non-Local的改进版本。但是,这些方法仍然导致相对较大的计算开销(通过使用繁重的运算符,例如大矩阵乘法),或者导致结果的准确性降低,这使得这些方法对于移动级视觉系统而言是不可取的

2.其次,NL块通常实现为单个模块,可以插入几个手动选择的层(通常是相对较深的层)中。 尽管由于高计算复杂度很难将其密集地嵌入到深层网络中,但仍不清楚在哪里经济地插入这些模块。 现有方法尚未在移动设置下的关系建模中充分利用NL块的功能。
在这里插入图片描述
因此,本文针对这两个问题,设计了一个轻量级Non-Local(LightNL)块,(上图显示出AutoNL的优越性)这是本文尽力将Non-Local技术应用于移动网络的第一项工作。
通过两个关键的设计选择来实现这一目标:
1)减轻变换运算符的影响(例如1 x 1卷积)
2)利用紧凑的功能。
结果,所提出的LightNL块通常比传统的NL块在计算量方面降低了400倍,这有利于应用于移动深度学习系统。 其次,本文提出了一种新颖的神经架构搜索算法。 具体而言,我们放宽了LightNL块的结构以使其可区分,以便我们的搜索算法可以在端到端训练期间同时确定特征的紧凑性和LightNL块的位置。 我们还通过一次获取各种相似性矩阵来重用中间搜索结果,以减少冗余的计算成本,从而加快了搜索过程。

AutoNL(NAS方法表示还不是很懂):

1.LightNl的结构设计
在这里插入图片描述
2.AutoNL整体网络结构
在这里插入图片描述

Experiments:

1.ImageNet:
在这里插入图片描述
2.Performance vs Floats:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42096202/article/details/106267495