没有合适的资源?快使用搜索试试~ 我知道了~
5251×个...过滤器1过滤器2过滤器3过滤器4Filter M 1 Filter M(a)权重张量RMSMP:一种新的具有行混合方案和多精度的张颂恩(1)、李彦宇(1)、孙梦舒(1)、蒋伟文(2)、李思佳(3)、王彦智(1)、李雪(1)、东北大学(2)、乔治梅森大学(2)、密歇根州立大学{孙昌,李彦宇,孙梦,yanz.wang,薛琳}@ northeastern.edu,wjiang8@gmu.edu,liusiji5@msu.edu摘要这项工作提出了一种新的深度神经网络(DNN)量化框架,即RMSMP,具有Row-wise混合S方案和多精度方法。具体地,这是在DNN权重矩阵的行之间的层内分配混合量化方案和多个精度的第一次努力此外,本文提出了与现有工作不同的观察结果,即量化误差不一定表现出逐层敏感性,并且实际上可以减轻,只要每层中的权重的某一部分具有较高的精度。该观察使得硬件实现中的逐层一致性能够朝向保证的推理加速,同时仍然享受混合方案的逐行灵活性和多个精度以提高准确性。该方法采用硬件信息量大的策略,有效地减少了问题的搜索空间。RMSMP量化算法利用离线确定的所有层的不同量化方案和精度的比率,使用基于Hessian和方差的方法来有效地为每行分配方案和精度。所提出的RMSMP进行测试的图像分类和自然语言处理(BERT)的应用程序,并达到最佳的准确性性能之间的国家的最先进的同等精度下。在FPGA器件上实现了RMSMP,实现了3.65加速在ImageNet上ResNet-18的端到端推理时间与4位定点基线比较。1. 介绍随着深度学习或深度神经网络(DNN)的巨大成功,迫切需要将推理模型部署到边缘计算平台上。*同等贡献。表格/设备。DNN量化作为一种主要的模型压缩技术,是降低设备上推理的计算量、内存和存储需求的重要方法,尤其适用于具有定制架构设计能力的平台,如FPGA设备和ASIC芯片。一般来说,DNN量化以低位宽表示学习DNN模型,其准确性性能接近全精度模型的准确性性能,同时加快推理速度。已经研究了各种量化方案,包括二进制[5,6,26,22], 三元[20,15,39],固定点(固定)[38,4,12,16,3,11],2(PoT)[24,37,19,36]、2的加性幂(APoT)[21]等。这些方案具有不同的精度和硬件性能。二进制和三进制通过消除乘法运算显著减少了计算量,但精度损失相对较大(一般>2%低位宽固定量化精度8 位 定 点 4 位 定点4位PoT图1. 所提出的DNN量化框架具有逐行混合方案和多个精度,其将量化方案和精度表示为权重张量(或权重矩阵的行)的滤波器。它的特点是(i)逐层均匀性,以满足实际硬件实现的要求,(ii)混合方案和多精度的逐行灵活性,(iii)候选方案和精度(位宽)的硬件信息选择,以显著减少算法搜索空间,以及(iv)在现有技术中具有优异的精度性能。过滤器1滤波器2滤波器3过滤器4......(b)权重矩阵...............5252∼----∼联系我们性能例如,4位Fixed与其32位浮点对应物相比可以实现可忽略的精度损失,尽管其在推理计算期间仍然需要乘法不同于二进制、三进制和固定的,PoT是非线性量化方案,其中在量化级别为2的幂的情况下,乘法可以用比特移位操作代替,从而减少计算以加速推断。然而,PoT仍然导致中等精度损失(1% 2%),这是由于刚性分辨率问题[21],其在平均值附近表现出高分辨率,在权重分布的尾部表现出低分辨率,并且即使使用更高的位宽也无法解决因此,通过将量化水平表示为多个2的幂的和,提出了APoT,克服了PoT的刚性分辨率问题,同时享受非乘法运算。在探索各种量化方案的同时,人们发现第一层和最后一层对于保持精度是重要的,因此在上述工作中,第一层和最后一层或者是未量化的(以32位浮点),或者是用不少于8位量化的受此启发,逐层多精度量化已经在[31,33,29,10,9,34,28]中得到了很好的研究,其中已经使用各种方法/算法来处理每个层中的权重和激活的精度分配的大搜索空间。该 工 作 提 出 了 一 种 新 的 DNN 量 化 框 架 , 即RMSMP,具有Row-wiseMixed-S方案和Multi-P精确方法。图1示出了DNN(a)权重张量和(b)权重矩阵上的所提出的量化框架。具体地,权重张量中的每个滤波器或权重矩阵中的每行被分配量化方案和精度的组合。方案和精度的候选人实际上是为了便于硬件实现,并有效地为加快与硬件平台/设备上的给定资源的推理,同时与保持精度的能力,这种高度硬件信息量化策略显著降低了DNN量化问题的搜索空间,使我们的框架与现有的多精度量化工作区别开来。这是在层内应用混合量化方案和多个精度,目标是硬件推断中的简化操作,同时保持准确性。具体地,两 个 量 化 方 案 , 即 , 2 的 幂 ( PoT ) 和 固 定 点(Fixed),以及两个精度,即,4-在权重和激活的量化上采用并探索了10位和8位,以减少干扰计算并保持准确性。此外,如先前的工作所证明的,这些工作隐含地对第一层和最后一层使用更高的精度或者明确地将多个精度分配给不同的层,则必须至少对模型的部分使用更高的精度,以将量化模型的精度提高到接近全精度模型的精度。然而,与现有的工作不同,本文观察到这不一定与逐层灵敏度有关,相反,只要每层中的权重的某一部分使用更高的精度,量化误差就可以减轻。该观察实现了量化模型的实际硬件实现的逐我们的量化框架的贡献总结如下:• 一种新颖的逐行混合方案和多精度量化方法。• 一个高度硬件信息的解决方案策略,大大减少了问题的搜索空间。• 在与现有工程同等精度下精度性能最佳。• 在实际设备上的显著推理加速,与网络式均匀低位量化相比,即,流行的逐层多精度方法的速度上限2. 相关工作2.1. 量化方案2.1.1线性量化方案具有均匀量化水平的线性量化方案包括二进制、三进制和定点。二进制和三进制量化都使用DNN模型的极低二进制化(具有值1,+1)或三进制化(具有值1,0,+1)水平。代表性的二进制量化方法包括Binaryconnect [5]、二进制神经网络(BNN)[6]、XNOR-net [26]和ABC-Net [22]。在权重被约束为1、+1的情况下,乘法可以由加法/减法代替,如果激活也被量化为二进制,则其甚至可以通过使用XNOR和AND运算来消除三进制量化方案在TWN [20]、TTQ [39]和[15]中实现。三进制网络也受益于非乘法运算。虽然二进制和三进制量化可以通过简化操作来显著减少计算,但它们引入了相对较大的精度损失 。 根 据 上 述 研 究 , 二 进 制 的 准 确 度 通 常 降低>5%,三进制的准确度通常降低2%~ 3%固定点(Fixed point)量化方案使用比二进制和三进制更多的比特来保持准确性,并且已经被广泛地应用。5253∼使用不同的方法/算法来实现。DoReFa-Net [38]首先通过将双曲正切变换引入权重和激活来探索它,并使用缩放因子来最小化量化误差。PACT [4]通过向激活添加参数化限幅阈值改进了该方法DSQ [12]开发了可微分软量化,其发展了训练方法以逐渐逼近均匀量化器。QIL [16]参数化了量化区间,并使用任务丢失对其进行训练,避免访问原始训练数据。µL2Q [3]在训练期间引入了数据分布损失,以最大限度地减少量化误差。LSQ [11]提出了一种可微分的方法来学习每个层的量化器与参数。一般来说,4位定点量化模型与32位浮点量化模型相比,虽然不能摆脱昂贵的乘法运算,但精度损失可以2.1.2非线性量化方案非线性量化方案使用非均匀量化级别,诸如2的幂(PoT)方案,其中量化级别是2的幂数。权重(在PoT中)与输入(在Fixed中)的乘法可以用移位操作来代替。因此,对于DNN推理,PoT可以具有比Fixed方案更高的加速比。首先在LogQuant [24]中采用PoT量化,然后在INQ [37]中采用模型精度增强技术,使用ADMM [19]和LQ-Nets [36]的极低位神经网络。然而,PoT遭受刚性分辨率现象,并且即使增加位宽也不能获得更高的模型精度特别地,4比特PoT量化将导致1%-2%的准确度损失。为了克服这一限制,二的加性幂(APoT)[21]将量化级别表示为多个2的幂的和,以减轻准确度损失。然后,APoT量化权重和固定输入的乘法可以用比特移位操作和加法来代替。此外,MSQ [2]利用变体APoT和Fixed的混合来最大化FPGA器件上的资源利用率,而在这项工作中,我们使用PoT和Fixed的混合方案,实现了更高的准确性并进一步减少了推理计算。上述工作均采用单精度量化。2.2. 单精度与多精度上述量化工作中的常见做法是保持第一层和最后一层未量化(在用于权重/激活的32位浮点中,即,W32A32)或用不少于8位量化,目的是保持准确性,这在[13]中首次提出。受此刺激,另一行作品[31,33,29,10,9,34,28]探索逐层多精度量化方法来提高量化模型的准确性。为了处理用于权重和激活两者的逐层精确分配的大搜索空间,已经利用了不同的方法/算法。HAQ [31]使用强化学习来训练决定每层位宽的代理。DNAS [33]提出了一种多精度量化感知训练技术,其中位宽搜索被转换为网络架构搜索。混合精度DNN [29]表明,可以通过可学习的参数来确定位宽,使用直通估计器( STE ) 来 估 计 HAWQ [10] 、 HAWQ-V2 [9] 和PyHessian [34]求解Hessian矩阵以确定每个层的位宽。一般想法是将更多比特分配给对量化误差敏感的层Q-BERT [28]还使用基于Hessian的多精度量化到BERT [7]模型,用于自然语言处理应用。有两种框架在层内应用多精度。RVQuant [25]在层内以更高的精度不规则地量化一小部分权重,因此与网络均匀低比特量化相比,无法实现推理加速。Au-toQ [23]训练强化学习代理将精度分配他们都没有考虑混合方案。3. 拟定RMSMP量化本节通过介绍方案选择、精度探索和算法解决方案,讨论了具有高度硬件信息化策略的拟议RMSMP量化框架。3.1. 简化操作固定点(Fixed)量化方案具有更高的精度性能,并且2的幂(PoT)是加速干扰的计算效率最高的量化方案(具有仍然可接受的精度性能),因为乘法可以由比特移位操作代替。因此,这项工作提出了一种新的逐行混合方案量化方法,其中Fixed用于保持精度,PoT用于减少推断的计算具体地,对于权重矩阵中的每行或权重张量中的每个滤波器,权重被量化为固定方案或PoT方案。 使用逐行方案分配而不是逐层方案分配,因为硬件推理执行在相同的计算资源上逐层进行- GEMM固定,即,用于处理固定权重的GEMM(通用矩阵乘法)核心,以及GEMM PoT,即,用于处理PoT权重的GEMM核心(注意,在PoT中,激活也被量化为固定,以支持代替乘法的位移位操作5254Y..Σ·Y⌈⌋·−2m− 1w/α,−。(3)α≤w ≤αQ这两种方案的比率基于硬件特性是固定的,并且对于不同的层是相同的,以保持硬件设计中的逐层均匀性,例如然后,从32位浮点权重w到PoT量化权重w的量化器函数为可以在逐层推理执行中获得该推理加速在ASIC芯片中,期望最大-w=wQPoT(m,α)(五)将PoT量化行的部分最小化到不导致准确性损失的程度。在FPGA设备中,存在异构计算资源,即,DSP实现GEMM固定内核,LUT实现GEMMPoT核心。因此,两种方案的比率可以被离线确定,使得LUT利用率被高(而与100%的DSP利用率),以加快推理,也不应该伤害准确性。在我们的RMSMP量化的训练算法中,逐行方案分配是基于特定行的权重分布如果权重分布具有较小的方差,则PoT方案是优选的;否则,固定方案是优选的。可以基于两个方案的离线确定的比率来使用关于变化的阈值。3.1.1定点(固定)量化器固定方案使用统一的量化级别,其中量化权重被映射为缩放因子乘以量化级别。在m位固定的情况下,经量化权重应来自以下集合:固定1二个Q(m,α)= ± α × {0,. . .,1}。αh−12round(log2h′),h′>2−2m+1=0,h′≤2−2m+1,其中h′=h(w,α)。3.2. 多重精度,提高精度由于以前的工作要么隐式地为第一层和最后一层使用更高的精度,要么显式地为不同的层分配多个精度,因此必须为模型的某些部分使用更高的精度以提高准确性。然而,逐层多精度方法与在相同硬件上的逐层推理执行不兼容。换句话说,逐层多精度方法存在较大的实现开销,这可能抵消预期的推理加速。图2展示了所提出的多精度方法与行式混合方案的一致性。 大多数行使用4位精度用于权重/激活,即,PoT-W 4A 4和Fixed-W 4A 4,因为2位有较大的精度损失,3位不适合硬件实现,因此优选2位、4位、8位等的操作数。为了提高准确性,更高的精度2m−1−1 2m−1−1(一)具有8位权重和4位激活的方案,即,已修复-W8 A4。 不应用其中α表示缩放因子。然后,从32位浮点权重w到固定量化权重w的量化器函数为w=w固定(m,α)=α·h−1。1·轮。(2m−1)·h。w,α(二)其中h()将[1,+1]内的值移位到[0,1]的范围内,例如, h(x)= x/2 + 0。5,并且w,α根据下式裁剪w由于其刚性分辨率问题而具有更高的精度。PoT-W4A4:固定-W 4A 4:固定W8 A4可以离线确定,并且在不同层上是相同的,以便在硬件实现中保持逐层一致性,使得在逐层推理执行期间引起很少的开销,并且可以保证推理加速。一般来说,PoT-W 4A 4的较大部分可以帮助推理加速,但会降低准确性。通过使用固定W8A4的一小部分,由于PoT方案引起的准确度降级可以被抑制。w,α−1,w−α1,w>α精密8位4位3.1.2 2的幂(PoT)量化器PoT方案使用2的幂作为量化。锅固定行水平。在m位PoT的情况下,经量化权重应来自以下集合:图2. 逐行混合方案和多精度量化。Po T 方案仅使用4位精度来执行锅11个权重/激活,即, PoT-W 4A 4,固定方案使用Q(m,α)= ±α × {0,22m−1 −2,22m−1−3,. . . ,1}。(四)两个精度即,固定-W 4A 4和固定-W8 A4。5255M1g←;IJ1011算法一:RMSMP量化输入:具有权重W的32位浮点DNN模型M; SPoT-4:SFixed-4:SFixed-8的比率(R)输出:量化模型损失W每层2个3用于ido中的每个过滤器Wij//幂迭代4初始化随机向量v0;5对于每个k ∈ {1,. . . ,m ax iter}do6规范化vk−1vk−1||vk−1 ||27vk←(gTvk−1)Wij;// Eq. 八个图3. PoT-W 4A 4比率对ResNet-50,ResNet-18和MobileNet-V2模型在CIFAR- 10,CIFAR-100和ImageNet数据集上的准确性的影响。在顶行中,仅固定W 4A 4与PoT-W 4A 4混合在底行中,除了PoT-W 4A 4和Fixed-W 4A 4之外,还使用5%如图3所示。这项工作将Fixed-W8 A4的百分比年龄固定为5%,因为它足以减轻准确性降低,并且甚至更小的百分比仅导致推断的边际进一步加速。3.3. RMSMP算法RMSMP量化算法可以训练DNN8λWij←max(vmax iter);9如果λWij在前5%中,则否则SWij←SFix ed-8;12将Wij按方差排序,由R得到阈值θ;13SWij←SPoT-4,若方差小于θ;14如果方差大于θ,则SWij←SFix ed-4;15 每一个时代都每批剂量16//前向传播每层1718出i ←projS(inputi)·projS(Wi);//反向传播19损失←损失;// STE等式六个从零开始建模或将预训练模型量化为WiprojS(Wi)在一些实施例中,滤波器可以被量化为一个,使得对于每个层,量化为PoT-W 4A 4、Fixed-W 4A 4和Fixed-W8 A4的滤波器的数量遵循SPoT-4:SFixed-4:SFixed-8=A : B : C 的 预 定 义 比 率 , 其 中A+B+C=100。对于分配的量化方案和preci,每层的过滤器,我们使用基于Hessian的方法来确定哪些过滤器应该使用固定W8A4(更高的精度)。对于其余滤波器,我们基于每个滤波器中的权重的方差来确定PoT-W 4A 4与Fixed-W 4A 4。一旦确定量化方案和精度(PoT-W 4A4、固定-W 4A 4和固定-W8 A4)向下到每个层的滤波器级别的分配,直通估计器(STE)[1,35]20返回M←M{pr ojS(W)};加权参数的二阶导数如下2损失H==(7)W 2其中一阶梯度g可以通过正常的反向传播过程来计算。为了求解Hessian矩阵H的特征值(即,λH),我们采用了文献[10,28]中提出的幂迭代法。通过引入辅助变量v,我们如下循环vk+1=H·vk:正向:y=round(x)伊(六)gTvk+1=H·vk=W·vk=(gTvk)(8)W反向:x=1x∈R可用于将模型量化为指定的方案所以limk→∞vk+1vk=λH 最后一个等式被证明给定[10]。 与Eq. 8,我们可以继续求解vevk+1vk和精度,同时在将量化过程从连续值反向传播到离散值期间求解不可用的梯度。为 了 确 定 具 有 更 高 精 度 的 滤 波 器 ( Fixed-W8A4),我们从HAWQ [10]中的基于Hessian的方法扩展,通过计算每个滤波器的Hessian矩阵的最大特征值Hessian矩阵通过简单的反向传播计算右项,从而求解λH。此外,基于滤波器的方差来确定方案分配。最后,在为滤波器分配量化方案和精度之后,我们可以通过STE训练我们的量化模型请注意,我们每10个epoch更新一次过滤器的分配。详细步骤在算法1中示出。←;5256量化MobileNet-v2准确度(%)ResNet-18准确度(%)ResNet-50准确度(%)方法前5名前5名前5名CIFAR-10基线(W32A32)92.51-93.62-93.91-固定-W 4A 491.76(92.34)-92.9(93.43)-93.16(93.73)PoT-W4A490.92(91.34)-92.14(92.97)-92.53(93.15)-APoT-W4A4 [21]91.83(92.72)-92.94(93.47)-92.87(93.68)-PoT-W 4A 4+固定-W 4A 491.38(91.77)-92.66(93.21)-93.14(93.76)-APoT-W 4A 4+固定-W 4A 4[2]91.99(92.55)-92.98(93.65)-93.22(93.77)-固定-W 4A 4+固定-W8 A492.54-93.69-94.11-RMSMP92.58-93.72-94.03-CIFAR-100基线(W32A32)71.4891.9874.4992.7077.7794.00固定-W 4A 470.22(71.16)90.88(91.63)73.88(74.37)91.72(92.31)76.67(77.41)93.22(93.85)PoT-W4A467.11(68.68)89.21(90.06)72.97(73.88)91.65(92.14)74.58(76.83)92.22(92.74)APoT-W4A4 [21]70.21(71.13)90.85(91.69)73.97(74.33)92.03(92.49)76.58(77.56)92.94(93.55)PoT-W 4A 4+固定-W 4A 468.94(70.37)90.05(90.89)73.41(74.12)91.68(92.25)76.95(77.28)92.87(93.66)APoT-W 4A 4+固定-W 4A 4[2]70.25(71.50)90.92(91.82)74.03(74.60)92.05(92.63)76.97(77.31)92.99(93.86)固定-W 4A 4+固定-W8 A471.5291.9974.5492.6177.9294.18RMSMP71.5191.9774.6192.6977.8594.13ImageNet基线(W32A32)71.8890.2970.2589.4876.5193.09固定-W 4A 467.23(69.26)86.03(88.18)68.66(69.72)87.54(88.67)75.58(76.22)92.01(92.43)PoT-W4A465.88(67.93)84.83(86.63)67.11(68.20)85.93(87.14)74.77(75.03)91.66(92.22)APoT-W4A4 [21]67.76(68.97)86.42(88.17)68.48(70.70)87.92(89.60)75.49(76.60)92.93(93.10)PoT-W 4A 4+固定-W 4A 466.20(68.54)85.66(87.65)67.98(68.94)86.75(88.66)75.85(76.19)91.97(92.77)APoT-W 4A 4+固定-W 4A 4[2]67.31(68.99)86.11(88.04)69.22(70.27)88.33(89.42)76.11(76.22)92.58(92.86)固定-W 4A 4+固定-W8 A468.9889.0470.4889.5276.6893.44RMSMP69.0289.0770.7389.6276.6293.36表1. 来自CIFAR-10、CIFAR- 100和ImageNet数据集上MobileNet-v2、ResNet-18和ResNet-50模型的不同量化方法的结果。基线是具有32位浮点权重/激活的未量化模型,即,W32A32。我们探索了不同的量化方案,包括固定点(固定),2的幂(PoT),2的加幂(APoT),以及它们的组合(PoT +固定,比例为1:1,和APoT +固定,比例为3:2)。对于这些方案,我们报告权重/激活的4位精度的准确性,即,W 4A 4;并且括号中的精度是通过将第一层和最后一层的精度放宽到W8 A8,而其他层仍然在W 4A 4中。在最后两种方法中,通过(i)以95:5的比率合并4位固定与8位固定(固定-W 4A 4+固定-W8A4),以及(ii)以65:30:5的比率合并PoT-W 4A 4、固定-W 4A 4和固定-W8 A4(RMSMP)来引入逐行多精度。在具有混合方案和多精度的所有量化方法中,组合在层内是逐行的4. 评价4.1. 实验装置我 们 的 RMSMP 的 图 像 分 类 和 自 然 语 言 处 理(NLP)的应用程序进行评估所有模型训练和量化都在NVIDIA TITAN RTX和GeForce RTX 2080 Ti GPU上进行,并在Ubuntu 18.04操作系统上使用CUDA10.2和PyTorch 1.5框架量化算法使用与基线(32位浮点)模型训练中使用的数据增强技术相同的数据增强技术诸如阶跃或余弦学习率衰减和权重正则化的训练技巧对于训练基线和量化算法也是相同的图像分类任务的评估模型包括ResNet-18、ResNet-50[14]和MobileNet-v2 [27]5257--- -在CIFAR-10、CIFAR-100 [17]和ImageNet ILSVRC上-2012 [18] datasets. CIFAR-10和CIFAR-100数据集的32位浮点表示的基线模型从头开始训练150个历元,然后量化150个历元。对于ImageNet数据集,预训练的32位浮点模型被量化90个epochs。初始学习率为8eCIFAR-10为3,4eCIFAR-100为3,ImageNet为1e2。对于具有BERT [8]模型的NLP任务,我们在Stanford情感树库(SST-2)和通用语言理解评估(GLUE)[30]基准的多类型自然语言推理(MNLI)数据集上进行 评 估 。 预 训 练 的 BERT 模 型 来 自 HuggingFaceTransformer [32]。量化和微调同时进行3个时期的初始学习率2E-5 此外,对于所有模型,最大迭代5258×个×× ××个×× ××× ××× ××× ××× ××× ××× ××× ××× ××× ××× ××× ××× ××× ××× ××× ×方法接近位宽第一个/最后一个Top-1 Top-5层(%)(%)基线-W32 A32 70.25 89.48Dorefa [38] Linear W4A4 68.10 88.10 PACT [4] LinearW4A4[16]第十二届中国国际机床展览会µL2Q [3] Linear W4A4-[21]第二十一话W 4A 4 8位8位LQ-Nets [36] Non-Line.W4A4DNAS [33] MP-Lin.混合[29]第二十九话混合✓ ✓MSQ [2] MS W4A4RMSM P(我们的)MP-MSW4A4*✓✓70.7389.62表2. 与现有量化的比较适用于ImageNet上的ResNet-18,使用(等效)4位精度。所涵盖的量化方法包括线性、非线性(Non-Lin.)分层多精度线性( MP-直线),混合方案(MS)和我们的逐行多精度混合方案(MP-MS)。基线是具有32位浮点权重/激活的未量化模型,即W32A32。对于我们的方法,W4A4* 表示5%的权重是8位的(激活都是4位的)。特别感兴趣的是“第一层/最后一层”列,它提供了这些工作中第一层和最后一层的详细精度:✓表示与其他层中相同的量化;表示无量化(仍为32位浮点);而8位意味着8位精度用于第一层/最后一层。首页/尾页Top-1 Top-5方法逼近位宽评估结果公制(%)SST-2上的BERT基线-W32 A32精度93.00固定线性W 4A 4精度92.78 PoT非线性。W4A4精度 92.43 PoT+固定混合W 4A 4精度92.78 QBERT [28] MP-Line.混合精度92.66RMSMP(Ours)MP-MS W 4A 4 * 准确度92.87关于MNLI基线-W32 A32 mm-加速84.90固定线性W 4A 4mm-加速84.71 PoT非线性 W 4A 4毫米-加速度 84.79 PoT+固定混合W 4A 4毫米加速器84.51 QBERT [28] MP-Lin.混合mm-加速84.17RMSMP(我方)MP-MS W 4A 4 * mm-累积84.83表5. SST-2和MNLI数据集上BERT模型的现有工作的比较,使用(等效)4位精度。SST-2的评价指标是精度,而MNLI的评价指标是失配精度(mm-Acc.)。对于这两个指标,值越高越好。所提出的RMSMP的硬件效率(在资源利用率、吞吐量和等待时间方面)与通过在FPGA设备上实现具有异构GEMM核的体系结构的其它量化方法相比,即,ZynqXC7Z020和XC7Z045。量化方案/精度的不同比率是真实的-方法接近位宽层(%)(%)通过调整处理元件之间的比率基线-W32 A32 76.51 93.09多雷法[38]线性W4A4 71.40 88.10PACT [4] Linear W4A4 76.50 93.30[21]第二十一话W4A4 8位 8bit 76.60 93.10[36]第三十六话W4A4 75.40 92.40[31]第三十一话混合8位✓76.15 92.89MSQ [2] MS W4A4 76.22 92.86RMSMP(Ours)MP-MSW4A4*✓✓ 76.62 93.36表3. 与ImageNet上ResNet-50的现有量化工作进行比较,使用(等效)4位精度。首页/尾页Top-1 Top-5(PE)阵列大小。我们的最佳RMSMP实现利用三个异构GEMM核心,即,GEMMPoT−4,用于使用PoT-W 4A4滤波器进行处理GEMMFixed−4for Fix ed-W4A4 , GEMMFixed−8for Fix ed-W4A4W8A4 工作频率设置为100MHz实现方式的4.2. 精度性能表1比较了所提出的RMSMP方法与三个数据集上的三个模型的其他量化方法。RMSMP一般达到0. 5%1.高5%的方法接近位宽层(%)(%)与采用固定、PoT、APoT、PoT+的方法相比,精确度最高基线-W32 A32 71.88 90.29PACT [4] Linear W4A4 61.40 N/ADSQ [12]非线性。W4A4 64.80不适用[31]第三十一话混合8位✓67.01 87.46MSQ [2] MS W4A4 68.99 88.04RMSMP(Ours)MP-MSW4A4*✓✓ 69.02 89.07表4. 与ImageNet上MobileNet-V2的现有工作进行比较,使用(等效)4位精度。幂迭代方法的次数被设置为20。除了模型精度之外, 我们证明固定,和APoT+固定使用4位精度,和compa,可准确的固定-W 4A 4+固定-W8 A4方法。表2、3和4中的结果证明了所提出的RMSMP方法对于三种模型的有效性,即,ResNet-18、ResNet-50和MobileNet-V2分别在ImageNet上使用,主要使用4位精度。对于ResNet-18,RMSMP将top-1精度提高0。百分之四十八与基线相比,并优于现有的方法。耗 氧 物 质 高 达 4 。 百 分 之 八 十 一 对 于 ResNet-50 ,RMSMP将基线精度提高0。11%,并优于现有方法高达5。百分之二十二至于MobileNet-V2,RMSMP实现了最小的精度损失,高达7。增长62%69.20 89.0069.56N/A70.10N/A65.92 86.7270.70 89.6069.30 88.8070.64N/A70.08N/A70.27 89.425259∼×个×个量化方法PoT-W4A4:固定-W 4A4:固定-W8A4首层/末层量化精度FPGA XC7Z020FPGA XC7Z045Top-1(%)Top-5(%)利用吞吐量(GOP/秒)延迟(毫秒)利用吞吐量(GOP/秒)延迟(毫秒)LUTDSPLUTDSP(1) 固定(2) 固定(3) 锅(4) 锅(5) PoT +固定(6) PoT +固定(7) PoT +固定(8) PoT +固定MSQ-1 [2]MSQ-2[2]RMSMP-1 RMSMP-20:100:00:100:0100:0:0100:0:0五十比五十五十比五十六十比四十比零67:33:0六十比四十六十七:三十三六十分三十五秒65:30:58位固定✓8位固定✓8位固定✓8-bit Fixed8位固定✓✓✓✓69.7268.6668.2067.1168.9467.9868.5368.4669.2269.1470.6670.7388.6787.5487.1485.9388.6686.7588.4788.2288.3388.1789.5389.62百分之二十六百分之二十三百分之四十一百分之四十三百分之五十百分之四十六百分之五十二- 百分之五十三- 百分之五十七-百分百百分百百分百百分之十二百分百百分百百分百- 百分百- 百分百-29.636.562.472.250.375.857.0-77.0-89.0-122.699.358.150.272.047.863.6- 四十七点一-40.7-百分之二十一百分之十九百分之四十百分之四十三百分之四十八百分之四十五- 百分之六十三- 百分之六十六-百分之六十七百分百百分百百分百百分之三百分百百分百- 百分百- 百分百-百分百115.6142.7290.5352.6196.8296.3- 二百四十五点八- 三百五十九点二-421.131.425.412.510.318.412.2- 十四点八- 十点一-8.6表6.在ImageNet上的ResNet-18的两个FPGA板上实现不同的量化方法,使用(等效)4位精度。对于方法(1)(8)和两个RMSMP,每个量化方法对应于PoT-W 4A 4:固定-W 4A 4:固定-每层内的第一层和最后一层被量化为8位固定层或与其它层相同的层(由✓).最后两行是MSQ [2],其中APoT-W 4A 4和固定-W 4A 4的比率分别为60:40和67:33。请注意,MSQ使用APoT而不是PoT,并且在层内不使用多精度建议的RMSMP方法与其他方法相比对于每个FPGA板,以百分比形式提供每种量化方法下的查找表(LUT)和数字信号处理块(DSP)LUT的使用证明了量化方法对推理加速的有效性对于XC7Z020,LUT和DSP的总数对于XC7Z045,LUT和DSP的总数为218.6K和900。比其他方法高1倍的精度此外,表5提供了对大型语言模型BERT的比较。BERT是具有较高冗余度的大型模型。并且因此在量化之后容易实现可忽略的精度损失。表5中的所有量化方法都表现得非常好,RMSMP在SST-2和MNLI数据集上的准确性略好于其他方法。4.3. 硬件效率在ImageNet数据集上使用ResNet-18模型,在两个FPGA板上将所提出的RMSMP方法与其他量化方法进行比较,如表6所示。特定FPGA板上的资源总量决定了PoT-W 4A 4的最佳比例:固定-W 4A 4:修正了W8 A4方案。具体而言,XC7Z 020上的最佳比率为60:35:5(RMSMP-1),导致top-1准确度为70.66%,延迟为40.7ms,而XC 7Z 045上的最佳比率为65:30:5(RMSMP- 2),导致top-1准5260确度为70.73%,延迟为8.6ms。具有最优量化方案比的RMSMP达到3。01XC7Z020及更高版本的加速到3. 65 在XC7Z045上实现的加速比,与单方案和单精度方法(1)固定。方法(1)(3)(5)(7)(8)对第一层和最后一层采用8位固定量化以保持准确性,而这损害了推理速度。与方法(1)(2)(5)(6)相比,RMSMP提高了LUT的利用率,从而提高了吞吐量。此外,RMSMP实现了更高的准确性和更低的延迟与完整的DSP使用相比方法(4)。我们还与MSQ [2]进行比较,其中第一层/最后一层被量化为4位。我们的RMSMP-执行MSQ在准确性和推理速度。5. 结论本 工 作 提 出 了 一 种 新 的 DNN 量 化 框 架 , 即RMSMP,具有逐行混合方案和多精度方法,其特征在于(i)逐层均匀性以满足实际硬件实现的要求,(ii)用于混合方案和多精度的逐行灵活性,(iii)候选方案和精度的硬件信息选择(位宽度),用于显著减小算法搜索空间,以及(iv)现有技术中的最佳准确度性能。本文采用了高度硬件信息的解决策略,以减少问题的搜索空间。评估与图像分类和自然语言处理的应用程序,我们的RMSMP实现了卓越的准确性性能。同时,我们也评估了我们的RMSMP与FPGA器件。确认这项工作得到了美国国家科学基金会CCF-1901378和CCF-1937500的部分支持。本材料中的任何观点、发现、结论或建议均为作者的观点,不一定反映NSF的观点。5261引用[1] YoshuaBengio,NicholasL e'onard,andAaronCourville. 通过随机神经元估计或传播梯度以进行条件计算。arXiv预印本arXiv:1308.3432,2013。五个[2] Sung-En Chang , Yanyu Li , Mengshu Sun , RunbinShi,Hay- den K-H So,Xuehai Qian,Yanzhi Wang,and Xue Lin.混合搭配:一种新型的以fpga为中心的深度神经网络量化框架。在2021年IEEE高性能计算机架构国际研讨会集,2021年。三六七八[3] 宫丞、陆野
下载后可阅读完整内容,剩余1页未读,立即下载
![.zip](https://img-home.csdnimg.cn/images/20210720083646.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- VMP技术解析:Handle块优化与壳模板初始化
- C++ Primer 第四版更新:现代编程风格与标准库
- 计算机系统基础实验:缓冲区溢出攻击(Lab3)
- 中国结算网上业务平台:证券登记操作详解与常见问题
- FPGA驱动的五子棋博弈系统:加速与创新娱乐体验
- 多旋翼飞行器定点位置控制器设计实验
- 基于流量预测与潮汐效应的动态载频优化策略
- SQL练习:查询分析与高级操作
- 海底数据中心散热优化:从MATLAB到动态模拟
- 移动应用作业:MyDiaryBook - Google Material Design 日记APP
- Linux提权技术详解:从内核漏洞到Sudo配置错误
- 93分钟快速入门 LaTeX:从入门到实践
- 5G测试新挑战与罗德与施瓦茨解决方案
- EAS系统性能优化与故障诊断指南
- Java并发编程:JUC核心概念解析与应用
- 数据结构实验报告:基于不同存储结构的线性表和树实现
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)