吉布斯采样是用条件概率得到联合概率分布
其实是得到我们想要东西的近似解

目录

  • 1 蒙特卡罗
  • 2 马尔科夫链
  • 3.MCMC采样
  • 4 MH采样
  • 5 吉布斯采样

1 蒙特卡罗

蒙特卡洛方法是为了解决一些不太好求解的求和或者积分问题。

其实就是一个近似方法,通过采样的多个样本代替原本的连续函数,帮助我们把这个式子解出来。
对于一些常见的概率分布p(x),如正态分布等,我们先通过一些公式将其转换为0-1之间的数,(均一化处理嘛,)然后进行采样。
对于不太常见的概率分布f(x),我们用一个常见的概率分布(如高斯分布)q(x)把他蒙上,就是让 f(x)<=k*q(x),k是常数。
然后对p(x)进行采样得到z0,,对0到kq(z0)之间均匀分布采样得到y0,要求接受的样本点(z0,y0)不能落在f(z0)和kq(z0)之间,就是下图灰色区域,灰色是拒绝区域。(图来自参考链接)
这里其实我还是不太理解怎么就可以用不断的接受拒绝q来模拟p了,
最终的结果公式:(蒙特卡洛一般形式 p是概率分布,f是要求积分的公式,n是采样n次)

参考:MCMC(一)蒙特卡罗方法

2 马尔科夫链

马尔科夫链接触过很多次了,就是说下一个时刻的状态只依赖于前一个时刻的状态
马尔科夫状态转移矩阵P,我们假设其中p(i,j)是状态i到状态j转移的概率,比如状态i是吃饭,状态j是拉肚子,那么p(i,j)==0.35就是吃饭后拉肚子的概率是0.35.
马尔科夫链的一个性质是,经过非常多次状态转换后,我们得到的最终的状态分布和初始状态分布关系不大,只和状态转移矩阵有关最终的状态概率分布比较稳定

要求:
非周期的马尔科夫链,如果是周期的不会收敛。
任意两个状态是联通的,就是通过有限个步骤可以到达的。
马尔科夫链的状态数可以是有限的或者是无限的(无限的比如连续函数)
如果上一个状态向量T,则最终稳定时的状态分布 TP=T,T为马尔科夫链的平稳分布。

