[发明专利]神经网络模型量化方法、系统、装置及计算机可读介质在审
申请号: | 202111190372.1 | 申请日: | 2021-10-13 |
公开(公告)号: | CN114021691A | 公开(公告)日: | 2022-02-08 |
发明(设计)人: | 陈其宾;李锐;张晖 | 申请(专利权)人: | 山东浪潮科学研究院有限公司 |
主分类号: | G06N3/02 | 分类号: | G06N3/02;G06N3/08;G06N5/04 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 潘悦梅 |
地址: | 250100 山东省济*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 神经网络 模型 量化 方法 系统 装置 计算机 可读 介质 | ||
1.神经网络模型量化方法,其特征在于在神经网络模型进行推理之前,通过最小化方程计算神经网络模型每层的激活值量化因子,所述方法包括如下步骤:
构建神经网络模型,并对神经网络模型进行训练,得到浮点类型的神经网络模型作为目标模型;
对于目标模型,通过计算模型权重绝对值最大值,基于量化范围计算模型权重量化因子;
对于目标模型的每一层,通过最小化均方误差,计算目标模型每层的激活值量化因子;
对于目标模型的每一层,通过量化后的定点类型的权重和激活值进行模型推理,并将推理结果逆量化为int32数据类型;
对于目标模型的每一层,通过非对称量化的方式对每个算子进行量化,将浮点类型模型权重量化成int8数据类型,并将激活值量化成uint8数据类型,得到最终量化后模型。
2.根据权利要求1所述的神经网络模型量化方法,其特征在于对于目标模型,模型权重量化为int8类型,量化范围为[-128,127]。
3.根据权利要求1或2任一项所述的神经网络模型量化方法,其特征在于获取测试数据集,基于测试数据集计算目标模型每层量化后输出以及不量化后输出的均方误差,通过最小化均方误差得到激活值量化因子。
4.根据权利要求3所述的神经网络模型量化方法,其特征在于所述均方误差公式为:
其中,yi表示不量化输出,表示量化后输出。
5.神经网络模型量化系统,其特征在于用于在神经网络模型进行推理之前,通过最小化方程计算神经网络模型每层的激活值量化因子,所述系统包括:
构建训练模块,所述构建训练模块用于构建神经网络模型,并对神经网络模型进行训练,得到浮点类型的神经网络模型作为目标模型;
量化因子计算模块,所述量化因子计算模块应用于目标模型,用于通过计算模型权重绝对值最大值,基于量化范围计算模型权重量化因子;
激活值量化因子计算模块,所述激活值量化因子计算模块应用于目标模型的每一层,用于通过最小化均方误差,计算目标模型每层的激活值量化因子;
推理逆量化模块,所述推理逆量化模块应用于目标模型的每一层,用于通过量化后的定点类型的权重和激活值进行模型推理,并将推理结果逆量化为int32数据类型;
最终量化模块,所述最终量化模块应用于目标模型的每一层,用于通过非对称量化的方式对每个算子进行量化,将浮点类型模型权重量化成int8数据类型,并将激活值量化成uint8数据类型,得到最终量化后模型。
6.根据权利要求5所述的神经网络模型量化系统,其特征在于对于目标模型,模型权重量化为int8类型,量化范围为[-128,127]。
7.根据权利要求5或6任一项所述的神经网络模型量化系统,其特征在于激活值量化因子计算模块用于通过如下方法计算激活值量化因子:
获取测试集数据集,计算目标模型每层量化后输出以及不量化后输出的均方误差,通过最小化均方误差得到激活值量化因子。
8.根据权利要求7所述的神经网络模型量化系统,其特征在于所述均方误差公式为:
其中,yi表示不量化输出,表示量化后输出。
9.装置,其特征在于,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行权利要求1至4中任一所述的方法。
10.计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行权利要求1至4任一所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东浪潮科学研究院有限公司,未经山东浪潮科学研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111190372.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种吸附式气体探测器
- 下一篇:一种灵敏检测PVC篮球材料中铅的方法