没有合适的资源?快使用搜索试试~ 我知道了~
Hai Phan1 ∗Zechun Liu1,3 ∗Dang Huynh2Marios Savvides1Kwang-Ting Cheng3Zhiqiang Shen1{haithanp,marioss,zhiqians}@andrew.cmu.edudhuynh@axon.com{zliubq,timcheng}@ust.hk-11 -111 -1111 -1 -1111 -1 -1-111111 -11-11 -1 -1-111 -1-1 -11 -11111-111 -111 -1111 -111 -1-111-1 -1111 -1-111-1 -111 -1111 -1⨂⨂⨂c332…−9,9−18,18−9 ∗ 𝑐,9 ∗ 𝑐0510Epoch6.66.76.86.97Loss0510Epoch234567Loss0510Epoch234567Loss2c3c3cc-3c-3-1-1-710-1022……134200通过基于进化搜索的方法对MobileNet进行二值化01 卡内基梅隆大学 2 Axon企业 3 香港科技大学0摘要0二进制神经网络(BNNs)是一种有效的紧凑型网络架构之一,在视觉任务中取得了很好的效果。由于网络的二进制特性,设计高效的二值化架构并不容易。本文提出了一种使用进化搜索来促进对MobileNet进行二值化的构建和训练方案的方法,MobileNet是一种具有可分离深度卷积的紧凑型网络。受到一次性架构搜索框架的启发,我们利用组卷积的思想设计了高效的1位卷积神经网络(CNNs),假设在计算成本和模型准确性之间存在近似最优的权衡。我们的目标是通过探索组卷积的最佳候选集,提出一个小而高效的二值化神经架构,同时在复杂性和延迟方面优化模型性能。这种方法有三个步骤。首先,我们在每个卷积层上使用各种随机组合的组来训练强大的基准二值化网络。这种设置使得二值化神经网络能够通过层保留关键信息。其次,为了找到一组好的组卷积超参数,我们利用进化搜索来探索高效的1位模型。最后,这些二值模型以常规方式从头开始训练,以获得最终的二值模型。在ImageNet上进行了各种实验,结果表明,遵循我们的构建准则,最终模型达到了60.09%的Top-1准确率,并且在相同的计算成本下优于最先进的CI-BCNN。01. 引言0在过去的几年中,针对移动平台的深度卷积神经网络(DCNN),假设计算能力和电池方面存在某些约束,已经在机器视觉的各种视觉任务中被实验证明是一种成功的方法[20,16,43,42,0� 表示相等的贡献。0深度卷积 #通道数=2 #通道数=c0二进制激活0输出0图1.XNOR二进制操作在深度卷积层(左)、组卷积层(中)和全卷积层(右)中的应用。�表示XNOR运算符。假设所有通道具有相同的值,深度卷积的值范围限制在[−9,9]之间,限制了BNNs的表示能力但卷积速度快。完全二进制卷积提供了更大的可能值范围,增强了BNNs的能力但计算速度慢。组卷积平衡了两个世界:它保持足够宽的值范围以保留特征表示,同时具有高效的轻量级。底部的三个图示分别表示深度卷积、组卷积和全卷积在训练阶段的收敛行为。二进制深度卷积容易发散;完全卷积有效地找到了通向局部最小值的方法,略优于组卷积,后者稳定收敛。052 , 33]。已经提出了许多压缩神经网络,例如修剪[13,12,29,49,50,31]和量化[1,54,25]。最近,二值化神经网络(BNNs)引起了很多兴趣,并取得了显著的改进[39,15,32,3,45]。以前的工作主要集中在对包含数百万参数的大型ConvNets进行二值化。另一方面,紧凑型神经网络(例如MobileNet [16])是一种有前途的网络架构之一134210•MobileNet利用轻量级的深度可分离卷积层来提高在移动设备上的网络效率。然而,使深度可分离操作符能够应对1位量化以使网络更加紧凑并不是一件简单的事情。通过深度可分离卷积,神经网络实现了低推理延迟,当进行1位量化时甚至更加优化。然而,在这种二值化中,卷积层的输入是按通道进行乘法和求和的。因此,输出值被限制在一个狭窄的范围内。例如,一个二值化的3×3深度可分离滤波器与输入的一个通道卷积得到的值在[-9,9]之间,降低了二进制神经网络的表示能力。另一方面,二值化的普通卷积结果具有更大的输出值范围,可以获得丰富的特征表示,并通过网络层有效地保留数据样本的分布。图1说明了这个观点的原理。尽管有效,普通卷积的计算成本很高,因为滤波器要卷积输入张量的所有通道。因此,将深度可分离或普通卷积替换为组卷积似乎是一种有前途的方法,可以弥补神经网络延迟、特征表示能力和计算资源约束之间的权衡。组卷积是一种简单而高效的操作,被用于各种神经网络来优化可训练的网络参数和计算。AlexNet[23]、ConDenseNet [17]、ResNeXt[47]等都是利用组卷积并取得了很好结果的流行神经架构。在极端情况下是深度可分离卷积。在深度可分离中,每个通道是一个单独的组,或者换句话说,组的数量正好等于输入张量的深度。普通卷积也是组卷积的一种特殊情况,其中#groups =1。在大多数具有组卷积层的网络中,不同层的组数通常是均匀的。从我们的角度来看,将组分布在不同层上的异构方案可以帮助构建一个高效和准确的神经架构,直观地假设在网络层中具有非均匀的特征表示。为了利用异构组卷积的有效性,本文提出了一种新颖的权重共享机制,以在组搜索空间中寻找最优的紧凑二进制神经架构,该架构能够高效且准确地执行具有挑战性和复杂性的图像分类任务,其中数据量巨大且对象类型多样。与神经架构搜索(NAS)[55, 37, 48,27]中高度复杂的卷积操作空间进行搜索不同,我们在一个由13个层组成的MobileNet结构中利用可控的组卷积搜索空间,从而得到一个潜在的紧凑且高效的二进制架构。本文的主要贡献有三个方面:0•我们提出了一种自适应的权重共享训练机制,通过在组空间中自动搜索来构建高效的BNNs。更重要的是,我们的训练方案直观、灵活且易于实现。0•我们引入了一种新颖的二进制神经网络结构,通过异构组合卷积层来寻找潜在的架构设计。我们的工作为增强BNN的能力指明了一种新的方向。0•我们将搜索的范围限定在一个由13层组成的MobileNet结构中的组卷积空间,从而得到一个潜在的紧凑且高效的二进制架构。0•我们进行了大量实验来证明,遵循我们的方法,二进制神经架构构建在计算节省和模型准确性方面取得了显著的改进,因此能够在大规模ImageNet数据集[9]上达到最先进的性能。02. 相关工作0我们见证了对二进制神经网络的许多研究兴趣。Courbariaux等人[8, 7,18]描述了在深度卷积神经网络中约束全精度权重为{-1,1}的第一个工作,通过利用XNOR-count运算符并能够加速推理阶段比标准卷积操作快23倍,比用于线性代数计算的高效GPU框架cuBlas[51]快3.4倍。该工作在流行的数据集MNIST[24]、CIFAR10[22]和SHVN[36]上进行基准测试时取得了高精度。XNOR-Net[39]是一个有趣的想法,利用从全精度权重估计的缩放因子,并在AlexNet架构[23]上实现了44%的ImageNetTop-1准确率。与我们的工作最相关的两种方法是Bi-RealNet[32]和MoBiNet[38]。这些二进制模型描述了使用跳跃连接和组卷积来增强BNN在特征表示方面的能力。这两个模型在将激活和权重二值化时分别达到了56%和54%的ImageNetTop-1准确率,达到了最先进的性能。最近的一项关于BNN的工作[15]引入了二进制优化器,消除了二进制权重对实际值的依赖,开辟了改进BNN的新途径。∂L∂L ∂Xb∂L ∂Sign(X)∂L ∂A(X)A(x) =∂A(x)∂x=(4)134220为了改进二进制神经网络架构,我们采用了神经架构搜索(NAS)的方法。NAS旨在以自动而不是手动的方式构建神经网络。许多NAS算法将搜索问题形式化为优化问题,并取得了巨大的成功[28,5],找到了最优的架构,假设网络延迟和计算资源的约束。接下来,我们将重点回顾适用于移动设备的神经架构搜索。Pham等人引入了ENAS[37],被认为是一种使用基于单元的搜索空间的高效神经架构搜索方法之一。该网络训练了一个超图,从中选择次优路径以在子模型中创建共享参数。通过缩小搜索过程参数,这减轻了在巨大的探索空间中徘徊时的挑战。还有其他超越手动设计网络的方法。Liu等人[28]提出了DARTS,这是一种优化基于搜寻空间连续松弛的一次性模型的突出梯度方法。然而,由于模型是由一组操作的混合组装而成的,性能在很大程度上依赖于集合选择。另一种具有相同特点的方法是Proxy-lessNAS[4],它将1位神经架构调整为减少一次性模型的GPU内存使用。选择操作边缘的概率由BinaryConnect[8]更新。而基于强化学习和进化方法的NAS算法严格要求使用数千个GPU进行计算[55, 27, 40, 41,34],单路径一次性架构搜索方法在条件探索空间上是可行的。Guo等人[11]和Chen等人[6]实现了名为SPOS和DetNAS的一次性模型,分别解决图像分类和目标检测问题。SPOS[11]在每次迭代中随机选择一个单路径来建立超网络,算法在其中应用进化搜索来寻找神经网络形成的最优路径。在一次性网络中,预训练输出可以用于转移到不同类型的任务,如目标检测和分割。我们提出的方法在训练随机组卷积方面有类似的特点,假设在神经架构中进行权重共享和搜索最佳的组合。03. 我们的方法03.1. 二值运算0在本节中,我们提供了关于二值神经网络的一些基本背景。在对权重和激活进行二值化时,典型的二值神经网络使用符号函数将值约束为 -1 或 +1。0x b = Sign ( x ) = � +1 ,如果 x ≥ 0 ,-1,否则 (1)0其中 x b 是 x的二值化值,可以是网络输入或权重。与浮点型神经网络类似,1位权重被有意地计算以最小化目标函数:0w b � = arg min w b L ( f b ( x , w b ) , y ) (2)0其中 L 是损失函数;x、w b 和 y分别是输入、二值权重和标签。由于1位值降低了神经网络在层间保留特征的能力,我们采用了XNOR-Net中提到的缩放因子和反向传播方案来解决训练发散问题并提高二值网络性能。此外,为了计算不可微分的符号函数的梯度,我们采用了适应激活函数关于符号函数的导数的近似方法。0∂ X (3) A ( ∙ )表示分段多项式函数中的可微近似函数,其中0-1,如果 x < -1 ,2 x + x 2,如果 -1 ≤ x < 0 ,2 x - x 2,如果 0 ≤ x < 1,否则为1。02 + 2 x ,如果 -1 ≤ x < 0,2 - 2 x ,如果 0 ≤ x < 1,否则为0。0权重只在前向步骤中进行二值化,用于训练和测试阶段,然后我们可以应用二值的xnor-popcount运算符来加速处理。在反向步骤中,实际权重被存储以计算导数并更新新值。03.2. 设计和搜索1位MobileNets0二值神经网络和神经架构搜索是构建紧凑且高效的神经模型的最有潜力的技术之一。网络架构设计通常对二值网络的性能有很大影响。我们的主要目标是探索具有高效设计的二值神经网络,希望神经架构搜索技术能够利用这种探索来生成紧凑的结构。然而,神经架构搜索通常涵盖了大量的卷积算子搜索空间,因此很容易生成次优的神经网络。直接在二值算子空间中进行探索可能非常困难和昂贵。为了简化搜索空间并防止计算过高的代价,.........134230输入0随机分组0(a) 二值网络预训练0输入0分组卷积0(b) 进化分组卷积搜索0进化控制器0分类得分分类得分0输入0分组卷积 (c) 网络重新训练0分类得分0图2.我们提出方法的框架概述。该过程包括三个步骤:使用随机分组训练二值模型(顶部图,曲线箭头表示循环),应用进化搜索基于准确度指标探索最优分组,然后从头开始重新训练搜索到的分组模型。0我们在神经网络中利用随机分组卷积算子和权重共享开发了一种新的训练过程。通过这种方法,由于考虑了各种各样的分组组合,二值模型变得稳健,这有助于分组搜索过程。使用神经架构搜索探索二值神经网络的新架构可以开辟一个潜在的研究方向,显著改善二值网络的构建。在接下来的章节中,我们将讨论如何使用我们提出的训练流程进行分组卷积搜索和优化。03.2.1 二值神经网络的进化组卷积搜索0据我们所知,进化算法,即遗传算法,基于自然界中物种的进化。自然选择淘汰无法适应环境的个体。此外,幸存者被保留用于繁殖、交叉和变异。最近提出了几种用于神经架构的进化方法[30,46]。我们不像以前的工作那样搜索包括完整连接和运算符的整个网络,而是对卷积层的组值进行进化搜索,以探索具有简单有效的网络设计的合适二值结构。在每一层,组候选包括所有可能的输入通道的监督者。具体而言,我们首先对可能的组进行抽样,并在此列表上进行搜索,为每次迭代训练随机组,以实现高于阈值的准确性。其次,为了使计算成本可控,我们选择满足最大FLOP数量的二值紧凑模型,使其满足以下约束条件:03.2.1 二值神经网络的进化组卷积搜索0FLOP(W,G)≤ FLOPmax(5)0其中W是权重,G是每个卷积层的组合。搜索流程如算法1所示。0算法1. 组卷积的进化搜索 输入: 候选组大小: S,顶级候选:K,交叉次数: C,变异次数: M,模型权重: W,FLOP约束:F 输出: 在其他组合中产生最高准确性的最佳组合G�。01: G� ← 采样候选(S,F)#组候选 2: fori=1:maxIteration do 3: Fitness ←准确性(W,G�)#准确性04: K ← 选择TopK(适应度,K) 5:C ← 交叉(K,C) 6: M ←变异(C,M) 7: G � ← C ∪ M8: 结束循环03.2.2 模块修改0MobileNets[16]采用深度可分离卷积(由深度卷积和逐点卷积组成,合称为可分离深度卷积[44])以其紧凑性和有效性而闻名,用于设计神经网络。我们修改了MobileNet结构,以便创建出性能优越的二值神经网络,其在准确性和内存节省方面优于先前的最先进工作。然而,训练二值深度卷积并不简单[38],因为由于计算的性质,分离的通道输出落入一个较小的值范围,使得二值网络无法收敛。为了解决这个问题,我们提出了将深度卷积替换为组卷积,以扩大深度卷积输出的值范围。更具体地说,我们搜索3×3和1×1核大小的二值卷积运算符的组。在保持特征表示的同时,假设计算成本较低,当在某一层中感知到空间维度的减少时,我们保持完整精度的1×1卷积。66Xb∗, α =arg minXb∈{−1,1},α>0(6)134240B: 3 � 3 卷积0是 否0B: 1 � 1 卷积 R: 1 � 1 卷积0B: 3 � 3 卷积0是 否0B: 1 � 1 卷积 B 1 : 1 � 1 卷积 B 2 : 1 � 1 卷积0连接0图3. 网络模块修改的示意图。0输出。此外,如果输出维度相同,则添加块级和层级跳过连接以有利于网络训练。我们提出的网络模块如图3所示。与MobileNet[16]的基本架构相比,我们的模块有三个主要修改:0•模块1(M1):由一个二值3×3组卷积和一个二值1×1全卷积组成。当存在空间维度收缩时,后面跟随一个实值1×1全卷积(参见图3-左图)。0•模块2(M2):使用组卷积进行实值1×1全卷积以进一步降低计算成本。组也与二值3×3组卷积一起进行搜索。0•模块3(M3):由两个二值1×1卷积层组成,然后将它们连接起来以获得相同的维度。0在下一节中,我们将描述一种基于随机分组的训练方案,通过权重共享来促使二值神经网络收敛。03.2.3 通过权重共享进行随机分组0在搜索阶段,计算一个适应度函数(例如模型的准确率)来帮助探索最佳的分组组合。然而,如果我们简单地计算一个没有使用数据样本(即图像)进行训练的二值模型的准确率,不能保证最佳模型能够学习目标数据集的分布。因此,为了利用给定数据集中的重要信息进行进化搜索,我们提出了一种方法,通过权重共享在每次训练迭代中训练二值模型以及随机分组组合。为了简化实现,每次迭代中使用随机分组初始化和裁剪完全卷积通过权重共享。权重共享如图4所示。03.2.4 训练过程0二值神经网络是一个活跃和进步的研究课题,有着杰出的作品[ 38 , 32 , 45 ]。训练神经网络0使用6个过滤器进行权重共享 使用3个过滤器进行权重共享 使用2个过滤器进行权重共享 不进行权重共享0图4.2D权重共享的示例。例如,在一个6×6的滤波器中,权重可以在2、3和6个组内共享。01位权重网络是一项困难的任务,因为特征表示通常具有狭窄的值范围,似乎不可能适应用于分类的目标大规模数据集。XNOR-Net [ 39 ]利用全精度权重值来推导实值缩放因子,这在放大二值权重和激活的幅度方面起到关键作用。优化问题的公式如下:0|| X − α X b || 20X 可以是权重或激活, α 是缩放因子。方程6的最优解是 X b � = Sign ( X ) 和 α = 10( X b ) T X b | X | l 1 . Bi-RealNet [ 32 ] 和 MoBiNet [ 38]利用跳跃连接来增强二值神经网络的性能。在这种情况下,我们操纵跳跃连接以及缩放因子来促进训练过程。以下是我们训练的摘要:0•对于每次迭代,我们使用随机的分组组合来训练二值神经网络。例如,如果网络有13层,与这些层对应的分组在输入通道的可能除数内进行随机化。这种随机化有助于1位模型在搜索时对分组的变化变得稳健。0•应用算法1中描述的进化搜索来寻找最佳分组。在第4.2节中进行了消融研究,证明我们的搜索方法比任意随机分组更高效。0•我们使用最佳的分组卷积从头开始训练最终的二值模型。所有步骤都在大规模的ImageNet-1k [ 9 ]上运行。0训练伪代码在算法2中说明,并在图2中可视化。04. 实验0在本节中,我们展示了我们提出的方法的性能评估。首先,我们描述了实验。134250算法2 整体训练BNNs 输入:完全二值神经模型和用于进化搜索的输入 输出:具有新分组结构的新优化二值神经模型。01: Cins ← 输入通道 2: 初始化二值模型Mb 3: fori=1:迭代次数 do 4: Gr ← 随机分组(Cins) # 随机分组5: 训练分组(Mb, Gr)06: end for 7: G� ← 搜索分组(Mb) # 使用算法1搜索分组08: 训练分组(Mb, G�)0实施细节和设置。其次,为了证明我们的权重共享分组搜索机制比简单的随机搜索更有效和合理,我们在消融研究中将训练性能与随机分组进行了比较。第三,我们使用均匀正常分组评估搜索分组,以研究每个特征表示级别的分组数量应该是不同的事实。然后,我们与现有技术进行比较,以查看我们提出的BNNs的改进效果。最后,我们提供了计算分析。包括搜索、训练和测试在内的所有实验都在ImageNet2012-1k的大规模数据集上进行。我们根据ImageNet数据集的Top-1、Top-5分类准确率和FLOPs的数量对结果进行了分析。04.1. 实验设置0数据集。我们用来展示我们框架有效性的图像数据集是ILSVRC2012[9],这是一个包含120万个训练样本和5万个测试样本的数据集。该数据集有1000个类别。大多数先前的工作,如XNOR-Net [39]、Bi-RealNet [32]、CI-BCNN[45]和MoBiNet[38],也使用了这个数据集来评估他们的模型性能。0实施细节和设置。我们的训练流程包括三个主要阶段:使用随机分组训练二值化架构,通过进化方法搜索卷积层的分组,以及使用从头搜索到的分组训练最终模型。我们在MobileNet的基本块上进行修改,以提高二值化模型的性能,详见第3.2.2节。每个图像被缩放到256×256。在训练时,图像被随机裁剪为224×224。在测试时,它们被中心裁剪为224×224。训练时,实值滤波器保存在RAM中,以通过公式3计算更新值,然后在推理阶段进行二值化。在训练流程的第一阶段,我们使用批量大小为512。0图5.在ImageNet上通过模块的epoch进行验证准确率(从上到下依次为M1、M2和M3)。Random: 层的分组是随机的。Groupsearch: 我们提出的搜索最优分组架构。0使用随机分组和学习率为0.001的64个epoch来训练1位模型。在搜索阶段,种群数、交叉数和变异数分别为50、25、25,搜索运行20次迭代以找到最佳的分组结构。在管道的最后,我们从头开始训练最终模型,批量大小为512,学习率为0.001,训练的epoch数为256。所有训练阶段都使用Adam优化器[21],动量为0.9,并通过线性衰减更新学习率。FLOPs的计算遵循[32,45]的建议,以进行公平比较。训练在四个RTX 2080 TiGPU 24GB上进行,搜索在一个GPU上进行。04.2.我们的搜索分组与随机分组搜索和均匀分组架构的对比0为了验证我们通过基于进化的搜索在MobileNet架构中进行二值化卷积的假设,我们进行了与随机搜索和均匀分组架构的对比实验作为消融研究。实验在第3.2.2节中提出的三个模块上进行。对于模块2,有四个全精度的1×1卷积。我们还将搜索到的分组应用于这些层,以进一步降低计算成本。134260#组数(M1)Top-1 (%) Top-5 (%) FLOPs0组数 = 1 64.51 85.14 2 . 13 × 10 80组数 = 4 60.89 82.54 1 . 63 × 10 80组数 = 16 58.49 80.66 1 . 50 × 10 80随机组 59.05 81.22 1 . 58 × 10 80我们的 60.90 82.60 1.54 × 10 80#组数(M2)Top-1 (%) Top-5 (%) FLOPs0组数 = 1 64.51 85.14 2 . 13 × 10 80组数 = 4 59.59 81.67 0 . 67 × 10 80组数 = 16 54.23 77.04 0 . 30 × 10 80随机组 58.13 80.42 0 . 75 × 10 80我们的 59.30 81.00 0.62 × 10 80#组数(M3)Top-1 (%) Top-5 (%) FLOPs0组数 = 1 57.56 79.85 0 . 87 × 10 80组数 = 4 49.90 73.15 0 . 37 × 10 80组数 = 16 45.29 69.38 0 . 24 × 10 80随机组 50.07 74.11 0 . 38 × 10 80我们的 51.06 74.18 0.33 × 10 80表1.统一分组基线和随机组搜索与我们在模块M1、M2和M3上的组搜索的比较。0为了与随机组搜索进行比较,我们报告了每个时期的Top-1和Top-5准确率。训练性能比较如图5所示,显示了从MobileNets进行的修改的结果:模块1,模块2和模块3(从上到下的顺序)。我们运行了随机化和搜索组的比较实验,每个实验运行100个时期,批量大小为512,并观察每个时期在ImageNet验证集上的Top-1和Top-5准确率。就前两个模块而言,我们的组搜索架构训练更加稳定,并且在所有时期中,我们在Top-1和Top-5准确率上都取得了更准确的结果(约2%)。与需要更多计算成本的随机组相比,我们提出的搜索组性能更好。表1报告了在随机组和我们提出的组搜索下运行时的FLOPs数量。无论随机架构的计算成本更高,我们的搜索组网络都更准确和高效。我们还提供了与统一组(即在模块M1、M2和M3的所有层中使用相同数量的组)进行比较的结果,以研究我们的假设。我们使用1(完全卷积)、4和16个统一组训练模型。表1呈现了Top-1、Top-5准确率和FLOPs数量(计算成本)的结果。我们报告的统计数据表达了完全卷积和深度卷积之间性能的权衡。例如,在M1和M3中,我们搜索的组模型在准确性上优于可比较的统一组模型(g=4和16),并且需要更少的FLOPs。0M M1 M2 M30Top-1 (%) 60.9 59.3 51.10Top-5 (%) 82.6 81.0 74.20FLOPs 1 . 54 × 10 8 0 . 62 × 10 8 0 . 33 × 10 80最大FLOPs 1 . 55 × 10 8 0 . 80 × 10 8 0 . 50 × 10 80#GPU小时 30 32 260表2.在搜索组架构中,所提出的模块M1、M2和M3的效率。结果是在大规模的ImageNet数据集上进行的。MaxFlops是约束预算。04.3. 我们的BNNs的效率0MobileNet架构是一种紧凑的网络,基于轻量级的可分离卷积层模块,能够准确高效地工作。对这样一个紧凑模型进行二值化可以给我们带来有希望的结果,因为它由于计算成本的大幅减少而包含较少的参数,而不会损失准确性。然而,正如第1节中提到的,利用可分离卷积(包括深度卷积方案)的网络在进行二值化时无法收敛,因为极小的值范围无法充分适应像图像这样的复杂数据样本。相反,组和完全卷积层更容易使网络表现良好。尽管完全卷积层能够实现高准确性,但由于参数数量庞大,无法在移动设备上高效部署。因此,组卷积层可以在深度卷积和完全卷积之间取得潜在的权衡。在这项工作中,我们提出了一种通过进化方法进行组搜索的机制,以找到MobileNet架构中二值神经网络的每个卷积层的组结构。为了展示我们提出的搜索机制的有效性,我们在不同计算预算约束下进行了修改模块的实验。我们首先在每个模块中使用随机组训练二值模型,训练64个时期。然后,我们搜索满足FLOP预算的网络,以得到最佳的组结构。最后,使用最佳组进行从头训练,训练256个时期。其他设置在第4.1节中提到。表2报告了ImageNet-1k上的Top-1、Top-5准确率,FLOPs,预算约束和搜索的GPU小时数。与全精度的MobileNet[16]相比,我们构建的二值神经网络在使用模块1、模块2和模块3时加速了约4倍、9倍和17倍,同时准确性损失较小,分别为10%、11.6%和19.8%。我们还超过了最相关的MoBiNet[38]的工作。这一细节在第4.4节中提到。此外,我们的搜索算法平均只需要一个GPU的约29小时。在下一节中,我们将与其他最先进的二值神经网络方法进行比较。1342704.4. 与最先进方法的比较0近期二值神经网络取得了令人惊叹的进展。然而,之前的研究通过训练过程来改进二值模型的表示学习,而架构设计也应该具有很大的影响力。我们提出的方法使用基于最新的一次性神经架构搜索思想的进化搜索,旨在探索用于改进BNNs的群组架构设计。在本节中,为了评估我们的方法,我们将我们的BNNs与几个最近的研究进行比较:BinaryConnect [8],BNNs [19],ABC-Net [26],DoReFa-Net[53],XNOR-Net[39]等。报告的指标是ImageNet上的Top-1、Top-5准确率和FLOPs数量。BiReal-Net和CI-BCNN是两个取得良好结果的杰出作品。这些网络使用高效的跳跃连接模块对ResNet [14]进行二值化。在这里,我们只考虑ResNet18层与我们的13层进行公平比较。CI-BCNN[45]是最先进的二值模型(权重和激活都是二值化的),能够在ImageNet上达到59.90%的Top-1准确率,而计算成本非常小,为1.54×10^8FLOPs。我们的二值模型使用模块1在计算成本更低的情况下,超过了MoBiNet [38]的6%和Bi-RealNet-18[32]的4%的Top-1准确率。此外,它还以更低的FLOPs数量(我们的:1.54×10^8,CI-BCNN:>1.54×10^8)超过了CI-BCNN[45]的1%的Top-1准确率。此外,我们的模块2和模块3也通过需要更低的FLOPs数量超越了BiReal-Net[32]。另一方面,我们的方法在准确性和计算指标方面明显优于其他二值神经网络。准确性结果在表3中报告。我们提出的二值网络比大多数之前的作品更好。对于计算成本,表1中以FLOPs数量和内存使用量进行比较。04.5. 分析0在本节中,我们讨论结果和计算复杂性的分析。在第4.2节的消融研究中,群组搜索架构的结果比简单的不稳定群组更稳定,准确性更高,证明在MobileNet架构的每一层中具有异构群组结构可以获得良好的性能。此外,群组卷积可以灵活地增加或减少选择层中的连接数。例如,在观察第一层时,我们意识到搜索算法倾向于分配较少的群组以保留输入的基本信息。同时,算法通过增加群组的数量来减少不重要的通道间连接,以增强模型的紧凑性和效率。从表1和表3中可以看出,我们的模块2和模块30网络 W/A Top-1 Top-50Binary Connect [8] 1/32 35.40 61.000BWN [39] 1/32 56.80 79.400BNNs [19] 1/1 42.20 67.100ABC-Net [26] 1/1 42.70 67.600DoReFa-Net [53] 1/1 43.60 -0SQ-BWN [10] 1/1 45.50 70.600XNOR-AlexNet [39] 1/1 44.20 69.200XNOR-ResNet-18 [39] 1/1 51.20 73.200MoBiNet [38] 1/1 54.40 77.500Bi-RealNet-18 [32] 1/1 56.40 79.500CI-BCNN-18 [45] 1/1 56.73 80.120CI-BCNN-18(add)[45] 1/1 59.90 84.180我们的模块3(M3)1/1 51.06 74.180我们的模块2(M2)1/1 59.30 81.000我们的模块1(M1)1/1 60.90 82.600表3.最先进方法和我们方法之间的Top-1和Top-5准确率比较。我们的模块1(M1)在Top-1准确率上比最先进的CI-BCNN [45]高1%。0网络 FLOPs0XNOR-AlexNet [39] 1.38×10^80XNOR-ResNet-18 [39] 1.67×10^80Bi-RealNet-18 [32] 1.63×10^80CI-BCNN-18 [45] 1.54×10^80CI-BCNN-18(add)[45]>1.54×10^80MoBiNet [38] 0.52×10^80我们的(M3)0.33×10^80我们的(M2)0.62×10^80我们的(M1)1.54×10^80表4. 状态艺术与我们的方法之间的计算成本比较。0模块3的准确性高于BiReal-Net [32]和CI-BCNN[45]这两个著名的作品。此外,与BiReal-Net(163MFLOPs)相比,这些模块的计算成本要低得多(≈33MFLOPs),加速比约为5倍。05. 结论0高效的BNN群组设计可以产生良好的结果。我们通过进化搜索引入了一种新颖的算法来探索群组结构,旨在优化在MobileNet中使用深度卷积或完全卷积层时的权衡。我们的BNN非常高效,因为它在处理具有挑战性的视觉分类任务时实现了高度准确的结果,同时节省了计算成本(仅使用单个GPU进行搜索)。致谢。我们感谢所有匿名评审人员提供的建设性和有价值的反馈。134280参考文献0[1]郭一文,徐琳,陈玉荣,周傲君,姚安邦。增量网络量化:朝着低精度权重的无损CNNs。在国际学习表示国际会议(ICLR2017)上,2017年。[2] Joseph Bethge,Marvin Bornstein,AdrianLoy,Haojin Yang和ChristophMeinel。从头开始训练竞争二进制神经网络。ArXive-prints,2018年。[3] Adrian Bulat和GeorgiosTzimiropoulos。Xnor-net++:改进的二进制神经网络。在BMVC上,2019年。[4] HanCai,Ligeng Zhu和SongHan。ProxylessNAS:针对目标任务和硬件的直接神经架构搜索。在国际学习表示国际会议上,2019年。[5] Xin Chen,LingxiXie,Jun Wu和QiTan。渐进可微架构搜索:弥合搜索和评估之间的深度差距。在计算机视觉国际会议(ICCV)上,2019年10月。[6]陈玉康,杨彤,张翔宇,孟高峰,肖新宇和孙剑。Detnas:用于目标检测的主干搜索。在NeurIPS 2019上,2019年。[7] MatthieuCourbariaux和YoshuaBengio。Binarynet:训练权重和激活约束为+1或-1的深度神经网络。CoRR,abs/1602.02830,2016年。[8] MatthieuCourbariaux,Yoshua Bengio和Jean-PierreDavid。Binaryconnect:在传播过程中使用二进制权重训练深度神经网络。在NIPS上,页码3123-3131,2015年。[9] JiaDeng,Wei Dong,RichardSocher,李佳丽,李凯和李飞飞。Imagenet:一个大规模的分层图像数据库。在CVPR上,2009年。[10] Yinpeng Dong,RenkunNi,JianguoLi,陈玉荣,苏航和朱军。用于学习准确的低位深度神经网络的随机量化。国际计算机视觉杂志,2019年3月。[11]郭子超,张翔宇,穆浩远,Heng温,刘泽春,魏一尘和孙剑。单路径一次性神经架构搜索与均匀采样。arXiv预印本arXiv:1904.00420,2019年。[12] Song Han,毛辉梓和William J.Dally。深度压缩:通过修剪,训练量化和霍夫曼编码压缩深度神经网络。CoRR,abs/1510.00149,2015年。[13] Song Han,JeffPool,John Tran和William J.Dally。同时学习权重和连接以实现高效的神经网络。在第28届国际神经信息处理系统会议论文集第1卷上,NIPS'15,页码1135-1143,剑桥,马萨诸塞州,美国,2015年。MIT出版社。[14] KaimingHe,张翔宇,任少庆和孙剑。深度残差学习用于图像识别。在CVPR上,页码770-778,2016年。[15] Koen G. Helwegen,JamesWiddicombe,Lukas Geiger,刘泽春,Kwang-TingCheng和RoelandNusselder。潜在权重不存在:重新思考二值化神经网络优化。ArXiv,abs/1906.02107,2019年。0[16] Andrew G. Howard,Menglong Zhu,Bo Chen,DmitryKalenichenko,Weijun Wang,Tobias Weyand,Marco An-dreetto和HartwigAdam。Mobilenets:用于移动视觉应用的高效卷积神经网络。CoRR,abs/1704.04861,2017年。[17] Gao Huang,ShichenLiu,Laurens van der Maaten和Kil- ian Q.Weinberger。Condensenet:使用学习到的组卷积的高效densenet。在IEEE CVPR会议上,2018年6月。[18] ItayHubara,Matthieu Courbariaux,Daniel Soudry,Ran El-Yaniv和YoshuaBengio。二值化神经网络。在NIPS上,第4107-4115页,2016年。[19] It
下载后可阅读完整内容,剩余1页未读,立即下载
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功