基于先验节点序学习贝叶斯网络结构的优化方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
节点 (变量) 间的因果关系来确定 BN 结构. 然而, 当样本量较小时, 利用统计方法进行条件独立测试 不稳定且学习精度难以保证, 为此, 本文提出一种基 于节点先验顺序和约束优化模型的 BN 结构学习方 法, 新方法在给定节点序的前提下, 通过定义 1- 步 依赖系数给出优化模型的目标函数, 并利用该函数 作为网络结构的全局依赖度量, 从而将 BN 结构学 习问题转化为在可行域空间中求解目标函数的极大 值问题, 即求解数学规划 LP = (G , Ω, F ), 其中, G 为候选网络搜索空间, Ω 为网络节点 (变量) 间需要 满足的约束条件, 目标函数 F 是从搜索空间 G 到实 数集合 R 的一个映射, 函数 F 的极值点即为网络 的最优结构. 理论和实验证明, 新方法不仅学习速度 快、 求解过程简单, 而且在小样本情况下即可确定出 较好的网络结构. 本文内容安排如下: 第 1 节介绍贝叶斯网络及 其结构学习的基本概念; 第 2 节建立基于先验节点 序的优化模型并给出模型的理论证明; 第 3 节为数 值实验结果; 最后为结束语, 同时给出了今后的研究 方向.
第 37 卷 第 12 期
2011 年 12 月
自 动 化 学 报
ACTA AUTOMATICA SINICA
Vol. 37, No. 12 December, 2011
基于先验节点序学习贝叶斯网络结构的优化方法
朱明敏 1 刘三阳 1, 2 汪春峰 1, 3
摘 要 针对小样本数据集下学习贝叶斯网络 (Bayesian networks, BN) 结构的不足, 以及随着条件集的增大, 利用统计方法 进行条件独立 (Conditional independence, CI) 测试不稳定等问题, 提出了一种基于先验节点序学习网络结构的优化方法. 新 方法通过定义优化目标函数和可行域空间, 首次将贝叶斯网络结构学习问题转化为求解目标函数极值的数学规划问题, 并给 出最优解的存在性及唯一性证明, 为贝叶斯网络的不断扩展研究提出了新的方案. 理论证明以及实验结果显示了新方法的正 确性和有效性. 关键词
DOI
贝叶斯网络, 优化模型, 条件独立测试, 结构学习, 节点序
10.3724/SP.J.1004.2011.01514
An Optimization Approach for Structural Learning Bayesian Networks Based on Prior Node Ordering
ZHU Ming-Min1 LIU San-Yang1, 2 WANG Chun-Feng1, 3 Abstract To solve the drawbacks of learning Bayesian networks (BN) from small data set and the unreliability of the conditional independence (CI) tests when the conditioning sets become too large, this paper proposes an optimization approach for structural learning Bayesian networks based on prior node ordering. It is the first time that a problem of structural learning for a Bayesian network is transformed into its related mathematical programming problem by defining objective function and feasible region. And, we have proved the existence and uniqueness of the numerical solution. The approach offers a new opinion for the research of extended Bayesian networks. Theoretical and experimental results show that the new approach is correct and effective. Key words ing Bayesian network (BN), optimization model, conditional independence test, structure learning, node order-
P (V ) = P (V1 , V2 , · · · , Vn ) =
n
P (Vi |P a(Vi ))
i=1
(1)
其中, P a(Vi ) 是变量 Vi 在 BN 中的父节点集, 即 P a(Vi ) = {Vj |Vj → Vi ∈ E }. 如果存在从节点 Vj 指向节点 Vi 的有向路, 则称 Vj 是 Vi 的祖先 节点, Vi 是 Vj 的子孙节点. 式 (1) 意味着对任意 变量 Vi 在给定其父节点集合 P a(Vi ) 情况下, Vi 独立于除 P a(Vi ) 之外的所有非子孙节点. 我们用 Ind(X, Y |Z ) 表示给定变量集 Z , 变量集 X 和 Y 在 概率分布 P 下相互独立, X , Y , Z ⊂ V . BN 结构学习就是在给定一个样本数据集合 D 的前提下, 寻找一个与训练集 D 匹配最好的网络 结构, Robinson 等[10] 证明了包含 n 个节点可能的 BN 结构数目 f (n) 为
收稿日期 2011-04-15 录用日期 2011-06-29 Manuscript received April 15, 2011; accepted June 29, 2011 国家自然科学基金 (60974082, 61075055), 国家杰出青年科学基金 项目 (11001214), 西安电子科技大学基本科研业务基金项目 (K50510 700004) 资助 Supported by National Natural Science Foundation of China (60974082, 61075055), the National Funds of China for Young Scientists (11001214), and the Fundamental Research Funds for the Central Universities (K50510700004) 1. 西安电子科技大学理学院 西安 710071 2. 西安电子科技大学综 合业务网国家重点实验室 西安 710071 3. 河南师范大学数学系 新乡 453007 1. School of Science, Xidian University, Xi an 710071 2. State Key Laboratory of Integrated Service Networks, Xidian University, Xi an 710071 3. Department of Mathematics, Henan Normal University, Xinxiang 453007
1
贝叶斯网络及其结构学习
BN 是一个二元组, 即 BN = (G, P ), G = (V, E )
12 期
Baidu Nhomakorabea朱明敏等: 基于先验节点序学习贝叶斯网络结构的优化方法
1515
为有向无环图 (Directed acyclic graph, DAG), 其 中 V 为节点集, 与领域的随机变量一一对应, E 为 有向边集, 反映节点变量之间的因果依赖关系; P 为 节点的概率分布, 表示节点之间因果影响强度. 给定 BN, 存在一个离散变量集合 V = {V1 , V2 , · · · , Vn } 上的联合概率分布 P (V ):
n
xij =
1, 当 V i → V j ∈ E 0, 当 V i → V j ∈ /E
f (n) =
i=1
(−1)i+1
n! 2i(n−1) f (n − i) i!(n − i)!
(2)
可见, 随着变量数目 n 的增多, 搜索空间的维数呈 指数级增长, 因此, 搜索最优的网络结构是一个 NP 难问题. 而当节点顺序 V1 ≺ V2 ≺ · · · ≺ Vn 已知 时, 每个节点的父节点只能从在顺序上先于它的 节点集合中选取, 所以节点 Vi 可能的局部结构数 目为 2i−1 , 包含 n 个节点的 BN 结构空间大小为 2n(n−1)/2 . 对于这种情况, 一些学者提出了一些有效 的算法[11−14] , 但由于它们在最坏的情况下仍为完全 搜索, 且通常只能获得模型的局部最优解[15−17] . 为 此, 本文受到基于 CI 测试方法的启发, 首次将数学 规划应用于 BN 的结构学习, 提出一种基于约束优 化的 BN 结构学习方法. 定理 1[18] 给出了 CI 测试 方法的理论依据. 定理 1. 给定变量集 V = {V1 , V2 , · · · , Vn } 上的 样本数据集 D, 若条件独立 Ind(Vi , Vj |Vk ) 成立, 则 2 统计量 Uij |k 近似服从自由度为 (ri − 1)(rj − 1)rk 的
贝叶斯网络 (Bayesian network, BN)[1−2] , 又称 贝叶斯信度网络 (Bayesian belief network, BBN) 或信度网络, 是图论与概率论结合的产物. 经过十几 年的发展, 它已广泛地应用于故障检测、医疗诊断、 交通管理、军事目标自动识别、数据挖掘、作战意 图自动估计、信息融合等方面[3−5] . 近年来, 从数据 中学习 BN 受到了国内外学者们的广泛关注, 人们 相继提出了许多种 BN 结构学习算法[6−9] . 其中, 基 于约束满足的方法是新兴的一类实用有效的学习算 法, 此类算法通过对样本数据进行有效的条件独立 (Conditional independence, CI) 测试, 并判断所有
2
基于先验节点序学习贝叶斯网络结构的 优化方法
2.1 优化模型的提出
在这一部分, 我们先给出一些基本概念和定理, 这些概念和定理是本文方法的基础. 给定关于变量集 V = {V1 , V2 , · · · , Vn } 的样本 数据集 D, 且变量 Vi , i = 1, 2, · · · , n 都是离散的, 我们希望找到一个与数据集 D 匹配最好的网络结构 来表示变量集 V 上的联合概率分布. 考虑到关于 n 个变量的网络结构 G = (V, E ) 是一个有向无环图, 因此采用邻接矩阵 X = [xij ] 表示, 其中
2 χ2 分布. 其中 Uij |k = 2 abc a,b,c Nijk Nk Nijk abc log N ac N bc , ik jk
abc c
令 R = X + X 2 + · · · + X n , 记 R = [rij ], 则 rij 表 示从节点 Vi 到 Vj 有向路的条数. 我们需要建立一个数学规划模型来衡量添加或 删除任意一条边对网络整体结构的影响程度, 因此, 下面首先对任意两个变量间的依赖强度进行估计. 定义 1 (1- 步依赖系数). 给定变量集 V = (1) {V1 , V2 , · · · , Vn } 上 的 样 本 数 据 集 D, 称 cijα = 2 2 mink=i,j {Uij |k − χij |k,α } 为变量 Vi 与 Vj 之间的 2 1- 步依赖系数, 其中 Uij |k 表示给定变量 Vk 的条件 2 下, 变量 Vi 与 Vj 的 U 统计量, χ2 ij |k,α 表示显著性 水平为 α, 自由度为 (ri − 1)(rj − 1)rk 的 χ2 分布值. (1) 根据 χ2 假设检验, 若 cijα > 0, 则无论是否添 (1) 加其他节点, Vi 与 Vj 都是相互依赖的; 若 cijα < 0, 则可能存在节点 Vk ∈ V 使得 Vi 与 Vj 相互独立. 特别地, 称矩阵 C = [cij ] 为变量集 V 的 1- 步 依赖系数矩阵. 其中,