一种基于权重重构的忆阻神经网络剪枝方法

刘静 ,  刘鹏 ,  姚廉 ,  武继刚

四川大学学报(自然科学版) ›› 2026, Vol. 63 ›› Issue (02) : 275 -286.

PDF (3462KB)
四川大学学报(自然科学版) ›› 2026, Vol. 63 ›› Issue (02) : 275 -286. DOI: 10.19907/j.0490-6756.250241
大模型在网络安全漏洞挖掘中的创新应用前沿进展

一种基于权重重构的忆阻神经网络剪枝方法

作者信息 +

A pruning method for RRAM neural networks based on weight reconstruction

Author information +
文章历史 +
PDF (3544K)

摘要

电阻式随机存取存储器(Resistive Random Access Memory, RRAM)因具备存内计算能力,被认为是高效的神经网络加速器。剪枝技术通过去除冗余权重可有效压缩模型,从而节省基于 RRAM 的神经网络加速器的硬件资源。现有的针对 RRAM 的结构化剪枝方法因其过粗的剪枝粒度易导致精度下降,且普遍忽视了权重之间的数值规律,导致这类潜在冗余未能被利用,难以在保证精度的同时进一步提升模型压缩率与硬件效率。为此,本文提出一种基于权重重构的忆阻神经网络剪枝方法,使用基于整数缩放的权重重构策略提取并共享权重中的数值共性,同时舍弃对精度影响较小的数值部分,仅映射权重关键信息至 RRAM 交叉阵列进行网络推理,实现权重的压缩表示。随后,使用渐进式重训练机制,将被舍弃的信息作为引导信号逐步衰减引入,从而在保持模型压缩率和硬件效率的同时有效恢复模型精度。实验结果表明,与现有方法相比,本文方法在模型压缩率、面积效率与能效方面实现了最多 1.2 倍、1.2倍与 1.3 倍的提升,且几乎不损失模型精度。

Abstract

Resistive Random Access Memory (RRAM), with its inherent processing-in-memory capability, has emerged as an efficient hardware platform for neural network acceleration.Pruning techniques effectively compress neural networks by removing redundant weights, thereby reducing the hardware cost of RRAM-based accelerators.However, existing RRAM- oriented structured pruning methods often suffer from excessively coarse granularity, which can lead to accuracy degradation.Moreover, they typically neglect the numerical patterns shared among weights, leaving potential redundancy underexploited and limiting further improvements in compression and hardware efficiency.To address these challenges, we propose a pruning method for RRAM neural networks based on Weight Reconstruction.Specifically, an integer scaling weight reconstruction strategy is designed to extract and share common numerical structures among weights, while discarding components with minimal impact on model accuracy.The essential weight information is then mapped onto the RRAM crossbar for network inference, achieving a compact weight representation.Furthermore, a progressive retraining mechanism is introduced, where the discarded components are leveraged as guidance signals that are gradually attenuated to refine the model, thereby recovering accuracy while maintaining high compression and hardware efficiency.Experiments show that, compared to the state-of-the-art works, the proposed method achieves up to 1.2×, 1.2×, and 1.3× improvements in compression rate, area efficiency, and energy efficiency, respectively, with negligible accuracy loss.

Graphical abstract

关键词

电阻式随机存取存储器 / 神经网络 / 剪枝 / 模型压缩 / 神经网络加速器

Key words

RRAM / Neural network / Pruning / Model compression / Neural network accelerator

引用本文

引用格式 ▾
刘静,刘鹏,姚廉,武继刚. 一种基于权重重构的忆阻神经网络剪枝方法[J]. 四川大学学报(自然科学版), 2026, 63(02): 275-286 DOI:10.19907/j.0490-6756.250241

登录浏览全文

4963

注册一个新账户 忘记密码

