图形模型和贝叶斯网络简介

作者:凯文·墨菲,1998年。

“图形模型是概率论和图论。它们提供了处理两个问题的自然工具贯穿应用数学和工程--不确定性和复杂性——尤其是他们正在扮演一个在机器的设计和分析中发挥着越来越重要的作用学习算法。图形模型的基本思想是模块化的概念——一个复杂的系统是通过组合更简单的部件。概率论为零件提供了粘合剂结合起来,确保整个系统的一致性,以及提供将模型与数据交互的方法。图论方面图形模型的人类也可以通过它来建模高度交互的变量集作为一种数据结构,它自然适合高效的通用算法。

许多经典的多元概率系统在统计、系统工程、信息理论、,模式识别和统计力学是一般的图形模型形式——示例包括混合模型,因子分析、隐马尔可夫模型、卡尔曼滤波器和伊辛模型。图形模型框架提供了一种查看所有这些系统是一种共同的潜在形式主义的实例。此视图具有许多优点,特别是具有在一个领域中开发的产品可以在研究之间转移社区和更广泛的开发。此外,图形模型形式主义为新系统的设计提供了一个自然的框架。"---迈克尔·乔丹,1998年。

本教程

我们将简要讨论以下主题。

注:(版本)此页可用pdf格式 在这里.也,玛丽·斯特凡诺娃瑞典语翻译在这里.

流行媒体上的文章

以下文章提供的技术介绍较少。

其他技术信息来源

代表

概率图形模型是节点表示的图形随机变量和(缺少)弧表示条件独立性假设。因此,它们提供了联合概率的紧凑表示分配。无方向性图形模型,也称为马尔可夫模型随机场(MRF)或马尔可夫网络,对独立性有一个简单的定义:两(组of)节点A和B在给定第三组C的情况下是有条件独立的,如果A和B中节点之间的所有路径都被C中的一个节点分隔开。相比之下,定向的图形模型也称为贝叶斯网络或信仰网络(BN)有更多复杂的独立概念,它考虑了弧,正如我们下面解释的那样。

无方向图形模型在物理和视觉社区和定向模型在AI中更受欢迎和统计社区。(有可能有一个模型同时具有有向弧和无向弧,称为链图。)为了仔细研究定向和无向图形模型,参见Pearl88、Whittaker90、,和劳里岑96。

尽管定向模型有一个更复杂的概念独立于无向模型,它们确实有几个优点。最重要的是可以将从A到B的弧视为表示A“导致”B。(参见关于因果关系.)这可以作为构建图形结构的指南。此外,定向模型可以编码确定性关系,更容易学习(适合数据)。在本教程的其余部分中,我们将只讨论定向图形模型,即贝叶斯网络。

除了图形结构之外,还需要指定模型参数。对于定向模型,我们必须指定每个节点的条件概率分布(CPD)。如果变量是离散的,可以用表格表示(CPT),它列出子节点在每个它的每个值组合的不同值父母。考虑以下示例,其中所有节点都是二进制的,即,有两个可能的值,我们将用T(true)和F(错误)。

我们看到“草是湿的”(W=true)事件有两个可能的原因:喷水器打开(S=真)或打开下雨(R=真)。这种关系的强度如表所示。例如,我们看到Pr(W=true|S=true,R=false)=0.9(秒行),以及因此,Pr(W=false | S=true,R=false)=1-0.9=0.1,因为每行总和必须为1。由于C节点没有父节点,因此其CPT指定了多云的概率(在本例中为0.5)。(将C视为代表季节:如果是多云的季节,洒水器不太可能打开更有可能是下雨了。)

贝叶斯编码的最简单的条件独立关系网络可以如下所述:节点独立于给定父节点的祖先,其中祖先/父关系是关于某些固定拓扑的节点的顺序。

根据概率链式法则,上图中所有节点的联合概率为

P(C,S,R,W)=P(C)*P(S|C)*P(R|C,S)*P
通过使用条件独立关系,我们可以将其重写为
P(C,S,R,W)=P(C)*P(S|C)*P(R|C)*P(W|S,R)
我们被允许简化第三项,因为R是根据父项C独立于S,最后一项是因为W是独立于C,其父母为S和R。

