[发明专利]一种基于固定移位的8位整型全量化推理方法及装置在审
| 申请号: | 202010519588.7 | 申请日: | 2020-06-09 |
| 公开(公告)号: | CN111767984A | 公开(公告)日: | 2020-10-13 |
| 发明(设计)人: | 谢远东 | 申请(专利权)人: | 云知声智能科技股份有限公司;厦门云知芯智能科技有限公司 |
| 主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/08 |
| 代理公司: | 北京冠和权律师事务所 11399 | 代理人: | 安琪 |
| 地址: | 100000 北京市海*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 固定 移位 整型 量化 推理 方法 装置 | ||
本发明公开了一种基于固定移位的8位整型全量化推理方法及装置,方法包括:获取训练后保存的浮点型的神经网络模型;按照通道计算神经网络模型的每一层中每个通道的权重的第一动态调整值;使用KL散度算法计算每一层的激活值的第二动态调整值;将第一动态调整值和第二动态调整值由浮点型转换成定点型;根据总移位数,定点型的第一动态调整值和第二动态调整,计算每一层输入的定点目标动态调整值;将权重转换成定点权重;在进行推理的过程中,针对神经网络模型的每一层,根据定点型第二动态调整值将本层的输入转换成8位定点型,并根据定点权重和定点目标动态调整值计算得到本层的输出以作为下一层的输入;通过输出层输出8位定点型的结果数据。
技术领域
本发明涉及数据处理技术领域,更具体地,涉及一种基于固定移位的8位整型全量化推理方法及装置。
背景技术
卷积神经网络(Convolutional Neural Networks,CNNs)在图像分类、目标检测、人脸识别等领域取得了优越的成果,但由于网络结构的复杂性和计算延时,在存储资源和计算资源相对不足的嵌入式平台实现CNNs的实时前向推理,需要在控制精度损失的条件下,压缩神经网络的模型大小以及提升模型计算效率。
现有技术中,对神经网络每一层进行均匀量化,对于权重和激活值进行量化,然后进行定点乘加,达到加速效果。但是现有技术存在以下问题:
1)激活值采用均匀量化,虽然计算量小,但是量化误差很大,几乎不可用。
2)权重按层量化,对于多通道卷积层误差远大于按通道量化。
3)现有技术在推理过程中依然需要进行浮点计算,在AI Chip这种仅支持定点运算的设备上不可用。
发明内容
鉴于上述问题,本发明提出了一种基于固定移位的8位整型全量化推理方法和相应的装置,其可以按通道全定点量化大大减小浮点转换到定点的误差,并且在推理过程中不涉及到浮点操作,全定点移位操作,不但可验证模型全量化后结果误差是否符合AI Chip需求,而且对于硬件更加友好。
根据本发明实施例的第一方面,提供一种基于固定移位的8位整型全量化推理方法,包括:
获取训练后保存的浮点型的神经网络模型;
按照通道计算所述神经网络模型的每一层中每个通道的权重的第一动态调整值;
使用KL散度算法计算所述神经网络模型的每一层的激活值的第二动态调整值;
将所述神经网络模型的每一层的第一动态调整值和所述第二动态调整值由浮点型转换成定点型;
确定总移位数,并根据所述总移位数,定点型的第一动态调整值和第二动态调整,计算所述每一层输入的定点目标动态调整值;
根据所述定点型的第一动态调整值将所述权重转换成定点权重;
在进行推理的过程中,针对所述神经网络模型的每一层,根据所述定点型第二动态调整值将本层的输入转换成8位定点型,并根据所述定点权重和所述定点目标动态调整值计算得到本层的输出以作为下一层的输入;
通过输出层输出8位定点型的结果数据。
在一个实施例中,优选地,使用KL散度算法计算所述神经网络模型的每一层的激活值的第二动态调整值,包括:
使用KL散度算法拟合出最小采样间隔的阈值;
根据所述阈值计算所述激活值的第二动态调整值。
在一个实施例中,优选地,采用第一公式将所述第一动态调整值由浮点型转换成定点型,所述第一公式为:
int(scaleweight*2M)
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于云知声智能科技股份有限公司;厦门云知芯智能科技有限公司,未经云知声智能科技股份有限公司;厦门云知芯智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010519588.7/2.html,转载请声明来源钻瓜专利网。