近年来,深度神经网络(Deep Neural Networks, DNN)在计算机视觉1、语音识别2-3和自然语言处理4等人工智能领域取得了显著进展。随着性能需求的提升,网络规模与计算复杂度呈爆炸式增长。传统冯·诺依曼架构中计算单元与存储单元的分离导致频繁的数据传输,引发严重的“内存墙”问题5,成为限制神经网络高效推理的关键瓶颈。因此,迫切需要一种能够打破计算与存储界限的高效加速平台,以应对DNN快速增长的模型规模与计算需求。
电阻式随机存取存储器(Resistive Random Access Memory, RRAM)是一种具备存内计算能力的非易失性存储器件,其存储单元兼具计算功能,有望突破“内存墙”的性能瓶颈6-7。RRAM通常以交叉阵列(crossbar, XB)的形式实现大规模集成,基于欧姆定律与基尔霍夫定律,交叉阵列能够在单个周期内完成矩阵向量乘法(Matrix Vector Multiplication, MVM)操作8,这种原位MVM计算方式与神经网络卷积层和全连接层中的乘加运算模式高度契合,使RRAM在能效与计算并行性方面显著优于传统平台,成为加速DNN推理的核心器件。然而,将完整的神经网络映射至crossbar会消耗大量的硬件资源,降低能效。研究表明,DNN具有很高的冗余度,部分网络的冗余性甚至达到了90%以上9,删除这些冗余权重对网络性能的影响基本可以忽略。因此,剪枝作为一种典型的模型压缩技术,被广泛应用于提高网络稀疏性,从而降低crossbar的面积与能耗。
剪枝主要分为结构化剪枝与非结构化剪枝两种方式。非结构化剪枝以单个权重为粒度进行剪枝,在基于RRAM的神经网络加速器中,剪枝后的零值权重仍随机地映射至紧耦合的crossbar结构,不规则的稀疏结构导致硬件资源无法有效减少,难以实质性降低能耗和面积10。结构化剪枝策略以通道、块或滤波器为粒度引入规则化稀疏矩阵,从而更好地匹配crossbar阵列紧耦合的结构11-12。但现有的结构化剪枝方法由于其剪枝粒度较粗,容易误剪重要权重,导致模型精度的显著下降,且忽视了滤波器内部权重间潜在的数值相似性,使得这部分冗余未能被充分利用,从而难以在保证精度的同时进一步提升模型压缩率和硬件效率。针对以上问题,本文提出一种协同数值重构与渐进式精度恢复的细粒度稀疏化方法,以实现高压缩率和高精度并存。
我们观察到,在多个典型的神经网络中,滤波器权重之间存在显著的整数倍或近似比例的数值关系,这种结构性数值特征可以用最大公约数(Greatest Common Divisor, GCD)进行描述。图1a展示了几种主流神经网络中满足最大公约数关系的权重所占比例,其中在Alexnet和Plain20网络中,甚至有超过90%的权重可以通过某一公约数映射到统一的比例结构。进一步地,图1b展示了在各个网络中,不同最大公约数值所对应的权重占比情况。这些比例结果表明,权重中存在的数值规律可以被有效利用,以实现更细粒度的结构压缩。
本文的主要贡献包括:1) 提出一种基于GCD的权重重构剪枝方法。该方法利用权重间的数值比例,将权重重构为共享除数与对应的整数商。将商映射至crossbar进行MVM计算,存储除数至缓冲区用于推理结果的还原,对余数进行剪枝,在保留主要数值结构的同时,实现权重表达上的结构化压缩;2) 提出一种渐进式余数裁剪引导的网络重训练方法。该方法在权重重构后,将被舍弃的余数部分视作精度补偿信息,在重训练过程中以衰减方式注入网络,进行渐进式精度恢复,减少因余数舍弃带来的网络误差,从而有效恢复甚至提升模型的推理精度;3) 使用多个典型的神经网络模型进行了实验。结果表明,与现有方法相比,本文所提出的方法在几乎不降低模型精度的前提下,分别在模型压缩率、crossbar 面积利用率以及能效比方面实现了最高可达1.2倍、1.2倍和1.3倍的性能提升。
本文结构安排如下:第1节介绍了本文的背景知识,包括基于RRAM的神经网络加速器与剪枝技术;第2节详细阐述了本文提出的剪枝方法和重训练机制,包括整体流程、算法设计和数据路径设计;第3节展示了本文的实验配置与结果对比分析;第4节总结全文。

1 背景

1.1 基于RRAM的神经网络加速器

RRAM单元通常被组织成密集的crossbar结构,如图 2所示。每条垂直位线(Bit Line, BL)通过一个RRAM单元与水平字线(Word Line, WL)相连12。权重以电导的形式存储在RRAM单元中,输入向量首先被数字模拟转换器(Digital-to-Analog Converter, DAC)转换为模拟电压信号,通过字线传输到交叉阵列。根据欧姆定律与基尔霍夫定律,电压与电导共同产生电流,并在每条位线上进行累加,位线上的输出电流代表输入向量与权重矩阵点积求和运算的结果。对于一个规模为I×J的交叉阵列,第j条位线的输出电流可表示为:

Ij=i=1IViGij

