没有合适的资源?快使用搜索试试~ 我知道了~
+v:mala2255获取更多论文arXiv:2207.06540v2 [cs.LG] 2022年7Lipschitz连续保持二元神经网络豫章商1、徐丹2、段斌1、宗子良3、聂礼强4、严延11伊利诺伊理工学院,美国2香港科技大学,香港3德克萨斯州立大学,美国4哈尔滨工业大学,深圳,中国{yshang4,bduan2} @ hawk.iit.edu、danxu@cse.ust.hk、ziliang@txstate.edu、nieliqiang@gmail.com和yyan34@iit.edu抽象的。现有的网络二值化工作往往以消除全精度权向量与其对应的二值向量之间的量化误差,使二值神经网络的性能得到很大程度的恢复为前提,采用模型鲁棒性的思想来达到上述目的。然而,鲁棒性仍然是一个定义不清的概念,没有坚实的理论支持。在这项工作中,我们引入了Lipschitz连续性,一个定义良好的功能属性,作为严格的标准来定义模型的鲁棒性BNN。然后,我们建议保留Lipschitz连续-作为正则化项,以提高模型的鲁棒性。特别地,虽然流行的Lipschitz涉及的正则化方法由于其极端稀疏性而经常在BNN中崩溃,但我们设计保留矩阵来近似目标权重矩阵的谱范数,其可以被部署为BNN的Lipschitz常数的近似,而无需精确的Lipschitz常数计算(NP-困难)。我们的实验证明,我们的BNN特定的正则化方法可以有效地增强BNN的鲁棒性(在ImageNet-C上得到了验证),在CIFAR 10和ImageNet上实现了SoTA。我们的代码可在https://github.com/42Shawn/LCR_BNN上获得。关键词:神经网络压缩,网络二值化,Lips-chitz连续性1介绍最近,深度神经网络在计算机视觉任务中取得了重大成就,如图像分类[26]和对象检测[42,27]。然而,他们的推理繁琐的问题阻碍了他们更广泛的实施。为了在资源受限的边缘设备中开发深度模型,研究人员提出了几种神经网络压缩范例,例如,知识分解[21,20]、网络修剪[28,16]和网络量化[24,40]。之间*Correspondent author.+v:mala2255获取更多论文·±×2Y. Shang等人在网络量化方法中,网络二进制化[24]脱颖而出,因为它将权重和激活(即中间特征图)极度量化为1。在这个框架下,全精度(FP)网络被压缩了32倍,耗时的内积运算被高效的Xnor-bitcount运算取代。然而,由于FP权重和激活的损失,BNN很难达到与原始模型每千次下降的主要原因是较差的鲁棒性来自误差放大效应,其中二值化操作降低了放大噪声引起的距离[30]。sgn()的破坏性方式严重破坏了BNN的鲁棒性,从而破坏了它们的表示能力[6,18,34]。正如一些理论工作所验证的那样,鲁棒性是函数(我们的背景下的神经网络)的重要属性,这进一步影响了它们的泛化能力[35,3]。在上述二值化工作中,研究人员通过定义不明确的函数鲁棒性概念来研究其方法的有效性,而没有坚实的理论支持,例如观察权重和激活的可视化分布[18,31,34,30]。然而,他们很少引入定义良好的数学性质,Lipschitz连续性,用于测量BNN中函数的鲁棒性。Lipschitz连续性已被证明是系统分析深度学习模型的强大而严格的工具。例如,Miyato et.等人提出了著名的谱归一化[49,36],利用Lipschitz常数来正则化网络训练,其最初是为GAN设计的,然后扩展到其他网络架构,取得了巨大的成功[37]; Lin et.等人[30]设计了一种基于Lipschitz的正则化方法用于网络(低位)量化,并证明了Lips-chitz连续性与低位网络的鲁棒性显著相关。但是,简单地将现有的基于Lipschitz的正则化方法与二进制神经网络(1位)桥接是次优的,因为BNN的独有属性,例如,二进制权矩阵[24]的极端稀疏性阻碍了奇异值的计算,而奇异值是Lipschitz方法的核心模块。为了解决这个问题,我们分析了BNN的结构和Lipschitz常数之间的关联。基于这种分析,我们设计了一种新的方法来有效地保留BNN的Lipschitz常数,并使其接近其潜在FP对应物的Lipschitz常数。特别地,我们为每个块开发了Lipschitz连续性保持矩阵(RM),并通过迭代幂方法计算RM的谱范数,以避免计算精确Lipschitz常数的高值得注意的是,为保持BNN的Lipschitz连续性而设计的损失函数是可微的。二进制权重。总的来说,本文的贡献有三个方面:– 为了提高二进制网络优化过程的鲁棒性,提出了一种新的网络二进制化框架--Lipschitz连续R-二进制神经网络(LCR-BNN据我们所知-+v:mala2255获取更多论文±∥ ∥Lipschitz连续保持二元神经网络3边,我们是第一个探索Lipschitz连续性,以提高BNN的表示能力;– 我们设计了一个Lipschitz连续性保持矩阵来近似BNN前向传递中网络激活的Lipschitz常数(而不是直接使用SN [36]和DQ [30]设计的权重);– 通过在现有的最先进的方法上添加我们设计的正则化项,我们观察到 增 强 的 鲁 棒 性 在 ImageNet-C 上 得 到 了 验 证 , 并 且 在 CIAFR 和ImageNet数据集上有希望提高精度。2相关工作2.1网络二值化在BNN的先驱艺术中,Hubara et. al. [24]通过符号函数将权重和激活值设置为1。由于符号函数的不可微性,引入直通估计(STE)[4]来近似符号函数的导数。受此启发,许多研究人员深入研究BNN领域,并提出了他们的模块,以提高BNN的例如,Rastegari et. al. [41]揭示了FP权重和相应的二进制化权重之间的量化误差是降低BNN表示能力的障碍之一。然后,他们建议引入一个缩放因子,由L1范数计算的权重和激活函数,以最大限度地减少量化误差。XNOR++ [6]吸收了缩放因子的思想,并提出学习空间和通道缩放因子以提高性能。此外,Bi-Real [33]提出了具有全精度下采样层的双重残差连接,以减少信息损失。ProxyBNN [18]设计了一个代理矩阵作为潜在参数空间的基础,通过重新覆盖BNN的平滑性来这些方法试图减少量化误差,并从模型平滑度的角度(通常通过可视化的权重分布)调查的有效性BNN的更详细的介绍和历史可以在调查中找到[39]。然而,他们都没有考虑到函数的性质,Lipschitz连续性,这是一个成熟的数学工具,研究函数的鲁棒性。将Lipschitz连续性与BNN连接起来,我们建议保留BNN的Lipschitz连续性,它可以作为正则化项,并通过增强其鲁棒性来进一步提高BNN的性能2.2神经网络中的Lipschitz连续性Lipschitz常数是在给定距离内输入扰动和输出变化之间的比率的上界。它是一个定义明确的度量,用于量化神经网络对小扰动的鲁棒性[45]。此外,Lipschitz常数fLip可以被视为函数范数来度量给定函数的Lipschitz连续性。由于其性质,Lipschitz常数是衡量函数鲁棒性的主要概念[3,35,37]。在+v:mala2255获取更多论文−4岁。Shang等人在深度学习时代,以前的理论艺术[47,37]通过Lipschitz连续性揭示了深度网络Lipschitz连续性被广泛引入许多深度学习主题,以实现SoTA性能[36,49,46,50]。例如,在图像合成中,Miyato et. al. [36,49]设计谱归一化来约束用于优化生成对抗网络的Lipschitz常数,作为正则化项来平滑Lipschitz函数;在知识蒸馏中,Shang et. [46]提出利用Lipschitz常数作为知识的形式来监督学生网络的训练过程;在神经网络架构设计中,Zhang et. [50]提出了一种新的L∞-dist网络,使用自然的1-Lipschitz函数作为神经元。上述工作突出了Lipschitz常数在深度模型表达性和鲁棒性方面的重要性。特别地,在适当的水平上保持Lipschitz连续性被证明是增强模型鲁棒性的有效技术因此,需要在二值化过程中引入神经网络的函数信息Lipschitz常数,以弥补BNN与实值网络之间的鲁棒性差距。与光谱归一化(SN)的关系[36]。我们经验性地在BNN中实现SN,但失败了。通过分析实现的失败,我们得出结论,SN是不适合BNN。原因如下:(一)SN中的关键模块是基于奇异值计算的谱范数计算,它直接在权矩阵上实现(例如,卷积层和线性层的矩阵)。但是将FP权重强制为1或-1的二进制化使得权重矩阵非常稀疏。因此,将现有的算法应用于二进制矩阵崩溃。(ii)与普通网络相比,BNN的前向和后向传递更加复杂,例如。,FP权重(在反向传播之后)和二进制权重(在二进制化之后)存在于相同的训练迭代中。这个复杂性问题阻碍了SN在BNN上的更广泛实现,因为BNN中的结构数量超过了正常网络中的数量。为了解决这些问题,我们提出了一种新的Lipschitz正则化技术,旨在训练BNN。我们在下面的3.3节中详细阐述了我们的方法和SN之间的更多技术比较。3BNN的Lipschitz连续性保持3.1预赛我们首先定义了一个具有L个全连接层的一般神经网络(为了简化,没有偏置项)。这个网络f(x)可以表示为:f(W1,···,WL;x)=(WL·σ·WL−1····σ·W1)(x),(1)其中x是输入样本,Wk∈ Rdk−1 ×dk(k = 1,., L − 1)代表连接第(k1)层和第k层的weig h t矩阵,其中dk−1和dk分别表示第k层网络的输入和输出的大小。σ(·)函数执行用于激活的逐元素激活。+v:mala2255获取更多论文FBBFB−→n∥· ∥∈ ∈−∥ ∥ ∥∥·−→∥ ∥ ∥∇ ∥∥·∥∥KKLipschitz连续保持二元神经网络5二元神经网络在这里,我们重新审视了[7]中的一般基于梯度的方法,该方法维护用于梯度更新的全精度潜变量WF,将第k个权矩阵Wk二值化为±1个二值权矩阵Wk由一个二值化函数(通常为sgn(·))表示为Wk=sgn(Wk)。然后,第k层的映射由Ak=WkAk−1产生,并且通过将该过程迭代L次来执行二值化的整个前向传递Lipschitz常数(定义1)。一个函数g:RnRm称为Lipschitz连续的,如果存在一个常数L使得:<$x,y∈R,<$g(x)−g(y)<$2≤L<$x−y<$2,(2)其中x,y表示函数g的两个随机输入。满足不等式的最小L是函数g的Lipschitz常数,记为gLip。通过定义1,Lip可以上界输入Pertur之间的比率,在给定的距离内(通常是L2范数),它可以被看作是一个度量来评估神经网络的鲁棒性[45,43,46]。在下面的部分中,我们提出了我们的Lipschitz连续性保留方案(第3.2),其中BNN被强制接近其FP对应物的Lipschitz常数。此外,我们还介绍了用于优化二进制网络的损失函数和梯度近似(Sec.3.3)。最后,我们讨论了LCR和Lipschitz连续性之间的关系,并将我们的方法与著名的谱归一化[36](Sec.3.3)。3.2Lipschitz连续性保留程序我们的目标是保持Lipschitz常数在一个适当的水平。在实践中,我们需要拉fB利普和fFLip紧密地稳定BNN的Lipschitz常数。然而,计算神经网络的精确Lipschitz常数是NP困难的[47],特别是涉及二值化过程。为了解决这个问题,我们提出通过引入由相邻激活产生的保留矩阵序列来绕过精确的Lipschitz常数计算,然后通过幂迭代方法计算它们的谱范数以形成LCR损失,以保持BNN的Lipschitz连续性,如图1所示。神经网络的Lipschitz常数 我们用权重矩阵Wk,fk()对第k层的仿射函数进行分段,映射k−1ak,其中ak−1Rdk−1和akRdk是由(k)产生的激活1)-th和第k层。基于补充材料中的引理1,fkLip=sup aWk(a)SN,其中SN是矩阵谱范数,形式上定义为:WSNSundaymaxx:x=0WkxX102= max100%≤1(3)第一次见面。其中矩阵W的谱范数等价于其最大奇异值。因此,对于fk,基于补充材料中的引理2,其∥+v:mala2255获取更多论文k kk∥·∥ ≤ ∥ ∥· ∥∥YBB{−}我1联系我们n我我6岁。Shang等人Lipschitz常数可以推导为:W(四)此外,对于神经网络中的大多数功能结构,如ReLU,Tanh,Sigmoid,Sign,批量归一化和其他池化层,它们都具有简单而显式的Lipschitz常数[14,36,46]。请注意,对于BNN中的符号函数,尽管它在理论上不可微,但它仍然具有显式的Lipschitz常数,因为它的导数在数值上由Hard-Tanh函数近似[4]。这种固定的Lipschitz常数属性使我们的推导适用于大多数网络架构,例如二进制ResNet [17,24]和变体二进制ResNet [34,5]。利用范数不等式WkWk+1LipWkLipWk+1Lip,得到了网络f的Lipschitz常数的上界,即Lf(五)k=1通过这种方式,我们可以通过保持网络中中间层的谱范数序列来保持Lipschitz常数Lipschitz连续保持矩阵的构造 我们现在的目标是设计一种新的优化损失,通过缩小全精度和二进制网络的相应权重的谱范数之间的距离来保持Lipschitz连续性。此外,我们还需要计算二值化权矩阵的谱范数。尽管如此,计算光谱是无法实现的。二元权矩阵Wk在BNN中使用基于SVD的方法,ods [1]。因此,我们设计了Lipschitz连续保持矩阵(RM)来绕过Wk的谱范数的复杂计算。通过保留矩阵的桥梁接近最终目标允许可行的计算以保留Lipschitz常数,并便于其进一步用作损失函数。对于批量大小为N的训练数据,在第(k-1)层的前向过程之后,我们有一批对应的激活,如Ak−1=(ak−1,···,ak−1)∈Rdk−1×N,(6)其中WkAk−1 = Ak,对于每个k1,. . .、L1.关于激活相似性的研究表明,对于训练良好的网络,它们在同一层中的一批激活(即ak-1,i 1,. . .,n)具有强的相互线性独立性。我们将激活的独立性形式化如下:(ak−1)Tak−1<$0,<$i<$=j∈{1,···,N},i j(7)(ak−1)Tak−1<$=0,<$i ∈ {1,···,N}.我们还从经验和理论上讨论了这一假设的验证。四点四+v:mala2255获取更多论文BF111谱归一化=(Ak− 1)T(Wk)T(Ak− 1)(Ak− 1)TWkAk− 1。Lipschitz连续保持二元神经网络7(a)(b)第(1)款图1.一、 (a)二进制卷积层的Lipschitz正则化概述:通过调整二进制网络的Lipschitz常数及其潜在的全精度对应物来正则化BNN是我们工作的目标。为了达到这一目标,第k层的输入和输出激活组成保留矩阵(RMk),近似这一层的Lipschitz常数RMkRMk然后用于计算该层的Lipschitz常数(该近似的验证在3.2中详细说明)。最后,在正则化模块下保持BNN的Lipschitz连续性。(b)光谱归一化(左)和LCR(右)之间的差异更多细节将在3.3中讨论。在上述假设下,我们形式化了所设计的保留矩阵RMk用于估计矩阵Wk的谱范数为:RMk<$$>(Ak−1)TAk<$T<$(Ak−1)TAk<$在Eq中的独立性假设。7(即,(Ak−1)(Ak −1)=I)),等式8,我们可以如下转移RMkRMk=(Ak−1)T(WkTWk)Ak−1。(九)根据补充材料中的定理1和等式9,σ1(RMk)=其中σ(·)是用于计算最大特征值的函数即保留矩阵RMk 具有与WkTWk相同的最大特征值。不因此,通过谱范数的定义<$Wk<$SN= σ(Wk Wk),规格-通过计算RMk的最大特征值σ1(RMk),可以得到矩阵Wk的范数,它是可解的[46]。对于具有更复杂层的网络,例如MobileNet [17,22]中的残差块和块,我们也可以设计这样的保留矩阵来逐层绕过Lipschitz常数计算通过将块视为从前到后激活的仿射映射,所提出的保留矩阵也可以逐块产生,使我们的谱范数计算更有效。具体来说,我们为剩余数据块定义保留矩阵RM如下所示RMm(Af)TAl(Af)TAl,(10)不Ak1FRMkF签署Ak1B1位3x3转换批规范一个F一个B签署RMkBLipschitz正则化激活保持矩阵3x3,64激活1x1,641x1,2561x1,64谱归一化3x3,64谱归一化1x1,256(八)+v:mala2255获取更多论文{−}联系我们FBLΣΣ−BBKFBB.B.B.S.11ΣKKKk=18岁。Shang等人其中Af和Al分别表示残差块的前层激活图和后层激活图。谱范数的计算 在计算两个矩阵的谱范数时,一种直观的方法是用奇异值分解法计算谱范数,但这会导致计算量过大。而不是SVD,我们利用幂迭代方法[12,36]来近似目标矩阵的谱范数,一个小的准确性权衡。通过幂迭代算法(见补充材料),我们可以得到二进制和相应的谱范数。FP保留矩阵(即,每个人的姓名和地址k1,. . . ,L1)。然后,我们可以计算出这两个点之间的距离谱范数来构造损失函数。3.3二元神经网络优化优化损失。我们定义了Lipschitz连续保持损失函数LLip作为L唇=L−1K2B SN−1)βk−L、(十一)k=1联系我们其中β是大于1的系数。 因此,随着k的增加,(<$RMk<$SN1)βk−L2也增加。这样,后一层的谱范数RMk可以保留更多。结合交叉熵损失CE,我们提出了一个新的损失函数的整体优化目标,λL=2·LLip+LCE,(12)其中λ用于控制保持Lipschitz常数的程度。我们分析了补充材料中系数λ的影响。在我们定义了总体损失函数之后,我们的方法最终被公式化。LCR的前向和后向传播过程在算法1中详细说明。梯度近似。一些作品[44,30,36]通过引入Lipschitzness的概念来研究神经网络的鲁棒性。在这一节中,我们区分了我们提出的方法的损失函数,并揭示了Lipschitz如何影响BNN的鲁棒性的机制。损失函数L对Wk是:L=B.W.BB.W.BL−1WkK(十三)<$M−λ<$βk−L(<$RMF<$SN)uk(vk)T,其中,M(LCE),uk和vk分别是第一左奇异和第一右奇异B11向量Wk。在奇异值分解的内容中,可以通过一系列B B(+v:mala2255获取更多论文BFFBF中国BΣ联系我们BF∥ ∥ 关于我们BFBFFBFFWkBBJ JFFBBLipschitz连续保持二元神经网络算法1LCR-BNN的前向和反向传播要求:一个小批量的数据样本(X,Y),当前二进制权重Wk,潜在全精度权重Wk和学习率η。确保:更新权重Wk′。1:前向传播:2:对于k=1至L− 1,3:二值化后ntweights:Wk<$−sgn(Wk);4.利用上一层的作用进行的并行操作:Ak←−Wk·Ak−1;5:Binarizeactivations:Ak←−sgn(Ak);F BB6:生成保留矩阵RMkRMk由等式9;7:结束8:利用补充材料中的算法2对一系列RM s的谱范数进行近似,并对每个k∈{1,. . .,L−1};9:通过等式10计算Lipschitz连续性保持损失LLip。11;10:通过等式11将交叉熵损失LCE和量化误差损失LQE组合用于总损失L。12岁;11:反向传播:计算总损失函数的梯度,即LB 使用直通估计器(STE)[4]来处理符号函数;12:更新日期:更新全精度weig hts:Wk′←− Wk− ηL。奇异向量,即DKWk=σj(Wk)ukvk,(14)j=1其中dk是Wk的秩,σj(Wk)是第j个最大奇异值,uk和vkB B j j分别是左向量和奇异向量[46]。由方程式27,第一项M是与一般二值化方法的损失函数的导数相同,减少了量化误差。对于第二项,基于Eq. 14,它可以被看作是正则化项惩罚一般二值化损失,K自适应正则化系数γ01 - 02 -0FSN)(更详细的衍生物-RMk可以在补充材料中找到请注意,即使我们在SVD的概念下分析正则化属性,我们实际上并没有在我们的算法中使用SVD。和等式图27和图14仅证明了LCR正则化与最大奇异值及其对应的奇异向量有关。LCR算法1仅在较少的迭代步骤(实际上为5个)内使用幂迭代(参见补充材料中的算法)来近似最大奇异值。保留矩阵的讨论。在这里,我们想给一个直截了当的解释,为什么优化LCR损失在方程. 11等价于保持BNN的Lipschitz连续性。由于网络f Lip的Lipschitz常数可以由权矩阵的一组谱范数上界,即WkSN(参见等式3-5 ),我们的目标是保留二进制权重矩阵的谱范数,而不是针对网络本身。因为EQ。7至9推导出RMkSN=WkSN和RMkSN=WkSN,我们只需要+v:mala2255获取更多论文BBF10岁。Shang等人计算我们设计的保留矩阵的谱范数。最后,最小化Eq. 11等于强制执行RMkSN− →RMkSN,保持BNN的谱范数(Lipschitz连续性)。因此,用我们的方法训练的BNN具有更好的性能,因为Lipschitz连续性被保留,这可以平滑BNN。与频谱归一化(SN)和防御性量化(DQ)的区别。有两个主要区别:(i)与SN和DQ直接使用权重矩阵计算谱范数相比,我们的方法通过利用BNN中的激活来计算专门设计的保留矩阵的谱范数以近似目标谱范数。这样我们可以近似如图1(a)所示的二进制网络的目标但不可访问的Lipschitz常数,其中权重矩阵非常稀疏。特别地,我们的方法不依赖于权重矩阵,而不是逐层计算SN中提出的权重矩阵的谱范数,因为计算可以仅使用输入/输出激活来完成Lation(等式(八)。(ii)为了解决训练架构的复杂性,我们设计的保留矩阵通过以模块方式利用Lipschitz常数(例如,,ResNet [17]中的残差块),而不是计算谱范数并将每个层的权重矩阵归一化为1,如图1(b)所示。与SN和DQ方法相比,由于采用了模块化的简化方法,该方法的总计算量大大降低。4实验在本节中,我们对图像分类进行了实验。遵循大多数研究中的流行设置[40,31],我们使用CIFAR-10 [26]和ImageNet ILSVRC-2012 [26]来验证我们提出的二值化方法的有效性。除了比较我们的方法与国家的最先进的方法,我们设计了一系列的烧蚀研究,以验证我们提出的正则化技术的有效性。所有实验都使用PyTorch实现[38]。我们在CIFAR-10数据集上训练时使用一个NVIDIA GeForce 3090 GPU,在ImageNet数据集上使用四个GPU。实验设置。 在CIFAR-10上,BNN训练了400个epoch,批量大小为128,初始学习率为0.1。我们使用SGD优化器,动量为0.9,并设置权重衰减为1 e-4。在ImageNet上,二进制模型被训练了120个epoch,批量大小为256。我们使用余弦学习率调度器,学习率初始设置为0.1。所有的训练和测试设置都遵循IR-Net [40]和RBNN [31]的代码库。4.1CIFARCIFAR-10 [25]是最广泛使用的图像分类数据集,它由50 K训练图像和10K测试图像组成,大小为32×32,分为10类。对于训练,随机抽取10,000张训练图像进行验证+v:mala2255获取更多论文Lipschitz连续保持二元神经网络表1.前1和前5位精度,ageNet. †表示表2. CIFAR上的前1准确度(%)-与标准ResNet architec-10(C-10)测试集不同。赌注越高在同一个层次上,但在同一个层次上。BW前五名之三. W/A表示权重/激活的比特数。拓扑方法(W/A)(%)(%)基线32/3269.6八十九点二[32]1/1 42.7 67.6拓扑方法位宽依据(W/A)(%)基线32/32 93.0ResNet-18RAD [10]1/1 90.5ResNet-18我们的1/159.6 81.6HWGQ [29]1/3261.383.2LNS [15]1/185.7SQ-TWN [11]2/3263.885.7SLB [48]1/185.5BWHN [23]1/3264.385.9我们1/186.0[40]第42话66.585.9ResNet-20Ours-bireal 1/187.2IR-Net [40]1/162.984.1ProxyBNN [18]1/162.784.5我们1/163.584.6变体ReActNet†[34]1/1 69.4 85.5ResNet Ours† 1/169.8 85.7其余图像用于训练。数据增强策略包括训练期间的随机裁剪和随机翻转[17]为了测试,我们评估原始图像的单个视图以进行公平比较。对于ResNet-18,我们与RAD [10]和IR-Net [40]进行比较对于ResNet-34,我们与LNS [15]和SLB [48]等进行比较。如表1所示,我们的方法始终优于其他方法。LCR-BNN分别比ResNet-18、ResNet-20和ResNet-20(没有二值化激活)性能提高了0.3%、此外,我们的方法还验证了双实结构的有效性[33]。当打开双实数模块时,IR-Net实现了1.0%的准确度提高,而我们的方法提高了1.2%。4.2ImageNetImageNet [9]是一个更大的数据集,包含120万个训练图像和50 k个验证图像,分为1,000个类。ImageNet具有更大的多样性,其图像大小为469×387(平均)。PyTorch示例中常用的数据增强策略(包括随机裁剪和翻转)[38]被用于BiReal [33]1/156.479.5IR-Net [40]1/191.5XNOR++[6]1/157.179.9我们1/191.8IR-Net [40]1/158.180.0基线32/3291.7ProxyBNN [18]1/158.781.2[51]第五十一话1/179.3XNOR-网络[41]1/151.273.2BNN+[8]1/153.072.6[51]第五十一话1/253.4-我们1/3266.9 86.4基线32/3291.7基线32/3273.391.3[51]第五十一话1/3290.0[32]第三十二话1/152.476.5DSQ [13]1/3290.1ResNet-34[33]第三十三话1/162.283.9IR-Net [40]1/3290.2基线32/3269.689.2SQ-BWN [11]1/3258.481.6BWN [41]1/3260.883.0LNS [15]1/3290.8SLB [48]1/3290.6我们1/3291.2DSQ [13]1/184.1IR-Net [40]1/185.5IR-双实[40]1/186.5+v:mala2255获取更多论文12岁。Shang等人训练我们报告了使用224×224中心裁剪图像的单裁剪评估结果。对于ResNet-18,我们将我们的方法与XNOR-Net [41],ABC-Net [32],DoReFa [51],BiReal [33],XNOR++ [6],IR-Net [40],ProxyBNN [18]进行比较。为ResNet-34,我们将我们的方法与ABC-Net [32],BiReal [33],IR-Net[40] , ProxyBNN [18] 进 行 比 较 。 如 表 2所 示 , 我 们 提 出 的 方 法 在ImageNet上的top-1和top-5准确度方面也优于其他方法特别是,与STOA方法ProxyBNN [18]相比,LCR-BNN使用ResNet-18架构实现了0.9%的Top-1准确度提高,以及与最先进的方法ProxyBNN[40]相比,使用ResNet-34架构实现了0.6%的Top-1准确度提高除了在标准ResNet架构上实现的那些方法之外,通过在ResNet变体架构ReActNet [34]上添加我们的Lipschitz正则化模块,我们还观察到准确性的提高。请注意,在ReActNet上添加LCR模块的训练设置也因ReActNet的代码库而异。4.3消融研究在本节中,使用ResNet在CIFAR-10上进行消融研究,20架构和ImageNet上的ResNet-18。结果见表4。通过在IR-Net [40]和ReActNet [34]上堆积我们的正则化项请注意,ReActNet是一个强大的基线,具有变体ResNet架构。 研究了损失函数中超参数λ对CIFAR的影响。如图3所示,我们可以观察到性能随着λ的增加而提高两个实验都验证了该方法的有效性。除此之外,为了研究我们的方法的正则化特性,我们可视化了具有各种设置的几个训练和测试曲线。由于篇幅所限,我们将这些演示放在补充材料中。4.4进一步分析计算成本分析。 在表5中,我们将二进制操作和浮点操作的数量分开,包括所有类型的操作,如跳过结构,最大池等。它表明,我们的方法在模型推理阶段保持BOP的数量和FLOP的数量不变,即使我们的方法在训练阶段的计算量更大。因此,我们的Lipschitz正则化项不会破坏网络二值化的主要好处,即加速神经网络的推理。重量分布可视化。 为了从权重分布的角度验证我们提出的方法的有效性,我们选择了我们的LCR-BNN和IR-Net来可视化不同层的权重分布。为了公平比较,我们在每层中随机选取10,000个参数,以形成图2。与IR-Net相比+v:mala2255获取更多论文Lipschitz连续保持二元神经网络表3. 表5中超参数λ的影响。适用于ResNet-18的FLOPS和BOPS损失函数越高越好[24]第二十四话695× 1091. 314× 108[41]第四十一话695× 1091. 333× 108[18]第十八话695 × 109 1. 564 ×108IR-Net [40]1 .一、676× 109 1. 544 ×108我们的1号。676× 1091. 544× 108表4. LCR-BNN的消融研究数据集方法累积(%)全精密度91. 7IR-Net [40](w/oBiReal)85.5CIFARIR-Net + LCR(不带BiReal)86.0IR-Net [40](w/BiReal)86.5IR-Net + LCR(不带BiReal)87.2全精度69.6IR-Net [40](w/oBiReal)56.9ImageNet IR-Net + LCR(w/oBiReal)58.4[40]第IR-Net +LCR 59.6ReActNet 69.4ReActNet +LCR 69.8全精度01. 826 ×109表6. 在ImageNet-C上的mCE。越低越好。方法mCE(%)[40]第四十话IR-Net+ LCR(我们的)84.9↓俄罗斯联邦中央银行[31]87.5RBNN+ LCR(我们的)84.8↓[34]第三十四话IR-Net+ LCR(我们的)84.9↓层1.0.conv2.weight层2.0.conv2.weight层3.0.conv2.weight图二. IR-Net [ 40 ]和具有ResNet-18架构的LCR-BNN的权重直方图(二进制化前)。第一行显示IR-Net的结果,第二行显示我们的结果。用我们的方法训练的BNN具有更平滑的权重分布。具有更平滑的权重分布,这相应地帮助我们的方法在ImageNet上实现了1.6%的准确率提高,如表2所示。更准确地说,在layer3.0.conv2层中,IR-Net分布的标准差为1.42,比我们的1.11高28%。ImageNet-C的鲁棒性研究ImageNet-C [19]成为研究模型鲁棒性的标准数据集,它由19种不同类型的损坏组成,其中包括应用于ImageNet验证图像的噪声,模糊,天气和数字类别的五个严重程度(参见Supple-mental Materials中的示例)。我们认为所有19个腐败的最高严重程度(严重性=5),并报告平均top-1的准确性。我们使用Mean Corruption误差(mCE),用于测量模型在此数据集上的稳健性。我们冻结了学习数据表示的主干。 分类任务,以及log2λ拓扑λ = 0 - 10 1 2 3ResNet-1885.9 86.2 87.9 90.191.2ResNet-2083.9 83.7 84.5 85.9+v:mala2255获取更多论文L十四岁。Shang等人layer2.0.conv2.weight(layer3.0.conv2.weight(layer2.0.conv2.weight(layer3.0.conv2.weight(图三. 相关图反映方程中的独立性假设。第七章仅微调主干上的任务特定报头(即,线性协议)。 表6中的结果证明,在现有方法上添加LCR可以提高二元模型的鲁棒性。独立思考假设。在Eq中使用的假设。 7是我们方法推导的核心,因为它在理论上支持用所设计的保留矩阵近似权矩阵的谱范数。因此,在本发明中,我们通过可视化同一批中的特征图的相关矩阵来研究该假设。具体来说,我们可视化了全精度和二进制激活的相关矩阵,其中红色代表两个激活相似,蓝色代表相反。如图3所示,我们可以清楚地观察到激活只与自身相关,这在很大程度上证明了这一假设。此外,我们还设计了另一种机制来适当地使用这个假设。我们将系数β设置为大于1,以在后一层的特征上给予更多权重,使得它们对Lip的贡献更大(等式2)。 11)。 与神经网络一样,后几层的特征映射具有更强的相互线性独立性[2]。5结论本文引入Lipschitz连续性来度量BNN的鲁棒性。受此启发,我们提出LCR-BNN保留Lipschitz常数作为正则化项,以提高二进制模型的鲁棒性。具体地说,为了绕过BNN中NP难的Lipschitz常数计算,我们设计了保留矩阵来近似Lipschitz常数,然后约束这些保留矩阵的Lipschitz常数实验结果证明了该方法的有效性。伦理问题。本文中使用的所有数据集都是开源数据集,不包含任何个人身份或敏感的个人身份信息。局限性。 虽然我们的方法实现了SoTA,但将其添加到现有方法中需要花费更多的时间(大约多20%)来训练BNN,这是我们方法的明显局限性。致谢。本研究得到了NSF CNS- 1908658(ZZ,YY)、NetTS-2109982(YY)、香港特别行政区研究资助局(RGC)早期职业计划(基金编号26202321(DX))、香港科技大学启动基金编号R9253(DX)和Cisco(YY)捐赠的部分资助。本文仅反映作者的观点和结论,资金代理人。+v:mala2255获取更多论文Lipschitz连续保持二元神经网络引用1. Aharon,M.,Elad,M.,Bruckstein,A.:K-svd:一种设计稀疏表示的overcomplete字典的算法IEEE信号处理学报(2006)62. 阿兰,G.,Bengio,Y.:使用线性分类器探针理解中间层。arXiv预印本arXiv:1610.01644(2016)143. Bartlett,P.L.,福斯特,D.J.,Telgarsky,M.J.:神经网络的谱归一化边界。In:NeurIPS(2017)2,34. 本焦,Y., L'eonard,N.,Courville,A.:通过条件计算的随机神经元估计或传播梯度。ArXiv:1308.3432(2013)三六九5. Bulat , A. , Martinez , B. , Tzimiropoulos , G. : Bats : Binary architecturesearch。在:ECCV(2020)66. Bulat,A.,Tzimiropoulos,G.:Xnor-net++:改进的二进制神经网络。在:BMVC(2019)2,3,1
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功