CN113610227A - 一种高效的深度卷积神经网络剪枝方法 - Google Patents
一种高效的深度卷积神经网络剪枝方法 Download PDFInfo
- Publication number
- CN113610227A CN113610227A CN202110838976.6A CN202110838976A CN113610227A CN 113610227 A CN113610227 A CN 113610227A CN 202110838976 A CN202110838976 A CN 202110838976A CN 113610227 A CN113610227 A CN 113610227A
- Authority
- CN
- China
- Prior art keywords
- neural network
- convolutional neural
- sub
- network
- scaling factor
- 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.)
- Granted
Links
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 89
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000013138 pruning Methods 0.000 title claims abstract description 29
- 238000012549 training Methods 0.000 claims abstract description 32
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 24
- 230000006870 function Effects 0.000 claims abstract description 18
- 230000002068 genetic effect Effects 0.000 claims abstract description 12
- 238000013528 artificial neural network Methods 0.000 claims description 41
- 238000005457 optimization Methods 0.000 claims description 14
- 230000009977 dual effect Effects 0.000 claims description 9
- 239000013598 vector Substances 0.000 claims description 9
- 238000003062 neural network model Methods 0.000 claims description 4
- 238000012216 screening Methods 0.000 claims description 4
- 238000010187 selection method Methods 0.000 claims description 3
- 230000003190 augmentative effect Effects 0.000 claims description 2
- 238000009472 formulation Methods 0.000 claims description 2
- 239000000203 mixture Substances 0.000 claims description 2
- 230000009466 transformation Effects 0.000 claims 1
- 238000004364 calculation method Methods 0.000 abstract description 8
- 238000007906 compression Methods 0.000 description 17
- 230000006835 compression Effects 0.000 description 17
- 238000004088 simulation Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 7
- 238000012360 testing method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000035772 mutation Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- RTAQQCXQSZGOHL-UHFFFAOYSA-N Titanium Chemical compound [Ti] RTAQQCXQSZGOHL-UHFFFAOYSA-N 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/086—Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Physiology (AREA)
- Genetics & Genomics (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种高效的深度卷积神经网络剪枝方法,主要解决现有深度卷积神经网络对存储资源和计算资源消耗大的问题,其实现方案是:通过基于ADMM算法的稀疏学习方法优化缩放因子,对深度卷积神经网络进行训练,使网络结构稀疏化;利用遗传算法对训练好的深度卷积神经网络各层所适宜的裁剪率进行搜索,并在适应度函数的引导下自动搜索出符合需求的最佳裁剪率;使用最佳裁剪率对稀疏学习训练后的网络各层进行裁剪,得到效率最佳的卷积神经网络。本发明可大大降低剪枝后卷积神经网络的精度损失,通过减少网络的参数量大大减少了卷积神经网络对存储资源和计算资源消耗,可用于深度卷积神经网络的压缩。
Description
技术领域
本发明属于计算机技术领域,主要涉及一种高效的深度卷积神经网络的剪枝方法,可用于深度卷积神经网络的压缩。
背景技术
近年来,神经网络技术在科研和实际应用中取得了很好的效果,但是相较于传统算法,神经网络的计算过程需要消耗大量的存储资源和计算资源,这导致其在部署应用时耗费较多的功耗和成本,限制了神经网络在功耗有限的移动端设备上的使用。神经网络剪枝作为一种压缩神经网络的方法,通过去除神经网络中的冗余成分减少神经网络的存储消耗及计算消耗,从而达到降低运行神经网络时功耗的目的。
目前,神经网络剪枝方法分为非结构化剪枝和结构化剪枝两大类。
非结构化剪枝方法,是通过任意地去除神经网络中的非重要权重达到压缩神经网络的目的,这类方法虽然能够取得很高的压缩率,但由于其所去除权重的位置是无序的,因此破环了神经网络原有的数据结构,且还需要专门的设备去存储裁剪的权重参数,限制了其在通用设备上的应用。
结构化剪枝方法,是通过去除神经网络中的非重要通道或者卷积核达到压缩神经网络的目的,由于去除通道不会破坏神经网络的数据结构,因此这类方法能够很好的运用到现有计算设备上。但是该结构化剪枝方法对于神经网络中冗余成分的定位不精确,对于神经网络的压缩率较低,且对神经网络的性能影响较大。
此外,使用非结构化方法和结构化方法进行剪枝后的神经网络模型,大部分需要再次进行训练,耗费大量的时间,效率低。
发明内容
本发明的目的在于针对上述现有技术的不足,提出一种高效的深度卷积神经网络剪枝方法,以在对剪枝后的模型不再进行训练的情况下,保证良好的压缩率和精度,提高剪枝效率。
本发明的技术思路是:通过基于ADMM算法的稀疏学习方法约束调控卷积神经网络的训练,使网络结构稀疏化;通过利用遗传算法对训练好的卷积神经网络各层所适宜的裁剪率进行启发式搜索,并在适应度函数的引导下自动搜索出符合需求的最佳裁剪率;通过最佳裁剪率裁剪网络,得到最佳的卷积神经网络。其实现步骤包括如下:
(1)利用基于ADMM的稀疏学习方法训练深度卷积神经网络:
(1a)对深度卷积神经网络各通道引入缩放因子γl,i;
(1b)对深度卷积神经网络的损失函数loss,添加各通道中缩放因子的0范正则项,得到新的损失函数lossnew;
(1c)从公开数据网站下载训练数据集,利用该训练数据集和随机梯度下降算法训练神经网络中缩放因子以外的参数,并利用ADMM算法对缩放因子γl,i进行优化,直到(1b)中新的损失函数收敛,得到训练好的深度卷积神经网络模型;
(2)利用遗传算法在稀疏学习训练后的卷积神经网络中搜索最佳子裁剪率:
(2a)设置遗传算法的最大迭代次数,计算训练后卷积神经网络模型的总参数量B0和计算量D0;
(2b)初始化M组裁剪率,每组包括N个不同的裁剪率,N等于网络层数;
(2c)将各组裁剪率分别编码为二进制编码,并对二进制编码进行交叉和变异操作产生若干新二进制编码,得到新产生的二进制编码数量和原有的二进制编码数量之和为P;
(2d)对(2c)中P个二进制编码进行解码,并将每条二进制编码解码为一组裁剪率pi,j;
(2e)根据(2d)中生成的裁剪率,调整网络模型,选择卷积神经网络各层中缩放因子数值较小的通道,使卷积神经网络各层被选择的通道数与该层总通道数之比等于裁剪率;
(2f)将(2e)中被选择通道从卷积神经网络中删除,获得P个子网络,每个子网络对应一组裁剪率;
(2g)计算(2f)中的每个子网络的准确率a0,参数量b0和计算量d0,并利用a0,b0和d0计算出每个子网络的适应度fi;
(2h)通过每个子网络的适应度fi计算出每个网络被选择的概率qi,通过轮盘选择法,从(2f)所获得的P个子网络中筛选出R个子网络,得到每个子网络在(2d)中所对应的当前裁剪率pi,j,1≤R≤P;
(2i)重复(2b)到(2h)过程,当迭代次数达到(2a)中所设置的最大迭代次数,完成搜索,得到最佳适应度所对应的卷积神经网络模型的最佳子裁剪率pbest;
本发明具有如下优点:
1.精度损失小
本发明利用基于ADMM算法的稀疏学习方法训练深度卷积神经网络,抑制了卷积神经网络中冗余参数数值的增大,减小了参数对网络性能影响,并通过遗传算法对裁剪率进行细致的筛选,进一步减小了网络模型剪枝对网络精度造成的影响,使得本发明极大的降低了网络模型剪枝带来的精度损失。
2.剪枝效率高
本发明利用基于ADMM算法的稀疏学习方法以及基于遗传算法启发式搜索方法,分别在卷积神经网络的训练和剪枝阶段进行参数的粗筛和细筛,极大的减小了剪枝带来的精度损失,使得本发明所获得的剪枝后的网络无需再训练就能够拥有与原网络几乎一致的性能,从而节省了再训练的时间,提高了剪枝的效率。
3.剪枝可调节
本发明利用遗传算法对适合卷积神经网络的裁剪率进行启发式搜索,通过改变适应度的计算方式改变搜索的方向,进而改变最终搜索结果,使得本发明能根据实际需求调节剪枝。
仿真结果表明,本发明能高效压缩深度卷积神经网络并产生极小的精度损失。在基于CIFAR-10和ImageNet数据集的分类任务中,对卷积神经网络参数量的平均压缩率达到68.0%,对计算量的平均压缩率达到63.4%,对通道数的平均压缩量为63.2%。且精度与压缩前持平甚至超越。
附图说明
图1为本发明的实现流程图;
图2为本发明的仿真结果图。
具体实施方式
下面结合附图对本发明的实施例和效果做进一步的详细描述。
参照图1,本实例的实现步骤如下:
步骤1,利用基于ADMM的稀疏学习方法训练深度卷积神经网络。
所述深度卷积神经网络为包括N层卷积层的现有神经网络,其中第l层的输入表示为xl,对每层输入xl进行卷积和规范化操作,操作集合表示为f(·),该深度卷积神经网络的每一个通道的输出表示为:
yl,i=f(xl,wl,i,bl,i),l=1,2,…N;i=1,2,...,n <1>
其中,l是神经网络层数的索引,i是通道的索引,wl.i和bl,i分别是通道的权重和偏置集合,nl表示深度卷积神经网络中第l层的总通道数,f(·)表示深度神经网络中卷积核规范化操作的集合,xl表示神经网络中第l层的输入,N表示深度卷积神经网络的总层数,其数值根据不同的任务需求进行调整。
本步骤利用基于ADMM的稀疏学习方法对深度卷积神经网络进行训练,其实现如下
(1.1)在深度卷积神经网络的各通道引入缩放因子,得到其各通道的输出:
yl,i=γl,i·f(xl,wl,i,bl,i),l=1,2,...N;i=1,2,...,n, <2>
其中,γl,i表示深度卷积神经网络中第l层第i个通道的缩放因子;若γl,i为0,则对应通道的输出yl,i为0,表示是所对应的通道是无效的,可以被安全地裁剪。
(1.2)根据(1.1)中缩放因子γl,i的定义,将深度卷积神经网络通道的稀疏性ξc使用缩放因子的稀疏性ξs来表示,即将求解通道稀疏性问题转换为对如下缩放因子γl,i的约束优化问题:
其中,E(·)表示网络的损失函数loss,Γ表示缩放因子γl,i集合的向量,Wl和Bl分别是第l层的权重和偏置集合,C是通道总数,|Γ|0为l0范数,表示非零因子的数量。
(1.3)向(1.2)中的损失函数E(·)添加深度卷积神经网络各通道的缩放因子γl,i的l0范数正则项,将约束优化问题转换为如下缩放因子γl,i的非约束优化问题:
并根据该非约束优化式得到一个新的损失函数lossnew:
(1.4)为了求解(1.3)中的非约束优化问题,向其加入辅助变量,并利用增广拉格朗日乘子法进行变换并进行配方,将公式<4>转换为如下公式:
其中ρ为常数,U为用于配方的对偶变量,Z为辅助变量。|Z|0为l0范数,表示辅助变量的数量。
(1.5)将(1.4)中公式(5)再分解为如下三个子问题:
(1.5.1)将第一个子问题表示为:
其中,k为迭代次数索引,Zk-1和Uk-1分别是第k-1次迭代中辅助变量和对偶变量的集合,可以视为常数。
(1.5.2)将第二个子问题表示为:
其中,Γk是第一个子问题在k次迭代的结果,Uk-1是第k-1次迭代的对偶变量。Z,Γk和Uk-1均为向量的表示,可将该公式<7>转换为如下公式:
(1.5.3)将第三个子问题表示为:
其中,Zk为第二个子问题在k次迭代的结果。
(1.6)通过迭代地求解(1.5)中三个子问题来求解(1.4)中的公式:
(1.6.1)求解(1.5.1)中式<6>表示的第一个子问题,得到第k次迭代中缩放因子γl,i的集合Γk:
所述第一个问题由两部分组成,第一部分为卷积神经网络最初的损失函数loss;第二部分是凸的和可微的。根据具体任务需求,从公开数据网站下载对应任务的训练数据集,利用该训练数据集和随机梯度下降算法训练该问题,直到其收敛,得到第k+1次迭代中缩放因子γl,i的集合Γk;
(1.6.2)求解(1.5.2)中式<8>表示的第二个子问题,根据式<8>中辅助变量zj的取值,得到第k次迭代中辅助变量的集合Zk:
若辅助变量zj不为零,则将公式<8>重写为:
(1.6.3)求解(1.5.3)中式<9>表示的第三个子问题,得到第k次迭代中对偶变量的集合Uk:
由于(1.5.3)中第三个子问题为凸二次优化问题,其结果为其极值,表示如下:
Uk=Γk-Zk+Uk-1 <12>
其中,Uk-1为第k-1次迭代中对偶变量的集合,Γk和Zk分别为第一个和第二个子问题在k次迭代时的结果;
(1.7)在第k+1次迭代时,将(1.6.3)中第三个子问题在第k次迭代中的结果Uk输入到(1.6.1)求解的第一个子问题中;
(1.8)重复(1.6)到(1.7)的过程,直到(1.3)中新的损失函数lossnew收敛,完成使用基于ADMM的稀疏学习方法对深度卷积网路的训练,得到训练后卷积神经网络。
步骤2,利用遗传算法在稀疏学习训练后的卷积神经网络中搜索最佳子裁剪率。
(2.1)设置最大迭代次数,计算训练后神经网络的参数量B0和计算量D0。
(2.2)初始化M个个体作为遗传算法的种群,每一个个体为一组通道裁剪率,表示为:
si={pi,j|0≤pi,j<1,j=1,2,...,N},i=1,2,...,M, <15>
其中,si是第i组裁剪率,pi,j代表si中第j层的通道裁剪率,M表示裁剪率的组数,每组裁剪率包括N个不同的裁剪率,N等于网络层数;
(2.3)为(2.2)中初始化的M组裁剪率生成二进制编码,其值为0或者1,表示如下:
其中,ci是第i个编码,m是决定二进制码长度的超参数。
在式<16>表示的二进制编码的基础上,通过对其进行交叉和变异操作,产生若干新的二进制编码,得到新产生的二进制编码数量和原有的二进制编码数量之和为P。其中,交叉是指在两个编码之间随机交换一些位元,变异是指改变编码中的一些位元(0到1或1到0);
(2.4)通过对(2.3)中式<16>的逆过程,将所有P个编码解码为P组裁剪率,表示如下:
其中,pi,j表示第i组的第j个裁剪率;
(2.5)根据(2.4)中生成的裁剪率,调整网络模型,选择卷积神经网络各层中缩放因子数值较小的通道,使卷积神经网络各层被选择的通道数与该层总通道数之比等于裁剪率pi,j;
(2.6)将(2.5)中的被选择通道从神经网络中删除,获得P个子网络,每个子网络对应一组裁剪率pi,j;
(2.7)针对不同的任务,从公开数据网站下载对应的测试数据集,并将该测试集输入到(2.6)中的每个子网络中,根据网络输出结果和标签,计算其准确率di:
di=φ(xi,g)
其中,di表示第i个子网络的准确率,xi表示第i个子网络的输出结果,g表示测试集样本的标签。
(2.8)根据(2.1)中的式<13>和式<14>,分别计算出每个子网络的参数量ai和计算量bi,并计算第i个子网络的适应度fi:
其中,A0和B0和D0分别是原网络的准确率,参数量和计算量;θ是平衡式<18>各部分的超参数,1≤θ≤1,ε表示精度的允许偏差。
(2.9)将(2.8)所获得的适应度fi求和得到一个总的适应度sum(f),然后为每个子网络计算一个加权适应度qi:
其中,sum(f)是所有子网络适应度fi的总和,qi是每个子网络的加权适应度,表示每个子网络被选择的概率。
(2.10)根据(2.9)中每个子网络被选择的概率qi,通过轮盘选择方法选择R个子网络,得到每个子网络在(2.6)所对应的裁剪率pi,j,并将其输入到(2.2)中进行下一次迭代,其中1≤R≤P。
(2.11)重复(2.2)到(2.10),直到达到最大迭代次数后完成搜索,得到卷积神经网络模型的最佳子裁剪率pbest。
步骤三,利用最佳子裁剪率对稀疏学习训练后的卷积神经网络进行裁剪。
选择卷积神经网络各层中缩放因子数值较小的ω个通道,使卷积神经网络各层被选择的通道数ω与该层总通道数β之比等于最佳子裁剪率pbest,删除选出的ω个通道,以完成对卷积神经网络模型的裁剪,得到最佳的卷积神经网络,以为后续的深度学习任务和实际场景应用提供计算耗时更短、占用存储资源更少的卷积神经网络模型。
本发明的效果通过以下仿真进一步说明。
1.仿真实验条件:
本发明仿真实验的操作系统为Ubuntu18.04 LTS,深度学习软件平台为Pytorch,GPU采用英伟达TITAN Xp;
本发明仿真实验所使用的数据集包括:CIFAR-10,ImageNet;
本发明仿真实验所涉及的神经网络包括:Vgg-16,ResNet-50,ResNet-56,ResNet-110,GoogLeNet,DenseNet-40。
2.仿真实验内容:
仿真1,对卷积神经网络训练的仿真实验:
使用CIFAR-10数据集,分别使用传统训练方式和本发明中基于ADMM的稀疏学习的训练方式训练分类神经网络Vgg-16,结果如图2所示。其中,图2(a)为使用传统训练方法得到的神经网络特征图;图2(b)为本发明中基于ADMM的稀疏学习训练方式得到的神经网络特征图。图2中,黑色小格表示无效的特征,白色纹理小格表示有效的特征。
从图2中可以看出,本发明基于ADMM的稀疏学习训练方式得到的无效特征图明显多于传统训练方式得到的神经网络特征图,表明本发明对卷积神经网络的稀疏学习效果明显。
仿真2,卷积神经网络的剪枝仿真实验:
利用本发明在CIFAR-10数据集的训练集上分别对卷积神经网络Vgg-16,ResNet-56,ResNet-110,GoogleNet,DenseNet-40进行训练并完成剪枝;
利用本发明在ImageNet数据集的训练集上别对卷积神经网络ResNet-50进行训练并完成剪枝。
使用剪枝后的卷积神经网络Vgg-16,ResNet-56 ResNet-110,GoogleNet,DenseNet-40对来自CIFAR-10数据集的测试集的数据进行分类;使用剪枝后的卷积神经网络ResNet-50,对来自ImageNet数据集的测试集的数据进行分类,得到剪枝后的卷积神经网络对来自两种测试集中的数据进行分类的效果,如表1所示。
表1.剪枝后的卷积神经网络对测试集的分类效果
表中参数量的计数单位‘M’表示106个浮点数,计算量的计数单位‘B’表示109次浮点运算。原网络表示未经过剪枝的卷积神经网络,剪枝后网络表示经过本发明的方法剪枝后的卷积神经网络。
从表1中可以看到,本发明对卷积神经网络参数量的最高压缩率为87.8%,最低压缩率为43.0%,平均压缩率为68.0%;对卷积神经网络计算量的最高压缩率为83.6%,最低压缩率为47.9%,平均压缩率为63.4%;对卷积神经网络通道的最高压缩率为81.6%,最低压缩率为41.4%,平均压缩率为63.2%。
表1结果表明,本发明可以有效压缩卷积神经网络,且剪枝后所获得的卷积神经网络错误率与原网络基本一致,表明本发明可以有效压缩卷积神经网络,且产生的精度损失很小。通过本发明对卷积神经网络的压缩大大减小了卷积神经网络的存储消耗及计算消耗,从而可提升后续各种使用效果。
Claims (5)
1.一种高效的深度卷积神经网络剪枝方法,其特征在于,包括:
(1)利用基于ADMM的稀疏学习方法训练深度卷积神经网络:
(1a)对深度卷积神经网络各通道引入缩放因子γl,i;
(1b)对深度卷积神经网络的损失函数loss,添加各通道中缩放因子的0范正则项,得到新的损失函数lossnew;
(1c)从公开数据网站下载训练数据集,利用该训练数据集和随机梯度下降算法训练神经网络中缩放因子以外的参数,并利用ADMM算法对缩放因子γl,i进行优化,直到(1b)中新的损失函数收敛,得到训练好的深度卷积神经网络模型;
(2)利用遗传算法搜索深度卷积神经网络模型的最佳子裁剪率:
(2a)设置遗传算法的最大迭代次数,计算训练后卷积神经网络模型的总参数量B0和计算量D0;
(2b)初始化M组裁剪率,每组包括N个不同的裁剪率,N等于网络层数;
(2c)将各组裁剪率分别编码为二进制编码,并对二进制编码进行交叉和变异操作产生若干新二进制编码,得到新产生的二进制编码数量和原有的二进制编码数量之和为P;
(2d)对(2c)中P个二进制编码进行解码,并将每条二进制编码解码为一组裁剪率pi,j;
(2e)根据(2d)中生成的裁剪率,调整网络模型,选择卷积神经网络各层中缩放因子数值较小的通道,使卷积神经网络各层被选择的通道数与该层总通道数之比等于裁剪率;
(2f)将(2e)中被选择通道从卷积神经网络中删除,获得P个子网络,每个子网络对应一组裁剪率;
(2g)计算(2f)中的每个子网络的准确率a0,参数量b0和计算量d0,并利用a0,b0和d0计算出每个子网络的适应度fi;
(2h)通过每个子网络的适应度fi计算出每个网络被选择的概率qi,通过轮盘选择法,从(2f)所获得的P个子网络中筛选出R个子网络,得到每个子网络在(2d)中所对应的当前裁剪率pi,j,1≤R≤P;
(2i)重复(2b)到(2h)过程,当迭代次数达到(2a)中所设置的最大迭代次数,完成搜索,得到最佳适应度所对应的卷积神经网络模型的最佳子裁剪率pbest;
3.根据权利要求1所述的方法,其特征在于:(1c)中利用ADMM算法优化缩放因子的方法,其实现如下:
(1c1)为了求解(1b)式<1>中的非约束优化问题,向其加入辅助变量,并利用增广拉格朗日乘子法进行变换并进行配方,将公式<1>转换为如下公式:
其中,Γ表示缩放因子γl,i集合的向量,ρ为常数,U为用于配方的对偶变量,Z为辅助变量。|Z|0为l0范数,表示辅助变量的数量;
(1c2)将(1c1)中公式<3>分解为三个子问题,并通过迭代的方式求解。
(1c3)将第一个子问题表示为:
其中,k为迭代次数索引,Zk-1和Uk-1分别是第k-1次迭代中辅助变量和对偶变量的集合,可以视为常数;
(1c4)求解式<4>表示的第一个子问题,得到第k次迭代中缩放因子γl,i的集合Γk:
从公开数据网站下载对应任务的训练数据集,利用该训练数据集和随机梯度下降算法训练该问题,直到其收敛,得到第k次迭代中缩放因子γl,i的集合Γk;
(1c5)将第二个子问题表示为:
其中,Γk是第一个子问题在k次迭代的结果,Uk-1是第k-1次迭代的对偶变量。Z,Γk和Uk -1均为向量的表示,可将该公式<5>转换为如下公式:
(1c6)根据式<6>中辅助变量zj的取值,得到第k次迭代中辅助变量的集合Zk:
若辅助变量zj不为零,则将公式<6>重写为:
(1c7)将第三个子问题表示为:
其中,Zk为第二个子问题在k次迭代的结果。此子问题为凸二次优化问题,其结果为其极值,表示如下:
Uk=Γk-Zk+Uk-1, <10>
其中,Uk-1为第k-1次迭代中对偶变量的集合,Γk和Zk分别为第一个和第二个子问题在k次迭代时的结果;
(1c8)在第k+1次迭代时,将(1c7)中第三个子问题在第k次迭代中的结果Uk输入到(1c3)中的第一个子问题中;
(1c9)重复(1c3)到(1c8)的过程,直到(1b)中新的损失函数lossnew收敛,完成使用基于ADMM的稀疏学习方法对缩放因子的优化,得到优化之后的缩放因子集合Γ。
4.根据权利要求1所述的方法,其特征在于:(2b)裁剪率的初始化方式如下:
初始化M个个体作为遗传算法的种群,每一个个体表示一组通道裁剪率,每组包含N个不同的裁剪率:
si={pi,j|0≤pi,j<1,j=1,2,...,N},i=1,2,...,M, <11>
其中,si是第i个个体,pi,j代表第si中第j层的通道裁剪率。M表示个体的总数,N表示网络的层数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110838976.6A CN113610227B (zh) | 2021-07-23 | 2021-07-23 | 一种用于图像分类的深度卷积神经网络剪枝方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110838976.6A CN113610227B (zh) | 2021-07-23 | 2021-07-23 | 一种用于图像分类的深度卷积神经网络剪枝方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113610227A true CN113610227A (zh) | 2021-11-05 |
CN113610227B CN113610227B (zh) | 2023-11-21 |
Family
ID=78338225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110838976.6A Active CN113610227B (zh) | 2021-07-23 | 2021-07-23 | 一种用于图像分类的深度卷积神经网络剪枝方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113610227B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113935485A (zh) * | 2021-12-15 | 2022-01-14 | 江苏游隼微电子有限公司 | 一种基于相邻层权重的卷积神经网络裁剪方法 |
CN114330644A (zh) * | 2021-12-06 | 2022-04-12 | 华中光电技术研究所(中国船舶重工集团公司第七一七研究所) | 一种基于结构搜索和通道剪枝的神经网络模型压缩方法 |
CN114781604A (zh) * | 2022-04-13 | 2022-07-22 | 广州安凯微电子股份有限公司 | 神经网络权重参数的编码方法、编码器及神经网络处理器 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109242142A (zh) * | 2018-07-25 | 2019-01-18 | 浙江工业大学 | 一种面向基础设施网的时空预测模型参数优化方法 |
CN109683161A (zh) * | 2018-12-20 | 2019-04-26 | 南京航空航天大学 | 一种基于深度admm网络的逆合成孔径雷达成像的方法 |
CN110276450A (zh) * | 2019-06-25 | 2019-09-24 | 交叉信息核心技术研究院(西安)有限公司 | 基于多粒度的深度神经网络结构化稀疏系统和方法 |
CN110874631A (zh) * | 2020-01-20 | 2020-03-10 | 浙江大学 | 一种基于特征图稀疏化的卷积神经网络剪枝方法 |
CN111105035A (zh) * | 2019-12-24 | 2020-05-05 | 西安电子科技大学 | 基于稀疏学习与遗传算法相结合的神经网络剪枝方法 |
CN111368699A (zh) * | 2020-02-28 | 2020-07-03 | 交叉信息核心技术研究院(西安)有限公司 | 基于图案的卷积神经网络剪枝方法及图案感知加速器 |
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) |
-
2021
- 2021-07-23 CN CN202110838976.6A patent/CN113610227B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109242142A (zh) * | 2018-07-25 | 2019-01-18 | 浙江工业大学 | 一种面向基础设施网的时空预测模型参数优化方法 |
CN109683161A (zh) * | 2018-12-20 | 2019-04-26 | 南京航空航天大学 | 一种基于深度admm网络的逆合成孔径雷达成像的方法 |
CN110276450A (zh) * | 2019-06-25 | 2019-09-24 | 交叉信息核心技术研究院(西安)有限公司 | 基于多粒度的深度神经网络结构化稀疏系统和方法 |
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) |
CN111105035A (zh) * | 2019-12-24 | 2020-05-05 | 西安电子科技大学 | 基于稀疏学习与遗传算法相结合的神经网络剪枝方法 |
CN110874631A (zh) * | 2020-01-20 | 2020-03-10 | 浙江大学 | 一种基于特征图稀疏化的卷积神经网络剪枝方法 |
CN111368699A (zh) * | 2020-02-28 | 2020-07-03 | 交叉信息核心技术研究院(西安)有限公司 | 基于图案的卷积神经网络剪枝方法及图案感知加速器 |
Non-Patent Citations (4)
Title |
---|
AO REN.ET AL: "ADMM-NN: An Algorithm-Hardware Co-Design Framework of DNNs Using Alternating Direction Method of Multipliers", 《ARXIV》 * |
ZHENYU WANG.ET AL: "Network pruning using sparse learning and genetic algorithm", 《NEUROCOMPUTING》, vol. 404 * |
赖叶静等: "深度神经网络模型压缩方法与进展", 《华东师范大学学报》(自然科学版), no. 05 * |
高 晗等: "深度学习模型压缩与加速综述", 《软件学报》, vol. 32, no. 01 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114330644A (zh) * | 2021-12-06 | 2022-04-12 | 华中光电技术研究所(中国船舶重工集团公司第七一七研究所) | 一种基于结构搜索和通道剪枝的神经网络模型压缩方法 |
CN113935485A (zh) * | 2021-12-15 | 2022-01-14 | 江苏游隼微电子有限公司 | 一种基于相邻层权重的卷积神经网络裁剪方法 |
CN113935485B (zh) * | 2021-12-15 | 2022-03-04 | 江苏游隼微电子有限公司 | 一种基于相邻层权重的卷积神经网络裁剪方法 |
CN114781604A (zh) * | 2022-04-13 | 2022-07-22 | 广州安凯微电子股份有限公司 | 神经网络权重参数的编码方法、编码器及神经网络处理器 |
CN114781604B (zh) * | 2022-04-13 | 2024-02-20 | 广州安凯微电子股份有限公司 | 神经网络权重参数的编码方法、编码器及神经网络处理器 |
Also Published As
Publication number | Publication date |
---|---|
CN113610227B (zh) | 2023-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | Frequency-domain dynamic pruning for convolutional neural networks | |
CN113610227A (zh) | 一种高效的深度卷积神经网络剪枝方法 | |
CN111461322B (zh) | 一种深度神经网络模型压缩方法 | |
CN109002889B (zh) | 自适应迭代式卷积神经网络模型压缩方法 | |
CN109445935B (zh) | 云计算环境下一种高性能大数据分析系统自适应配置方法 | |
CN111105035A (zh) | 基于稀疏学习与遗传算法相结合的神经网络剪枝方法 | |
CN102521656A (zh) | 非平衡样本分类的集成迁移学习方法 | |
CN105718943A (zh) | 基于粒子群优化算法的特征选择方法 | |
CN113343427B (zh) | 一种基于卷积神经网络的结构拓扑构型预测方法 | |
CN114239798B (zh) | 基于奇偶性对数量化的无乘法深度神经网络模型压缩方法 | |
CN114118369B (zh) | 一种基于群智能优化的图像分类卷积神经网络设计方法 | |
CN112308298B (zh) | 一种面向半导体生产线的多场景性能指标预测方法及系统 | |
CN111832839B (zh) | 基于充分增量学习的能耗预测方法 | |
Sambharya et al. | End-to-end learning to warm-start for real-time quadratic optimization | |
Shin et al. | Prediction confidence based low complexity gradient computation for accelerating DNN training | |
CN118014041B (zh) | 一种电力设备能耗预测模型的训练方法及装置 | |
CN110263917B (zh) | 一种神经网络压缩方法及装置 | |
CN112036651A (zh) | 基于量子免疫优化bp神经网络算法的电价预测方法 | |
Yang et al. | Non-uniform dnn structured subnets sampling for dynamic inference | |
Chen et al. | DNN gradient lossless compression: Can GenNorm be the answer? | |
CN117035837B (zh) | 一种电力用户购电需求预测及零售合同定制方法 | |
CN111831955B (zh) | 一种锂离子电池剩余寿命预测方法及系统 | |
CN116663745A (zh) | 一种基于pca_ dwt的lstm流域水流量预测方法 | |
CN116757255A (zh) | 一种改进MobileNetV2的分心驾驶行为检测模型轻量化方法 | |
CN116885697A (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 |