吉布斯采样
来源:互联网 发布:yii2打印sql语句 编辑:程序博客网 时间:2024/05/21 16:22
【吉布斯采样理论等我理解透彻在更新】
吉布斯采样是一种简单并且被广泛使用的马尔科夫蒙特卡洛算法,它可以被看成特殊情况的Metropolis-Hastings算法。
假设我们期望从
吉布斯 采样的流程
1、初始化
2、对于
采样
采样
.
.
采样
解决问题,在一个绳子(假设为10米)上面剪两刀,求能构成三角形的概率。
吉布斯采样的大概流程是不知道联合概率分布,只知道每一个分量的条件概率分布。
在这个题目里面,条件概率很简单了。然后一次根据前面状态的分量来采样当前状态的分量。
matlab程序
num = 100000;pix=zeros(num,4);pix(1,:) = [0,0,10,0];for i = 2:num for j = 1:2 if j == 1 pix(i,1) = rand(1)*(10-pix(i-1,2)); else pix(i,2) = rand(1)*(10-pix(i,1)); end end pix(i,3) = 10-pix(i,1)-pix(i,2); if pix(i,1)+pix(i,2) > pix(i,3) && pix(i,3)+pix(i,2) > pix(i,1) && pix(i,1)+pix(i,3) > pix(i,2) pix(i,4) = 1; else pix(i,4) = 0; endendtemp=pix(:,4);temp=temp(2:end);length(find(temp>0))*1.0/(num-1)
python程序
#Gibbsimport numpy as npimport numpy.random as nrnum=100000pix=np.zeros((num,3))pix[0,:]=[0,0,10]temp=0for idx in range(1,num): for j in range(0,2): if j==0: pix[idx,0]=nr.uniform(0,10-pix[idx-1,1],1) else: pix[idx,1]=nr.uniform(0,10-pix[idx,0],1) pix[idx,2]=10-pix[idx,0]-pix[idx,1] if pix[idx,0]+pix[idx,1]>pix[idx,2] and pix[idx,2]+pix[idx,1]>pix[idx,0] and pix[idx,0]+pix[idx,2]>pix[idx,1]: temp+=1print temp*1.0/num
运行结果是在0.25左右
1 0
- 吉布斯采样
- 吉布斯采样
- 什么是吉布斯采样算法
- 吉布斯采样(Gibbs Sampling)
- 吉布斯采样器
- 采样
- 采样
- 随机采样和随机模拟:吉布斯采样Gibbs Sampling
- Gibbs Sampling(吉布斯采样)
- 马尔科夫过程与吉布斯采样
- lda的吉布斯采样求解
- 使用吉布斯采样求解LDA模型
- 吉布斯采样(Gibbs Sampling)及相关算法
- 吉布斯采样(Gibbs Sampling)及相关算法
- 吉布斯采样(Gibbs Sampling)及相关算法
- Gibbs Sampling\吉布斯采样(一)
- Gibbs Sampling\吉布斯采样(二)
- Gibbs Sampling\吉布斯采样(三)
- iOS开发实时监测网络状态Reachability
- Timer简单学习
- Solr各版本发布时间、对应的JDK版本、Jetty版本
- 什么是Map集合
- SSO单点登录实现原理与总结
- 吉布斯采样
- ACPI和APIC有什么关系?
- RUtils -- 建立在Rserve之上的Java与R语言通信工具集
- tomcat 虚拟目录配置appBase和docBase的区别
- nginx入门
- AndroidStudio 集成极光推送(带源码)
- 使用vsftpd服务传输文件
- 编译报错Error:Connection timed out: connect. If you are behind an HTTP proxy, please
- PayPal在 live 环境下,正式帐号登录失败