我们可以看到,条件独立关系请允许我们代表接缝更紧密。这里的节省是最小的,但一般来说,如果我们有n个二进制节点,则完整关节需要O(2^n)空间来表示,但分解形式需要O(n2^k)空格来表示,其中k是节点的最大扇入。参数越少,学习就越容易。

“贝叶斯网络”是贝叶斯吗?

尽管有名字,贝叶斯网络并不一定意味着对贝叶斯的承诺统计数据。的确,这是很常见的频率学家估计CPD参数的方法。相反,他们之所以这样称呼是因为他们使用贝叶斯规则概率推理,如下所述。(术语“定向图形模型”可能更合适。)贝叶斯网是层次结构的有用表示贝叶斯模型,它构成了应用贝叶斯的基础统计学(例如,参见漏洞项目)。在这种模型中,参数被视为其他随机参数变量,并成为图中的节点。

推断

我们希望使用贝叶斯网络解决的最常见的任务是概率推理。例如,考虑喷水器网络,假设我们观察事实上草是湿的。有两种可能的原因:要么在下雨,要么洒水器开着。哪个更可能?我们可以使用贝叶斯规则计算每一个的后验概率解释(其中0==false和1==true)。


哪里


是一个规范化常数,等于数据。所以我们发现草很可能是湿的,因为下雨了:似然比为0.7079/0.4298=1.647。

正在解释

在上面的示例中,请注意这两个原因“竞争”以“解释”观测数据。因此,鉴于他们共同的孩子,W,被观察到了,尽管他们只是微不足道的独立。例如,假设草是湿的,但我们也知道正在下雨。然后喷头打开的后验概率下降:
Pr(S=1|W=1,R=1)=0.1945
这叫做“解释”。在统计学中,这被称为伯克森悖论,或“选择偏见”。举一个戏剧性的例子,考虑一所大学招收聪明或运动型(或两者兼而有之!)的学生。让C表示某人被大学录取的事件,即如果他们要么聪明(B),要么运动(S)。假设在一般总体中,B和S是独立的。我们可以使用图形来建模条件独立性假设这是一个V型结构,箭头向下:
B和S\ /v(v)C
现在看看大学生群体(C代表那些观察到是真的)。人们会发现,聪明会使你不太可能运动反之亦然,因为任何一种性质都足以解释关于C的证据(即P(S=1|C=1,B=1)。(如果你不相信我,
试试这个BNT小样!)

自上而下和自下而上的推理

在洒水车的例子中,我们有证据表明有效果(湿草),并且推断出最可能的原因。这称为诊断,或“底部上升”,推理,因为从结果到原因;这是专家系统中的一个常见任务。贝叶斯网也可以用于因果或“自上而下”,推理。例如,我们可以计算草由于天气多云,将是潮湿的。因此贝叶斯网通常被称为“生成”模型,因为它们指定原因如何产生效果。

因果关系

贝叶斯网最令人兴奋的一点是,它可以用于在坚实的数学基础上讨论因果关系。一个非常有趣的问题是:我们能区分因果关系和单纯因果关系吗相关性?答案是“有时”,但你需要衡量至少变量;直觉是其中一个变量起作用作为其他两者之间关系的“虚拟控制”,所以我们并不总是需要做实验来推断因果关系。有关详细信息,请参阅以下书籍。

Bayes网中的条件独立性

一般来说,贝叶斯网编码的条件独立关系最好用“贝叶斯球”来解释算法(由于Ross Shachter),如下所示:两(组)节点A和B是条件独立的(d-分隔)给定集合C当且仅当没有图中球从a到B的方式,其中允许球的运动如下所示。隐藏节点是其值为的节点不为人所知,且被描述为未遮蔽;观察到的节点(我们的条件)是阴影。虚线弧线表示球的流动方向。

最有趣的情况是第一列,当我们有两个箭头在节点X(因此X是具有两个父节点的“叶子”)。如果X被隐藏,那么它的父级是略微独立的,因此球没有通过(被“旋转”的球是曲线箭头所示);但如果观察到X,父母就会依赖,而球确实通过了,因为这种解释性消失的现象。注意,如果这个图是无向的,那么子图总是会把父母分开;因此,在转换定向图到无向图,我们必须在“未婚”之间添加链接共享一个共同孩子的父母(即“道德化”图表),以防止我们读错独立性声明。

现在考虑第二列,其中X有两个发散箭头(因此X是“根”)。如果X被隐藏,孩子们是依赖的,因为他们有一个隐藏的共同原因,所以球穿过了。如果观察到X,则有条件地呈现其子级独立,所以球不会通过。最后,考虑一下我们有一个传入和传出箭头指向X。根据直觉,上游节点和X的下游是相关的,当X被隐藏时,因为对一个节点进行条件处理会在该点中断图形。

具有离散和连续节点的贝叶斯网

介绍性示例使用具有分类值和多项式分布的节点。还可以创建具有连续值节点的贝叶斯网络。这些变量最常见的分布是高斯分布。对于具有连续父节点的离散节点,我们可以使用物流/softmax配送。使用多项式、条件高斯和softmax发布时,我们可以有一个丰富的工具箱来制作复杂的模型。下面显示了一些示例。有关详细信息,请单击在这里.(圆圈表示连续值随机变量,方块表示离散rv,清晰表示隐藏,阴影表示观察到。)

有关更多详细信息,请参阅这篇优秀的论文。

时间模型

动态贝叶斯网络(DBN)是随机的有向图形模型过程。他们概括了隐马尔可夫模型线性动力系统通过用状态表示隐藏(和观察)状态变量之间可能存在复杂的相互依赖关系。图形结构提供了一种简单的方法来指定这些条件独立性,从而提供一个契约模型的参数化。

请注意,“时间贝叶斯网络”比“动态贝叶斯网络”,自假设模型结构不变,但DBN一词已经根深蒂固。我们通常还假设参数不变化,即模型具有时间不变性。然而,我们可以随时添加额外的隐藏节点以表示当前“政权”,从而创建用于捕获周期性非平稳性的混合模型。在某些情况下,状态空间的大小可以改变时间,例如,跟踪数量可变但未知的对象。在这种情况下,我们需要随着时间的推移更改模型结构。

隐马尔可夫模型(HMM)

最简单的DBN类型是隐马尔可夫模型(HMM),它具有一个离散隐藏节点和一个离散或连续节点每个切片的观察节点数。我们在下面对此进行了说明。如前所述,圆表示连续节点,方块表示离散节点,清晰表示隐藏,阴影表示观察。

我们“展开”了4个“时间片”的模型——结构和参数如下假设随着模型的进一步展开而重复。因此,要指定DBN,我们需要定义片内拓扑(在片内),切片间拓扑(在两个切片之间),以及前两个切片的参数。(这种两段时间贝叶斯网通常称为2TBN。)

HMM上的一些常见变体如下所示。

线性动力系统(LDS)和卡尔曼滤波器

线性动力系统(LDS)与HMM具有相同的拓扑结构,但假设所有节点都具有线性高斯分布,即。,
x(t+1)=A*x(t)+w(t),w~N(0,Q),x(0)~N(init_x,init_V)y(t)=C*x(t)+v(t),v~N(0,R)
卡尔曼滤波是在该模型中进行在线滤波的一种方法。LDS的一些简单变体如下所示。

卡尔曼滤波器被提议作为大脑如何随着时间的推移,整合视觉线索来推断世界的状态,尽管现实显然要复杂得多。主要的一点不是卡尔曼滤波器是正确的模型,而是大脑结合了自下而上和自上而下的提示。下图来自一篇名为“视觉皮层的卡尔曼滤波模型”,P.Rao著,《神经计算》9(4):721-7631997年。

更复杂的DBN

还可以创建更复杂的时间模型拓扑,如所示的贝叶斯自动出租车(BAT)网络如下所示。(为了简单起见,我们只显示切片2的观察叶子。感谢Daphne Koller提供此数据。)

当一些观察到的节点被认为是输入(动作),而一些被认为是输出(感知),DBN成为POMDP公司.另请参阅决策理论如下所示。

生成模型的生成模型

下图由Zoubin Ghahramani和Sam Roweis制作很好地总结了一些流行图形模型之间的关系。

推理

图形模型指定完整的所有变量的联合概率分布(JPD)。考虑到JPD,我们可以回答所有可能的推断边缘化查询(对无关变量求和),如如引言所示。然而,JPD的大小为O(2^n),其中n是节点的数量,我们假设每个节点可以有2个州。因此,对JPD求和需要指数时间。我们现在讨论更有效的方法。

变量消除

对于有向图形模型(Bayes网),我们有时可以使用JPD的分解表示有效地进行边缘化。关键思想是在求和时尽可能地“求和”(边缘化)去掉不相关的术语,例如洒水管网

请注意,在执行最内层求和时,我们会创建新的项,需要依次进行总结,例如。,

哪里

继续这样,

哪里

此算法称为变量消除。将和分布在乘积上的原理可以推广非常适合于任何交换半环。这构成了许多常见算法的基础,如Viterbi解码和快速傅里叶变换。有关详细信息,请参阅

计算边际时,我们执行的工作量受以下因素的限制我们遇到的最大项的大小。选择求和(消除)命令最小化这是NP-hard,尽管贪婪算法在实践。

动态编程

如果我们希望同时计算多个边距,可以使用Dynamic编程(DP)以避免可能涉及的冗余计算如果我们反复使用变量消除。如果BN的底层无向图是无环的(即树),我们可以使用Pearl导致的本地消息传递算法。这是众所周知的向前向后的概括HMM(链)算法。有关详细信息,请参阅

如果BN具有无向循环(如喷水器示例),本地消息传递算法存在重复计算的风险。例如,来自S和R的信息流动进入W并不是独立的,因为它来自一个共同的原因,C。因此,最常见的方法是将BN转换为树,通过将节点聚集在一起,形成所谓的连接树,然后在上运行本地消息传递算法这棵树。消息传递方案可能是Pearl的算法,但更常见的是使用为无向模型设计的变体。有关详细信息,请单击在这里

DP算法的运行时间是指数级的最大的簇(这些簇对应于中间簇通过变量消除创建的术语)。这种尺寸称为图的诱导宽度。将其最小化是NP-hard。

近似算法

许多有趣的模型,比如那些具有重复结构的多元时间序列或图像分析,具有较大的感应宽度,这使得推理速度很慢。因此,我们必须采用近似技术。不幸的是,近似推理是#P-hard,但我们仍然可以得出近似值在实践中通常很有效。下面是一个列表主要技术。近似推断是一个巨大的主题:有关更多详细信息,请参阅参考资料。

DBN中的推理

DBN的一般推理问题是计算P(X(i,t0)|y(:,t1:t2)),其中X(i、t)表示隐藏的i’t变量at time和t Y(:,t1:t2)代表所有证据在时间t1和t2之间。(事实上,我们通常还想计算一个或多个时间段上的变量。)下面介绍了几个有趣的特殊情况。箭头指示t0:我们正在尝试估计的是X(t0)。阴影区域表示可用数据t1:t2。

下面是LDS中推理的一个简单示例。考虑一个粒子在平面内移动在其轨迹中受到随机扰动的恒定速度。新位置(x1,x2)是旧位置加上速度(dx1,dx2)加上噪声w。

[x1(t)]=[1 0 1 0][x1[t-1)]+[wx1]【x2(t)】【0 1 0 1】【x2【t-1)】【wx2】[dx1(t)][0 0 1 0][dx1-(t-1)][wdx1]【dx2(t)】【0 0 0 1】【dx2(t-1)】【wdx2】
我们假设我们只观察粒子的位置。
[y1(t)]=[1 0 0][x1(t)]+[vx1][年2(t)][0 1 0 0][x2(t)][vx2][dx1(t)][dx2(t)]
假设我们从位置(10,10)开始向右移动速度(1,0)。我们采样了一条长度为15的随机轨迹。下面我们展示了过滤和平滑的轨迹。
滤波估计的均方误差为4.9;对于平滑估计为3.2。平滑估计不仅更好,而且我们知道它更好,如较小的不确定性椭圆所示;这可以帮助解决例如数据关联问题。注意平滑的椭圆在末端是如何变大的,因为点看到的数据较少。此外,请注意过滤速度有多快椭圆达到其稳态(Ricatti)值。(请参阅我的卡尔曼过滤器工具箱了解更多详细信息。)

