一种基于模型结构冗余度的模型剪枝方法及系统技术方案

技术编号:38476327 阅读:15 留言:0更新日期:2023-08-15 16:56
本发明专利技术公开了一种基于模型结构冗余度的模型剪枝方法及系统,涉及计算机视觉和神经网络技术领域,包括:S1:训练图像分类模型,作为样本模型;S2:提取模型特征表示,得到样本模型的中间表示,设置模型结构冗余度阈值;S3:计算相邻层的模型结构冗余度;S4:根据计算出的模型结构冗余度和设定的模型结构冗余度阈值对样本模型进行剪枝操作,得到剪枝后模型;S5:将样本模型与剪枝后模型应用于后续分类任务,对比二者的分类精度。本发明专利技术为深度学习模型提出了一种新的测试度量,它提供了模型结构冗余程度的定量评估,并以此设计了一种新的层修剪方法,在消除结构冗余的同时,获得具有高准确率剪枝后的模型。剪枝后的模型。剪枝后的模型。

【技术实现步骤摘要】
一种基于模型结构冗余度的模型剪枝方法及系统


[0001]本专利技术涉及计算机视觉和神经网络
,更具体的说是涉及一种基于模型结构冗余度的模型剪枝方法及系统。

技术介绍

[0002]神经网络是一种模仿生物神经网络的结构和功能的数学模型或计算模型。神经网络是一种非线性统计性数据建模工具,由大量的人工神经元联结进行计算,常用来对输入和输出间复杂的关系进行建模,或用来探索数据的模式。深度神经网络在许多应用场景中取得了巨大成功,包括图像理解、目标检测和自动驾驶车辆。然而,这些成功是有代价的,因为训练和使用它们需要大量的计算和存储费用,成本高昂。
[0003]为了降低深度学习应用程序的成本,直观的方法是减少模型大小。在理想情况下,要使模型结构应尽可能简单,以满足实用要求。为了实现这一目标,机器学习界主要采用模型剪枝方法,模型剪枝基于不同的层次对模型推理的贡献从模型结构中移除冗余的部分,减少模型大小的关键挑战是有效识别模型结构中的冗余部分。现有的模型剪枝技术只能从不同的角度衡量模型的性能,而无法定量衡量剩余的冗余。换句话说,它们无法描述我们获得具有最小冗余的模型的进度。
[0004]本专利技术关注重点是以往剪枝模型不能对冗余准确量化的问题。CN202211264295.4一种基于分布差异的卷积神经网络剪枝方法,通过提取模型中间层特征矩阵,然后结合卷积核权重的L1范数计算卷积层输出的特征矩阵同标签特征之间的分布差异,得到分数,对阈值以下的卷积核进行裁剪;CN202210177728.6一种基于协同演化的深度卷积神经网络剪枝方法和系统,利用演化算法对待裁减的网络结构并行地在各个组内进行优化,完成组内演化后,各组末代种群中最优的个体对应的剪枝结果会被拼接起来,进行再训练,达到最大循环数后停止;CN202110818395.6一种基于平均秩重要性排序的自动化卷积神经网络的剪枝方法,通过对训练数据集的图像进行预训练,获取每个卷积核输出特征图的平均秩并进行排序,将排序结果作为敏感层判别依据,通过强化学习实现自动化模型剪枝操作;CN202010066747.2一种基于特征图稀疏化的卷积神经网络剪枝方法,通过在损失函数中增加对激活层之后的特征图L1或L2正则化,使相应的特征图通道具有不同的稀疏度,根据稀疏度剪去相应通道对应的卷积核,对剪枝后的网络重新获得准确度并调节剪枝率,多次循环迭代,实现最大程度的剪枝;目前的剪枝技术都是通过获得预训练模型中间层的特征表示,对特征图计算不同参数实现剪枝,训练过程中,待剪枝模型要不断重复训练,迭代模型。
[0005]由此可见,目前存在的模型剪枝方法结构复杂,步骤繁琐,训练耗时长,对算力要求高,所以如何设计步骤简单,计算高效的模型剪枝技术是当前研究的重难点。

技术实现思路

[0006]有鉴于此,本专利技术提供了一种基于模型结构冗余度的模型剪枝方法及系统,通过一种新的测试度量来反映深度学习模型的结构冗余,提供了模型结构冗余程度的定量评
估,解决了深度神经网络在训练和使用时需要大量的计算和存储费用的问题。
[0007]为了实现上述目的,本专利技术提供如下技术方案:
[0008]一种基于模型结构冗余度的模型剪枝方法,包括以下步骤:
[0009]S1:训练图像分类模型,作为样本模型;
[0010]S2:提取模型特征表示,得到样本模型的中间表示,设置模型结构冗余度阈值;
[0011]S3:计算相邻层的模型结构冗余度;
[0012]S4:根据计算出的模型结构冗余度和设定的模型结构冗余度阈值对样本模型进行剪枝操作,得到剪枝后模型。
[0013]可选的,S1中,训练图像分类模型,具体包括以下步骤:
[0014]S11:选用四个图像数据集,包括CIFAR10、CIFAR100、ImageNet和ImageNet16

