首页 理论教育 不确定域中的知识表示

不确定域中的知识表示

时间:2022-02-11 理论教育 版权反馈
【摘要】:在一个正确构造的网络中,箭头的直观含义通常表示X对Y有直接的影响。图14.1显示了表示这些关系的贝叶斯网络结构。这些因素实际上已经被概括在与从Alarm到JohnCalls或者到MaryCalls这两条边相关联的不确定性中了。每一行的概率加起来的和必须为 1,因为行中条目表示了该对应变量的一个无遗漏的情况集合。而对于没有父节点的节点而言,它的概率分布表只有一行,表示了该变量可能取值的先验概率。

14.1 不确定域中的知识表示

在第十三章中我们了解到,全联合概率分布能够回答关于域的任何问题,但是当变量数目增多时,域的规模会增大到不可操作的程度。此外,为每个原子事件指定概率是很不自然的,而且可能是非常困难的,除非有大量的可用数据,能够从中收集信息进行统计估计。

我们也了解到,变量之间的独立性和条件独立关系可以大大减少为了定义全联合概率分布所需指定的概率数目。本节将介绍一种称为贝叶斯网络(bayesian network)[11]数据结构,用于表示变量之间的依赖关系,并为任何全联合概率分布提供一种简明的规范。

贝叶斯网络是一个有向图,其中每个节点都标注了定量概率信息。其完整的详细描述如下:

(1)一个随机变量集组成网络节点。变量可以是离散的或者连续的。

(2)一个连接节点对的有向边或箭头集合。如果存在从节点X指向节点Y的有向边,则称X是Y的一个父节点。

(3)每个节点Xi都有一个条件概率分布P(Xi|Parents(Xi)),量化其父节点对该节点的影响。

(4)图中不存在有向环(因此是一个有向无环图,或缩写为DAG)。

网络的拓扑结构——即节点和边的集合——用一种精确而简洁的方式描述了在域中成立的条件独立关系。在一个正确构造的网络中,箭头的直观含义通常表示X对Y有直接的影响。对于域的专家来说,要确定域中存在什么样的直接影响通常是容易的——事实上,这确实比指定概率本身要容易得多。一旦设计好贝叶斯网络的拓扑结构,我们只需要为每个节点指定其相对于给定父节点的条件概率就可以了。我们将看到拓扑结构和条件概率分布的结合足以指定(隐含地)所有变量的全联合概率分布。

回忆第十三章中描述的由Toothache,Cavity,Catch以及Weather构成的简单世界。我们认为Weather和其它变量是相互独立的,而且给定了Cavity以后Toothache和Cavity是条件独立的。图14.1显示了表示这些关系的贝叶斯网络结构。形式上,Toothache和Catch在给定Cavity时的条件独立性是通过在Toothache和Catch之间没有相连接的边指明的。直观地看,这个网络表示了Cavity是Toothache以及Catch的直接原因的事实,虽然在Toothache和Catch之间并不存在直接的因果关系


图14.1 一个简单的贝叶斯网络,其中Weather和其它3个变量是相互独立的,而给定了Cavity以后Toothache和Cavity是条件独立的

现在考虑下面这个稍微复杂一点的例子。你在家里新安装了一个防盗报警器。这个报警器对于探测盗贼的闯入是很可靠的,但是偶尔也会对轻微的地震有反应。(这个例子来自Judea Pearl,他居住在洛杉矶,因此对地震有比较强烈的关注。)(洛杉矶曾于1994年1月17日凌晨发生里氏6.6级地震。地震造成58人死亡,600多人受伤,财产损失达300多亿美元——译者注。)你还有两个邻居John和Mary,他们保证在你工作时如果听到警报声就给你打电话。John听到警报声时总是会给你打电话,但是他有时候会把电话铃声当成警报声,然后也会给你打电话。另一方面,Mary特别喜欢大声听音乐,因此有时根本听不见警报声。给定了他们是否给你打电话的证据,我们希望估计有人入室行窃的概率。这个域的贝叶斯网络显示在图14.2中。


图14.2 一个典型的贝叶斯网络,显示了其拓扑结构和条件概率表(CPT)。在CPT中,字母B,E,A,J,M分别表示Burglary(盗贼),Earthquake(地震),Alarm(警报),JohnCalls(John打电话)以及MaryCalls(Mary打电话)

让我们暂时先忽略图中的条件概率分布,而将注意力集中于网络的拓扑结构上。在这个防盗网络的案例中,拓扑结构表明盗贼和地震直接影响到警报的概率,但是John或者Mary是否打电话只取决于警报声。因此网络表示出了我们的一些假设:他们不直接感知盗贼,也不会注意到轻微的地震,并且他们不会在打电话之前交换意见。

注意网络中没有对应于Mary当前正在大声听音乐或者电话铃声响起来使得John误以为是警报的节点。这些因素实际上已经被概括在与从Alarm到JohnCalls或者到MaryCalls这两条边相关联的不确定性中了。这同时体现了操作中的惰性与无知:要搞清楚为什么那些因素会以或多或少的可能性出现在任何特殊情况下,需要大量的工作,而且无论如何我们没有合理的途径获得相关信息。上面的概率实际上概括了各种情况的潜在无限集合,其中包括报警器可能会失效的情况(诸如环境湿度过高、电力故障、电池没电了、电线被切断了、警铃里卡了一只死耗子,等等)或者John和Mary没有打电话报告的情况(诸如出去吃午饭、外出度假、暂时性耳聋、直升机路过,等等)。这样,一个小小的智能体可以处理非常庞大的世界,至少是近似地处理。如果我们引入附加的相关信息,近似的程度还可以提高。

现在让我们回到图14.2中所示的条件概率分布。在图中,每一个分布都被显示为一个条件概率表,或缩写为CPT(conditional probability table)。(这种形式的表格可以用于离散随机变量;其它表示方法,包括适合于连续随机变量的那些方法,在第14.2节中描述。)CPT中的每一行包含了每个节点值对于一个条件事件(conditioning case)的条件概率。条件事件就是所有父节点的取值的一个可能组合——可以把它视为一个原子事件的缩影,如果你愿意的话。每一行的概率加起来的和必须为 1,因为行中条目表示了该对应变量的一个无遗漏的情况集合。对于布尔变量,一旦你知道了它为真的概率为 p,那么它为假的概率就是1 – p。因此,我们经常省略第二个数值,如图14.2中所示。一般而言,一个具有k个布尔父节点的布尔变量的条件概率表中有2k个独立的可指定概率。而对于没有父节点的节点而言,它的概率分布表只有一行,表示了该变量可能取值的先验概率。

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

我要反馈