基于采样的推理算法利用的思想是 概率 = 大样本下频率。故在获得图模型以及CPD的基础上,通过设计采样算法模拟事件发生过程,即可获得一系列事件(联合概率质量函数)的频率,从而达到inference的目的。
1、采样的做法
使用采样算法对概率图模型进行随机变量推理的前提是已经获得CPD。举个简单的例子,如果x = x1,x2,x3,x4的概率分别是a1,a2,a3,a4.则把一条线段分成a1,a2,a3,a4,之后使用Uniform采样,x落在1处,则随机变量取值为a1...依次类推,如图所示。
显然,采样算法中最重要的量就是采样的次数,该量会直接影响到结果的精度。关于采样次数有以下定理:
以简单的贝叶斯模型为例,如果最终关心的是联合概率,条件概率,单一变量的概率都可以使用采样算法。
下图共需要设置 1+1+4+2+3 =11 个uniform采样器,最终得到N个结果组合(d0i1g1s0l1等)。最后计算每个组合出现的频率即可获得联合概率分布。通过边缘化则可获得单一变量概率。如果是条件概率,则去除最终结果并将符合条件的取出,重新归一化即可。
总结可知,采样算法有以下性质:
1.精度越高,结果越可靠,需要的采样次数也越多。
2.所关心的事件发生的概率很小,则需要很大的采样次数才能得到较为准确的结果。
3.如果随