[发明专利]一种神经网络模型压缩方法及装置在审
申请号: | 202010306190.5 | 申请日: | 2020-04-17 |
公开(公告)号: | CN111582471A | 公开(公告)日: | 2020-08-25 |
发明(设计)人: | 方济生 | 申请(专利权)人: | 中科物栖(北京)科技有限责任公司 |
主分类号: | G06N3/08 | 分类号: | G06N3/08;G06N3/04 |
代理公司: | 北京和信华成知识产权代理事务所(普通合伙) 11390 | 代理人: | 胡剑辉 |
地址: | 100086 北京市海淀区科学院南路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 神经网络 模型 压缩 方法 装置 | ||
本发明实施例涉及一种神经网络模型压缩方法及装置,所述方法包括:对已训练的神经网络模型中的权重和激活值进行量化;确定量化后的神经网络模型中每一层的位剪枝强度;针对所述量化后的神经网络模型的每一层,基于该层的位剪枝强度对该层中的权重进行剪枝处理;对剪枝处理后的神经网络模型进行重训练。由此,可以实现充分地降低神经网络模型的位冗余,进一步则可以使得神经网络模型在位串行加速器上具有良好的性能表现。
技术领域
本发明实施例涉及神经网络技术领域,尤其涉及一种神经网络模型压缩方法及装置。
背景技术
目前,神经网络在计算机视觉、语音处理等领域已经取得了突破性的进展,因而成为现代人工智能应用的基础。随着物联网技术的发展,越来越多的深度神经网络模型需要部署到端设备或者边缘设备上以满足各式各样的需求,例如人脸识别、物流自动分解等。而随着神经网络模型的层数越来越多,神经网络模型权重的数量也随之增长,再加之受限于端设备或者边缘设备的性能和功耗,因此,各种的加速器技术应用而生。
其中,位串行加速器相较于其他神经网络加速器,通过改进的位串行乘法部件可以跳过8bit中位为0的运算,而只保留位为1的运算,由此可以实现性能的提升。同时对于相同的神经网络结构而言,权重二进制中1的占比越低,位串行加速器则能够跳过更多的冗余计算,也就能够更有效的实现性能的提升,因此,对神经网络模型压缩(也可称为去冗余)以提高权值位稀疏度(即提高权重二进制中0的比例)具有重要意义。
发明内容
鉴于此,为解决上述技术问题或部分技术问题,本发明实施例提供一种神经网络模型压缩方法及装置。
第一方面,本发明实施例提供一种神经网络模型压缩方法,所述方法包括:
对已训练的神经网络模型中的权重和激活值进行量化;
确定量化后的神经网络模型中每一层的位剪枝强度;
针对所述量化后的神经网络模型的每一层,基于该层的位剪枝强度对该层中的权重进行剪枝处理;
对剪枝处理后的神经网络模型进行重训练。
在一个可能的实施方式中,所述对已训练的神经网络模型中的权重和激活值进行量化,包括:
依据设定的量化位宽对已训练的神经网络模型中的权重和激活值进行量化。
在一个可能的实施方式中,所述确定量化后的神经网络模型中每一层的位剪枝强度,包括:
利用启发式算法对量化后的神经网络模型中每一层的冗余度进行测试;
依据测试结果确定量化后的神经网络模型中每一层的位剪枝强度。
在一个可能的实施方式中,所述对剪枝处理后的神经网络模型进行重训练,包括:
利用改进的梯度下降算法对剪枝处理后的神经网络模型进行重训练,所述改进的随机梯度下降算法是指:利用直通梯度估计法确定下降梯度并判断使用所述下降梯度更新量化后的权重是否能够满足设定条件,如果是,则使用所述下降梯度更新量化后的权重;如果否,则不对所述量化后的权重进行更新。
在一个可能的实施方式中,所述方法还包括:
将重训练后的神经网络模型部署到位串行加速器上。
第二方面,本发明实施例提供一种神经网络模型压缩装置,所述装置包括:
量化模块,用于对已训练的神经网络模型中的权重和激活值进行量化;
确定模块,用于确定量化后的神经网络模型中每一层的位剪枝强度;
剪枝模块,用于针对所述量化后的神经网络模型的每一层,基于该层的位剪枝强度对该层中的权重进行剪枝处理;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科物栖(北京)科技有限责任公司,未经中科物栖(北京)科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010306190.5/2.html,转载请声明来源钻瓜专利网。