吉布斯采样,马尔科夫链蒙特卡洛方法MCMC——CVMLI Prince读书随笔第7章
以前对吉布斯采样一直很迷,今天把它弄清楚!
问题
采样即从待推断的环境中获取样本。
对于有向图模型,可以通过原始采样法(ancestral sampling),即按照拓扑顺序采样。这样得到的每一维度都是有效的。
但是对于无向图模型,没法判断先采哪个。如果按照原始采样法,采哪个维度都有问题,因为其对应的不独立的维度并不知晓。
方法
一种可行的方法是马尔科夫链蒙特卡洛(MCMC)方法。原理是:
- 从分布中产生一系列样本,每个样本直接依赖先前采样样本,即“马尔科夫”。 同时,样本产生并非完全确定,即“蒙特卡洛”。(这是书上原话)
吉布斯采样
这是一种最简单的MCMC方法。方法为:
- 用任意方法随机选择初始状态.
- 任意顺序轮流更新每个维度,产生下一个样本. 为了更新第维,固定其他维度,从条件分布采样。
重复次数足够多后,初始条件的设置将不在影响最终结果,达到这样的条件后,按此顺序的采样马可视为来自。(证明超出书本范围)。如下图。
后记
- 对于无向图,由于条件独立性存在,所以从分布采样,可以仅用的所有邻居节点。
- 但总的来说,这种采样方法效率十分低下。