网络量化方法、推理方法以及网络量化装置制造方法及图纸

技术编号:28302967 阅读:18 留言:0更新日期:2021-04-30 16:33
一种对神经网络(14)进行量化的网络量化方法,包括:数据库构建步骤(S20),对通过将多个测试数据集(12)输入到神经网络(14)的情况下而得到的神经网络(14)所使用的张量的统计信息数据库(18)进行构建;参数生成步骤(S30),通过对张量的值进行量化,从而生成量化参数集(22);以及网络构建步骤(S40),使用量化参数集(22),对神经网络(14)进行量化,在参数生成步骤(S30),根据统计信息数据库(18),将包括张量的值之中的频度成为极大的值的高频度区域中的量化步长间隔,设定为比低频度区域中的量化步长间隔窄,该低频度区域是包括频度比高频度区域低、且频度不为零的张量的值的区域。

【技术实现步骤摘要】
【国外来华专利技术】网络量化方法、推理方法以及网络量化装置
本公开涉及网络量化方法、推理方法以及网络量化装置。
技术介绍
以往利用神经网络等网络进行机器学习。在此,将数值数据作为输入,执行一些运算来得到数值数据的输出值的模型,将这种模型称为网络。在将网络安装到计算机等硬件时,为了抑制硬件成本,则希望在保持安装后的推理精度与浮点精度为同等程度的基础上,来构建运算精度更低的网络。例如,在安装以浮点(floatingpoint)精度来进行所有的计算的网络的情况下,由于硬件成本增大,因此要求实现在保持推理精度的状态下,以定点(fixedpoint)精度来进行计算的网络。以下将浮点(floatingpoint)精度的网络也称为量化前网络,将定点(fixedpoint)精度的网络也称为量化网络。在此,将如下的处理称为量化,即,将能够连续地表现几乎任意的值的浮点的值,划分为规定的分区来进行编码的处理。更一般而言,量化被定义为缩小网络中所使用的数值的位数或范围的处理。在以由量化而限定的比特数来表现实数时,会有输入数据的分布与设想的分布不同的情况。在这种情况下所出现的问题是,量化误差增大,从而给机器学习的速度带来不良的影响,而且还会给学习后的推理的精度带来不良的影响。作为解决这种问题的方法,例如有已知的专利文献1所记载的方法。在专利文献1记载的方法中,针对卷积神经网络的各层内的权重以及数据的每一个分别定义定点格式。以浮点数来开始卷积神经网络的机器学习,为了估计输入数据的分布而进行解析。接着,根据输入数据的分布,来决定表示输入数据值的最佳化数值格式,利用该格式来进行量化。这样,在专利文献1中,先调查输入数据的分布,选择适于该分布的数值格式,试图解决上述问题。(现有技术文献)(专利文献)专利文献1日本特开2018-10618号公报
技术实现思路
专利技术要解决的课题在专利文献1记载的方法中,考虑使用的数据的范围,针对能够包容该数据的范围,分配限定的比特数。在此,若在该范围内存在数据的不均匀,则几乎不存在数据的区间中的数据也被分配比特数。这意味着,针对比特数而言,具有意义的数据的量变少。因此,量化的精度降低。于是,本公开为了解决上述这种问题,目的在于提供一种能够构建精度良好的量化网络的网络量化方法等。解决课题所采用的手段为了达成上述目的,本公开的一个形态所涉及的网络量化方法对神经网络进行量化,所述网络量化方法包括:准备步骤,准备所述神经网络;数据库构建步骤,对通过将多个测试数据集输入到所述神经网络的情况下而得到的所述神经网络所使用的张量的统计信息数据库进行构建;参数生成步骤,根据所述统计信息数据库和所述神经网络,对所述张量的值进行量化,从而生成量化参数集;以及网络构建步骤,使用所述量化参数集,对所述神经网络进行量化,从而构建量化网络,在所述参数生成步骤,根据所述统计信息数据库,将高频度区域中的量化步长间隔,设定为比低频度区域中的量化步长间隔窄,所述高频度区域是包括所述张量的值之中的频度成为极大的值的区域,所述低频度区域是包括频度比所述高频度区域低、且频度不为零的所述张量的值的区域。为了达成上述目的,本公开的一个形态所涉及的网络量化方法对神经网络进行量化,所述网络量化方法包括:准备步骤,准备所述神经网络;数据库构建步骤,对通过将多个测试数据集输入到所述神经网络的情况下而得到的所述神经网络所使用的张量的统计信息数据库进行构建;参数生成步骤,根据所述统计信息数据库和所述神经网络,对所述张量的值进行量化,从而生成量化参数集;以及网络构建步骤,使用所述量化参数集,对所述神经网络进行量化,从而构建量化网络,在所述参数生成步骤,根据所述统计信息数据库,决定所述张量的值之中的频度不为零的量化区域、以及频度不为零且不与所述量化区域重叠的非量化区域,所述量化区域中的所述张量的值被量化,所述非量化区域中的所述张量的值不被量化。为了达成上述目的,本公开的一个形态所涉及的网络量化方法对神经网络进行量化,所述网络量化方法包括:准备步骤,准备所述神经网络;数据库构建步骤,对通过将多个测试数据集输入到所述神经网络的情况下而得到的所述神经网络所使用的张量的统计信息数据库进行构建;参数生成步骤,根据所述统计信息数据库和所述神经网络,对所述张量的值进行量化,从而生成量化参数集;以及网络构建步骤,使用所述量化参数集,对所述神经网络进行量化,从而构建量化网络,在所述参数生成步骤,根据所述统计信息数据库,将所述张量的值量化为-1、0、+1这三值。为了达成上述目的,本公开的一个形态所涉及的网络量化方法所述网络量化方法包括:准备步骤,准备所述神经网络;数据库构建步骤,对通过将多个测试数据集输入到所述神经网络的情况下而得到的所述神经网络所使用的张量的统计信息数据库进行构建;参数生成步骤,根据所述统计信息数据库和所述神经网络,对所述张量的值进行量化,从而生成量化参数集;以及网络构建步骤,使用所述量化参数集,对所述神经网络进行量化,从而构建量化网络,在所述参数生成步骤,根据所述统计信息数据库,将所述张量的值量化为-1以及+1这二值。为了达成上述目的,本公开的一个形态所涉及的推理方法包括:网络量化方法;类型选择步骤,选择所述第一类型以及所述第二类型之中的、被输入到所述量化网络的输入数据被分类的类型;网络选择步骤,根据所述第一类型以及所述第二类型之中的、在所述类型选择步骤被选择的类型,对所述第一网络子集以及所述第二网络子集的一方进行选择;以及输入步骤,将所述输入数据输入到,在所述网络选择步骤被选择的所述第一网络子集以及所述第二网络子集的一方,所述网络量化方法进一步包括分类步骤,在该分类步骤,根据所述多个测试数据集的每一个的统计信息,将所述多个测试数据集的至少一部分分类为第一类型以及第二类型,所述统计信息数据库包括与所述第一类型以及所述第二类型分别对应的第一数据库子集以及第二数据库子集,所述量化参数集包括与所述第一数据库子集以及所述第二数据库子集分别对应的第一参数子集以及第二参数子集,所述量化网络包括分别使用所述第一参数子集以及所述第二参数子集来对所述神经网络进行量化而构建的第一网络子集以及第二网络子集。为了达成上述目的,本公开的一个形态所涉及的网络量化装置对神经网络进行量化,所述网络量化装置包括:数据库构建部,对通过将多个测试数据集输入到所述神经网络的情况下而得到的所述神经网络所使用的张量的统计信息数据库进行构建;参数生成部,根据所述统计信息数据库和所述神经网络,对所述张量的值进行量化,从而生成量化参数集;以及网络构建部,使用所述量化参数集,对所述神经网络进行量化,从而构建量化网络,所述参数生成部,根据所述统计信息数据库,将高频度区域中的量化步长间隔,设定为比低频度区域中的量化步长间隔窄,所述高频度区域是包括所述张量的值之中的频度成为极大的值的区域,所述低频度区域是包括频度比所述高频度区域低、且频度不为零的所述张量的值的区域。为了达成上述目的,本公开的一个形态所涉及的网络量化装置对神经网络进本文档来自技高网
...

