CN117689001B - 基于零数据搜索的神经网络多粒度剪枝压缩方法及系统 - Google Patents
基于零数据搜索的神经网络多粒度剪枝压缩方法及系统 Download PDFInfo
- Publication number
- CN117689001B CN117689001B CN202410149908.2A CN202410149908A CN117689001B CN 117689001 B CN117689001 B CN 117689001B CN 202410149908 A CN202410149908 A CN 202410149908A CN 117689001 B CN117689001 B CN 117689001B
- Authority
- CN
- China
- Prior art keywords
- model
- pruning
- delay
- zero data
- neural network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013138 pruning Methods 0.000 title claims abstract description 129
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 34
- 230000006835 compression Effects 0.000 title claims abstract description 27
- 238000007906 compression Methods 0.000 title claims abstract description 27
- 239000013598 vector Substances 0.000 claims abstract description 13
- 238000003062 neural network model Methods 0.000 claims abstract description 12
- 238000004422 calculation algorithm Methods 0.000 claims description 22
- 238000012549 training Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000005070 sampling Methods 0.000 claims description 9
- 230000008901 benefit Effects 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 5
- 238000003058 natural language processing Methods 0.000 claims description 4
- 239000011159 matrix material Substances 0.000 claims description 2
- 238000007792 addition Methods 0.000 claims 1
- 230000001133 acceleration Effects 0.000 abstract description 16
- 239000010410 layer Substances 0.000 description 39
- 238000005457 optimization Methods 0.000 description 6
- 238000003745 diagnosis Methods 0.000 description 5
- 230000001934 delay Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- MUPYMRJBEZFVMT-UHFFFAOYSA-N 1-chloro-4-dimethoxyphosphorylsulfanylbenzene Chemical compound COP(=O)(OC)SC1=CC=C(Cl)C=C1 MUPYMRJBEZFVMT-UHFFFAOYSA-N 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008451 emotion Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000010191 image analysis Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000002356 single layer Substances 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000002679 ablation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- -1 fast Chemical compound 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000007170 pathology Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
Landscapes
- Image Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了基于零数据搜索的神经网络多粒度剪枝压缩方法及系统,属于深度神经网络压缩和加速的技术领域。包括以下步骤:在联合通道和权重剪枝的情况下得到剪枝后的子网络模型;将子网络模型通过一对向量表示,生成模型架构集合;利用N阶贪婪策略,通过多次迭代搜索出网络延迟和准确率之间位于帕累托前沿的模型序列;基于模型序列生成当前延迟下的修剪模型集合;在修剪模型集合中找到具有最大零数据线性区域数得分的模型。本发明采用神经网络模型通道和权重联合剪枝以获得更好的模型加速;多粒度剪枝用N阶贪婪策略利用先前剪枝得到的架构;在没有任何数据的情况下有效地发现多个模型,并在准确性和延迟之间取得较好的平衡。
Description
技术领域
本发明属于深度神经网络压缩和加速的技术领域,特别是涉及基于零数据搜索的神经网络多粒度剪枝压缩方法及系统。
背景技术
深度神经网络剪枝长期以来一直是深度神经网络压缩和加速的主要方法之一。通过删除不重要的连接或删除不重要的通道,这些方法显着降低了网络的计算复杂度,从而加快推理速度。尽管深度神经网络剪枝取得了成功,但仍然可以通过一些有效的策略进一步提高其在深度神经网络上的加速效果。
现有的加速模型剪枝方法主要分为两类:第一,粗粒度的通道剪枝,它逐通道删除冗余卷积核;第二,细粒度的权重剪枝,它在没有或只有较小的结构约束下去除冗余权重。
这两种方法分别侧重于在单一维度(即通道或权重)上加速网络,通常不是最优的神经网络剪枝加速方法。原因有两点:
(1)两种方法对网络精度和延迟有不同的倾向,即通道剪枝更结构化,更容易加速推理,而权重剪枝则可以更灵活地保持深度神经网络模型的准确性。
(2)仅仅依靠规则的单一维度深度神经网络模型剪枝方法,沿单一维度进行过度剪枝通常会导致不可接受的精度损失。
从这个角度来看,有必要研究一种能够同时获取这两种方法的优点的复杂剪枝框架。
发明内容
本发明针对单独的通道剪枝或权重剪枝不是最优的深度神经网络模型剪枝方案的问题,提出了基于零数据搜索的神经网络多粒度剪枝压缩方法及系统,以更好地平衡移动设备上剪枝压缩后模型的延迟和准确性。
本发明采用以下技术方案:基于零数据搜索的神经网络多粒度剪枝压缩方法,包括以下步骤:
给定一个具有L个卷积层的深度神经网络模型;在联合通道和权重剪枝的情况
下,得到剪枝后的子网络模型;将所述子网络模型通过一对向量进行表示,生成模型
架构集合;
利用N阶贪婪策略,通过多次迭代在模型架构集合中搜索出网络延迟和准确率之间位于帕累托前沿的模型序列:当前迭代中的搜索信息来自历史迭
代中的搜索信息;
计算当前模型的推理延迟,基于模型序列生成当前延迟下的修剪模型集合;
利用算法在修剪模型集合中找到具有最大零数据线性区域数得分的模型;
使用ADMM算法训练所有搜索到的模型。
在进一步的实施例中,所述一对向量为:通道剪枝后的逐层通道数和权重剪枝
后的分层权重稀疏度;
其中,,;i表示卷积层数,,表示卷积
层i的逐层通道数,表示卷积层i的分层权重稀疏度。
在进一步的实施例中,所述模型架构集合表示为:
;其中,表示不大于L的
整数集合,表示子网络模型卷积层i的逐层通道数,表示子网络模型卷积层i
的分层权重稀疏度;i表示卷积层数;为子网络模型中的其中一个,,表示子
网络模型卷积层i的逐层通道数,表示子网络模型卷积层i的分层权重稀疏度;
在进一步的实施例中,所述位于帕累托前沿的模型序列满足以下要求:
,。
在进一步的实施例中,所述修剪模型集合的生成流程如下:
步骤101、初始化向量,定义迭代次数k=0、是完整网络模型、是
完整网络模型的推理延迟;预先设定最小延迟推理为,降低延迟的间隔;
步骤102、若,执行步骤103;反之,则退出;
步骤103、每迭代一次k增加1,并分别执行步骤104和步骤105得到推理延迟和修
剪模型集合;
步骤104、计算当前模型的推理延迟:;
步骤105、生成当前延迟下的修剪模型集合:;N为自定
义的超参数;n为迭代变量;表示第k-n个修剪后的模型;
步骤106、则重复执行步骤102至步骤105,直到步骤102中条件不满足退出。
在进一步的实施例中,具有最大零数据线性区域数得分的模型的寻找步骤如
下:
步骤201、从修剪模型集合中随机采样个剪枝模型,分别计算个剪枝
模型的DFNLR得分,将剪枝模型和对应的添加DFNLR得分到数据集中;为一定值;
步骤202、当时,执行步骤203,否则退出,m为最大采样模型数量,为实
际采样模型数量;
步骤203、使用数据集训练高斯过程模型;
步骤204、在修剪模型集合中计算得到最大收益得分的剪枝子网模型 ;
步骤205、计算步骤204中剪枝子网模型的零数据线性区域数得分;
步骤206、将步骤205中的()更新到数据集中;
步骤207、重复步骤202至步骤206,直至步骤202中的条件不满足退出;
步骤208、返回数据集中,当前具有最大零数据线性区域数得分的模型为模型:,。
在进一步的实施例中, 定义如下:
;表示子网络模型的网络延迟。
在进一步的实施例中,所述步骤205中的零数据线性区域数得分的计
算公式如下:
;其中,表示汉
明距离,表示标准正态分布,指每个 ReLU 层中的每个单元的被激活状态。
在进一步的实施例中,所述步骤204中的最大收益得分的剪枝子网模型 的计
算公式如下:
,,t为训练次数;表
示均值,为协方差矩阵。
基于零数据搜索的神经网络多粒度剪枝压缩系统,用于实现如上所述的神经网络多粒度剪枝压缩方法,包括:
第一模块,被设置为给定一个具有L个卷积层的深度神经网络模型;在联合通道
和权重剪枝的情况下,得到剪枝后的子网络模型;将所述子网络模型通过一对向量进
行表示,生成模型架构集合;
第二模块,被设置为利用N阶贪婪策略,通过多次迭代在模型架构集合
中搜索出网络延迟和准确率之间位于帕累托前沿的模型序列:当前迭代中的搜
索信息来自历史迭代中的搜索信息;
第三模块,被设置为计算当前模型的推理延迟,基于模型序列生成当前延迟下
的修剪模型集合;
第四模块,被设置为利用算法在修剪模型集合中找到具有最大零数据线性区域
数得分的模型;
第五模块,被设置为使用ADMM算法训练所有搜索到的模型。
本发明的有益效果:采用神经网络模型通道和权重联合剪枝以获得更好的模型加速;其次,多粒度剪枝(MGPrune)采用N阶贪婪策略来连续利用先前剪枝得到的架构;第三,多粒度剪枝(MGPrune)采用了一种满足零样本准则的基于贝叶斯优化的模型采样器,显著加速搜索到性能良好的模型。基于此,多粒度剪枝(MGPrune)在没有任何数据的情况下有效地发现多个模型,并在准确性和延迟之间取得较好的平衡。
附图说明
图1为实施例1的基于零数据搜索的神经网络多粒度剪枝压缩方法的算法流程图。
图2实施例1的最大零数据线性区域数得分的模型的寻找算法流程图。
图3为实施例4的多粒度剪枝压缩方法与其他方法的加速对比图。
图4为实施例4 MGprune 在各种部署平台上的准确性和延迟方面与其他最先进的模型压缩/加速方法进行比较。
具体实施方式
下面结合实施例和说明书附图对本发明做进一步的解释说明。
实施例1
本实施例公开了基于零数据搜索的神经网络多粒度剪枝压缩方法,包括以下步骤:
给定一个具有L个卷积层的深度神经网络模型;其中,每层的类型也是给定的。
在联合通道和权重剪枝的情况下,得到剪枝后的子网络模型;将所述子网络模型通过
一对向量进行表示,生成模型架构集合。需要说明的,本实施例中的一对向量
为:通道剪枝后的逐层通道数和权重剪枝后的分层权重稀疏度。
进一步表示为:,;i表示卷积层数,,
表示卷积层i的逐层通道数,表示卷积层i的分层权重稀疏度。
基于上述描述,模型架构集合表示为:;其中,表示不大于L的整数集
合,表示子网络模型卷积层i的逐层通道数,表示子网络模型卷积层i的分层
权重稀疏度;i表示卷积层数;为子网络模型中的其中一个,,表示子网络模
型卷积层i的逐层通道数,表示子网络模型卷积层i的分层权重稀疏度。因此,本实
施例的目的是找到最佳的逐层通道数和分层权重稀疏度,以最大限度地减少剪枝后模型的
推理延迟,同时最大限度的提高准确性。
因此,与传统的单目标优化不同,本实施例需要同时优化的目标为多个,如延迟推
理和准确性,从而产生多目标优化(MOO)问题。而多目标优化的最优解往往不是唯一的,本
实施例应找到推理延迟和准确率之间位于帕累托前沿(Pareto frontier)的模型序列,对
其要求的表示如下:,。
现有技术的贪婪压缩算法或单层/多层坐标下降优化器已被证明可以有效解决网络剪枝中推理延迟和准确率之间的问题,现有的贪婪压缩算法采用如下公式进行表达:
;
;
它从完整的网络开始,并逐步简化它以满足一系列减少的资源预算,但是也因
此对历史信息的利用率低下,因为只考虑了上一步搜索的模型,未能利用早期搜索阶段的
信息,从而增加了陷入局部最优的风险。此外,该方法通过简化单层来解决上述公式
中的问题,可见并不是最佳的解决方案。
因此,本实施例提出了N阶贪婪策略,该策略在每次迭代中不仅考虑来自一个搜索
阶段的信息,还考虑来自更早阶段的信息。进一步体现为:利用N阶贪婪策略,通过多次迭代
在模型架构集合中搜索出网络延迟和准确率之间位于帕累托前沿的
模型序列:当前迭代中的搜索信息来自历史迭代中的搜索信息;计算当前模型的推理延迟,基于模型序列生成当前延迟下的修剪模型集合;利用算法在修剪模型集合中找到
具有最大零数据线性区域数得分的模型。
其中,修剪模型集合的生成流程如下:
步骤101、初始化向量,定义迭代次数k=0、是完整网络模型、是
完整网络模型的推理延迟;预先设定最小延迟推理为,降低延迟的间隔;
步骤102、若,执行步骤103;反之,则退出;
步骤103、每迭代一次k增加1,并分别执行步骤104和步骤105得到推理延迟和修
剪模型集合;
步骤104、计算当前模型的推理延迟:;
步骤105、生成当前延迟下的修剪模型集合:;n为迭代
变量;表示第k-n个修剪后的模型;N为自定义的超参数;本实施例中的 定
义如下:
,表示子网络模型的网络延迟。
步骤106、则重复执行步骤102至步骤105,直到步骤102中条件不满足退出。
综上描述,本实施例的基于N阶贪婪策略可表示为:
;
;
式中,N为用户自定义的超参数,也是贪婪级别。当N=1时,N阶贪婪策略与原始贪婪压缩算法等效,N越大,探索的空间越全面。从这个角度来看, 贪婪水平N在探索和利用之间进行权衡。由此可见,对搜索策略的改进,实现了搜索空间扩大和模型精度评估效率低下,使得高效搜索更具挑战性。
基于公式,;下一步则是需
要对进行训练和评估。现有技术所采用的训练是在具有共享权重的超
级网络中一起训练所有这些子网络,但是训练单个超级网络仍然需要大量的数据和时间。
本实施例利用有效的零数据标准来解决上述问题,该标准能够在初始化没有任何
数据时近似模型的准确性。提出的标准称为零数据线性区域数 (DFNLR)。对于某些具有
ReLU网络模型,在将网络模型与一些输入数据一起转发后,本实施例可以识别一个
二进制代码指示每个 ReLU 层中的每个单元是否被激活。修复二进制代码,神经网络
局部等效于线性运算输入空间中对应于某些特定二进制代码的子区域形成线性区域。具有
更多线性区域 (NLR) 的网络更具表现力,并且更有可能实现更高的精度。因此本发明采用
以统计和零数据的方式对其进行近似,即步骤205中引入的零数据线性区域数得分,其计算公式如下:
;其中,表示汉
明距离,表示标准正态分布,指每个 ReLU 层中的每个单元的被激活状态。
本实施例使用标准正态分布来统计近似网络 NLR。预计二进制代码越相似,网络就越难以区分两个线性区域,因此本发明使用汉明距离作为NLR的近似值。在实践中,本发明使用从标准正态分布中采样的小批量数据来计算。
结合上述描述,上文中的N阶贪婪策略,更新为:
,。
在训练过程中,具有最大零数据线性区域数得分的模型的寻找步骤如下:
步骤201、从修剪模型集合中随机采样个剪枝模型,为一定值;分别计
算个剪枝模型的DFNLR得分,将剪枝模型和对应的添加DFNLR得分到数据集中;
步骤202、当时,执行步骤203,否则退出,m为最大采样模型数量,为实
际采样模型数量;
步骤203、使用数据集训练高斯过程模型;
步骤204、在修剪模型集合中计算得到最大收益得分的剪枝子网模型 ;
步骤205、计算步骤204中剪枝子网模型的零数据线性区域数得分;
步骤206、将步骤205中的()更新到数据集中;
步骤207、重复步骤202至步骤206,直至步骤202中的条件不满足退出;
步骤208、返回数据集中,当前具有最大零数据线性区域数得分的模型为模型:,。
平衡探索和利用的获取函数用于确定下一个目标最迫切需要评估的样本。
最后,使用ADMM算法训练所有搜索到的模型。
图1和图2中的while,end while,return,while do 标识均是用于算法表述的为代码中的标准标识,分别表示迭代开始、迭代结束、结果返回、算法的基本循环。
本实施例公开的基于零数据搜索的神经网络多粒度剪枝压缩方法,潜在的技术/产品应用领域如下:
(1)边缘计算和嵌入式系统
应用方式:在边缘设备和嵌入式系统中,神经网络剪枝可以减少模型的计算和存储需求,使得模型能够在资源有限的设备上高效运行。
应用场景:物联网设备、智能手机、智能摄像头、智能家居等。
(2)机器人技术:
应用方式:通过剪枝算法优化神经网络模型,可以减少机器人在感知、决策和控制方面的计算负载,提高机器人的实时性和响应性能。
应用场景:无人机、自动驾驶汽车、工业机器人、服务机器人等。
(3)语音和图像处理:
应用方式:通过剪枝算法,可以减少语音和图像处理任务中神经网络的参数和计算量,提高语音识别、图像分类和目标检测等任务的效率和速度。
应用场景:语音助手、语音识别系统、图像识别系统、安防监控等。
(4)医疗诊断和辅助:
应用方式:通过剪枝算法,可以减少医学图像分析和诊断中神经网络的计算负担,提高医疗诊断的准确性和效率。
应用场景:医学影像分析、病理学诊断、辅助诊断系统、脑机接口设备等。
(5)自然语言处理:
应用方式:神经网络剪枝可以优化自然语言处理模型,减少模型的参数量和计算复杂度,提高文本生成、机器翻译和情感分析等任务的效率和速度。
应用场景:智能客服、智能助手、机器翻译系统、情感分析系统等。
实施例2
基于零数据搜索的神经网络多粒度剪枝压缩系统,用于实现如实施例1所述的神经网络多粒度剪枝压缩方法,包括:
第一模块,被设置为给定一个具有L个卷积层的深度神经网络模型;在联合通道
和权重剪枝的情况下,得到剪枝后的子网络模型;将所述子网络模型通过一对向量进
行表示,生成模型架构集合;
第二模块,被设置为利用N阶贪婪策略,通过多次迭代在模型架构集合
中搜索出网络延迟和准确率之间位于帕累托前沿的模型序列:当前迭代中的搜
索信息来自历史迭代中的搜索信息;
第三模块,被设置为计算当前模型的推理延迟,基于模型序列生成当前延迟下
的修剪模型集合;
第四模块,被设置为利用算法在修剪模型集合中找到具有最大零数据线性区域
数得分的模型;
第五模块,被设置为使用ADMM算法训练所有搜索到的模型。
实施例3
基于实施例1和实施例2描述的方法与系统,本实施例提供了具体的实验设置:
加速方法:本实施例沿着输出通道维度对参数进行分组,并且同一位置和四个相邻输出通道的每组参数同时被剪枝或保留,与通道剪枝相比,这是一个非常弱的结构约束。本实施例重新实现了稀疏卷积的加速方法。
测量平台:如果未指定,所有模型的延迟均在频率高达1.8 GHZ 的单个 ARMCortex-A72 CPU 上测量。对于所有通道剪枝方法,本发明使用TFLite\footnote的面向推理框架。对于本发明搜索的模型,本发明使用本发明实现的稀疏卷积计算算法来测量它们的延迟。
延迟估计:受到ALCS的启发,本实施例使用三线性插值来估计剪枝模型的延迟,ALCS是一个体系结构感知的延迟约束稀疏框架,用来修剪和加速CNN模型。在ALCS中,剪枝模型的延迟由每层延迟的总和来表示,并通过线性插值来近似每层的延迟。具体来说,对于模型的每个卷积层,预先构建一个查找表, 记录当权重剪枝的权重稀疏度分别为0.0,0.1, 0.2, ..., 1.0 时该层的延迟,以及在其他稀疏度通过线性插值到查找表中来近似。该方法需要较少数量的架构延迟点来构建查找表,并且显示出延迟估计的高精度。本实施例使用相同的技术,只是在本实施例的方法中,线性插值是沿着三个维度完成的:输入通道数、输出通道数和权重稀疏度,因为 MGPrune 中同时包含通道剪枝和权重剪枝。
搜索和重新训练:本实施例将所有实验的贪婪级别设置为 4,将 MobileNetV1 和
MobileNetV2 的延迟预算间隔设置为 10 毫秒,将 Resnet18 设置为 45 毫秒。所有型号
均针对单个 ARM Cortex-A72 CPU 进行搜索。对于 DFNLR 计算,本实施例数据按公式对5个批处理的数据进行平均,每个批处
理的大小为512。
与SOTA方法对比,本实施例将MGPrune 与 ImageNet 数据集上模型加速的最先进的网络剪枝方法进行比较。比较的方法包括CC、DMCP、Fast、APS、AutoSlim 、USNet 、AMC 、ALCS。本实施例选用大规模数据集加速模型更实用且更具挑战性。主要结果显示在图3中,MGPrune 在延迟精度权衡方面始终优于之前的所有方法。例如,它可以将Resnet18、MobileNetV1和MobileNetV2 的推理速度分别加快2.05倍、2.74倍和1.87倍,而不会造成任何精度损失。与AutoSlim相比,在MobileNetV1上在相同精度水平71.5%下,MGprune的推理速度快1.39倍,从99ms 加速到71ms。在MobileNetV2上,与非常先进的模型加速方法DMCP相比,在相同的延迟水平40ms下,MGprune的准确率高出2.1%,从66.1%提高到68.2%。
此外还可以看出:MGPrune 的搜索过程相当高效。它可以在单个 GPU 上分别在ResNet18、MobileNetV1 和 MobileNetV2 上花费1.8、4.2和2.5小时完成搜索。值得注意的,MGprune 能够在一次搜索中搜索具有不同延迟预算的一系列模型,这进一步提高了搜索效率。
推广到其他部署平台:MGPrune 模型是针对特定设备,即本发明中的单个ARMCortex-A72 CPU)上的延迟进行搜索的。MGprune 的一个常见问题可能是:它的性能是否可以很好地推广到其他设备。为了验证这个问题,本实施例直接将搜索到的 MobileNet 模型部署在 Cortex-A53 上,并在准确性和延迟方面与其他方法进行比较。主要结果进一步显示在图4中。图4中的每一行显示了特定模型上的结果,每一列显示了特定部署平台上的结果。特别地,图4中第一行显示MobileNetV1的结果,第二行显示MobileNetV2的结果。左栏显示了精度与时间的关系,单个Cortex-A72 CPU 上的延迟。中间列和右列分别显示单个Cortex-A53 CPU 和 4个Cortex-A53 CPU 上的结果。从图4中可以明显看出,MGPrune 在所有情况下都始终优于所有最先进的模型加速方法。这表明 MGprune 的高性能可以很好地适用于各种部署要求、平台和模型。
基于以上实验设置,本实施例开始消融实验:
DFNLR 的相关性:本实施例首先研究所提出的零数据线性区域数量与真实精度的相关性。为此,本实施例随机采样了 200 个具有不同通道数和权重稀疏度的 MobileNetV1模型,并计算所有模型的 DFNLR 分数。在整个 ImageNet 上训练所有这些模型非常耗时,因此本实施例在 ImageNet 数据集的子集上训练这些模型,子集的构造在附录中进行了描述。
联合通道和权重剪枝的影响: 为了研究联合通道和权重剪枝的影响,本实施例将MGPrune 与其两个变体进行比较,两种变体仅使用通道剪枝或仅使用权重剪枝来加速模型。本实施例在ImageNet上对MobileNetV1进行了实验:联合应用通道剪枝和权重剪枝通常可以实现更好的延迟精度权衡,特别是在严格的延迟限制下。
N阶贪婪策略和基于 BO 的模型采样器的影响:为了研究所提出的 N阶贪婪策略和基于贝叶斯优化的模型采样器的影响,本实施例将 MGPrune 与以下两种方法进行比较其变体:BO-n-greedy.1,将贪婪级别N阶设置为1, 同时保持其他设置与原始MGPrune 相同;random-n-greedy.4,用随机样本替换基于 BO 的模型采样器。本实施例在MobileNetV1上进行搜索,可以看出,本实施例提出的 MGPrune比其他两个变体总体上实现了更高的DFNLR 分数和更好的准确性-延迟权衡,特别是在严格的延迟限制下。
Claims (8)
1.基于零数据搜索的神经网络多粒度剪枝压缩方法,应用于语音处理、或图像处理、或自然语言处理,其特征在于,包括以下步骤:
给定一个具有L个卷积层的深度神经网络模型在联合通道和权重剪枝的情况下,得到剪枝后的子网络模型/>将所述子网络模型/>通过一对向量进行表示,生成模型架构集合/>
利用N阶贪婪策略,通过多次迭代在模型架构集合中搜索出网络延迟/>和准确率/>之差位于帕累托前沿的模型序列:当前迭代中的搜索信息来自历史迭代中的搜索信息;
计算当前模型的推理延迟Tk,基于模型序列生成当前延迟下的修剪模型集合Sk;
利用算法在修剪模型集合Sk中找到具有最大零数据线性区域数的DFNLR得分的模型
使用ADMM算法训练所有搜索到的模型
所述修剪模型集合Sk的生成流程如下:
步骤101、初始化向量,定义迭代次数k=0、是完整网络模型、/> 是完整网络模型的推理延迟;预先设定最小延迟推理为Tmin,降低延迟的间隔Δ;
步骤102、若Tk>Tmin+Δ,执行步骤103;反之,则退出;
步骤103、每迭代一次k增加1,并分别执行步骤104和步骤105得到推理延迟Tk和修剪模型集合Sk;
步骤104、计算当前模型的推理延迟Tk:Tk=Tk-1-Δ;
步骤105、生成当前延迟下的修剪模型集合Sk:N为自定义的超参数;n为迭代变量;/>表示第k-n个修剪后的模型;
步骤106、则重复执行步骤102至步骤105,直到步骤102中条件不满足退出;
具有最大零数据线性区域数得分的模型的寻找步骤如下:
步骤201、从修剪模型集合Sk中随机采样ninit个剪枝模型,分别计算ninit个剪枝模型的DFNLR得分,将剪枝模型和对应的添加DFNLR得分到数据集中;ninit为一定值;
步骤202、当时,执行步骤203,否则退出,m为最大采样模型数量,/>为实际采样模型数量;
步骤203、使用数据集训练高斯过程模型/>
步骤204、在修剪模型集合Sk中计算得到最大收益得分的剪枝子网模型
步骤205、计算步骤204中剪枝子网模型的零数据线性区域数得分/>
步骤206、将步骤205中的更新到数据集/>中;
步骤207、重复步骤202至步骤206,直至步骤202中的条件不满足退出;
步骤208、返回数据集中,当前具有最大零数据线性区域数得分的模型为模型/>
2.根据权利要求1所述的基于零数据搜索的神经网络多粒度剪枝压缩方法,其特征在于,所述一对向量为:通道剪枝后的逐层通道数和权重剪枝后的分层权重稀疏度/>
其中,i表示卷积层数,1≤i≤L,/>表示卷积层i的逐层通道数,/>表示卷积层i的分层权重稀疏度。
3.根据权利要求1所述的基于零数据搜索的神经网络多粒度剪枝压缩方法,其特征在于,所述模型架构集合表示为:
其中,[L]表示不大于L的整数集合,/>表示子网络模型/>卷积层i的逐层通道数,/>表示子网络模型/>卷积层i的分层权重稀疏度;i表示卷积层数;/>为子网络模型/>中的其中一个,/>表示子网络模型/>卷积层i的逐层通道数,/>表示子网络模型/>卷积层i的分层权重稀疏度。
4.根据权利要求1所述的基于零数据搜索的神经网络多粒度剪枝压缩方法,其特征在于,所述位于帕累托前沿的模型序列满足以下要求:
5.根据权利要求1所述的基于零数据搜索的神经网络多粒度剪枝压缩方法,其特征在于,定义如下:
表示子网络模型/>的网络延迟。
6.根据权利要求1所述的基于零数据搜索的神经网络多粒度剪枝压缩方法,其特征在于,所述步骤205中的零数据线性区域数得分的计算公式如下:
其中,||c(x)-c(x’)||表示汉明距离,N(0,1)表示标准正态分布,c(x)指每个ReLU层中的每个单元的被激活状态。
7.根据权利要求1所述的基于零数据搜索的神经网络多粒度剪枝压缩方法,其特征在于,所述步骤204中的最大收益得分的剪枝子网模型的计算公式如下:
t为训练次数;/>表示均值,为协方差矩阵。
8.基于零数据搜索的神经网络多粒度剪枝压缩系统,用于实现如权利要求1至7中任意一项所述的神经网络多粒度剪枝压缩方法,应用于语音处理、或图像处理、或自然语言处理;其特征在于,包括:
第一模块,被设置为给定一个具有L个卷积层的深度神经网络模型在联合通道和权重剪枝的情况下,得到剪枝后的子网络模型/>将所述子网络模型/>通过一对向量进行表示,生成模型架构集合/>
第二模块,被设置为利用N阶贪婪策略,通过多次迭代在模型架构集合中搜索出网络延迟/>和准确率/>之间位于帕累托前沿的模型序列:当前迭代中的搜索信息来自历史迭代中的搜索信息;
第三模块,被设置为计算当前模型的推理延迟Tk,基于模型序列生成当前延迟下的修剪模型集合Sk;
第四模块,被设置为利用算法在修剪模型集合Sk中找到具有最大零数据线性区域数得分的模型
第五模块,被设置为使用ADMM算法训练所有搜索到的模型
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410149908.2A CN117689001B (zh) | 2024-02-02 | 2024-02-02 | 基于零数据搜索的神经网络多粒度剪枝压缩方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410149908.2A CN117689001B (zh) | 2024-02-02 | 2024-02-02 | 基于零数据搜索的神经网络多粒度剪枝压缩方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117689001A CN117689001A (zh) | 2024-03-12 |
CN117689001B true CN117689001B (zh) | 2024-05-07 |
Family
ID=90135721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410149908.2A Active CN117689001B (zh) | 2024-02-02 | 2024-02-02 | 基于零数据搜索的神经网络多粒度剪枝压缩方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117689001B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110717374A (zh) * | 2019-08-20 | 2020-01-21 | 河海大学 | 一种基于改进的多层感知机的高光谱遥感影像分类方法 |
CN111797118A (zh) * | 2019-04-03 | 2020-10-20 | 哈索普拉特纳数字工程研究有限公司 | 大型数据库系统的迭代式多属性索引选择 |
CN112215353A (zh) * | 2020-09-29 | 2021-01-12 | 电子科技大学 | 一种基于变分结构优化网络的通道剪枝方法 |
CN113850385A (zh) * | 2021-10-12 | 2021-12-28 | 北京航空航天大学 | 一种粗细粒度联合的神经网络剪枝方法 |
CN114819181A (zh) * | 2022-04-15 | 2022-07-29 | 中国人民解放军国防科技大学 | 基于改进nsga-iii的多目标联邦学习进化方法 |
CN115358929A (zh) * | 2022-10-19 | 2022-11-18 | 中科方寸知微(南京)科技有限公司 | 压缩图像超分方法、图像压缩方法及系统 |
CN116796821A (zh) * | 2023-06-30 | 2023-09-22 | 清华大学 | 面向3d目标检测算法的高效神经网络架构搜索方法及装置 |
CN117292182A (zh) * | 2023-09-21 | 2023-12-26 | 北京航空航天大学 | 一种基于多粒度重要性度量的图像表征模型剪枝方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210192352A1 (en) * | 2019-12-19 | 2021-06-24 | Northeastern University | Computer-implemented methods and systems for compressing deep neural network models using alternating direction method of multipliers (admm) |
US20210256383A1 (en) * | 2020-02-13 | 2021-08-19 | Northeastern University | Computer-implemented methods and systems for privacy-preserving deep neural network model compression |
US20230062503A1 (en) * | 2021-08-24 | 2023-03-02 | Nvidia Corporation | Pruning and accelerating neural networks with hierarchical fine-grained structured sparsity |
-
2024
- 2024-02-02 CN CN202410149908.2A patent/CN117689001B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111797118A (zh) * | 2019-04-03 | 2020-10-20 | 哈索普拉特纳数字工程研究有限公司 | 大型数据库系统的迭代式多属性索引选择 |
CN110717374A (zh) * | 2019-08-20 | 2020-01-21 | 河海大学 | 一种基于改进的多层感知机的高光谱遥感影像分类方法 |
CN112215353A (zh) * | 2020-09-29 | 2021-01-12 | 电子科技大学 | 一种基于变分结构优化网络的通道剪枝方法 |
CN113850385A (zh) * | 2021-10-12 | 2021-12-28 | 北京航空航天大学 | 一种粗细粒度联合的神经网络剪枝方法 |
CN114819181A (zh) * | 2022-04-15 | 2022-07-29 | 中国人民解放军国防科技大学 | 基于改进nsga-iii的多目标联邦学习进化方法 |
CN115358929A (zh) * | 2022-10-19 | 2022-11-18 | 中科方寸知微(南京)科技有限公司 | 压缩图像超分方法、图像压缩方法及系统 |
CN116796821A (zh) * | 2023-06-30 | 2023-09-22 | 清华大学 | 面向3d目标检测算法的高效神经网络架构搜索方法及装置 |
CN117292182A (zh) * | 2023-09-21 | 2023-12-26 | 北京航空航天大学 | 一种基于多粒度重要性度量的图像表征模型剪枝方法 |
Non-Patent Citations (4)
Title |
---|
Correction of Temperature Variations in Kinetic-Based Determinations by Use of Pruning Computational Neural Networks in Conjunction with Genetic Algorithms;Cesar Hervas等;《Journal Chemical Information Computer Science》;20001231;第40卷(第3期);724-731 * |
Multi-Granularity Pruning for ModelAcceleration on Mobile Devices;Tianli Zhao等;《European Conference on Computer Vision》;20221110;1-18 * |
面向物端专用人工智能芯片的实时人脸识别技术;万紫微;《中国优秀硕士学位论文全文数据库 信息科技辑》;20210115(第01期);I135-441 * |
面向自动驾驶视觉感知的深度神经网络轻量化研究;张敬博;《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》;20240115(第01期);C035-348 * |
Also Published As
Publication number | Publication date |
---|---|
CN117689001A (zh) | 2024-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7462623B2 (ja) | 活性スパース化を用いたニューラルネットワーク加速・埋め込み圧縮システム及び方法 | |
Li et al. | A directed acyclic graph network combined with CNN and LSTM for remaining useful life prediction | |
You et al. | Gate decorator: Global filter pruning method for accelerating deep convolutional neural networks | |
CN107103754B (zh) | 一种道路交通状况预测方法及系统 | |
EP4080416A1 (en) | Adaptive search method and apparatus for neural network | |
Ding et al. | Where to prune: Using LSTM to guide data-dependent soft pruning | |
Chen et al. | Mngnas: distilling adaptive combination of multiple searched networks for one-shot neural architecture search | |
Li et al. | Automated progressive learning for efficient training of vision transformers | |
Cai et al. | On-device image classification with proxyless neural architecture search and quantization-aware fine-tuning | |
Shin et al. | Prediction confidence based low complexity gradient computation for accelerating DNN training | |
CN110944295B (zh) | 位置预测方法、装置、存储介质及终端 | |
Liu et al. | FOX-NAS: fast, on-device and explainable neural architecture search | |
CN111723203A (zh) | 一种基于终生学习的文本分类方法 | |
CN114564787A (zh) | 用于目标相关翼型设计的贝叶斯优化方法、装置及存储介质 | |
CN117689001B (zh) | 基于零数据搜索的神经网络多粒度剪枝压缩方法及系统 | |
Luo et al. | Designing efficient DNNs via hardware-aware neural architecture search and beyond | |
Boncoraglio et al. | Piecewise-global nonlinear model order reduction for pde-constrained optimization in high-dimensional parameter spaces | |
CN112068088A (zh) | 一种基于优化bp神经网络的雷达辐射源威胁评估方法 | |
CN110135561B (zh) | 一种实时在线飞行器ai神经网络系统 | |
Guo et al. | Dynamic neural network structure: A review for its theories and applications | |
Rong et al. | Soft Taylor pruning for accelerating deep convolutional neural networks | |
CN116187561A (zh) | 一种基于空间时域卷积网络的pm10浓度精细化预测方法 | |
Ghimire et al. | Loss-aware automatic selection of structured pruning criteria for deep neural network acceleration | |
Zhu et al. | Fast Adaptive Character Animation Synthesis Based on Greedy Algorithm | |
CN111599404B (zh) | 基于离散化蝙蝠算法的两个生物网络全局比对方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |