论文部分内容阅读
在现实世界中存在着海量数据,因此如何处理这些数据并从中发现知识是具有现实意义的亟待解决的问题。随着信息技术的发展,数据挖掘技术已经越来越广泛的应用于实际的运用中,而贝叶斯网络作为不确定性环境下一种有力的知识表示方式和概率推理模型,是处理数据挖掘的强有力工具。贝叶斯网络是在不确定性环境下有效的知识表示方式和概率推理模型,是一种流行的图形决策化分析工具。近年来,人们研究了直接从数据中学习并建立贝叶斯网络的问题,并把它用于数据挖掘。虽然基于贝叶斯网络的数据挖掘技术仍处于不断完善之中,但它已经在一些数据建模问题中取得令人瞩目的成绩。贝叶斯网络学习有两大问题:参数学习问题和结构学习问题。在现实世界中,不完整数据是广泛存在的,如何从不完整数据中学习贝叶斯网络的参数和结构一个非常实用而有价值的问题。其中,基于不完整数据的参数学习问题要做到精确处理是非常困难的,现有的算法处理此类问题都采用近似的算法。这些算法在解决大数据集时由于需要很多次循环迭代,故效率不高,且占用系统资源较多。 本文首次给出一种新的基于学习的相容性的BCL参数学习算法,可用于在不完整数据集下进行的贝叶斯网络参数学习。新算法是以相容的贝叶斯学习的渐进正态性为理论基础。在胡振宇的硕士毕业论文中推导得出以下结论:若正则条件成立,且 , 则 的后验概率 ,以概率1趋近于, 。(这里是参数)这个结论告诉我们:当观测到的样本数据量趋于无穷时,用贝叶斯方法学习的参数θ趋于一个正态分布。由于参数的分布性质已经确定,所以可以用来直接估计出参数的值。考虑到算法是基于不完整数据集的,所以修补完全数据集对计算结果的精确性有很大影响,因此应首先处理这个问题。我们在此应用了贝叶斯启发式方法(BHA-Bayesian Heuristic Approach),试图将先验信息的影响加入到修补数据集的过程之中,我们是这样做的:首先利用已有的完整的数据样本,先初步估计出参数θ的值,然后利用公式:<WP=3> =修补完全给出的数据样本集。如上所述,本算法主要有两个关键:(1)如何较好地修补数据集,(2)算法的主体采用何种近似方法估计出参数。基于以上分析,我们提出一种新的参数学习算法―BCL算法,BCL算法主要由以下几个步骤实现: 第一步:从不完备样本数据集中抽取相对完整的样本数据,估计出可能的参数向量值,即直接利用局部数据计算出服从正态分布的参数初始值。 第二步:在已得初始参数的情况下,补充剩余不完备数据集,以便估计出概率上最匹配的参数向量集。 第三步:利用已完全的数据,用矩法估计近似出最终值。在实验阶段,我们通过对两个经典贝叶斯网络Asia网络,Alarm网络(此两个网络是医疗上已经成功运用于专家系统的贝叶斯网络)使用BCL算法和传统两种算法:Gibbs Sampling算法和EM算法分别进行参数学习,并且在运算结果的差错率和运行时间上分别进行比较,实验结果可以看出我们的算法在样本少量的情况下精确度较高,而时间代价相当。在大样本容量的情况下,精确度相当的情况下,时间代价明显低于以上两种算法。本文的研究工作把贝叶斯网络(作为一种数据挖掘技术)的理论算法向前推进了一步。