【技术保护点】
1.一种网络量化方法,对神经网络进行量化,/n所述网络量化方法包括:/n准备步骤,准备所述神经网络;/n数据库构建步骤,对通过将多个测试数据集输入到所述神经网络的情况下而得到的所述神经网络所使用的张量的统计信息数据库进行构建;/n参数生成步骤,根据所述统计信息数据库和所述神经网络,对所述张量的值进行量化,从而生成量化参数集;以及/n网络构建步骤,使用所述量化参数集,对所述神经网络进行量化,从而构建量化网络,/n在所述参数生成步骤,根据所述统计信息数据库,将高频度区域中的量化步长间隔,设定为比低频度区域中的量化步长间隔窄,所述高频度区域是包括所述张量的值之中的频度成为极大的值的区域,所述低频度区域是包括频度比所述高频度区域低、且频度不为零的所述张量的值的区域。/n

【技术特征摘要】
【国外来华专利技术】1.一种网络量化方法,对神经网络进行量化,
所述网络量化方法包括:
准备步骤,准备所述神经网络;
数据库构建步骤,对通过将多个测试数据集输入到所述神经网络的情况下而得到的所述神经网络所使用的张量的统计信息数据库进行构建;
参数生成步骤,根据所述统计信息数据库和所述神经网络,对所述张量的值进行量化,从而生成量化参数集;以及
网络构建步骤,使用所述量化参数集,对所述神经网络进行量化,从而构建量化网络,
在所述参数生成步骤,根据所述统计信息数据库,将高频度区域中的量化步长间隔,设定为比低频度区域中的量化步长间隔窄,所述高频度区域是包括所述张量的值之中的频度成为极大的值的区域,所述低频度区域是包括频度比所述高频度区域低、且频度不为零的所述张量的值的区域。


