基于遗传算法的自动搜索剪枝方法和计算机可读存储介质技术

技术编号:35795374 阅读:13 留言:0更新日期:2022-12-01 14:46
本发明专利技术公开了一种基于遗传算法的自动搜索剪枝方法和计算机可读存储介质。其中,方法包括确定目标网络模型的全局剪枝率目标,并根据全局剪枝率目标进行随机初始化,获得m组剪枝率列表,其中,m为大于1的整数;对m组剪枝率列表进行性能评估,并根据评估分数进行排序,以确定s组剪枝率列表,其中,s为小于等于m的整数;采用遗传算法对s组剪枝率列表进行多次迭代更新,获得最优剪枝率列表;将最优剪枝率列表应用于目标网络模型,以对目标网络模型进行参数优化。该方法通过遗传算法对初始化获取的剪枝率列表进行优化迭代,提高了搜索最优剪枝率列表的效率,节约了硬件资源和人力成本。节约了硬件资源和人力成本。节约了硬件资源和人力成本。

【技术实现步骤摘要】
基于遗传算法的自动搜索剪枝方法和计算机可读存储介质


[0001]本专利技术涉及神经网络
,尤其涉及一种基于遗传算法的自动搜索剪枝方法和计算机可读存储介质。

技术介绍

[0002]随着硬件设备和大数据技术的日趋成熟,深度学习技术因为其高准确率的特点在家居、安防、能源等领域均有广泛应用。然而,当前深度神经网络庞大的参数量也带来了内存和计算上的双重压力,使其难以在边端设备上部署,而神经网络剪枝技术是一种缩减算法模型参数量的有效手段。相关技术中,基于神经架构搜索的一对多剪枝方法,主要通过灵活的训练策略来实现训练一次,即可在多个硬件平台灵活部署的效果,然而该种方案对训练平台的硬件要求较高,且无法在特定硬件平台上达到最优效果,只有当需要部署同一种深度学习算法的硬件平台数量较多时比较有效。或者针对特定硬件平台的一对一剪枝方法,而该类方法训练一次只能完成一种硬件平台的部署,试图在搜索空间中找到最优解,因此相较于第一种方案具有更好的部署效果,但遍历搜索空间也带来巨大的时间和人力成本消耗。

技术实现思路

[0003]本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。
[0004]为此,本专利技术的第一个目的在于提出一种基于遗传算法的自动搜索剪枝方法。该方法通过遗传算法对初始化获取的剪枝率列表进行优化,提高了搜索剪枝率列表的效率,节约了硬件资源和人力成本。
[0005]本专利技术的第二个目的在于提出一种计算机可读存储介质。
[0006]为达到上述目的,本专利技术第一方面实施例提出了一种基于遗传算法的自动搜索剪枝方法,包括:确定目标网络模型的全局剪枝率目标,并根据所述全局剪枝率目标进行随机初始化,获得m组剪枝率列表,其中,m为大于1的整数;对所述m组剪枝率列表进行性能评估,并根据评估分数进行排序,以确定s组剪枝率列表,其中,s为小于等于m的整数;采用遗传算法对所述s组剪枝率列表进行多次迭代更新,获得最优剪枝率列表;将所述最优剪枝率列表应用于所述目标网络模型,以对所述目标网络模型进行参数优化。
[0007]根据本专利技术一个实施例,所述全局剪枝率目标包括参数量剪枝目标和/或运算量剪枝目标。
[0008]根据本专利技术一个实施例,根据所述全局剪枝率目标进行随机初始化,包括:随机生成剪枝率列表,其中,所述剪枝率列表的长度根据所述目标网络模型的剪枝层数确定;将所述剪枝率列表输入到所述目标网络模型,以判断所述剪枝率列表是否满足所述全局剪枝率目标;根据满足所述全局剪枝率目标的剪枝率列表生成所述m组剪枝率列表。
[0009]根据本专利技术一个实施例,采用 Gamma 函数进行随机初始化,其中,所述Gamma 函数的均值为所述参数量剪枝目标和所述运算量剪枝目标中的最大值。
[0010]根据本专利技术一个实施例,在对所述m组剪枝率列表进行性能评估之前,所述方法还包括:根据所述全局剪枝率目标进行随机初始化,获得N组剪枝率列表,其中,N为大于1的整数;将所述N组剪枝率列表通过自适应BN算法应用于第一网络模型得到第一评估指标数据,其中,所述第一网络模型为采用第一数量数据集对所述目标网络模型进行训练得到;将所述N组剪枝率列表应用于第二网络模型得到第二评估指标数据,其中,所述第二网络模型为采用第二数量数据集对所述目标网络模型进行训练得到,所述第二数量数据集大于所述第一数量数据集;计算所述第一评估指标数据和所述第二评估指标数据之间的相关系数,以便根据所述相关系数将相关性最强的评估指标作为所述m组剪枝率列表的性能评估指标。
[0011]根据本专利技术一个实施例,所述相关系数包括Pearson相关系数和Kendall相关系数,其中,所述Pearson相关系数用于衡量所述第一评估指标数据和所述第二评估指标数据之间的线性相关性,所述Kendall相关系数用于衡量所述第一评估指标数据和所述第二评估指标数据之间的同序性。
[0012]根据本专利技术一个实施例,采用遗传算法对所述s组剪枝率列表进行多次迭代更新,包括:在所述s组剪枝率列表中随机挑选两组剪枝率列表进行k次交叉操作,得到k组交叉后的剪枝率列表,并在所述s组剪枝率列表中随机挑选一组剪枝率列表进行k次变异操作,得到k组变异后的剪枝率列表,k为大于等于1的整数;将所述s组剪枝率列表、所述k组交叉后的剪枝率列表和所述k组变异后的剪枝率列表相加得到s+2k组剪枝率列表;对所述s+2k组剪枝率列表进行性能评估,并根据评估分数对所述s+2k组剪枝率进行排序,以更新所述s组剪枝率列表,直至更新次数达到预设次数时,将最后一次更新的s组剪枝率列表中评估分数最高组作为所述最优剪枝率列表。
[0013]根据本专利技术一个实施例,通过下式对两组剪枝率列表a和b进行交叉操作:,其中,p
交叉
为交叉后的剪枝率列表,a和b分别表示两种剪枝率列表,a