学习

需要指定两件事来描述BN:图形拓扑(结构)和每个CPD的参数。学习是可能的这两个都来自数据。然而,学习结构要困难得多而不是学习参数。此外,了解一些节点何时隐藏,或者我们缺少数据,比一切都要困难得多观察到。这导致了4种情况:
结构可观测性方法---------------------------------------------已知完全最大似然估计已知部分EM(或梯度上升)通过模型空间进行未知的完全搜索通过模型空间进行未知部分EM+搜索

已知结构,完全可观测

我们假设在这种情况下学习的目标是找到价值观每个CPD参数的最大化可能性培训数据,其中包含N个案例(假设是独立的)。训练集D的归一化对数似然是项的总和,一对于每个节点:
我们看到对数似然评分函数分解根据图的结构,因此我们可以最大化独立于每个节点对对数似然的贡献(假设每个节点中的参数独立于其他节点)。

考虑估算W的条件概率表节点。如果我们有一组训练数据,我们就可以数一数下雨时,洒水器开着,草总是湿的,N(W=1,S=1,R=1),草湿润的次数下雨,喷头关闭,N(W=1,S=0,R=1)等计数(这是足够的统计数据),我们可以找到最大值CPT的可能性估计如下:

式中,分母为N(S=S,R=R)=N(W=0,S=S,R=R)+N(W=1,S=S,R=R)。因此,“学习”等于计数(在多项式的情况下分配)。对于高斯节点,我们可以计算样本均值和方差,以及使用线性回归估计权重矩阵。对于其他类型的分发,更复杂的过程是必要的。