2.一种网络量化方法,对神经网络进行量化,
所述网络量化方法包括:
准备步骤,准备所述神经网络;
数据库构建步骤,对通过将多个测试数据集输入到所述神经网络的情况下而得到的所述神经网络所使用的张量的统计信息数据库进行构建;
参数生成步骤,根据所述统计信息数据库和所述神经网络,对所述张量的值进行量化,从而生成量化参数集;以及
网络构建步骤,使用所述量化参数集,对所述神经网络进行量化,从而构建量化网络,
在所述参数生成步骤,根据所述统计信息数据库,决定所述张量的值之中的频度不为零的量化区域、以及频度不为零且不与所述量化区域重叠的非量化区域,所述量化区域中的所述张量的值被量化,所述非量化区域中的所述张量的值不被量化。


3.一种网络量化方法,对神经网络进行量化,
所述网络量化方法包括:
准备步骤,准备所述神经网络;
数据库构建步骤,对通过将多个测试数据集输入到所述神经网络的情况下而得到的所述神经网络所使用的张量的统计信息数据库进行构建;
参数生成步骤,根据所述统计信息数据库和所述神经网络,对所述张量的值进行量化,从而生成量化参数集;以及
网络构建步骤,使用所述量化参数集,对所述神经网络进行量化,从而构建量化网络,
在所述参数生成步骤,根据所述统计信息数据库,将所述张量的值量化为-1、0、+1这三值。


4.一种网络量化方法,对神经网络进行量化,
所述网络量化方法包括:
准备步骤,准备所述神经网络;
数据库构建步骤,对通过将多个测试数据集输入到所述神经网络的情况下而得到的所述神经网络所使用的张量的统计信息数据库进行构建;
参数生成步骤,根据所述统计信息数据库和所述神经网络,对所述张量的值进行量化,从而生成量化参数集;以及
网络构建步骤,使用所述量化参数集,对所述神经网络进行量化,从而构建量化网络,
在所述参数生成步骤,根据所述统计信息数据库,将所述张量的值量化为-1以及+1这二值。


5.如权利要求3或4所述的网络量化方法,
在所述参数生成步骤,根据所述统计信息数据库,作为量化参数而决定正阈值以及负阈值,所述正阈值是被量化为+1的最小的数值,所述负阈值是被量化为-1的最大的数值。


6.如权利要求5所述的网络量化方法,
在所述参数生成步骤,根据所述统计信息数据库,作为量化参数而决定正标度以及负标度,该正标度以及负标度是分别与+1以及-1对应的系数。


7.如权利要求2所述的网络量化方法,
所述量化区域包括所述张量的值之中的频度成为极大的值,所述非量化区域包括所述张量的值之中的频度比所述量化区域低的值。


8.如权利要求2所述的网络量化方法,
在所述参数生成步骤,按照对所述张量的值的分布与被量化的所述张量的值的分布的不同进行测定的尺度,来决定所述量化区域以及所述非量化区域。


9.如权利要求1所述的网络量化方法,
所述高频度区域包括第一区域以及第二区域,所述第一区域以及所述第二区域分别包括所述张量的值之中的频度成为极大的值,
所述低频度区域包括第三区域,该第三区域包括所述张量的值之中的位于所述第一区域与所述第二区域之间的值。


10.如权利要求1或...

【专利技术属性】
技术研发人员:笹川幸宏
申请(专利权)人:株式会社索思未来
类型:发明
国别省市:日本;JP

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1