当前位置: 首页 > 专利查询>清华大学专利>正文

神经网络的权值的量化方法、量化装置及存储介质制造方法及图纸

技术编号:27937655 阅读:33 留言:0更新日期:2021-04-02 14:18
一种用于神经网络的权值的量化方法、量化装置及存储介质。神经网络基于交叉阵列模拟存内计算系统实现,量化方法包括:获取权值的分布特性;以及根据权值的分布特性,确定用于量化权值的初始量化参数,以减小量化权值的量化误差。本公开的实施例所提供的量化方法不预先限定所使用的量化方法,而是根据权值的分布特性来确定用于量化权值的量化参数,以减小量化误差,从而使得在相同的映射开销下,神经网络的模型效果更好;另外,在相同的神经网络的模型效果下,映射开销更小。

【技术实现步骤摘要】
神经网络的权值的量化方法、量化装置及存储介质
本公开的实施例涉及一种用于神经网络的权值的量化方法、量化装置及存储介质。
技术介绍
神经网络模型广泛应用于计算机视觉、语音识别、自然语言处理、强化学习等领域。但是,神经网络模型具有较高的复杂度,从而很难应用于计算速度和功率非常有限的边沿设备(例如,手机、智能传感器、可穿戴设备等)。一种基于交叉阵列模拟存内计算(Crossbar-enabledanalogcomputing-in-memory,CACIM)系统实现的神经网络可以降低神经网络模型的复杂度,使得神经网络模型可以应用于边沿设备。具体地,CACIM系统包括计算存储单元,可以在数据存储的地方进行数据计算,从而可以节省数据搬运带来的开销。此外,CACIM系统中的计算存储单元可以基于基尔霍夫电流定律和欧姆定律来完成乘加运算,从而可以减小系统的计算开销。
技术实现思路
本公开至少一实施例提供一种用于神经网络的权值的量化方法,神经网络基于交叉阵列模拟存内计算系统实现,方法包括:获取权值的分布特性;以及根据权值的分布特性,确定用于量化权值的初始量化参数,以减小量化权值的量化误差。例如,在本公开至少一实施例提供的量化方法中,根据权值的分布特性,确定用于量化权值的初始量化参数,以减小量化权值的量化误差,包括:获取候选分布库,候选分布库存储有多个分布模型;根据权值的分布特性,从候选分布库中选择与分布特性相对应的分布模型;以及根据所选的分布模型,确定用于量化权值的初始量化参数,以减小量化权值的量化误差。例如,本公开至少一实施例提供的量化方法还包括:使用初始量化参数对权值进行量化以得到经量化权值;以及使用经量化权值对神经网络进行训练,并基于训练结果更新权值以得到经更新权值。例如,本公开至少一实施例提供的量化方法还包括:使用初始量化参数对权值进行量化以得到经量化权值;向经量化权值添加噪声以得到经加噪权值;以及使用经加噪权值对神经网络进行训练,并基于训练结果更新权值以得到经更新权值。例如,在本公开至少一实施例提供的量化方法中,对神经网络进行训练,并基于训练结果更新权值以得到经更新权值,包括:对神经网络进行前向传播和反向传播;以及使用反向传播得到的梯度更新权值,以得到经更新权值。例如,本公开至少一实施例提供的量化方法还包括:基于经更新权值,更新初始量化参数。例如,在本公开至少一实施例提供的量化方法中,基于经更新权值,更新初始量化参数,包括:判断经更新权值是否与初始量化参数匹配,如果匹配,则不更新初始量化参数,如果不匹配,则更新初始量化参数。例如,在本公开至少一实施例提供的量化方法中,判断经更新权值是否与初始量化参数匹配,包括:对经更新权值和初始量化参数进行匹配运算,以得到匹配运算结果;以及将匹配运算结果与阈值范围进行比较,如果匹配运算结果在阈值范围内,则判断经更新权值与初始量化参数匹配;如果匹配运算结果不在阈值范围内,则判断经更新权值与初始量化参数不匹配。本公开至少一实施例还提供一种用于神经网络的权值的量化装置,神经网络基于交叉阵列模拟存内计算系统实现,装置包括第一单元和第二单元,第一单元被配置为获取权值的分布特性;第二单元被配置为根据权值的分布特性,确定用于量化权值的初始量化参数,以减小量化权值的量化误差。例如,本公开至少一实施例提供的量化装置还包括第三单元和第四单元,第三单元被配置为使用初始量化参数对权值进行量化,以得到经量化权值;第四单元被配置为使用经量化权值,对神经网络进行训练,并基于训练结果更新权值,以得到经更新权值。例如,本公开至少一实施例提供的量化装置还包括第三单元、第四单元和第五单元,第三单元被配置为使用初始量化参数对权值进行量化,以得到经量化权值;第五单元被配置为向经量化权值添加噪声,以得到经加噪权值;第四单元被配置为使用经加噪权值,对神经网络进行训练,并基于训练结果更新权值,以得到经更新权值。例如,本公开至少一实施例提供的量化装置还包括第六单元,第六单元被配置为基于经更新权值,更新初始量化参数。例如,在本公开至少一实施例提供的量化装置中,第六单元被配置为判断经更新权值是否与初始量化参数匹配,如果匹配,则不更新初始量化参数,如果不匹配,则更新初始量化参数。本公开至少一实施例还提供一种用于神经网络的权值的量化装置,神经网络基于交叉阵列模拟存内计算系统实现,装置包括:处理器;存储器,包括一个或多个计算机程序模块;一个或多个计算机程序模块被存储在存储器中并被配置为由处理器执行,一个或多个计算机程序模块包括用于实现本公开提供的任一量化方法。本公开至少一实施例还提供一种存储介质,用于存储非暂时性计算机可读指令,当非暂时性计算机可读指令由计算机执行时可以实现本公开提供的任一量化方法。附图说明为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。图1为本公开至少一实施例提供的一种用于神经网络的权值的量化方法的流程图;图2图示了根据本公开至少一实施例的神经网络的一个示例的示意图;图3图示了神经网络的权值的概率密度分布的一个示例;图4图示了本公开至少一实施例提供的一种量化方法的流程图;图5图示了本公开至少一实施例提供的另一种量化方法的流程图;图6为本公开至少一实施例提供的一种用于神经网络的权值的量化装置的示意框图;图7为本公开至少一实施例提供的一种用于神经网络的权值的量化装置的示意框图;以及图8为本公开至少一实施例提供的一种存储介质的示意图。具体实施方式为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。下面通过几个具体的实施例对本公开进行说明。为了保持本公开的实施例的以下说明清楚且简明,可省略已知功能和已知部件的详细说明。当本公开的实施例的任一部件在一个以上的附图中出现时,该部件在每个附图中由相同的参考标号表示。利用交叉阵列模拟存内计算(Crossbar-enabledanalogcomputing-in-memory,CACIM)系统本文档来自技高网...