其中,Ij为第j列位线的输出电流,Vi为第i行字线的输入电压,Gij为交叉阵列中第i行、第j列忆阻器的电导值。随后,该输出电流通过模数转换器(Analog-to-Digital Converter, ADC)进行数字化处理。因此,交叉阵列能够以 O(1)时间复杂度执行向量矩阵乘法运算。

由于RRAM单元的精度有限,单个权重通常由多个忆阻器单元联合映射。位切分是一种常用的映射策略,其将权重拆分为多个比特位,分别存储在不同的单比特交叉阵列中,实现高精度数值的表示与计算14。基于位切分的RRAM加速器架构如图3所示。计算块(Bank)由全局IO接口、控制器、存储模块和多个处理引擎(Processing Engine, PE)构成。每个PE内含多个XB,位切分策略会将n位权重映射至n个XB,每个XB存储对应比特位,并执行按位乘法运算,最终通过移位与累加生成完整的多比特MVM计算结果。此外,一些特殊功能模块(如激活函数、池化运算单元)也被集成至PE中,实现完整的DNN前向传播。

1.2 模型剪枝技术

根据剪枝的模式,剪枝方案主要分为非结构化剪枝与结构化剪枝。非结构化剪枝如图4所示,其以单个权重为粒度剪除冗余权重,从而节省被删除权重对应的计算开销。然而,冗余权重的分布具有随机性,导致稀疏权重矩阵不规则。而crossbar是一种紧耦合的结构,整行和整列上的RRAM单元在计算的同时被激活,即使某些权重被剪除,其对应的存储单元仍然参与计算过程,所以非结构化剪枝往往很难在crossbar结构上取得显著的硬件资源节省效果。

结构化剪枝通常以更粗粒度的网络结构单元为剪枝对象,如滤波器剪枝15、通道剪枝等16,结构化剪枝如图5所示,在crossbar中,剪去这些结构的全部权重相当于剪除阵列的整行或整列,对应的RRAM单元不再参与计算。因此,规则的稀疏权重矩阵能更好地适配crossbar紧耦合的结构,从而有效减少硬件面积以及能耗开销。

ReCom17首次在RRAM加速器架构中探索模型稀疏优化方法,在矩阵行的粒度上利用权重的稀疏性。SNrram18通过修剪权重矩阵中不重要的列来利用稀疏性,但未能利用行方向的稀疏性。Yang等19设计了SRE稀疏引擎,以操作单元为粒度联合利用行与列方向的稀疏性,但其引入的控制器逻辑电路产生了显著开销。且这些结构化剪枝的粒度通常较粗,容易误剪重要权重导致精度的下降。Yang等20提出了一种自动化DNN剪枝和量化框架,利用强化学习自动确定给定精度损失约束下的全局最优剪枝策略,并在列向量中修剪权重矩阵。Qu等10采用基于位切分的映射方法,使用强化学习探索比特剪枝方案,以剪去整个单比特阵列。ERA-BS21提出了一种位级映射方案和相应的位翻转方案,翻转出全零列进行剪枝。这些比特级以及使用强化学习的剪枝方案通常需要消耗大量的执行时间,且需引入复杂的控制电路。此外,现有方法往往忽略了权重之间的这类数值相似性,导致这一潜在的结构压缩空间未被充分利用。

2 基于权重重构的剪枝方法

在本节中,我们提出了一种面向RRAM加速器的权重重构剪枝方法,其整体流程如图6所示,分为软件和硬件两个层面。在软件层面包括权重重构分组与重训练两个阶段,在硬件层面针对剪枝网络进行crossbar映射与推理计算。具体而言,首先对每个滤波器的权重进行最大公约数的计算和分组,若某些权重分组失败,则对其进行权重值的调整并加入进已有的组。接着对分组剪枝后的网络权重进行重训练,将剪去的余数以逐步衰减的方式注入网络引导权重的训练。最后,将重训练后的网络映射至crossbar执行网络推理任务,结合所设计的数据路径结构,实现对不同分组和除数的高效索引与结果还原。

2.1 基于GCD的权重重构剪枝

该剪枝方法基于最大公约数理论,核心思想是将原始权重w表示为商、除数及余数的形式,即w=qd+r,其中q表示商值,d为组内共享的除数(即权重之间的最大公约数 GCD),r 表示余数。如图7所示,将原始权重直接映射至crossbar时,需在阵列上存储权重的全部数值信息。若原始权重被量化为4 bit,则需4个单比特crossbar存储一个权重值。对权重进行重构后,仅将商矩阵映射至交叉阵列并剪除余数信息,若保留商为2 bit,则仅需两个单比特crossbar存储原始权重值,其余硬件资源被释放。各组的除数信息将存储在缓冲区中,用于交叉阵列计算结果的数值还原。

