[发明专利]基于稀疏学习与遗传算法相结合的神经网络剪枝方法在审
申请号: | 201911348985.6 | 申请日: | 2019-12-24 |
公开(公告)号: | CN111105035A | 公开(公告)日: | 2020-05-05 |
发明(设计)人: | 李甫;石光明;汪振宇;谢雪梅 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06N3/08 | 分类号: | G06N3/08;G06N3/12 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 王品华 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 稀疏 学习 遗传 算法 相结合 神经网络 剪枝 方法 | ||
本发明公开了一种基于稀疏学习与遗传算法相结合的神经网络剪枝方法,主要解决神经网络对存储资源和计算资源消耗大的问题。其实现方案是;通过稀疏学习的方式训练神经网络,得到稀疏化的网络结构;利用遗传算法以及一种动态可调节的评价因子对训练好的神经网络中潜在的子网络进行启发式搜索,并在适应度函数的引导下自动搜索出符合需求的最佳子网络;将得到的最佳子网络进行再训练得到最终剪枝结果。本发明减少了神经网络对存储资源和计算资源消耗,保证了剪枝后网络的精度,能实现可调节剪枝,可用于神经网络的压缩。
技术领域
本发明属于计算机技术领域,主要涉及一种神经网络的剪枝方法,可用于神经网络的压缩。
背景技术
随着深度学习的发展,神经网络在科研以及工业应用领域都取得了较好的成果,但是相较于传统算法,实施神经网络需要消耗大量的存储资源和计算资源,因此神经网络在设备上使用时将产生较大的能耗,这不符合节能理念,同时也限制了神经网络在功耗有限的移动端设备上的使用。神经网络剪枝作为一种压缩神经网络的方法,通过去除神经网络中的冗余成分减少神经网络的存储消耗及计算消耗,从而达到降低运行神经网络时的功耗的目的。
目前,神经网络剪枝方法主要分为两大类,即非结构化剪枝与结构化剪枝。其中:
非结构化剪枝,是通过去除神经网络中的非重要权重达到压缩神经网络的目的,但这类方法中所去除权重的位置是无序的,因此破环了神经网络原有的数据结构,使得剪枝结果在目前的通用设备上无法获得实际效果。
结构化剪枝方法,是通过去除神经网络中的非重要通道达到压缩神经网络的目的,由于去除通道不会破坏神经网络的数据结构,因此这类方法能够很好的运用到现有计算设备上,但是结构化剪枝方法对于神经网络中冗余成分的定位不如非结构化方法精确,所以此类方法对于神经网络的压缩率较低且对神经网络的性能影响较大。
发明内容
本发明的目的在于针对上述现有技术的不足,提出一种基于稀疏学习与遗传算法相结合的神经网络剪枝方法,以提高结构化剪枝的压缩率,减少剪枝对网络性能的影响。
本发明的技术方案是:通过稀疏学习的方式训练神经网络,得到稀疏化的网络结构;利用遗传算法以及一种动态可调节的评价因子对训练好的神经网络中潜在的子网络进行启发式搜索,并在适应度函数的引导下自动搜索出符合需求的最佳子网络;将得到的最佳子网络进行再训练得到最终剪枝结果。其实现步骤包括如下:
(1)利用稀疏学习的方式训练神经网络:
(1a)将神经网络各通道中缩放因子的正则作为惩罚项添加到训练的损失函数中,得到新的损失函数fnew(x);
(1b)利用训练数据集和随机梯度下降算法训练神经网络,直到(1a)中新的损失函数收敛;
(2)利用遗传算法搜索最佳子网络:
(2a)设置最大迭代次数,设置通道压缩率为R%,计算训练后神经网络的总参数量p0和计算量c0;
(2b)设置10组权重,每组包括两个比值不同的权重;
(2c)将10组权重编码为10条二进制码,对这些二进制码进行交叉和变异操作产生若干条新的二进制码;
(2d)对(2c)中所有二进制码进行解码,将每条二进制码解码为一组权重;
(2e)对(2d)中的每组权重,利用该组权重计算一组评价因子,每组评价因子中评价因子的个数等于神经网络的通道总数,且评价因子与神经网络中的通道是一一对应的关系;
(2f)将(2e)中的每组评价因子按照从小到大的顺序重新排列,挑选排序后排名前R%的评价因子,并将其所对应的通道从神经网络中删除,从而获得每个子网络;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911348985.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种具有杂质过滤装置的耐腐蚀泵阀管道
- 下一篇:隧道非开挖生态建造方法