【技术保护点】
1.一种用于神经网络的权值的量化方法,所述神经网络基于交叉阵列模拟存内计算系统实现,所述方法包括:/n获取所述权值的分布特性;以及/n根据所述权值的分布特性,确定用于量化所述权值的初始量化参数,以减小量化所述权值的量化误差。/n

【技术特征摘要】
1.一种用于神经网络的权值的量化方法,所述神经网络基于交叉阵列模拟存内计算系统实现,所述方法包括:
获取所述权值的分布特性;以及
根据所述权值的分布特性,确定用于量化所述权值的初始量化参数,以减小量化所述权值的量化误差。


2.根据权利要求1所述的方法,其中,根据所述权值的分布特性,确定用于量化所述权值的初始量化参数,以减小量化所述权值的量化误差,包括:
获取候选分布库,所述候选分布库存储有多个分布模型;
根据所述权值的分布特性,从所述候选分布库中选择与所述分布特性相对应的分布模型;以及
根据所选的分布模型,确定用于量化所述权值的初始量化参数,以减小量化所述权值的量化误差。


3.根据权利要求1所述的方法,还包括:
使用所述初始量化参数对所述权值进行量化以得到经量化权值;以及
使用所述经量化权值对所述神经网络进行训练,并基于训练结果更新所述权值以得到经更新权值。


4.根据权利要求1所述的方法,还包括:
使用所述初始量化参数对所述权值进行量化以得到经量化权值;
向所述经量化权值添加噪声以得到经加噪权值;以及
使用所述经加噪权值对所述神经网络进行训练,并基于训练结果更新所述权值以得到经更新权值。


5.根据权利要求3或4所述的方法,其中,对所述神经网络进行训练,并基于训练结果更新所述权值以得到经更新权值,包括:
对所述神经网络进行前向传播和反向传播;以及
使用所述反向传播得到的梯度更新所述权值,以得到所述经更新权值。...

【专利技术属性】
技术研发人员:吴华强张清天代凌君
申请(专利权)人:清华大学
类型:发明
国别省市:北京;11

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

1