算法1描述了权重分组与重构的流程,其输入包括:滤波器权重集合W,商的位宽约束N,设定的组大小Group size以及所允许的GCD值范围 gmin,gmax。输出包括所有分组重构集合𝒢与未匹配权重集合unmatched。权重的分组需满足两个条件。

条件1 与当前组内权重的GCD位于设定范围gmin,gmax内。GCD太小时,权重的商值过大,导致压缩率降低。GCD太大时,可能导致权重的重构误差过大,影响网络精度。因此,在分组时,我们根据滤波器权重的特点动态的设定GCD值的范围,寻找每组最合适的除数,以避免过大的商值降低阵列压缩率以及过大的重构误差降低精度。

条件2 N对商值的位宽进行约束,权重对应的商值应在位宽N可表示范围内,从而在剪枝率与精度间实现最佳权衡。具体而言,在每轮迭代中,选取当前滤波器未处理的最大权重作为种子进行分组,以优先保留对模型精度影响较大的参数(第3)~4)行)。当其余权重满足以上两项条件时,将其重构后的商值加入当前组。当前组达到设定的组大小时,则记为一个完整分组g,开始下一轮迭代。若所有权重遍历完后,当前组未达到组大小Group size,但权重数量大于1,则记为未满分组ginc,记录ggmin的分组情况与其对应的除数GCD (第6)~19)行)。否则表示该种子权重无法与其他权重配对,将其加入未匹配权重集合 unmatched

算法1 基于GCD的权重分组与重构

输入: WN, Group size, gmin,gmax

输出: 𝒢unmatched

1) 按绝对值降序排列W中的权重w

2) While W DO

3) seed ← W中最大权重

4) g ← {},current_gcd ← seed

5) For ALL w W Do

6) gcd ← compute_gcd ( g{w} 

7) qw/gcd

8) if gcd gmin,gmax

9) q[-2N-1, 2N-1-1] Then

10) 将q加入g, current_gcd gcd

11) 从W中移除w

12) if组大小 = Group size then

13) 将( g, current_gcd ) 加入𝒢

14) break

15) End if

16) End if

17) End for

18) if 1< 组大小 < Group size then

19) g标记为ginc,将( ginc current_gcd )加入𝒢

20) else

21) 将seed加入unmatched,从W中移除seed

22) End if

23) End while

24) return 𝒢, unmatched

为处理未能成功匹配的权重,我们提出了一种余数调整策略,旨在尽量减少信息损失的前提下,将这部分权重重新分配至合适的未满组ginc

对于每个待处理权重w,依次计算其与所有未满组ginc中对应除数 d 的余数r,并根据r的大小对w应用如下形式的偏移量 δ进行微调,如式(2)所示。

δ=d-r,if  r>d/2-r,if  rd/2

其中,δ表示施加于权重w的调整量。当r>d/2 时,为使调整误差最小化,将δ设为d-r,即将权重向上调整至d的整数倍;而当 r d/2 时,则令δ=-r,将权重向下调整至d的整数倍。两种情况下的调整幅度均不超过d/2,从而有效控制调整误差。

调整后的权重更新为wadj,如式(3)所示。此时,wadj即可与当前组中的权重形成GCD关系。

wadj=w+δ

由于在算法1的分组过程中,所有已建立的组对应的除数d均已满足条件1,因此在调整阶段,仅需判断是否存在d使得调整后的权重商值wadj/d满足条件2。若存在多个满足条件的分组,则将wadj分配至对应δ最小的分组中。若不存在可加入的组,则对原始权重 w 的商值进行裁剪,使其落入N位补码可表示的范围内,其裁剪方式如式(4)所示。

q'=clipwd, -2N-1, 2N-1-1

接着将权重w分配至使重构误差最小的组ginc,如式(5)所示。

ginc=argmingincw-q'd