马尔科夫链的采样:
1.得到状态转移矩阵P,采样(任意简单概率分布都可以)得到初始状态概率分布x0,设置状态转移次数阈值n1,需要的样本个数n2
2.for t =0 to n1+n2-1 ,从条件概率分布p(x|xt)中采样得到样本x t+1;
我们需要的平稳分布对应的样本集就是(xn1,xn1+1,xn1+2,…x n1+n2-1

就是要通过这些样本集,进行蒙特卡洛模拟,得到马尔科夫链中的平稳分布,就是TP中的T。

这里我不太理解,为什么需要蒙特卡洛模拟 ,这里最终采样得到的X应该都接近于T了,也就是说,只要把所有的样本累加除以n2就可以了吧?
这里如果带入蒙特卡洛一般公式的话这里的p是谁呢?怎么得到呢?

参考:MCMC(二)马尔科夫链

3.MCMC采样

MCMC采样是想要通过马尔科夫链的平稳分布获得马尔可夫链的转移矩阵。

MCMC算法过程如下:
1.获得平稳分布T,任意选定的转移矩阵Q,采样(任意简单概率分布)得到初始状态概率分布x0,设置状态转移次数阈值n1,需要的样本个数n2
2.for t =0 to n1+n2-1 ,
条件概率分布Q(x|xt) 中采样得到样本xt+1;
从均匀分布(0,1)采样u
如果u< α\alphaα(xt,x*), 其中α\alphaα(xt,x*)=T(x*)Q(x * , xt),
则接受转移 xt -> x* 就是 xt+1=x*,
否则不接受转移, xt+1=xt
样本集就是(xn1,xn1+1,xn1+2,…x n1+n2-1)
这里的接受拒绝也没看懂,就是为什么要用u来进行比较,这里的u进行多次采样,采样本身应该是符合高斯分布的。只能大概有这个感觉。

链接:MCMC(三)MCMC采样和M-H采样

4 MH采样

MH采样解决了MC接受率过低的问题。
对上面的 α\alphaα(xt,x*)进行了改进,
这样的话就是让u更容易小于α\alphaα,更容易被接受,其余和 MCMC没有区别

5 吉布斯采样

定义:
吉布斯采样(英语:Gibbs sampling)是统计学中用于马尔科夫蒙特卡洛(MCMC)的一种算法,用于在难以直接采样时从某一多变量概率分布中近似抽取样本序列。该序列可用于近似联合分布部分变量的边缘分布计算积分(如某一变量的期望值)。某些变量可能为已知变量,故对这些变量并不需要采样。
来源:维基百科定义

吉布斯采样程序的每一步都涉及用某个变量相对于其他变量的条件概率分布中抽样得出的值代替该变量的值。

具体方法
  首先随便初始化一个组合,i.e. 学习+晚上+刮风,
  然后依条件概率改变其中的一个变量。
  具体说,假设我们知道晚上+刮风,我们给E生成一个变量,比如,学习-》吃饭。我们再依条件概率改下一个变量,根据学习+刮风,把晚上变成上午。类似地,把刮风变成刮风(当然可以变成相同的变量)。这样学习+晚上+刮风-》吃饭+上午+刮风。
  同样的方法,得到一个序列,每个单元包含三个变量,也就是一个马尔可夫链。然后跳过初始的一定数量的单元(比如100个),然后隔一定的数量取一个单元(比如隔20个取1个)。这样sample到的单元,是逼近联合分布的。
  
来源:csdn_吉布斯采样(Gibbs Sampling)

也就是,吉布斯采样采用的是坐标轴轮换(维度轮换)的思维进行采样,每次固定某个轴a,以其他轴为 条件 进行采样,预测a在t+1时刻的值。
参考:MCMC(四)Gibbs采样

【LDA】吉布斯采样相关推荐

  1. 【机器学习】主题建模+隐狄利克雷分配模型(LDA)+吉布斯采样

    [主题建模] 大数据时代,面对海量的数据,如果能知道它的主题是什么,从数据压缩的角度来看,我们可以通过很少量的主题来管理很大亮的文档数据集合,从而实现一个比较简洁的操作和管理文档集合的目的:除此之外, ...

  2. LDA 吉布斯采样(Gibbs Sampling)的公式推导

    假设读者已经了解 LDA 的来龙去脉. 需要明确采样的含义: 随机变量是总体,采样就是按照总体的概率分布(指示了样本出现的概率)抽取样本的过程.样本应该能正确反映总体的情况,即样本与总体应该具有相同的 ...

  3. 随机采样和随机模拟:吉布斯采样Gibbs Sampling

    2016年05月12日 00:24:21 阅读数:45658 http://blog.csdn.net/pipisorry/article/details/51373090 吉布斯采样算法详解 为什么 ...

  4. 吉布斯采样(Gibbs Sampling)

    吉布斯采样(Gibbs Sampling)   常用于DBM和DBN,吉布斯采样主要用在像LDA和其它模型参数的推断上.   要完成Gibbs抽样,需要知道条件概率.也就是说,gibbs采样是通过条件 ...

  5. 从马尔科夫链到吉布斯采样与PageRank

    马尔科夫链表示state的链式关系,下一个state只跟上一个state有关. 吉布斯采样通过采样条件概率分布得到的样本点,近似估计概率分布P(z)P(z).PageRank通过节点间的连接,估计节点 ...

  6. MCMC笔记:吉布斯采样(Gibbs)

    1 介绍 吉布斯采样是一种特殊的MH采样 MCMC笔记Metropilis-Hastings算法(MH算法)_UQI-LIUWJ的博客-CSDN博客 此时我们要采样的分布是一个高维的情况 吉布斯采样的 ...

  7. 统计学习方法第二十章作业:潜在狄利克雷分配 LDA 吉布斯抽样法算法 代码实现

    潜在狄利克雷分配 LDA 吉布斯抽样法算法 import numpy as np import jiebaclass LDA:def __init__(self,text_list,k):self.k ...

  8. 使用MATLAB贝叶斯工具箱(BNT),进行吉布斯采样(Gibbs Sampling)之前需要做的编译工作...

    使用BNT(Bayesian Networks Toolbox)进行推断时,内置了吉布斯采样算法(即gibbs_sampling_inf_engine),但是如果调用这个引擎做推断会报错.报错内容大概 ...

  9. 【人工智能】对贝叶斯网络进行吉布斯采样

    问题 现要求通过吉布斯采样方法,利用该网络进行概率推理(计算 P(R=T|S=F, W=T).P2(C=F|W=T)的概率值). 原理 吉布斯采样的核心思想为一维一维地进行采样,采某一个维度的时候固定 ...

最新文章

  1. 013 自动吃药功能的设计和实现
  2. mysql 加减乘除取小数点_mysql加减乘除
  3. linux下以RPM方式安装MySQL5.5
  4. windows系统搭建图像识别开发环境
  5. stata15中文乱码_如何解决 Stata 14 的中文乱码问题
  6. 实操:直通车暴力打造爆款,0销量4天搜索访客800!
  7. 一元二次方程极简新解法
  8. openwrt 无线基础知识介绍
  9. 【jzoj5335】早苗
  10. java-net-php-python-java西藏文库计算机毕业设计程序
  11. mtk平台androidl usb uvc camera 调试记录
  12. ker矩阵是什么意思_如何理解正定矩阵和半正定矩阵
  13. hiwifi(gee极路由)路由器配置:
  14. BCG矩阵—波士顿矩阵
  15. 静态磨损衡和动态磨损平衡
  16. 雾计算(fog computing)
  17. 通行费电子发票可以抵扣吗?通行费电子发票怎么打印?
  18. 解决视频的声音和画面不同步问题
  19. 苹果app(iOS app)的URL schemes
  20. Abaqus——悬臂梁问题之工字梁实例

热门文章

  1. 【OpenCV学习】用绘图函数画一个奥运志愿者笑脸徽章
  2. linux写一个10的阶乘,C语言练习题:求1到10的阶乘之和简单实例
  3. 12种新大傻 这是周立波总结的? 超级人才
  4. 三级网络技术_IP地址规划与设计方法
  5. 数据名称:中国流动人口动态监测调查数据CMDS数据时间跨度为:2010-2018年中国流动人口动态监测调查数据(China Migrants Dynamic Survey,简称CMDS)是国家卫生
  6. 手把手调参最新 YOLOv7 模型 推理部分 - 最新版本(一)
  7. Layui页面元素之选项卡、进度条、面板、表格 、徽章、时间线、辅助元素
  8. css实现文字的条纹阴影效果
  9. 开源版本的 uTools。可支持 uTools 所有插件生态
  10. C# TCP网络编程5(分包和粘包二)