和b

分别表示a和b对应的交叉率列表,所述a

和b

采用高斯函数随机初始化生成。
[0014]根据本专利技术一个实施例,通过下式对剪枝率列表进行变异操作:,其中,p
变异
为变异后的剪枝率列表,p为剪枝率列表,β为变异比率,,δ表示一个取值范围为(0,1)列表,所述列表的长度与剪枝率列表的长度相同,所述δ通过高斯函数随机初始化得到,η表示变异强度。
[0015]根据本专利技术实施例的基于遗传算法的自动搜索剪枝方法,根据目标网络模型的全局剪枝率目标搜索剪枝率列表,以及对搜索的剪枝率列表进行性能评估,使用遗传算法通过对性能评估得到的剪枝率列表进行迭代优化,获得最优剪枝率列表,该方法对硬件环境没有较高的要求,适用于各类应用场景,且通过引入遗传算法的思想,提高了搜索最优剪枝率列表的效率,节约了硬件资源和人力成本。
[0016]为达到上述目的,本专利技术第二方面实施例提出了一种计算机可读存储介质,所述计算机程序被处理器执行时,实现根据本专利技术第一方面实施例所述的基于遗传算法的自动搜索剪枝方法。
[0017]本专利技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。
附图说明
[0018]图1是根据本专利技术一个实施例的基于遗传算法的自动搜索剪枝方法的流程图;图2是根据本专利技术第一个具体实施例的基于遗传算法的自动搜索剪枝方法的流程图;图3是根据本专利技术第二个具体实施例的基于遗传算法的自动搜索剪枝方法的流程图;图4是根据本专利技术第三个具体实施例的基于遗传算法的自动搜索剪枝方法的流程图。
具体实施方式
[0019]下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。
[0020]下面参考附图1

4描述本专利技术实施例的基于遗传算法的自动搜索剪枝方法和计算机可读存储介质。
[0021]图1是根据本专利技术本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于遗传算法的自动搜索剪枝方法,其特征在于,所述方法包括:确定目标网络模型的全局剪枝率目标,并根据所述全局剪枝率目标进行随机初始化,获得m组剪枝率列表,其中,m为大于1的整数;对所述m组剪枝率列表进行性能评估,并根据评估分数进行排序,以确定s组剪枝率列表,其中,s为小于等于m的整数;采用遗传算法对所述s组剪枝率列表进行多次迭代更新,获得最优剪枝率列表;将所述最优剪枝率列表应用于所述目标网络模型,以对所述目标网络模型进行参数优化。2.根据权利要求1所述的基于遗传算法的自动搜索剪枝方法,其特征在于,所述全局剪枝率目标包括参数量剪枝目标和/或运算量剪枝目标。3.根据权利要求2所述的基于遗传算法的自动搜索剪枝方法,其特征在于,根据所述全局剪枝率目标进行随机初始化,包括:随机生成剪枝率列表,其中,所述剪枝率列表的长度根据所述目标网络模型的剪枝层数确定;将所述剪枝率列表输入到所述目标网络模型,以判断所述剪枝率列表是否满足所述全局剪枝率目标;根据满足所述全局剪枝率目标的剪枝率列表生成所述m组剪枝率列表。4.根据权利要求2所述的基于遗传算法的自动搜索剪枝方法,其特征在于,采用 Gamma 函数进行随机初始化,其中,所述Gamma 函数的均值为所述参数量剪枝目标和所述运算量剪枝目标中的最大值。5.根据权利要求1

4中任一项所述的基于遗传算法的自动搜索剪枝方法,其特征在于,在对所述m组剪枝率列表进行性能评估之前,所述方法还包括:根据所述全局剪枝率目标进行随机初始化,获得N组剪枝率列表,其中,N为大于1的整数;将所述N组剪枝率列表通过自适应BN算法应用于第一网络模型得到第一评估指标数据,其中,所述第一网络模型为采用第一数量数据集对所述目标网络模型进行训练得到;将所述N组剪枝率列表应用于第二网络模型得到第二评估指标数据,其中,所述第二网络模型为采用第二数量数据集对所述目标网络模型进行训练得到,所述第二数量数据集大于所述第一数量数据集;计算所述第一评估指标数据和所述第二评估指标数据之间的相关系数,以便根据所述相关系数将相关性最强的评估指标作为所述m组剪枝率列表的性能评估指标。6.根据权利要求5所述的基于遗传算法的自动搜...

【专利技术属性】
技术研发人员:王晓芸谢琦李乐乐刘海峰王子磊
申请(专利权)人:合肥中科类脑智能技术有限公司
类型:发明
国别省市:

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

1