正如HMM文献所知,CPT的ML估计值为容易出现稀疏数据问题,可以通过使用(混合)Dirichlet先验(伪计数)。这将导致最大后验概率(MAP)估计。对于高斯人,我们可以使用Wishart先验等。

已知结构,部分可观测性

当一些节点被隐藏时,我们可以使用EM(Expectation求(局部)最优最大似然的最大化算法参数估计。EM背后的基本理念是,如果我们知道如我们所见,所有节点的学习(M步骤)都很容易以上。所以在E步骤中,我们计算所有节点,然后处理这些预期的值,就像观察到的一样(分布)。例如,在这种情况下对于W节点,我们将观察到的事件计数替换为次数我们希望看到每项活动:
P(W=W|S=S,R=R)=E N

哪里E N(x)是事件x的预期次数在给定参数的当前猜测的情况下,在整个训练集中发生。这些预期的计数可以计算如下

E N(.)=E sum_k I(.|D(k))=sum_k P

其中I(x|D(k))是一个指示函数,如果事件为1x出现在训练用例k中,否则为0。

给定预期计数,我们将参数最大化,然后重新计算预期的计数等。这个迭代过程是保证收敛到似然曲面的局部最大值。也可以在似然曲面(梯度表达式也涉及预期计数),但EM是通常更快(因为它使用自然梯度)和更简单(因为它没有步长参数,并且注意参数约束(例如CPT必须自动求和为1)。在任何情况下,我们都可以看到,当节点被隐藏时,推理就变成了学习过程调用的子程序;因此速度很快推理算法至关重要。

未知结构,完全可观测

我们首先讨论用于选择的评分函数模型;然后,我们讨论了试图优化这一点的算法函数,并最终检查其计算和样本复杂性。

用于模型选择的目标函数

最大似然模型为完整的图形,因为这是最大的参数的数量,因此可以最好地拟合数据。避免这种过度拟合的一个原则性方法是优先考虑模型,指定我们更喜欢稀疏模型。然后,根据贝叶斯规则,MAP模型是最大化的模型
拿着日志,我们发现
其中c=-\log\Pr(D)是独立于G的常数。

P(G)之前结构的效果相当于惩罚过于复杂模型。然而,这并不是绝对必要的,因为边际可能性学期

P(D|G)=int_{θ}P(D| G,θ)
对具有太多参数的惩罚模型具有类似的效果(这就是奥卡姆剃须刀)。

用于查找最佳模型的搜索算法

结构学习的目标是学习dag(有向无环的图表)最能解释数据。这是一个NP-hard问题,因为N个变量上的dag数在N中是超指数的(没有闭合的形成公式,但为了给你一个想法,4个节点上有543个dag,10个节点上是O(10^18)个dag。)

如果我们知道节点的顺序,生活就会变得简单得多,因为我们可以学习的父集合每个节点独立(因为分数是可分解的),我们不需要担心非循环约束。对于每个节点,最多有

\sum_{k=0}^n\选项{n}{k}=2^n
每个节点的可能父节点集,可以是按如下所示的格子排列,n=4。问题是要在这个格子中找到最高得分点。

搜索此图有三种明显的方法:自下而上、自上而下向下或中间向外。在自下而上的方法中,我们从底部开始格,并在每个连续的点上评估分数水平。我们必须决定较大的父集合是“值得的”。重建性分析(RA)社区的标准方法使用了以下事实chi^2(X,Y)大约等于I(X,Y)Nln(4),其中N是样本和I(X,Y)是X和Y之间的互信息(MI)。因此,我们可以使用chi^2测试来确定心肌梗死评分的增加是否具有统计学意义。(这也为我们提供了一些关于连接的信心度量我们学到了什么。)或者,我们可以使用BIC分数。

当然,如果我们不知道我们是否已经达到了最大可能得分,我们不知道何时停止搜索,因此我们必须评估晶格中的所有点(尽管我们显然可以使用分叉装订)。对于大n,这是计算上不可行,所以通常的方法是只搜索直到K级(即假设最大父级数有界每个节点的),这需要O(n^K)时间。

避免指数成本的明显方法(以及bound,K)是使用启发式避免检查所有可能的子集。(事实上,我们必须使用某种启发式,因为学习最佳结构是NP-hard\site{Chickering95}。)RA框架中的一种方法称为扩展依赖性分析(EDA)\引用{Conant88}如下。首先评估大小不超过两个的所有子集,将所有子集保留为与目标节点的重要(在chi^2意义上)MI,并取结果集的并集作为一组父母。

这种贪婪技术的缺点是找不到集合父母的,除非某个2号的子集与目标变量。然而,蒙特卡洛{Conant88}中的模拟表明,大多数随机关系此属性。此外,高度相互依赖的父母群体(可能成对MI测试失败)违反因果关系独立性假设,这是证明使用噪声-OR和类似CPD。

UAI社区中流行的另一种技术是对模型结构进行初步猜测(即,在特定的点),然后执行局部搜索,即评估晶格中相邻点的得分,然后移动到最佳点,直到达到局部最优。我们可以使用多次重新启动来尝试找到全局最优值,并学习一组模型。注意,在部分可观察的情况下,我们需要有一个模型结构的初始猜测,以估计值隐藏节点的数量,以及每个模型的(预期)得分;从完全开始断开连接的模型(即位于晶格底部)将是一个糟糕的模型想法,因为这会导致一个糟糕的估计。

未知结构,部分可观测性

最后,我们来讨论最困难的情况,即结构未知且存在隐藏变量和/或缺失数据。在这种情况下,为了计算贝叶斯得分,我们必须边缘化隐藏节点和参数。由于这通常是棘手的,因此通常使用渐近近似后验称为BIC(贝叶斯信息标准),定义如下:
\log\Pr(D|G)\approx\log\Pr[D|G,\hat{\Theta}_G)-\frac{\log N}{2}\#G
其中N是样本数,\{\Theta}_G是参数的ML估计值,#G是模型的尺寸。(在完全可观察的情况下,模型的尺寸是数字自由参数的。在具有隐藏变量的模型中,它可能会更少而不是这个。)第一项是可能性和第二项是对模型复杂性的惩罚。(BIC分数与最小描述长度(MDL)相同分数。)

尽管BIC分数分解为当地术语的总和节点,本地搜索仍然很昂贵,因为我们需要在每个计算\hat{\Theta}的步骤。另一种方法是EM的M步骤中的本地搜索步骤-这称为结构EM,并可证明收敛到BIC的局部最大值分数(弗里德曼,1997)。

创建新的隐藏节点

到目前为止,结构学习意味着找到正确的连接在预先存在的节点之间。更有趣的问题是发明按需隐藏节点。隐藏节点可以创建更多模型紧凑,如下所示。
(a) 带有隐藏变量H(b)的BN最简单网络可以捕获相同的分布而不使用隐藏变量(使用圆弧反转和节点消除创建)。如果H是二进制的,而其他节点是三元的,那么我们假设已经满了CPT,第一个网络有45个独立参数,第二个网络有708个。

标准方法是不断添加一次隐藏一个节点,连接到网络的某些部分(见下文),在每个位置进行结构学习步骤,直到分数下降。一个问题是选择基数(可能值的数量)隐藏节点及其CPD类型。另一个问题是选择添加新隐藏节点的位置。把它变成孩子是没有意义的,因为隐藏的孩子总是可以被边缘化,所以我们需要找到一个需要当当前的一组可能的父对象不足够时,可以选择一个新的父对象。

\引用{Ramachandran98}使用以下启发式方法查找节点他们认为需要新父母一个几乎总是打开的noisy-OR节点,即使它没有泄漏作为一名家长指示缺少父项。将这项技术推广到嘈杂的OR之外是一个有趣的开放问题。一种方法可能是检查H(X | Pa(X)):如果这个值很高,就意味着当前的父母不足以“解释”剩余熵;如果Pa(X)是我们所能做到的最好的父母(在BIC或chi^2意义上)要在当前模型中找到建议我们需要创建一个新节点并将其添加到Pa(X)。

在DBN的情况下,发明隐藏节点的一个简单的启发式方法是检查是否违反了马尔可夫特性节点。如果是这样,它表明我们需要连接来进一步分割回到过去。同样,我们可以添加新的滞后变量并连接到它们。

当然,解释隐藏节点的“含义”总是很棘手,尤其是因为它们通常无法识别,例如,我们经常可以转换对真与假状态的解释(为简单起见,假设隐藏节点是二进制的)还要适当地排列参数。(这样的对称是似然曲面中多重最大值的一个原因。)

关于学习的进一步阅读

以下是很好的教程文章。

决策理论

人们常说“决策理论=概率理论+效用理论”。我们在上面概述了如何在用稀疏图反映条件独立性的紧致方法关系。也可以在中分解多属性效用函数类似的方式:我们为总和中的每个项创建一个节点将所有属性(随机变量);通常,实用程序节点将将操作节点作为父节点,因为实用程序依赖于世界现状和我们的行动。结果图称为影响图。原则上,我们可以使用影响图计算为了最大化而要执行的最佳操作(顺序)预期效用,尽管这对所有人来说都是难以计算的但最小的问题。

经典控制理论主要涉及特殊情况其中图形模型是线性动力系统效用函数是负二次损失,例如,考虑导弹跟踪飞机:其目标是最小化平方自身与目标之间的距离。当实用程序功能和/或系统模型变得更加复杂,传统方法故障,必须使用强化学习找到最佳策略(从状态到操作的映射)。

应用

使用最广泛的贝叶斯网无疑是嵌入在Microsoft的产品,包括AnswerOffice 95的向导,Office Assistant(弹跳曲别针的家伙)Office 97和30多个技术支持疑难解答。

BNs最初是试图将概率添加到专家系统,这仍然是BN最常见的用途。一个著名的例子是QMR-DT,Quick Medical的决策理论改写参考(QMR)模型。

在这里,顶层表示隐藏的疾病节点,而底层表示该层表示观察到的症状节点。目的是推断给定的每种疾病的后验概率所有症状(可能存在、缺失或未知)。QMR-DT连接紧密,无法进行精确推断。各种近似值已使用的方法包括采样、变分和循环信仰传播。

另一个有趣的现场应用程序是远景系统,已开发埃里克·霍维茨。Vista系统是一个决策理论系统,已在美国国家航空航天局休斯顿任务控制中心(NASA Mission Control Center)工作了几年。系统使用贝叶斯网络解释实时遥测并提供建议航天飞机可能出现其他故障推进系统。它还考虑了时间关键性并建议预期效用最高的操作。Vista系统还采用控制信息显示的决策理论方法动态识别要突出显示的最重要信息。霍维茨继续尝试将类似技术应用于微软产品,例如Lumiere项目。

BN的特殊情况是由许多不同的人独立发明的社区,例如用于遗传学(连锁分析)、语音识别(HMM)、跟踪(卡尔曼滤波)、数据压缩(密度估算)和编码(涡轮增压器)等。

有关其他应用程序的示例,请参见程序的特别问题。ACM 38(3),1995年,微软决策理论组页面.

生物学应用

这是最热门的领域之一。如需查看,请参阅

推荐的入门读物

按时间倒序排列。

评论文章

精确推断

近似推断

学习

数据库编号