我们以图8为例说明权重分组重构的过程。设定分组大小为3,商的位宽约束N=4,GCD的范围为[2,10],滤波器F1F2各包含6个待分组权重。对于F1,首先选择权重值32作为初始种子。在步骤①中,尝试将权重20与32分为一组,此时GCD为4,对应的商分别为5和8,超出4位二进制补码范围(即[-8,7]),不满足条件2,因此20被跳过。随后将权重16加入当前组,接着尝试加入15,但其与已有组(16,32)的GCD为1,不满足条件1,被跳过。最终,权重8被成功加入,形成完整组g1=(32,16,8)。下一轮迭代以20为新种子,15可与之形成未满组ginc1。权重7因无法与任何现有分组匹配,被加入未匹配集合中。在步骤②中,采用余数调整策略将权重7调整为5,使其与ginc1 匹配并加入该组。步骤③中,对F1的各分组执行重构操作。依据各分组所对应的除数,将组内权重表示为除数、商与余数的组合形式,舍弃余数部分以实现权重压缩与近似重构。对于F2,初始种子为权重71,但在步骤①中未能与任何权重形成分组,因此被加入未匹配集合。随后构建两个未满组ginc2ginc3,但权重13与两组均无公共除数,也被加入未匹配集合。步骤②中,将71调整为70后加入ginc2,13被调整为12后加入ginc3。最后在步骤③中,F2中所有分组权重亦采用前述方式进行重构。

3.2 渐进式余数裁剪重训练

在基于GCD的权重重构过程中,余数 r 被舍弃以压缩存储开销。然而,尽管余数在数值上相对较小,却仍可能包含对推理精度敏感的信息,若直接丢弃,可能导致模型性能退化。因此,本文提出渐进式余数裁剪重训练策略,在重训练初期保留余数作为精度补偿信号,并在训练过程中按比例因子αt逐步裁剪,从而使网络平稳适应无余数的稀疏权重表示。

算法2描述了剪枝后重训练的过程。具体而言,在第t次迭代时,训练权重构造为式(6)所示。

wt=qtd+αtr

衰减因子αt0,1控制余数注入的强度,随迭代线性递减,如式(7)所示。

αt=1-tT

其中,T为总训练轮数。训练初期,αt1,模型能够充分利用余数进行精度补偿。随着训练推进,αt逐步减小,余数对网络精度的贡献被渐进裁剪,促使网络逐渐适应重构后的权重表示。

算法2 渐进式余数裁剪重训练

输入: 分组信息𝒢,总训练轮数T,学习率η,位宽N

输出: 更新后的权重Wfinal

1) for t=0 to N-1 do

2) 计算衰减因子 αt=1-t/T

3) for每个训练批次do

4) 应用渐进余数裁剪:wt=qtd+αtr

5) 前向传播,计算损失:LKDfwt,ft,y

6) 反向传播,计算梯度:L/w(t)

7) 更新权重:wt+1wt-ηL/w(t)

8) 商值裁剪:

qt+1clipround(wt+1/d),-2N-1,2N-1-1

9) 更新重构权重:wt+1qt+1d

10) End for

11) End for

12) 输出WfinalqTd

在训练过程中,保持分组结构与除数d固定,采用知识蒸馏训练方法,使用损失函数LKD来指导模型学习。权重更新如式(8)所示,损失函数如式(9)所示。

wt+1wt-ηwtLKDfwt,ft,y
LKD=αKDLKLfwt,ft+1-αKDLCEfwt,y

其中,η为学习率,αKD为平衡参数,y为真实标签,fwtft分别为学生模型(剪枝模型)和教师模型(原始模型)输出。总损失 LKL 由两部分组成:LKL为 KL 散度损失,用于对齐学生与教师输出分布;LCE为交叉熵损失,用于衡量学生输出fwt与真实标签y的误差。

反向传播阶段,损失函数的梯度计算基于式(6)所示的权重,并通过链式法则分解为对商q和余数r的梯度,如式(10)所示。随着αt的衰减,r的梯度贡献逐渐减小,权重更新逐渐更多依赖于商q的梯度贡献。

Lq=Lwtd,Lr=Lwtαt

为确保商值始终满足位宽约束,在每次参数更新后,对商qt+1进行范围裁剪,超出范围的商将被裁剪到可表示区间,如式(11)所示。

qt+1clipqt+1,-2N-1, 2N-1-1

该重训练策略通过训练初期的余数补偿与后期的渐进裁剪,能够有效缓直接舍弃余数带来的网络精度突降风险,同时确保模型保持硬件的高压缩率与稀疏性。

3.3 数据路径设计

在交叉阵列的计算过程中,为了解决同一层内不同分组权重对应不同除数的问题,本文设计了一种新的数据路径,其整体架构如图9所示。

