没有合适的资源?快使用搜索试试~ 我知道了~
10297AutoNL(我们的)MobileNetV2MobileNetV3ShuffleNetV2FBNetProxylessNasSinglePathMnasNetEfficientNet轻量级非局部网络李英伟1金晓杰2梅洁茹1连晓晨2杨林杰2谢慈航1俞启航1周玉银1宋白3阿兰·尤耶11约翰霍普金斯大学2字节跳动人工智能实验室3牛津大学摘要78非局部块在各种视觉任务中得到了广泛的研究。然而,很少探索将NL块嵌入移动神经网络中,主要是由于以下挑战:1)NL块通常具有沉重的计算成本,这使得其难以应用于计算资源有限的应用中,以及2)发现将NL块嵌入到移动神经网络中的最佳配置是一个公开的问题。我们提出AutoNL来克服上述两个障碍。首先,我们提出了一个轻量级的非本地(LightNL)块通过压缩变换操作,并结合紧凑的功能。设计新颖选择,建议的LightNL块是400×计算上比其传统的对手没有sac便宜对表演进行剪辑。其次,通过在训练过程中放松LightNL块的结构以使其可微,我们提出了一种高效的神经架构搜索算法,以端到端的方式学习LightNL块的最佳配置。值得注意的是,仅使用32个GPU小时,搜索的AutoNL模型在典型移动设置(3.5亿FLOPs)下在ImageNet上实现了77.7%的前1准确率,显著优于之前的 移 动模 型 , 包括 MobileNetV2 ( +5.7%) , FBNet(+2.8%)和MnasNet(+2.1%)。代码和型号可在https://github.com/LiYingwei/AutoNL 上 获得。1. 介绍非局部(NL)块[2,39]旨在捕获深度神经网络中的长程依赖关系,这些依赖关系已用于各种视觉任务,如视频分类[39],对象检测[39],语义分割[39,46],图像分类[2]和对抗鲁棒性[41]。尽管取得了显着的进展,非本地模块在资源受限的情况下,如移动设备的一般利用率这可能是由于以下两个因素。在字节跳动人工智能实验室实习期间完成的工作777675747372250 275 300 325 350 375 400FLOPs(M)图1. ImageNet精度与计算成本。详情见表3。首先,NL块通过关注所有其他位置并计算所有位置中的特征的加权平均值来计算每个位置处的响应,这导致了很大的计算负担。已经探索了若干努力来减少计算开销。例如,[7,22]利用结合律来减少矩阵乘法的存储和计算开销; Yue等人[44]利用泰勒展开法对非局部模块进行优化; Cao等人[4]通过卷积层计算亲和矩阵; Belloet al.[2]设计一种新的注意力增强卷积。然而,这些方法或者仍然导致相对大的计算开销(通过使用重运算符,诸如大矩阵乘法)或者导致不太准确的结果(例如,简化的NL块[4]),使得这些方法对于移动级视觉系统是不期望的。其次,NL块通常作为单独的模块实现,可以插入到一些手动选择的层(通常是相对较深的层)。虽然由于高计算复杂性,将其密集地嵌入到深度网络中是不容易的,但仍不清楚在何处现有的方法没有充分利用移动环境下的关系建模中NL块的能力。考虑到上述两个因素,我们的目标是回答以下问题,在这项工作中:它是正确的-Imagenet Top-1准确度(%)10298是否能够为移动网络开发高效的NL块?将这些模块嵌入移动神经网络的最佳配置是什么?我们提出AutoNL来解决这两个问题。首先,我们设计了一个轻量级非本地(LightNL)块,这是第一个将非本地技术应用到移动网络中的工作。我们通过两个关键的设计选择来实现这一目标1)减轻变换运算符(例如,1×1卷积)和2)利用紧凑的功能。因此,所提出的LightNL块通常比传统NL块在计算上便宜400倍[39],这有利于应用于移动深度学习系统。第二、我们提出了一种新的神经结构搜索算法。具体来说,我们放松了LightNL块的结构,使其可微,这样我们的搜索算法就可以在端到端训练过程中同时确定LightNL块的特征和位置的紧凑性。我们还通过一次性获取各种亲和矩阵来重用中间搜索结果,以减少冗余计算成本,从而加快搜索过程。我们提出的搜索算法是快速的,并提供高性能的轻量级模型。如图1所示,我们搜索的小AutoNL模型达到76。百分之五ImageNet top-1精度,267M FLOPs, 这是比MobileNetV3更快[16],性能相当(76. 6%的top-1精度,356M FLOP)。此外,我们搜索的大型AutoNL模型达到77。7%的Ima-geNet top-1精度,353 M FLOP,其具有与MobileNetV 3类似的计算成本,但将top-1精度提高了1。百分之一。总而言之,我们的贡献有三个方面:(1)我们为移动设备和资源受限的平台上的视觉识别模型设计一个轻量级和搜索兼容的NL块;(2)我们提出了一种高效的神经架构搜索算法来自动学习所提出的LightNL块 的 最 佳 配 置 ; 3 ) 我 们 的 模 型 在 移 动 设 置 下 的ImageNet分类任务上实现了最先进的性能。2. 相关工作注意力机制。近年来,注意机制已成功应用于神经语言处理[1,36,11]。Wang等人[39]桥接注意力机制和非局部算子,并将其用于计算机视觉应用中的远程关系建模。可以沿两个正交方向应用衰减机制:通道注意和空间注意。通道注意力[18,37,27]旨在对具有不同语义概念的不同通道之间的关系进行建模。通过聚焦于输入特征的一部分通道并去激活不相关的概念,模型可以聚焦于感兴趣的概念。由于它的简单性和有效性[18],它被广泛用于神经架构搜索[33,35,16,9]。我们的工作在空间/通道注意力的两个方向进行了探索。虽然现有的作品[7,44,4,2,38]利用各种技术来提高效率,但在移动设置下,它们仍然过于计算繁重。为了缓解这个问题,我们设计了一个轻量级的空间注意力模型,具有低计算成本,它可以很容易地集成到移动神经网络。高效的移动架构。有很多手工制作的神经网络架构[19,42,17,30,45,25]用于移动应用程序。其中,Mo- bileNet系列[17,30]和ShuffleNet系列[45,25]由于其优越的效率和性能而脱颖而出。MobileNetV2[30]提出了反转残差块以提高效率和性能超过Mo-bileNetV 1 [17]。ShuffleNet [25]提出使用高效的洗牌操作和群卷积来设计高效的网络。上述方法通常在模型设计过程中由专家反复试验。神经架构搜索。最近,使用神经架构搜索(NAS)为各种应用设计高效的网络架构受到了广泛关注[34,13,23,43,21]。NAS的一个关键部分是设计适当的搜索空间。在元控制器的指导下,早期的NAS方法使用强化学习[49]或进化算法[29]来发现更好的架构。这些方法在计算上效率低下,需要数千个GPU天来搜索。ENAS [28]在采样架构中共享参数以降低搜索成本。DARTS [24]提出了架构参数的连续松弛,并进行一次性搜索和评估。这些方法都采用了类似NASNet[49]的搜索空间。最近,在NAS中引入了手工制作网络 架 构 的 更 多 专 业 知 识 。 在 搜 索 空 间 中 使 用Mo-bileNetV 2基本块[3,40,33,35,31,14,26]显著提高了搜索架构的性能。[3,14]通过在训练期间的每个前向传递中仅执行超网的一部分来[26]提出了基本块的集成视角,并同时在细粒度搜索空间中搜索和训练目标架构[31]提出了一种超内核表示以合并所有的体系结构超参数(例如,核心大小、MobileNetV2块中的扩展比例),以重用模型参数和计算。在我们提出的搜索算法中,我们专注于寻找低成本神经网络中LightNL块的最佳配置,从而带来显着的性能提升。3. AutoNL在本节中,我们将介绍AutoNL:我们首先详细介绍如何在10299(x8 xT)x或x98989891×1硬件转换CXX硬件1×1ConvCX4(x)5(x)6(x)(一)HWCx x8HWCxx98HWCx x9(b)第(1)款HWCX+相关硬件3×3转换C7图2. 原始NL与LightNL块。(a)NL块的典型架构包含几个繁重的运算符,例如1×1卷积运算和大型矩阵乘法。(b)所提出的LightNL块包含更多轻量级运算符,例如去卷积运算和小矩阵乘法。第3.1节;然后我们在第3.2节中介绍了一种新的神经架构搜索算法,以自动搜索LightNL块的最佳配置。矩阵乘法可以大大减少计算开销。基于关联规则,Eqn.(3)可以写成两种等价形式:3.1. 轻量级非局部块在本节中,我们首先重新访问NL块,然后y =1C(x).Σ不θ(x)g(x)=1θ(x)C(x).不θ(x)Σg(x).(四)详细介绍了我们提出的轻量级非本地(LightNL)块重新访问NL块。NL块中的核心组件是非本地操作。在[39]之后,一般的非局部操作可以公式化为:虽然这两种形式产生相同的数值结果,但它们具有不同的计算复杂度[22]。因此,在计算Eqn.(3)为了更好的效率,总是可以选择具有较小计算成本的设计原则。第二部分介绍了两个关键1yi=C(x)Σf(xi,xj)g(xj),(1)日原则,以减少Eqn的计算成本。(三)、设计原则1:分享并减轻功能转换。而不是使用两个不同的变换(θ其中i索引输入特征x的位置,其响应将被计算,j枚举x中所有可能的位置,f(xi,xj)输出xi和其相邻的xt个特征xj之间的亲和矩阵,g(xj)计算输入特征在位置j处的嵌入,并且C(x)是归一化项。在[39]之后,以及g)在等式n中的相同输入特征x上。(3)在非局部运算中使用了共享变换。以这种方式,Eqn.通过在计算亲和矩阵中重用g(x)的结果,显著地减少了(3简化的非本地操作是1等式(1)被包裹到具有来自输入特征x的残差连接的NL块中。数学公式y =C(x)g(x)g(x)Tg(x).(五)被给定为zi=Wzyi+xi,(2)输入要素x(隐藏层的输出)可视为输入数据x通过要素其中Wz表示可学习的特征变换。实例化。点积被用作f(xi,xj)的函数形式,因为它在计算特征之间的相关性方面很简单等式(1)成为TransformerF(·)。 因此,Eqn. (5)可以写成y=1g(F(x))g(F(x))Tg(F(x))。 (六)C(F(x0))0 001y =C(x)硬件1×1ConvC××1×1ConvHWCX+HW颈710300θ(x)θ(x)Tg(x).(三)在神经网络中使用NL块的情况下,F(·)由参数化的深度神经网络表示。在相反,g(·)是单卷积运算。为了进一步这里,x的形状表示为(H,W,C),其中H,W和C分别是通道的高度、宽度和数量。θ( ·)和g(·)为1×1卷积层,带C滤波器。在矩阵乘法之前,1×1卷积的输出被整形为(H×W,C)。简化方程 (6)将g( ·)的学习过程统一到F(·)的学习过程中。 利用深度神经网络在逼近函数方面的强大能力[15],我们回顾了g(·)和Eqn。(6)简化为Levi等人[22]发现对于实例化的NL块,以Eqn的形式(3)采用结合律,1y =C(x)xxT x.(七)10301带LightNL带LightNL不带LightNL不带LightNLSC最后介绍了我们对方程中另一个重变换函数“Wz“的化简方法(二)、最近的作品[39]将其实例化为1×1卷积层。为了进一步降低NL块的计算量,我们提出用3×3的卷积代替1×1的卷积[17]因为后者更有效。 等式(二)然后修改为z= DepthwiseConv ( y , Wd ) +x ,(8)其中W d表示深度卷积核。设计原则二:使用紧凑特性计算亲和矩阵。由于x是高维特征,因此使用每个等式的全尺寸x(7)导致大的计算开销。为了解决这个问题,我们建议首先对x进行下采样,以获得一个更紧凑的特征,它取代了等式中的x(七)、由于X是具有深度(通道)、宽度和高度的三维特征,因此我们提出沿着通道维度、空间维度或这两个维度对X进行下采样,以分别获得紧凑特征Xc、Xs和Xsc。因此,Eqn.(7)减少。因此,基于Eqn。(7),我们可以简单地应用NL块中的紧凑特征{xc,xsc,xs}来计算xc xT和xT xs作为76747573727471737072697168分类分割图3. MobileNetV2与MobileNetV2 + LightNL。提议的LightNL块将基线提高1。ImageNettop-1准确率为6%,PASCALVOC 2012 mIoU中的3%图2中示出了传统NL块和所提出的块的真值。3.2. LightNL的神经架构搜索为了验证所提出的LightNL块在深度网络中的有效性和通用性,我们通过将其应用于每个MobileNetV2块来进行证明测试。如图3所示,使用所提出的LightNL块的这种简单方式已经可以显著提高图像分类和语义分割的这一观察激励我们寻找一个更好的SC SCy=1C(x)xcxTxs。(九)在神经网络中配置所提出的LightNL块,从第3.1节可以看出,除了神经网络中的插入位置之外,注意,在计算成本和输出的表示能力之间存在折衷(即,(二)非本地业务:使用更紧凑的特征(具有更低的下采样率)降低了计算成本,但是输出不能捕获那些丢弃的特征中的信息性上下文信息;另一方面,使用更密集的特征(具有更高的下采样率)有助于输出捕获更丰富的上下文,但是它在计算上要求更高。手动设置降采样率需要反复试验。为了解决这个问题,我们在第3.2节中提出了一种新的神经网络架构搜索(NAS)方法,以有效地搜索在特定资源约束下实现下降性能的NL块在介绍我们的NAS方法之前,让控制LightNL块的复杂性是另一个需要确定的重要因素。我们注意到LightNL块的插入位置和下采样时间表对模型的性能和计算成本至关重要。为了自动化模型设计过程并找到建议的LightNL块的最佳配置,我们提出了一种有效的神经架构搜索(NAS)方法。具体地说,我们建议联合搜索LightNL块的配置和基本神经网络架构参数(例如,内核大小、通道数量)。插入位置。受[31]的启发,我们选择了几个可以在整个 网 络 中 插 入 LightNL 块 的 位 置 , 并 通 过 比 较dependenconvolution内核Wd的L2范数与可训练潜在变量t来决定是否应该使用LightNL块:由于上述两个设计原则,经验证明,所提出的LightNL块比传统的LightNL块更有效(参见第4节)Wd=.2ΣWd·Wd,(10)典型NL块[39],使得其有利于在具有有限计算预算的移动设备中部署。此外,由于块的计算复杂度可以通过下采样率轻松调整,因此所提出的LightNL块可以在不同尺度下对深度学习模型提供更好的支持。我们说明了结构-其中W_ d代替W_d用于等式11中。 (8),并且是指示函数。 (·)=1指示将使用LightNL块,其中W_ d=W_d是深度卷积核。否则,当 W(·)= 0时,W( ·)d=0,并且因此等式(8)退化为z=x,意味着没有轻量将插入非本地块。ImageNet Top-1访问率(%)PASCAL VOC mIoU10302Xi−1ri−12r2gtHW×C为×=HWC/2++HW +硬件C/2+电源+硬件CHWHW HWHW HW基于紧致特征的相关映射图4.沿着通道维度说明特征重用范例。我们没有手动选择阈值t的值,而是将其设置为可训练参数,通过梯度下降与其他参数联合优化。为了计算t的梯度,我们将指示函数I(x,t)=f(x > t)松弛为可微的S形函数σ(·)。其中,AND表示逻辑运算符AND。对Eqn的有理数作了直观的解释(12)算法总是选择最小的r,利用该最小的r,xrxrT和xgtxgtT之间的欧几里德距离小于阈值t。 为了确保n= 1,n所有其他指标均为零,我们设置xgt=xr,因此,xrxT−xgtxT<$21。的计算关键的一步是如何用公式表示出使用xri的亲和矩阵可以分解为用于决定使用哪个下采样比率一个理由-直觉是,标准应该能够确定Σxr xT = xrxΣTΣri−1下采样特征是否可用于计算准确的亲和矩阵。因此,我们的目标是定义一个我是我=xri−1XTri\ri−1+ x不ri\ri−1xT,(十四)“similarity”i−1ri−1ri\ri−1ri\ri−1从下采样特征中提取的相似度矩阵接近“地面实况”相似度矩阵,表示为xxT。具体来说,我们编写其中xr xT是否计算出可重用的亲和矩阵指示符作为 .(r1)=gtgtΣxrxT−xr xT <$2t,<1具有较小的下采样率(回想一下,
下载后可阅读完整内容,剩余1页未读,立即下载
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功