基于试探搜索的贝叶斯网络结构学习方法及设备技术

技术编号:27273394 阅读:28 留言:0更新日期:2021-02-06 11:38
本发明专利技术公开了一种基于试探搜索的贝叶斯网络结构学习方法及设备。所述方法,包括:随机选取搜索中心点,并进行试探性搜索,以获取生成除搜索禁忌表以及历史最优记录表之外的多个随机样本;将搜索中心点以及多个随机样本加入搜索禁忌表,计算搜索中心点以及各个随机样本的BIC评分,以获得BIC评分最大值,并在累积搜索半径与最大BIC评分的关系曲线中标记;将关系曲线中的拐点加入历史最优记录表,并判断当前累计搜索半径是否达到结束条件,若是,结束搜索,并输出历史最优记录表中最新更新的点,否则,判断是否达到中心重置条件,若是,更新搜索中心点为上一拐点,重新开始搜索步骤,否则,继续搜索。采用本发明专利技术,可以使得平均准确率达到95.3%。率达到95.3%。率达到95.3%。

【技术实现步骤摘要】
基于试探搜索的贝叶斯网络结构学习方法及设备


[0001]本专利技术涉及人工智能领域,尤其涉及一种基于试探搜索的贝叶斯网络结构学习方法及设备。

技术介绍

[0002]贝叶斯网(BayesianNetwork,BN)是联合概率分布的一种图形化表示,由于具有结构清晰,语义明确等特点,因此成为处理不确定性知识表示和推理的一种重要理论模型。贝叶斯网在机器学习、医疗诊断、金融分析等领域有着广泛的应用,并已经取得了较大的成功。但仅由专家构建贝叶斯网通常十分困难,有时甚至是不可能的。因此,从数据中快速、准确地学习贝叶斯网络结构具有重要的理论意义和应用价值。相关技术中,贝叶斯网络结构学习方法在节点多、网络结构相对复杂时,容易陷入局部最优解,精确度低。

技术实现思路

