一种基于预测关系的离散贝叶斯网络分类数据挖掘方法
【技术领域】
[0001] 本发明涉及海量数据挖掘领域,适用于特征属性之间具有相关性、特征属性具有 不确定性的数据挖掘。特别涉及在数据挖掘中利用海量数据根据实际需要训练贝叶斯网络 分类模型的方法。
【背景技术】
[0002] 贝叶斯网络是在不确定性环境下有效的知识表示和概率推理模型,是一种流行的 图形化决策分析工具。现有的贝叶斯网络分类数据挖掘方法主要是利用专家知识获得初始 的贝叶斯网络结构,然后基于一定的规则不断迭代对该结构进行优化,获得最终的贝叶斯 网络结构。即在已知的初始贝叶斯网络结构的情况下,根据现有数据推断出相对最优的贝 叶斯网络结构。贝叶斯网络分类数据挖掘方法已经被广泛地应用于文本分类、经济预测、医 疗诊断等领域。
[0003] 这一方法的问题是,当用户根据专家知识事先选取的初始贝叶斯网络结构中的路 径和最终获得的贝叶斯网络结构相差很大时,对初始贝叶斯网络结构进行迭代优化的过程 必然会计算繁琐、耗时,最终的精度评估也可能无法达到令人满意的结果。同时各行业产生 海量的数据也在不断产生新的特征属性,特征属性之间的关联性也在不断发生变化,现有 的贝叶斯网络分类数据挖掘方法难以满足人们的需求。
[0004] 由此可见,在海量数据挖掘中,根据实际需要训练贝叶斯网络分类模型的方法有 着现实的需要。
【发明内容】
[0005] 本发明要解决的技术问题是提供一种基于预测关系的离散贝叶斯网络分类数据 挖掘方法,使得在海量数据挖掘中,能够根据实际需要训练贝叶斯网络分类模型,从而进行 高效率、高精度的分类预测。
[0006] 本发明解决现有技术的问题,所采用的技术方案是:提供一种利用相关系数选取 预测因子,利用因子(预测因子和目标因子)之间的预测能力确定贝叶斯网络结构的分类 数据挖掘方法,其包括以下步骤:
[0007] 1、选取预测因子。初步选定一些可能与目标因子具有相关性的预测因子,计算各 个预测因子和目标因子之间的相关系数y,,并设定临界值a,若[彡a,保留该预测因 子,否则去掉该预测因子;
[0008] 2、训练贝叶斯网络模型。根据保留的预测因子,基于预测因子之间的预测能力确 定初始贝叶斯网络结构,调整贝叶斯网络的结构并进行环路检验;
[0009] 3、进行精度评估。不满足精度时,重新训练贝叶斯网络模型,直至获得最优的贝叶 斯网络结构。
[0010] 本发明提供的一种基于预测关系的离散贝叶斯网络分类数据挖掘方法的进一步 技术方案是该方法在Hadoop平台上利用其分布式文件系统HDFS和MapReduce并行编程模 型来实现。
[0011] 1、Hadoop分布式文件系统(HDFS)。HDFS是分布式计算的存储基础,它具有高容 错性,可以部署在廉价的硬件设备上,适合那些有大数据集的应用,并提供了对数据读写 的尚吞吐率。
[0012] 2、MapRedUCe编程模型。它将运行在大规模集群上的复杂并行计算抽象为两个函 数:Map函数和Reduce函数。首先将一个大任务分割为多个并行的Map任务块,然后将Map 分别给集群中的各个节点进行运算,最后Reduce把分解后的多个任务块的处理结果汇总 起来,从而得到最终的结果。因此,MapReduce可处理的任务应满足:待处理的任务(或 数据集)可以分割成许多个小任务(或小数据集),并且每一个小任务(或小数据集)都 可以完全的并行计算。
[0013] 本发明提供的一种基于预测关系的离散贝叶斯网络分类数据挖掘方法的进一步 技术方案是对原始数据进行预处理,以去掉不正确或被损坏的无效数据和离散化原始数 据。预处理又可分为三个部分:
[0014] 1、数据的选取。其目的是确定挖掘的操作对象;
[0015] 2、数据的预处理。海量的原始数据一般都存在偏差和缺失的情况,这些数据若被 用于数据挖掘,则在进行数据挖掘之前必须进行数据的预处理,去除数据中的噪声、冗余以 及对缺省值进行填充等;
[0016] 3、数据的转换。数据转换的方式也有所不同,针对特定的挖掘算法,将数据转换成 相应的分析模型,建立的适合挖掘算法的分析模型是数据挖掘成功的关键。
[0017] 本发明提供的一种基于预测关系的离散贝叶斯网络分类数据挖掘方法进一步技 术方案将原始数据分成三部分训练集、验证集和测试集。训练集用于创建贝叶斯网络分类 器;验证集用于优化分类器的参数或选择最优贝叶斯网络结构;测试集用于计算最终经过 优化的分类器的精度。三个数据集必须保持独立性。
[0018] 本发明提供的一种基于预测关系的离散贝叶斯网络分类数据挖掘方法的进一步 技术方案是基于训练集运行相应的MapReduce程序获得初步选定的各个预测因子和目标 因子之间的相关系数y,,并设定临界值a,若yi>a,保留该预测因子,否则去掉该预测 因子,得到所选的预测因子,从而得到待用的预测因子集。计算相关系数的理论依据:
[0019] 随机变量X与Y的协方差为Cov(X,Y) =E(X-EX) (Y-EY),相关系数为yXY = Cov(X,Y) / 取值在-1到1之间。当yXY= 0时,称X,Y不相关;当|yXY | = 1 时,称X,Y完全相关,此时,X,Y之间具有线性函数关系;当|yXY|〈l时,X的变动引起Y的 部分变动,IyXY|的绝对值越大,X的变动引起Y的变动就越大,|yXY| >0.8时为高度相关, 当0. 5〈 | 丫XY |〈0. 8时为显著相关,当0. 3〈 | 丫XY |〈0. 5时为低度相关,当|yXY |〈0. 3时为不相 关。
[0020] 本发明提供的一种基于预测关系的离散贝叶斯网络分类数据挖掘方法的进一步 技术方案是基于训练集运行相应MapReduce程序计算任意两个因子之间(预测因子和目标 因子)的预测能力,根据条件预测能力确定弧的存在性和方向,确定初始贝叶斯网络结构, 在此基础上调整初始贝叶斯网络结构,增加丢失的路径、删除多余的路径,并进行环路检 验,获得几个相对较优的贝叶斯网络分类器。训练贝叶斯网络模型的理论依据:
[0021] 定义1记石=4XJ:为变量组:Xmr, □jX叫:对Xl的预测能力,
[0023] 1、确定初始贝叶斯网络结构
[0024] 令
贝丨J
[0025] M>N,且 max{M,N}> P 人,添加弧X广 X1;
[0026] Q>P,且 max{M,N}> P 入,添加弧Xr Xj;
[0027] M〈P出且N〈P出,随机定向。
[0028] 2、调整初始贝叶斯网络结构
[0029]设变量组,…,Xm是X廊X」的最小割端集,令
[0030] P>Q,且 max{P,Q}> P A,添加弧X广 X1;
[0031]Q>P,且max{P,Q}> P A,添加弧Xr X j;
[0032]P〈P出且Q〈P出,删除父广Xi之间的弧。
[0033] 3、环路检验
[0034] 删除没有父节点和子节点的节点及与其相连的弧,在剩下的子图中再删除没有父 节点和子节点的节点及与其相连的弧,如此下去,如果存在每一个节点都是有父节点和子 节点的子图,那么存在环路,否则不存在环路。
[0035] 本发明提供的一种基于预测关系的离散贝叶斯网络分类数据挖掘方法的进一步 技术方案是利用测试集对已经得到的几个贝叶斯网络分类器进行精度评估。实际应用中对 分类器性能的精度评估指标主要有三个:
[0036] 1、预测精度:预测精度越高的分类器,分类预测能力