直观地讲,推断就是根据已知条件来判断或查询未知信息。比如医生诊断,根据病人的症状(发烧,出汗等),来判断病人最有可能是得了什么病(感冒或其他病)。在这里,病人的症状就是已知条件,而病因就是查询的目标事件。用PGM来表示该类问题,即给定模型P(E,Y),已知E=e,计算MAP(Y|E = e) = arg max P(y,e)。
上述所举的例子只体现了PGM查询类型之一,实际上通过PGM推断可以实现三种类型的查询功能:
1. 概率查询。给定模型P(Y,E),已知条件E=e,求P(Y|E=e);变量E代表证据,Y表示待查询变量;可以理解为给定证据,各事件的后验概率分布;
2. MAP查询。已知条件E=e,求MAP(Y|E = e) = arg max P(y,e)。
y
模型变量集合为X = Y+E。
MAP查询实际上是基于概率查询求取最大值。需要注意MAP查询和概率查询的区别:对于给定证据,MAP查询的目标是获得概率最大的事件,而概率查询的目标只是未知事件的概率分布。
3. 边缘MAP查询。该类查询与MAP查询的区别是:MAP查询是求取除证据E以外所有未
知变量的后验联合概率分布,边缘MAP查询的目标是未知变量的子集。可以把MAP
查询看作是边缘MAP查询的一种特殊情况。形式化表示如下:
已知条件E=e,求MAP(Y|E = e) = arg max sum(P(y,z|e)。
Y z
模型变量集合为X = Z+Y+E。可以看到与MAP查询相比多了变量Z,该变量表示既非
证据也非待查询的变量。因为这里只查询Y,不需要知道Z的信息,所以通过对Z边缘化消除该变量。