图9可知,该数据路径的计算流程如下:首先,在第①步,索引缓冲区读取当前待处理分组的组号,并将其并行发送到输入索引单元与输出索引单元,分别用于获取该组的权重索引和对应的除数。接着,在第②步,系统根据权重索引从片上缓存提取输入激活值,并写入输入寄存器,完成交叉阵列的输入准备。第③步中,控制单元根据权重索引生成字线与位线选择信号,激活存储该组权重的交叉阵列单元。随后在第④步执行MVM操作,得到原始模拟输出信号,并通过ADC转换为数字信号。第⑤步,从输出索引单元读取组除数。在第⑥步中,通过移位累加操作将MVM计算结果乘回除数,得到该组的真实加权和。最后,在第⑦步,将结果写入层内输出寄存器,将同层其他分组的输出通过累加器累加。待该层所有分组处理完成后,累加器输出即为该层的最终推理结果,将其写回层内输出寄存器。

3 实验

3.1 实验配置

本文使用行为级开源仿真模型MNSIM(Simulation Platform for Memristor-based Neuromorphic Computing System)22对所提出的剪枝方法进行性能评估。MNSIM上的忆阻器参数来源于实际制造的TaOx器件。在仿真实验的硬件设置中,权重量化精度为8位,单个crossbar大小为128×128,其中每个忆阻器单元的存储位数为1位,ADC和DAC的分辨率设置为1位,其余参数采用MNSIM的默认值,如表1所示。

本文在MNIST和CIFAR10数据集上使用AlexNet,VGG16,Plain20这3种网络模型验证所提出的剪枝方法,并与PIM-prune23,Pattern-Prune 24,Auto-Prune 25以及PRAP-PIM12方法进行对比分析,使用未经剪枝的原始模型作为基线参考。CIFAR-10数据集由6万幅彩色图像组成,每幅图像大小为32×32×3像素,其中5万张用于训练,1万张用于测试。MNIST数据集由7万幅灰度为28×28×1的图像组成,包括6万张用于训练的图像和1万张用于测试的图像。为验证本文方法在更大规模数据集和更复杂神经网络上的适用性,本文在CIFAR-100 与 Tiny-ImageNet两个数据集上进行了实验,选取VGG16、ResNet-18和ResNet-34等3种典型网络作为基准模型。其中,CIFAR-100由6万幅彩色图像组成,大小为32×32×3像素。包含100个类别,每类包含600张图像,其中500张用于训练,100张用于测试。Tiny-ImageNet是ImageNet大规模视觉识别挑战赛(ImageNet Large-Scale Visual Recognition Challenge, ILSVRC)的子集,由10万彩色图像组成,每幅图像大小为64×64×3像素,共包含200个类别,每个类别含500张训练图像、50张验证图像和50张测试图像。

3.2 精度与压缩率分析

表2展示了本文方法与其他相关工作在CIFAR-10数据集上的精度与压缩率对比情况本文方法(Ours)在AlexNet、VGG16和Plain20上分别达到15.68×、14.06×和12.06×的压缩率,均实现了最高的压缩率,对应的准确率仅下降 0.40%、0.36% 和0.64%。表3展示了本文方法与其他工作在MNIST数据集上的精度与压缩率对比。实验结果表明,本文方法在3种网络结构上分别实现了23.52×、20.04×和7.02×的压缩率,对应的准确率下降分别为0.19%、-0.11%和-0.08%。值得注意的是,AlexNet和VGG16在MNIST数据集上的压缩率相较于CIFAR-10更高,这主要归因于MNIST 数据集本身的复杂度较低,使得模型即使在剪枝力度较大的情况下依然能够保持较高精度。相比之下,Plain20由于其卷积层规模较小,内部冗余相对有限,因此在不同数据集上呈现出较低的压缩率。

表4展示了本文方法在CIFAR-100与Tiny-ImageNet数据集上的精度和压缩率结果。对于CIFAR-100,本文方法在VGG16、ResNet-18和ResNet-34等3种网络结构上分别实现了11.72×、12.91×和12.41×的压缩率,同时精度下降控制在0.48%~0.74%之间。在Tiny-ImageNet上,本文方法在VGG16和ResNet-18上分别达到了7.76×和6.79×的压缩率,对应的精度下降分别为0.93%和0.70%。进一步对比不同数据集的实验结果可发现,相较MNIST和CIFAR-10,在CIFAR-100和Tiny-ImageNet上的整体精度相对较低。这主要归因于这两个数据集的类别数量更多,同时每类的样本数更少,从而增加了分类难度。与此同时,Tiny-ImageNet的图像分辨率更高,导致模型在更大输入规模下的有效参数利用率提升,从而降低了模型冗余度,可压缩空间有限。因此,在Tiny-ImageNet上的压缩率与精度均低于CIFAR-100。尽管如此,本文方法在两类较大规模的数据集上的精度下降仍保持在可接受范围内,充分证明了所本文方法不仅适用于小规模数据集,也在能在更大规模的数据集和更深的卷积神经网络中保持良好性能。

