[发明专利]一种神经网络的非均匀量化方法有效
申请号: | 202011616502.9 | 申请日: | 2020-12-30 |
公开(公告)号: | CN112712164B | 公开(公告)日: | 2022-08-26 |
发明(设计)人: | 黄宇扬;冯建豪;陈家麒 | 申请(专利权)人: | 上海熠知电子科技有限公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/08;G06C3/00;G06F17/15 |
代理公司: | 上海智晟知识产权代理事务所(特殊普通合伙) 31313 | 代理人: | 张瑞莹;张东梅 |
地址: | 200060 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 神经网络 均匀 量化 方法 | ||
本发明公开一种神经网络的非均匀量化方法,首先,采用分段函数,将输入数据量化为第一定点数,进行储存,然后,查找第一查找表,确认第一定点数对应的第二定点数,其中第二定点数的比特数高于第一定点数,接下来,采用第二定点数进行卷积运算,得到计算结果,并查找第二查找表,将计算结果转换为第三定点数进行储存,第三定点数的数据类型与第一定点数相同。
技术领域
本发明涉及神经网络技术领域,特别涉及一种神经网络的非均匀量化方法。
背景技术
人工神经网络的应用在很多方面都取得了很大的进展,例如在模式识别、智能机器人、自动控制、预测估计、生物、医学、经济等领域已成功地解决了许多现代计算机难以解决的实际问题,表现出了良好的智能特性。
随着模型预测(predication)越来越准确,网络越来越深,神经网络消耗的计算和内存资源成为问题,尤其是在移动设备上。例如,如果部署相对较小的ResNet-50网络来分类,运行网络模型就需要3GB/s的内存带宽,在网络运行时,内存、CPU和电池会都在飞速消耗,使设备变得智能化需要付出昂贵的代价。随着神经网络的发展,大型神经网络具有越来越多的层级和数据量,这为神经网络的部署带来了巨大的挑战。
针对这些问题,一方面可通过设计更有效的网络架构,用相对较小的模型尺寸达到可接受准确度;另一方面,可通过压缩、编码等方式减小网络规模。量化是最广泛采用的压缩方法之一。
神经网络量化可以显著提高神经网络的计算效率,使得网络能够部署于资源有限的芯片或其他计算平台上。目前,最常用的神经网络量化方法是将高精度的浮点数投影为低精度量化值,例如,将32位浮点数转化为8位定点数,采用8比特数据流来保存输入、输出数据以及权重等参数,以降低带宽需求。
但是,在卷积操作时,由于使用低精度量化值会破坏神经网络中权重/激活的原始数据分布,因此,直接采用低比特数据进行计算可能会导致网络精度大幅度下降。针对这一问题,有研究提出了非均匀量化算法,虽然非均匀量化算法能更好地保持网络精度,但是现有的非均匀量化算法较为复杂,芯片难以负载其计算量,因此,在实际操作来说,并没有有效降低带宽需求,提高推理速度。
发明内容
针对现有技术中的部分和全部问题,本发明提供一种神经网络的非均匀量化方法,包括:
采用分段函数,将输入数据量化为第一定点数,进行储存;
查找第一查找表,确认所述第一定点数对应的第二定点数,其中所述第二定点数的比特数高于所述第一定点数;
采用所述第二定点数进行卷积运算,得到计算结果;以及
查找第二查找表,将所述计算结果转换为第三定点数进行储存,所述第三定点数的数据类型与所述第一定点数相同。
进一步地,所述第一定点数的数据类型为8比特定点数。
进一步地,所述第一查找表及第二查找表配置于芯片内部。
进一步地,所述分段函数的各段函数为斜率不同或相同的一次函数,所述斜率根据各段函数的上下界确定:
其中,为用于表征[ri1,ri2]范围内输入数据的第一定点数的取值范围。
进一步地,所述分段函数为:
其中,[-f1,f1]为所述输入数据r的取值范围,k为0-1之间的任意数。
进一步地,所述第一查找表的形成包括:
确认输入数据的取值范围,并将所述取值范围内的数据根据所述分段函数进行量化,得到第一数据;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海熠知电子科技有限公司,未经上海熠知电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011616502.9/2.html,转载请声明来源钻瓜专利网。