上一篇博文用癌症检测的问题,发现即便是被准确率高达90%的仪器检测出了癌症,但实际得癌症的概率却如此之低。从这个例子引出了贝叶斯定理这个工具,利用这个工具可以计算一个普遍的问题那就是“检测问题”。如图,A是无法观察到的(是否是癌症患者),B是可以观测到的(仪器检测是否成阳性)。B关联于A,在知道B的结果的情况下求A的概率。
这两个相互关联的事件其实构成了一个简单的贝叶斯网络。
回到癌症检测这个问题来,如果你去医院连续做了两次癌症检测,这两次癌症检测的结果是关联的吗?
答案是关联的,也就是说第一次检测的结果会影响到第二次检测的结果。这个也很好理解,就是如果第一次检测成阳性,那么第二次检测成阳性的概率肯定就会增大。这也可以用贝叶斯网络画出一个简单的关系。如图三个事件的关系,T1和T2就是两次检测结果,C是指这个人是否患癌症。
那如果已知病人患癌症,那第一次和第二次的检测结果还互相关联吗?
答案是两次检测结果相互独立不再关联。这个也很好理解,癌症患者被检测到结果成阳性的概率P(+|C)只与机器的准确率有关系,跟你测一万次被检测到成阳性的概率都是90%,跟你前一次检测结果毫无关系。
再举一个例子,比如我今天的心情的好坏只与两个事件有关,第一是今天的天气是否晴朗,第二是我是否加薪。贝叶斯网络如下图,
现在第一个问题是:我加薪的概率与今天天气是否晴朗的概率是否关联?
估计你用脚趾都能算出来,我加薪的概率跟天气没有半毛钱关系,两者相互独立!
那如果我今天很高兴呢?(也就是我的心情是知道的),那天气和加薪是否相互独立呢?
答案是这种情况下两者是关联的,而非相互独立的。为什么呢?如果你发现我今天很高兴,然后你看今天天气又不好,那我们今天加薪的概率肯定就回提高嘛。也就是说天气是否晴朗的概率就影响了我是否加薪的概率。
这种比较简单的贝叶斯网络很好理解,那复杂的情况怎么办呢,比如汽车故障的检测问题,如下图:
如此多的事件相互关联,如何判断每个事件是否相互关联呢?
其实我们只需要将贝叶斯网络的几个基本关系就可以了,如图
左边Active triplets 表示事件互相关联的情况,其中第一和第二张图很好理解,第三张图实际上就是我举的天气的例子(已知我很高兴,那天气是否晴朗跟我是否加薪就关联了)。第四张图可以这样理解,比如我是否高兴与我是否出去跑步相关联,那如果已你看到我今天在外面跑步,那你就知道了我今天高兴的概率肯定很高,于是加薪和天气这两个事件就关联起来了。
右边Inactive triplets表示事件相互独立的情况,第二张图和地三张图我在文中的例子中已经给出来了,第一张图的情况也很好理解,比如三个事件分别代表我是否加薪,我是否高兴,和我是否出去跑步。在不知道我心情的情况下我出去跑步的概率显然受我是否加薪影响。那如果已知我很高兴了,那我是否出去跑步就只与我高兴的程度有关了是不是?而与我是否加薪就没关系了(相互独立了)
OK知道上面那个图就很好判断事件的相互联系了, 给个思考题目吧,如图:F是否与A独立?在不知道任何事件的情况下(F⊥A)?;已知D的情况下(F⊥A | D)?;已知G的情况下(F⊥A | G)?;已知H的情况下(F⊥A | H)?
欢迎留言讨论。
相关文章
如果体检癌症检测成阳性(准确率为90%)……怎么办
人工智能学习笔记之——人工智能基本概念和词汇
人工智能学习笔记二 —— 定义问题