3.3 硬件效率分析

3.3.1 面积效率

图10a展示了各方法在CIFAR-10数据集上的积率对比结果,所有数据均以未剪枝模型为基准进行归一化。与基线相比,本文方法在AlexNet、VGG16和Plain20上的面积效率分别提高了11.22×、9.7×和8.9×。图10b给出了在MNIST数据集上的评估结果,本文方法在上述3个网络上分别实现了16.2×、13.5×和 4.9×的效率提升。从图10可以看出,本文方法在不同模型和数据集上均取得了最优的面积效率优化。进一步分析发现,相较于CIFAR-10,基于MNIST 训练的网络的面积效率更高,主要原因在于MNIST数据集任务复杂度较低,同一网络在该任务下可剪枝的比例更高,从而减少所需的交叉阵列数量,提升RRAM加速器的整体面积利用效率。

3.3.2 能量效率

图10c-d分别展示了在CIFAR-10和MNIST数据集上,不同网络模型的能效对比结果。在CIFAR-10上,本文方法在AlexNet、VGG16和Plain20上的能效分别提升了15.1×、14.7×和 12.08×,在MNIST上,能效提升分别达到 23.92×、19.6×和 7.94×。这主要得益于剪枝后所需的crossbar数量的减少,从而减少了被激活的位线、字线、ADC和DAC的数量,有效节省了能源消耗。需要说明的是,本文未与 PRAP-PIM 进行面积与能效方面的直接比较,原因在于其所采用的实验配置与本文及其他对比方法不同。

3.4 索引开销分析

在数据路径架构中,输入索引单元与输出索引单元的设计会引入一定的索引开销,主要来自权重索引结构以及除数的存储。图11显示了在CIFAR-10 与 MNIST 数据集上,不同网络模型的存储开销情况。其中,VGG16 在CIFAR-10 上的索引开销最高,约占原始模型大小的5%,处于可接受的范围内。

4 结论

本文面向基于RRAM的加速器,提出了一种消除数值冗余的细粒度权重压缩框架。该方法利用卷积核权重之间的整数倍或近似比例关系,通过基于最大公约数的权重重构策略将权重表示为共享除数与整数商的组合,并舍弃对精度影响较小的余数以实现高效压缩。在此基础上,设计了渐进式余数衰减重训练机制,在保持分组与除数结构不变的前提下,将余数作为精度补偿信号按比例衰减地引入训练过程,从而平稳恢复甚至提升模型推理精度。实验结果表明,与现有方法相比,本文方法在模型压缩率、面积效率与能效方面实现了最多1.2倍、1.2倍与1.3倍的提升,且几乎不损失模型精度。上述结果验证了利用卷积核权重间的数值规律实现硬件友好型模型压缩的潜力。

参考文献

[1]

Kaushal STammineni D KRana Pet al.Computer vision and deep learning-based approaches for detection of food nutrients/nutrition: New insights and advances[J].Trends Food Sci Technol2024146: 104408.

[2]

Kheddar HHemis MHimeur Y.Automatic speech recognition using advanced deep learning approaches: A survey[J].Inf Fusion2024109: 102422.

[3]

Zhang S YZhang Z ZLiu Y Let al. Dialect speech recognition method based on few-shot learning[J]. Journal of Jiangsu University(Natural Science Edition)202546(6): 692-698.

[4]

张绍阳, 张子卓, 柳永利, 解熠. 基于小样本学习的方言语音识别方法[J]. 江苏大学学报(自然科学版)202546(6): 692-698.

[5]

Lauriola ILavelli AAiolli F.An introduction to deep learning in natural language processing: Models, techniques, and tools[J].Neurocomputing2022470: 443-456.

[6]

Bai JXue WFan Yet al.Partial sum quantization for computing-In-memory-based neural network accelerator[J].IEEE Trans Circuits Syst Ⅱ Express Briefs202370(8): 3049-3053.

[7]

Chi PLi SXu Cet al.PRIME: A novel processing-in-memory architecture for neural network computation in ReRAM-based main memory[C]//2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA).Seoul, Korea: IEEE, 2016: 27-39.

[8]

Shafiee ANag AMuralimanohar Net al.ISAAC: A convolutional neural network accelerator with in situ analog arithmetic in crossbars[C]//2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA).Seoul, Korea:IEEE, 2016: 14-26.