120;
[0015]S12:利用随机梯度下降法作为优化模型,设计模型参数;
[0016]S13:将获得的集中样本输入优化模型,获取图像分类模型VGGs和ResNets。
[0017]可选的,设计模型参数,具体为:
[0018]初始学习率为0.01,批量大小为256,权重衰减为0.0005,动量为0.9。
[0019]可选的,S2的具体步骤包括:
[0020]S21:将获取的样本输入参数固定的优化DNN中,神经网络的特征表示:
[0021][0022]其中N代表样本批量大小,L为层数,C
i
为第i层的通道数,W
i
和H
i
分别为第i层特征映射的宽度和高度;F
i
表示神经网络第i层的特征表示;
[0023]利用映射函数降维:
[0024][0025]其中M
i
=C
i
×
W
i
×
H
i
,获得一组特征表示F={F1,F2,

,F
L
};f
θ
表示用于降维的映射函数;
[0026]S22:设置模型结构冗余度阈值μ,μ为人为设置参数。
[0027]可选的,S3中,计算相邻层的模型结构冗余度,具体包括以下步骤:
[0028]S31:计算格拉姆矩阵S
i
、S
j

[0029][0030][0031]j=i+1
ꢀꢀꢀꢀꢀꢀꢀ
(5);
[0032]其中F
T
代表F矩阵的转置,i和j为特征所在层数,S
i
、S
j
为相邻层特征的格拉姆矩阵,S∈R
N
×
N
仅由样本批量大小N决定矩阵大小;
[0033]S32:计算无偏希尔伯特

施密特独立准则HSIC1(S
i
,S
j
),公式如下:
[0034][0035]其中tr表示矩阵的迹,由S
i
、S
j
矩阵对角元素置0得到,1表示大小为N
×
N的全1矩阵;
[0036]S33:计算模型结构冗余度,采用无偏CKA
unbiased
(S
i
,S
j
),公式如下:
[0037][0038]其中,CKA
unbiased
(S
i
,S
j
)的值在0至1的范围内。
[0039]可选的,S4中,根据计算出的模型结构冗余度和设定的模型结构冗余度阈值对样本模型进行剪枝操作,具体包括以下步骤:
[0040]S41:按i从1到L

1的顺序计算相邻层的模型结构冗余度,对于模型结构冗余度小于设定的模型结构冗余度阈值μ的i、j层,保留其中较浅的i层,删去j层;
[0041]S42:对于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于模型结构冗余度的模型剪枝方法,其特征在于,包括以下步骤:S1:训练图像分类模型,作为样本模型;S2:提取模型特征表示,得到样本模型的中间表示,设置模型结构冗余度阈值;S3:计算相邻层的模型结构冗余度;S4:根据计算出的模型结构冗余度和设定的模型结构冗余度阈值对样本模型进行剪枝操作,得到剪枝后模型。2.根据权利要求1所述的一种基于模型结构冗余度的模型剪枝方法,其特征在于,S1中,训练图像分类模型,具体包括以下步骤:S11:选用四个图像数据集,包括CIFAR10、CIFAR100、ImageNet和ImageNet16

120;S12:利用随机梯度下降法作为优化模型,设计模型参数;S13:将获得的集中样本输入优化模型,获取图像分类模型VGGs和ResNets。3.根据权利要求2所述的一种基于模型结构冗余度的模型剪枝方法,其特征在于,设计模型参数,具体为:初始学习率为0.01,批量大小为256,权重衰减为0.0005,动量为0.9。4.根据权利要求1所述的一种基于模型结构冗余度的模型剪枝方法,其特征在于,S2的具体步骤包括:S21:将获取的样本输入参数固定的优化DNN中,神经网络的特征表示:其中N代表样本批量大小,L为层数,C
i
为第i层的通道数,W
i
和H
i
分别为第i层特征映射的宽度和高度;F
i
表示神经网络第i层的特征表示;利用映射函数降维:其中M
i
=C
i
×
W
i
×
H
i
,获得一组特征表示F={F1,F2,

,F
L
};f
θ
表示用于降维的映射函数;S22:设置模型结构冗余度阈值μ,μ为人为设置参数。5.根据权利要求1所述的一种基于模型结构冗余度的模型剪枝方法,其特征在于,S3中,计算相邻层的模型结构冗余度,具体包括以下步骤:S31:计算格拉姆矩阵S
i
、S
j
::j=i+1
ꢀꢀꢀꢀ
(5);其中F
T
代表F矩阵的转置,i和k为特征所在层数,S
i
、S
j
为相邻层特征的格拉姆矩阵,S∈R
N
×
...

【专利技术属性】
技术研发人员:宣琦刘惟清杨坤霖陆耀
申请(专利权)人:杭州市滨江区浙工大网络空间安全创新研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1