[0003]本专利技术实施例提供一种基于试探搜索的贝叶斯网络结构学习方法及设备,用以解决现有技术中贝叶斯网络结构学习方法陷入局部最优解的问题。
[0004]根据本专利技术实施例的基于试探搜索的贝叶斯网络结构学习方法,包括:
[0005]步骤一、随机选取贝叶斯网络结构空间中的一个点作为搜索中心点,并初始化搜索半径、累计搜索半径;
[0006]步骤二、基于所述搜索中心点、所述搜索半径,采用随机搜索操作,生成除搜索禁忌表以及历史最优记录表之外的多个随机样本;
[0007]步骤三、将所述搜索中心点以及多个所述随机样本加入所述搜索禁忌表,计算所述搜索中心点以及各个所述随机样本的BIC评分,以获得BIC评分最大值,并在累积搜索半径与最大BIC评分的关系曲线中标记所述BIC评分最大值及其对应的搜索半径;
[0008]步骤四、将所述关系曲线中的拐点加入所述历史最优记录表,并判断当前累计搜索半径与上一拐点对应的累计搜索半径之间的差值是否大于预设的结束阈值,若是,结束搜索,并输出所述历史最优记录表中最新更新的点,否则,执行步骤五;
[0009]步骤五、判断当前累计搜索半径是否大于预设的中心重置阈值,若是,更新所述搜索中心点为上一拐点,并初始化搜索半径、累计搜索半径后重复步骤二至步骤四,否则,将所述搜索半径和所述累计搜索半径均加一后重复步骤二至步骤四。
[0010]根据本专利技术的一些实施例,所述方法还包括:
[0011]在步骤一之前,基于训练数据构建贝叶斯网络结构空间。
[0012]根据本专利技术的一些实施例,所述BIC评分根据公式1计算:
[0013][0014]其中,g表示贝叶斯网络结构空间中的点,D表示训练数据,BICg|D表示贝叶斯网络结构空间中的点的BIC评分,X
i
表示第i个节点,r
i
表示X
i
可能的取值个数,q
i
表示X
i
的父节点
取值的组合数;m
ijk
表示X
i
取第k个值、X
i
的父节点取值为第j个组合的样本个数,m
ij
表示X
i
的父节点取值为第j个组合的样本个数。
[0015]根据本专利技术的一些实施例,所述初始化搜索半径、累计搜索半径,包括:
[0016]设置所述搜索半径为一,设置所述累计搜索半径为一。
[0017]根据本专利技术的一些实施例,所述随机搜索操作包括:加边、减边、以及转边。
[0018]根据本专利技术的一些实施例,所述多个随机样本的个数根据公式2计算:
[0019][0020]其中,n表示节点数。
[0021]根据本专利技术的一些实施例,所述预设的结束阈值为10。
[0022]根据本专利技术的一些实施例,所述预设的中心重置阈值为3。
[0023]根据本专利技术实施例的基于试探搜索的贝叶斯网络结构学习设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的基于试探搜索的贝叶斯网络结构学习方法的步骤。
[0024]本专利技术实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有信息传递的实现程序,所述程序被处理器执行时实现如上所述的基于试探搜索的贝叶斯网络结构学习方法的步骤。
[0025]采用本专利技术实施例,通过采用半径扩大的试探搜索策略,增大了搜索空间,也大大提高了达到最优解的可能性,而且还建立了搜索禁忌表和历史最优列表,增加了搜索方向性和精准性。通过大量实验验证,本专利技术实施例可以使得平均准确率达到95.3%。
[0026]上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。
附图说明
[0027]通过阅读下文实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。在附图中:
[0028]图1是本专利技术实施例的基于试探搜索的贝叶斯网络结构学习方法流程图;
[0029]图2是本专利技术实施例的基于试探搜索的贝叶斯网络结构学习方法流程图。
具体实施方式
[0030]下面将参照附图更详细地描述本专利技术的示例性实施例。虽然附图中显示了本专利技术的示例性实施例,然而应当理解,可以以各种形式实现本专利技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本专利技术,并且能够将本专利技术的范围完整的传达给本领域的技术人员。
[0031]如图1所示,根据本专利技术实施例的基于试探搜索的贝叶斯网络结构学习方法,包括:
[0032]步骤一、随机选取贝叶斯网络结构空间中的一个点作为搜索中心点,并初始化搜
索半径、累计搜索半径;
[0033]贝叶斯网络结构空间中的点均表示一个n
×
n的二值矩阵,二值矩阵中的点的值为1表示网络结构中的两个节点之间存在有向边,二值矩阵中的点的值为0表示网络结构中的两个节点之间不存在有向边。
[0034]搜索半径的数值表示执行搜索的操作次数,例如,搜索半径为1表示执行一次搜索操作。
[0035]步骤二、基于所述搜索中心点、所述搜索半径,采用随机搜索操作,生成除搜索禁忌表以及历史最优记录表之外的多个随机样本;
[0036]步骤三、将所述搜索中心点以及多个所述随机样本加入所述搜索禁忌表,计算所述搜索中心点以及各个所述随机样本的BIC评分,以获得BIC评分最大值,并在累积搜索半径与最大BIC评分的关系曲线中标记所述BIC评分最大值及其对应的搜索半径;
[0037]步骤四、将所述关系曲线中的拐点加入所述历史最优记录表,并判断当前累计搜索半径与上一拐点对应的累计搜索半径之间的差值是否大于预设的结束阈值,若是,结束搜索,并输出所述历史最优记录表中最新更新的点,否则,执行步骤五;
[0038]步骤五、判断当前累计搜索半径是否大于预设的中心重置阈值,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于试探搜索的贝叶斯网络结构学习方法,其特征在于,包括:步骤一、随机选取贝叶斯网络结构空间中的一个点作为搜索中心点,并初始化搜索半径、累计搜索半径;步骤二、基于所述搜索中心点、所述搜索半径,采用随机搜索操作,生成除搜索禁忌表以及历史最优记录表之外的多个随机样本;步骤三、将所述搜索中心点以及多个所述随机样本加入所述搜索禁忌表,计算所述搜索中心点以及各个所述随机样本的BIC评分,以获得BIC评分最大值,并在累积搜索半径与最大BIC评分的关系曲线中标记所述BIC评分最大值及其对应的搜索半径;步骤四、将所述关系曲线中的拐点加入所述历史最优记录表,并判断当前累计搜索半径与上一拐点对应的累计搜索半径之间的差值是否大于预设的结束阈值,若是,结束搜索,并输出所述历史最优记录表中最新更新的点,否则,执行步骤五;步骤五、判断当前累计搜索半径是否大于预设的中心重置阈值,若是,更新所述搜索中心点为上一拐点,并初始化搜索半径、累计搜索半径后重复步骤二至步骤四,否则,将所述搜索半径和所述累计搜索半径均加一后重复步骤二至步骤四。2.如权利要求1所述的方法,其特征在于,所述方法还包括:在步骤一之前,基于训练数据构建贝叶斯网络结构空间。3.如权利要求2所述的方法,其特征在于,所述BIC评分根据公式1计算:其中,g表示贝叶斯网络结构空间中的点,D表示训练数据,BIC(g|D)表示贝叶斯网络结构空间中的点的BIC评分,X
i
表示第i个节点,r
i
表示X

【专利技术属性】
技术研发人员:仝小敏吉祥李国栋刘娜
申请(专利权)人:中国电子科技集团公司电子科学研究院
类型:发明
国别省市:

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

1