[9]

Liu FWang ZChen Yet al.SoBS-X: Squeeze-out bit sparsity for ReRAM-crossbar-based neural network accelerator[J].IEEE Trans Comput Aided Des Integr Circuits Syst202342(1): 204-217.

[10]

Joardar B KDoppa J RLi Het al.ReaLPrune: ReRAM crossbar-aware lottery ticket pruning for CNNs[J].IEEE Trans Emerg Top Comput202311(2): 303-317.

[11]

Qu SLi BZhao Set al.A coordinated model pruning and mapping framework for RRAM-based DNN accelerators[J].IEEE Trans Comput Aided Des Integr Circuits Syst202342(7): 2364-2376.

[12]

Meng JYang LPeng Xet al.Structured pruning of RRAM crossbars for efficient in-memory computing acceleration of deep neural networks[J].IEEE Trans Circuits Syst Ⅱ Express Briefs202168(5): 1576-1580.

[13]

Shen ZWu JJiang Xet al.PRAP-PIM: A weight pattern reusing aware pruning method for ReRAM-based PIM DNN accelerators[J].High Confid Comput20233(2): 100123.

[14]

Ielmini DPedretti G.Resistive switching random-access memory (RRAM): Applications and requirements for memory and computing[J].Chem Rev2025125(12): 5584-5625.

[15]

Zhu ZSun HLin Yet al.A configurable multi-precision CNN computing framework based on single bit RRAM[C]//2019 56th ACM/IEEE Design Automation Conference (DAC).Las Vegas, NV, USA: IEEE, 2019: 1-6.

[16]

Pham V TZniyed YNguyen T P.Efficient tensor decomposition-based filter pruning[J].Neural Netw2024178: 106393.

[17]

Yang CLiu H.Channel pruning based on convolutional neural network sensitivity[J].Neurocomputing2022507: 97-106.

[18]

Ji HSong LJiang Let al.ReCom: An efficient resistive accelerator for compressed deep neural networks[C]//2018 Design, Automation & Test in Europe Conference & Exhibition (DATE).Dresden, Germany:IEEE, 2018: 237-240.

[19]

Wang PJi YHong Cet al.SNrram: An efficient sparse neural network computation architecture based on resistive random-access memory[C]//2018 55th ACM/ESDA/IEEE Design Automation Conference (DAC).San Francisco, USA: IEEE, 2018: 1-6.

[20]

Yang T HCheng H YYang C Let al.Sparse ReRAM engine: Joint exploration of activation and weight sparsity in compressed neural networks[C]//2019 ACM/IEEE 46th Annual International Symposium on Computer Architecture (ISCA).Phoenix, AZ, USA: IEEE, 2019: 236-249.

[21]

Yang SHe SDuan Het al.APQ: Automated DNN pruning and quantization for ReRAM-based accelerators[J].IEEE Trans Parallel Distrib Syst202334(9): 2498-2511.

[22]

Liu FZhao WWang Zet al.ERA-BS: Boosting the efficiency of ReRAM-based PIM accelerator with fine-grained bit-level sparsity[J].IEEE Trans Comput202473(9): 2320-2334.

[23]

Zhu ZSun HXie Tet al.MNSIM 2.0: A behavior-level modeling tool for processing-In-memory architectures[J].IEEE Trans Comput Aided Des Integr Circuits Syst202342(11): 4112-4125.

[24]

Chu CWang YZhao Yet al.PIM-prune: Fine-grain DCNN pruning for crossbar-based process-In-memory architecture[C]//2020 57th ACM/IEEE Design Automation Conference (DAC).San Francisco, USA: IEEE, 2020: 1-6.

[25]

Yu SZhang LWang Jet al.High area/energy efficiency RRAM CNN accelerator with pattern-pruning-based weight mapping scheme[C]//2021 IEEE 10th Non-Volatile Memory Systems and Applications Symposium (NVMSA).Beijing, China: IEEE, 2021: 1-6.

[26]

Yang SChen WZhang Xet al.AUTO-PRUNE: Automated DNN pruning and mapping for ReRAM-based accelerator[C]//Proceedings of the ACM International Conference on Supercomputing.Virtual Event, USA: ACM, 2021: 304-315.

基金资助

国家自然科学基金(62374047)

国家自然科学基金(62174038)

计算机体系结构国家重点实验室开放课题(CLQ 202407)

AI Summary AI Mindmap
PDF (3462KB)

233

访问

0

被引

详细

导航
相关文章

AI思维导图

/