首页 理论教育 动态贝叶斯网络

动态贝叶斯网络

时间:2022-02-11 理论教育 版权反馈
【摘要】:总的来说,动态贝叶斯网络中的每个时间片都具有任意数量的状态变量Xt与证据变量Et。需要指明的是,每个隐马尔可夫模型都可以表示为一个在每个时间片中只包含一个状态变量和一个证据变量的动态贝叶斯网络。区别在于,通过将复杂系统的状态分解成一些组成变量,动态贝叶斯网络能够充分利用时序概率模型中的稀疏性。另一方面,动态贝叶斯网络则可以对任意分布建模。

动态贝叶斯网络(dynamic bayesian network),或缩写为DBN,是表示第15.1节中描述的那种时序概率模型的贝叶斯网络。我们已经见到过一些动态贝叶斯网络的例子:图15.2中的雨伞网络以及图15.7中的卡尔曼滤波器网络。总的来说,动态贝叶斯网络中的每个时间片都具有任意数量的状态变量Xt与证据变量Et。为了简化,我们将假设变量与有向边从一个时间片到另一个时间片是精确复制的,并且动态贝叶斯网络表示的是一个一阶马尔可夫过程,所以每个变量的父节点或者在该变量本身所在那个时间片中,或者在与之相邻的上一个时间片中。

需要指明的是,每个隐马尔可夫模型都可以表示为一个在每个时间片中只包含一个状态变量和一个证据变量的动态贝叶斯网络。另外,每个由离散变量所构成的动态贝叶斯网络都可以看成是一个隐马尔可夫过程;如在第15.3节中解释的,我们可以把动态贝叶斯网络中的所有状态变量合并成一个单一的状态变量,其取值为各单个状态变量所有可能的取值组成的元组。现在,如果每个隐马尔可夫模型都是一个动态贝叶斯网络,而每个动态贝叶斯网络又都可以转化成隐马尔可夫模型,那么这二者之间的区别是什么?区别在于,通过将复杂系统的状态分解成一些组成变量,动态贝叶斯网络能够充分利用时序概率模型中的稀疏性。例如,假设一个动态贝叶斯网络具有20个布尔状态变量,其中每一个变量都在前一个时间片中有 3 个父节点,那么动态贝叶斯网络的转移矩阵中有20 × 23= 160个概率,而对应的隐马尔可夫过程有220种状态,因此在转移模型中有240个概率(大约等于 1T,即一万亿)。这是很糟糕的,至少有三方面原因:首先,隐马尔可夫模型本身需要更大的空间;其次,庞大的转移矩阵使得隐马尔可夫模型中的推理代价更加昂贵;再次,要学习数目如此巨大的参数非常困难,这个问题使得纯隐马尔可夫模型不适合大规模的问题。动态贝叶斯网络和隐马尔可夫模型之间的关系大概可以类比于普通贝叶斯网络和表格形式的全联合概率分布之间的关系。

我们已经解释过,每个卡尔曼滤波器模型都可以在一个具有连续变量线性高斯条件分布的动态贝叶斯网络中进行表示(图15.7)。不过根据前一节末尾的讨论,应该明确的是并非每个动态贝叶斯网络都可以用卡尔曼滤波器模型来表示。在卡尔曼滤波器中,当前状态分布总是一个单一的多元高斯分布——也就是,在特定位置上有唯一的“拐点”。另一方面,动态贝叶斯网络则可以对任意分布建模。对于很多现实世界的应用,这种灵活性是本质的。例如,考虑我的钥匙的当前位置。它可能在我的衣兜里,在床头柜上,在厨房灶台上,或者正挂在前门上。一个包含了所有这些位置的单一高斯拐点可能会为“钥匙位于前厅的半空中”分配较高的概率。现实世界中的各个方面,例如特定目标智能体、障碍物以及衣服口袋等都会引入“非线性”,为了得到合理的模型,要求把离散变量和连续变量结合起来。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