泛统计理论初探——初探Gibbs采样

统计学习-Gibbs采样简介

初探Gibbs采样方法
    在上一篇文章中,我们介绍了MCMC抽样和MH抽样的方法,在本次文章中将会介绍Gibbs抽样方法,这种方法其实是基于MCMC抽样的一种优化方法,它的目标是能够在某些情况下无法得到各个特征的联合分布的时候进行使用,也就是使用Gibbs抽样在大多数实际情况的效果比较好,因为现实生活中有很多时候特征之间的分布是无法得知的,所以Gibbs抽样方法的这种通用性使得它在很多领域中被使用。
    Gibbs采样其实也被称为是交替条件采样,因为在每一论抽样的过程中,Gibbs采样方法都会把当前被抽样的变量被其他变量的观测值通过贝叶斯公式计算得出的后验分布,从这个后验分布进行抽样后得到一个抽到的样本值并进行记录。下面我们来介绍一下Gibbs采样的步骤:
    1)首先是初始化一些Gibbs算法的基本参数,比如抽样所需要的样本数N,转移状态次数的阈值U,平稳分布P或者对应的各个特征的条件概率分布,并且对N个样本的状态值进行初始化赋值处理。
    2)而对于当前状态t=0到N+U-1的状态之中,重复下述的步骤3
    3)从条件概率分布P(X(k)|Xt+l(1),Xt(2),……Xt(n))采样后得到样本Xt(k)
    一直重复上述步骤后,最终满足阈值后退出,并且得到所需的样本集合,根据上述的步骤我们可以发现,这种Gibbs采样方法就是固定其他的K-1个特征,并且对第K个特征进行采样,如此循环多轮后就是得到了Gibbs采样的结果。
    其实对于Gibbs抽样方法来说,方法本身就数学层面来说是比较准确的,因为它依赖的理论其实就是贝叶斯统计思想,并且在这个基础上它进行的是变量的一种坐标轮换制度,通过每次只抽取一个变量,并且利用了其他变量的信息后进行求接,相对来说是一种控制变量的方法,在直观理解上是比较合理的。从计算机程序的角度来说,Gibbs方法的计算过程是比较缓慢的,并且由于它每一次的计算都需要利用上一次的抽样结果,所以是是比较难进住并行化处理的,对于数据量大或者特征大的情况来说是会使得抽样的速度比较慢,影响用户的体验。当然使用者其实可以采用其他的抽样思路,比如变分法等。
    总的来说,Gibbs抽样因为它使用的是基于贝叶斯公式的条件概率计算,从而较好地结合了观测值的后验信息,在高维特征的情况下会比MH抽样更具有优势。其实Gibbs采样就是一种二分类的分割方法,每一次拿出其中一个变量,剩下的变量一起作为另一类,通过这样反复计算和迭代后得到结果。所以在一维情况下,是没有办法使用Gibbs抽样的,最少是两个维度才能使用,因为在一个维度的时候无法将剩下的维度作为条件进行计算。在当前的大数据时代,数据都是海量并且高维度的,使用Gibbs抽样的MCMC方法可以较好地在海量数据中抽取相对比较有代表性的样本数据,从而帮助使用者通过较小的成本去了解自己所要处理的海量数据的大致分布特征。

猜你喜欢

转载自blog.csdn.net/qq_26727101/article/details/108809914