基于随机计算理论的贝叶斯网络推理方法技术

技术编号:23934123 阅读:58 留言:0更新日期:2020-04-25 02:31
本发明专利技术涉及推理方法,尤其是一种基于随机计算理论的贝叶斯网络推理方法。该方法简化了基于中心极限定理的高斯随机发生器的计算过程,简化了贝叶斯神经网络推理过程中的乘法运算,利用二项分布发生器得到的“0‑1”序列为数据单元,“与门”实现乘法运算操作,“0‑1”随机数序列直接参与计算,完成贝叶斯神经网络推理,从而达到了减少硬件资源、提高计算速度、降低系统功耗的目的。

Bayesian network reasoning method based on random computing theory

【技术实现步骤摘要】
基于随机计算理论的贝叶斯网络推理方法
本专利技术涉及推理方法,尤其是一种基于随机计算理论的贝叶斯网络推理方法。
技术介绍
近年来数据规模和计算能力的增长大大促进了人工智能发展,深度学习作为人工智能一个活跃分支,不断取得进步,目前工业界与学术界已经提出了很多高效的神经网络模型,不同于深度神经网络模型的确定权重值,贝叶斯神经网络参数通常符合固定的概率分布,假设权重ω符合均值为μ,方差为σ的高斯分布,在推理过程中,首先从标准正态分布中获取一个随机数h,然后利用正态分布的线型性,ω=σh+μ获得最终权值,当所有权重和偏置采样完成,得到一个实例化的网络,并进行一次前向学习得到一个学习结果,多次计算取均值。其中高斯随机数的产生是贝叶斯深度学习系统的重要部分,常用的方法为:首先生成均匀分布随机数或二项分布随机数,基于中心极限定理,得到标准正态分布的随机数,再进行相应的运算操作。在这个过程中,所有的数据均为数值型数据,运算采用传统的乘、加计算,会消耗大量的硬件资源,而且多个周期才能产生一个随机数,计算速度慢,系统功耗高,
技术实现思路
本专利技术的目的在于解决现有技术中存在的上述问题,提出了一种基于随机计算理论的贝叶斯网络推理方法,可以让“0-1”序列直接参与计算,并用“与门”代替乘法操作,减少了大量的硬件资源,具有更高的计算速度和更低的系统功耗。本专利技术的技术方案是:一种基于随机计算理论的贝叶斯网络推理方法,包括以下步骤:将网络参数即均值μ∈RM×N与标准方差σ∈RM×N转换为k位长的“0-1”序列随机数;给定新的输入向量x∈RN,将其每个元素转换为长度为k的“0-1”序列随机数,分别计算输入数据的特征矩阵β与特征向量η,其中,i=1,2,…M,j=1,2,…N;计算过程中的乘法操作采用“与门”实现,加法操作采用直接统计“1”的个数;存储输入数据的特征矩阵β与特征向量η;产生符合二项分布的k位“0-1”序列,进行M×N次随机数采样,获取不确定性矩阵H∈RM×N;利用不确定性矩阵H、特征矩阵β以及特征向量η,通过下述公式完成贝叶斯深度神经网络前向传播过程中的矩阵向量乘运算,z=〈H,β〉L其中,〈H,B〉L表示不确定性矩阵H与特征矩阵β按行进行内积计算,确定性矩阵H与特征矩阵β逐行用乘法计算后,再用加法计算,乘法采用“与门”实现,加法采用直接统计“1”的个数,其计算结果为z∈RM,其中每一行为“1”的个数,y为矩阵向量乘运算结果;重复上述步骤得到T个输出向量y1,y2,…,yT,并获取最终输出本专利技术中,通过下述公式分别计算特征矩阵β∈RM×N与特征向量η∈RM,βij=σijxj根据T个输出向量y1,y2,…,yT,按照以下公式获取最终输出本专利技术的有益效果:该方法简化了基于中心极限定理的高斯随机发生器的计算过程,简化了贝叶斯神经网络推理过程中的乘法运算,利用二项分布发生器得到的“0-1”序列为数据单元,“与门”实现乘法运算操作,“0-1”随机数序列直接参与计算,完成贝叶斯神经网络推理,从而达到了减少硬件资源、提高计算速度、降低系统功耗的目的。附图说明图1是本专利技术的原理图。具体实施方式下面结合附图和实施例对本专利技术作进一步的说明。根据棣莫佛-拉普拉斯定理,当n足够大时,由二项分布也可以得到正态分布随机数,二项分布是长度为n的“0-1”序列,在后续的计算中,不再采用传统的运算操作,而是采用基于随机计算理论的方法,直接让“0-1”序列参与计算。随机计算的计算对象为比特流表示的概率数,所表示数值大小只和比特流的长度以及‘1’的个数有关,与位置无关,例如4/8,可以用8位的比特流01101010表示,这样在实现乘法操作时,只需一个与门即可。如图1所示,本专利技术所述的基于随机计算理论的贝叶斯网络推理方法包括以下步骤:第一步,将网络参数即均值μ∈RM×N与标准方差σ∈RM×N转换为k位长的“0-1”序列随机数。第二步,给定新的输入向量x∈RN,将其每个元素转换为长度为k的“0-1”序列随机数,按公式(1)(2)分别计算输入数据的特征矩阵β与特征向量η。βij=σijxj(1)其中,i=1,2,…M,j=1,2,…N,所有的乘法操作采用“与门”实现,加法操作采用直接统计“1”的个数。第三步,存储输入数据的特征矩阵β与特征向量η。第四步,产生符合二项分布的k位“0-1”序列,进行相应次数的随机数采样,获取不确定性矩阵H∈RM×N。第五步,利用不确定性矩阵H、特征矩阵β以及特征向量η,按公式(3)(4)完成贝叶斯深度神经网络前向传播过程中的矩阵向量乘运算。z=<H,β>L(3)其中,z=<H,β>L表示不确定性矩阵H与特征矩阵β按行进行内积计算,即确定性矩阵H与特征矩阵β逐行用乘法计算后,再用加法计算,其中乘法采用“与门”实现,加法采用直接统计“1”的个数,其计算结果为z∈RM,其中每一行为“1”的个数。y为矩阵向量乘运算结果。第六步,重复上述第四步和第五步T次,可以得到T个输出向量y1,y2,…,yT。第七步,根据T个输出向量y1,y2,…,yT,按照公式(5)获取最终输出综上所述,本方法基于随机计算理论,利用二项分布产生的“0-1”序列,直接参与后续计算,用“与门”代替传统的二进制乘法;用累加计算序列中“1”的个数,代替传统的加法操作,并经过多次采样计算,完成贝叶斯神经网络的推理。本文档来自技高网...

【技术保护点】
1.一种基于随机计算理论的贝叶斯网络推理方法,其特征在于包括以下步骤:/n将网络参数即均值μ∈R

【技术特征摘要】
1.一种基于随机计算理论的贝叶斯网络推理方法,其特征在于包括以下步骤:
将网络参数即均值μ∈RM×N与标准方差σ∈RM×N转换为k位长的“0-1”序列随机数;
给定新的输入向量x∈RN,将其每个元素转换为长度为k的“0-1”序列随机数,分别计算输入数据的特征矩阵β与特征向量η,其中,i=1,2,…M,j=1,2,…N;计算过程中的乘法操作采用“与门”实现,加法操作采用直接统计“1”的个数;
存储输入数据的特征矩阵β与特征向量η;
产生符合二项分布的k位“0-1”序列,进行M×N次随机数采样,获取不确定性矩阵H∈RM×N;
利用不确定性矩阵H、特征矩阵β以及特征向量η,通过下述公式完成贝叶斯深度神经网络前向传播过程中的矩阵向量乘运算,
z=<H,β>L

【专利技术属性】
技术研发人员:贾小涛杨建磊成镇赵巍胜
申请(专利权)人:北京航空航天大学青岛研究院
类型:发明
国别省市:山东;37

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

1