r******e 发帖数: 244 | 1 【 以下文字转载自 EE 讨论区 】
发信人: realhire (realhire), 信区: EE
标 题: [求助] 使用MCMC方法和卡尔曼滤波求后验概率遇到一些问题求助
发信站: BBS 未名空间站 (Wed May 8 16:14:26 2013, 美东)
我的问题是这样的:
意志一个系统状态X的先验分布为N(mu, sigma),和测量更新方程: Z=HX+V,
H为线性矩阵,V为测量噪声,设为normal分布. 要求X的后验概率密度.
我使用了两种方法:
1 基于random walking 的MCMC方法, 但是这个方法求的后验概率的均值和方差都很不
稳定. 我已经使用超过100万次的转移,效果还是不理想. 我用的是M_H的方法,求解一个
未知参数为二维的问题, 转移概率 : 后验概率~先验概率*likehood函数.
2 所以我想通过卡尔曼滤波的方法,求的这个后验概率的真实的均值和方差, 以下是我
的结论:
E(X_hat)=(I-K*H)*E(X)+ K*Z
Cox(X_hat)=(I-K*H)*Cov(X)*(I-K*H)' +K*Cov(Z)*K'
K=C... 阅读全帖 |
|
r******e 发帖数: 244 | 2 我的问题是这样的:
意志一个系统状态X的先验分布为N(mu, sigma),和测量更新方程: Z=HX+V,
H为线性矩阵,V为测量噪声,设为normal分布. 要求X的后验概率密度.
我使用了两种方法:
1 基于random walking 的MCMC方法, 但是这个方法求的后验概率的均值和方差都很不
稳定. 我已经使用超过100万次的转移,效果还是不理想. 我用的是M_H的方法,求解一个
未知参数为二维的问题, 转移概率 : 后验概率~先验概率*likehood函数.
2 所以我想通过卡尔曼滤波的方法,求的这个后验概率的真实的均值和方差, 以下是我
的结论:
E(X_hat)=(I-K*H)*E(X)+ K*Z
Cox(X_hat)=(I-K*H)*Cov(X)*(I-K*H)' +K*Cov(Z)*K'
K=Cov(X)*H'*(H*Cov(X)*H+Cov(Z))^-1
K是卡尔曼滤波增益, X_hat表示后验值. 用这个公式算出的均值和方差和MCMC方法在先
验概率均值为0时,基本一致.
但均值如果不为零,则结果不符合.
求各位卡尔曼高手,说说,我这个推导有问题么? 还有MC... 阅读全帖 |
|
m**c 发帖数: 88 | 3 LZ,你的问题,我不懂啊,帮不了你,你能帮帮我吗?
我在MCMC方面小白啊,只能借助专业软件,比如WinBUGS来做采样,现在碰到一个问题,因
为要调用另外的DLL,这个在WinBUGS里做不到,我必须得用Matlab来做MCMC仿真了,但是
现在让我自写一段MH的Matlab code 很难啊,能不能把你那段"MCMC algorithm using
Metropolis-Hastings algorithm" 让我看看啊? 咱们一起探讨一下啊
LZ是个好人! |
|
D**u 发帖数: 288 | 4 MC可以简单理解为simple rejection sampling, 就是随机扔点,然后count符合条件的
点的比率,非常的通俗易懂。随便找一个视频
https://www.youtube.com/watch?v=YQNZVFK3qf4
MCMC的sampling, moves are local, 下一个点是跟上一个点有关的,你可以通过这个
视频看出点的移动是有Markov chain的性质
https://www.youtube.com/watch?v=Vv3f0QNWvWQ
两个都是MCMC
问题在于,一般需要用MC的distribution,都是high dimension的,variable或者
parameter都比较多,用MC随机扔点会累死的,rejection sampling scale badly.
而MCMC虽然也要很多computation power,但可以很好的解决这个问题,参看
Metropolis–Hastings algorithm,当然后来又有许多variation。 |
|
R*******c 发帖数: 249 | 5 一个模型,用了mcmc去估计模型参数,是gibbs sampling和metropolis-hasting混着的,
现在想证明这个算法的一些性质,不知道一般如何证明MCMC算法得到的sample就是来自
targeted distribution的呢?
没有头绪啊,如果有些入门的paper或者材料读读就好了
多谢 |
|
g*****o 发帖数: 812 | 6 虽然书上是说MCMC是动态的, 一般的MC是静态的. 但是我还是没理解, 两个方法最后都
是模拟出一堆点出来啊, 那MCMC比MC有优势么? 而且好像MC不讨论收敛问题 |
|
g*******i 发帖数: 258 | 7 MCMC is usually under Bayesian framework. In MCMC, the first MC refers to
Markov chain, meaning that the samples have the Markovian property.
Specifically, the result in iteration n+1 is fully depent of the result in
iteration n. That is why we need to check convergence of the sample chain
over the iterations.
In ususl Monte Carlo simution, replications are independent. Typically the
summary is to report the mean and standard error. |
|
e*******e 发帖数: 1144 | 8 不考虑burn-in period的话,直接在n台机器上分别run就好了 -____-
考虑的话,好像也没什么太好的并行办法缩短burn-in period
至于研究加快单机MCMC的paper就太多了 |
|
s******a 发帖数: 184 | 9 在学习MCMC 时看到下面一句话,不懂什么意思,请高手解释一下。
Assume that target distribution \pi is known up to the normalizing constant. |
|
s******a 发帖数: 184 | 10 假入需要用MCMC模拟一个非常复杂的分布,如何选择proposal distribution 呢? |
|
w**********y 发帖数: 1691 | 11 1. 你说的这玩意不叫收敛性
2. 十有八九是你的simulation setup有错了
3. 什么公司的哪种项目需要用mcmc? |
|
b*****n 发帖数: 685 | 12 做MCMC的经常搞这个,就一multinomial的random sample,不过是n=1罢了,说白了就
是一个球落入m个盒子中 |
|
m******a 发帖数: 84 | 13 就讨论一维空间的情况。
假设数据有两个mode,然后我用3个Gaussian去描述,MCMC抽这三个Gaussian的mean,
有没有可能其中一个一直离数据很远?这种情况在我做sample的时候1/3会发生,不知
道是不是算法和程序的问题,因为没有数据的抽样一般来说连续发生概率很小,请教牛
人,谢谢 |
|
s******a 发帖数: 184 | 14 在学习MCMC 时看到下面一句话,不懂什么意思,请高手解释一下。
Assume that target distribution \pi is known up to the normalizing constant. |
|
s******a 发帖数: 184 | 15 假入需要用MCMC模拟一个非常复杂的分布,如何选择proposal distribution 呢? |
|
m****n 发帖数: 3016 | 16 MCMC sample 一个20个变量的joint dist. 结果的Posterior Std. 一定是减少的么?
如果发现Std. 变大,有什么合理的解释呢?难道Sample 的全都是burn-in (iteration=10000)
谢谢! |
|
w*********a 发帖数: 156 | 17 请问是说整个MCMC或者M-H算法自己编,还是可以改进已有的package呢?
谢谢回复啊~~ |
|
V*********n 发帖数: 198 | 18 I'm running a MCMC algorithm using Metropolis-Hastings algorithm. In one
of
the runs, the Markov chain seems to get stuck somewhere it shouldn't get
stuck. Here is the plot of the posterior draw of one parameter, and
similar
pattern happens to every parameter. Anybody know why?
BTW, this is done by matlab, and I also called some c function via MEX
interface. Not sure if this is the reason. |
|
F*********6 发帖数: 50 | 19 it seems the converge (stable) problem, please check your model and code.
What's your acceptance probability? I never use Matlab, using R to do MCMC
and also call C to R. |
|
|
w*****n 发帖数: 375 | 21 还真有人用Rerversible Jumping MCMC. 能好奇问一下你是在研究什么问题需要RJMCMC
? |
|
|
|
G*********n 发帖数: 20 | 24 MCMC不可能这么差,check code是否错了
另外几个debug的建议,把X的维数设小点,设成1,看看是否收敛
还有转移方差不能太大或者太小,如果X高维,acceptance rate以25%为宜 |
|
|
P*****6 发帖数: 273 | 26 如果不研究理论推倒,这个难点不在理解,而在于推出那个长长的公式。
先是joint likelihood
然后是n多conditonal likelihood(具体什么名忘了)错一个就完了
我记得MCMC有一个优点
: 能够允许含有高维hidden variable, 其他的如EM含有四个hidden variables一般
人就干不动了 |
|
发帖数: 1 | 27 请教懂Bayesian的大虾们,我用Gibbs sampling (MCMC)但是无论sample多久都没法
达到convergence, model好像也不存在不能identify的情况,有什么其他的
alternative的sampling方法吗?
上次在ENAR的时候听有个同行提起过,有一种替代的Gibbs sampling的方法,但是我忘
了名字了。:(
有知道的大虾求赐教。 |
|
R*******c 发帖数: 249 | 28 搞了三四天了,还是没成功,实在是崩溃了。。。只能上来请大牛们帮忙看看问题出在哪?
从网上下载了一个R的package(一个zip文件),这个包是在mac上build的,在mac里运行没有
问题,我现在想在windows下用这个包,直接通过R里面的install package from local
zip file会有错误如下:
Error in gzfile(file, "r") : cannot open the connection
In addition: Warning messages:
1: In unzip(zipname, exdir = dest) : error 1 in extracting from zip
file
2: In gzfile(file, "r") :
cannot open compressed file 'curves2_1.0.1.tar.gz/DESCRIPTION',
probable reason 'No such file or directory'
所以决定先将zip文件解压缩成文件夹,然后在windows下把这个包buil... 阅读全帖 |
|
c****t 发帖数: 19049 | 29 gelman的bda是大号经典没错但是出了名的难读难懂。等你从别的地方全学会了回头拿
这当reference可以。没基础的话看看jeff gill的bayesian methods吧
其实找工作刷题才是王道(不只是leetcode),进工业界干活不用懂这么多。多讨论面试
题更有用。统计版不让讨论面试题也是我开此版的主要原因之一。
另外mcmc是从理论物理来的。跟统计一根毛的关系都没有。真想学懂直接看yann lecun
有关energy based models的东东也许能明白的更快一些。我一向认为灌统计水的大谈
特谈bayesian,扯神马frequenists vs. bayesian probability,神马prior,
postorior,就是为了掩盖mcmc根本不是统计创造发明出来的事实。一般人从神马prior,
posteriror啊,bayesian probability啊学起,等你学到mcmc时早迷糊了。也就不会
多问了
mcmc是跟传统的maximum likelihood完全不同的体系。maximum likelihood说简单点就
是做优化。优化的思路就是求... 阅读全帖 |
|
c****t 发帖数: 19049 | 30 gelman的bda是大号经典没错但是出了名的难读难懂。等你从别的地方全学会了回头拿
这当reference可以。没基础的话看看jeff gill的bayesian methods吧
其实找工作刷题才是王道(不只是leetcode),进工业界干活不用懂这么多。多讨论面试
题更有用。统计版不让讨论面试题也是我开此版的主要原因之一。
另外mcmc是从理论物理来的。跟统计一根毛的关系都没有。真想学懂直接看yann lecun
有关energy based models的东东也许能明白的更快一些。我一向认为灌统计水的大谈
特谈bayesian,扯神马frequenists vs. bayesian probability,神马prior,
postorior,就是为了掩盖mcmc根本不是统计创造发明出来的事实。一般人从神马prior,
posteriror啊,bayesian probability啊学起,等你学到mcmc时早迷糊了。也就不会
多问了
mcmc是跟传统的maximum likelihood完全不同的体系。maximum likelihood说简单点就
是做优化。优化的思路就是求... 阅读全帖 |
|
t*****z 发帖数: 1598 | 31
吗?
谢谢你!长生不老的新闻每隔几个月就会出来一次,那都是新闻记者哗众取宠的标题,
真哪有这么好的事情。
MCMC用显卡算的确快,我现在算的东西,完全用CPU算要11.35分钟;用一块GTX650分担
一部分任务,降低到8.06分钟;换成一块GTX580,降低到5.95分钟。我这个任务的可并
行程度还比较低,如果是另一个并行度高的任务(具体说来就是单分区的数据),单用
CPU要11.47分钟,用一块GTX580降低到4.07分钟,同时还节省了CPU的三个核用来做别
的事情。
据我的理解,用显卡算MCMC,最重要的是核心多,其次是内存传输速率。GTX580虽然纯
计算能力强,但是核心不多(512个),所以不是最佳选择。我推测AMD的79xx系列应该
是现在性价比最高的卡,一个GPU就有2048个核心。即便它们被矿工搞得价格飞涨,现
阶段也是性价比最高的卡。如果能入一台三四千块的莱特矿机来算MCMC,那应该是最有
效的。
附注:我不清楚进化分析的MCMC和其他领域常见的MCMC有什么区别,感觉似乎是前者自
由度高参数多,一个基因就有几百个碱基,每个都看做一个可变的单位。所以,显卡核
心越... 阅读全帖 |
|
t*****z 发帖数: 1598 | 32
吗?
谢谢你!长生不老的新闻每隔几个月就会出来一次,那都是新闻记者哗众取宠的标题,
真哪有这么好的事情。
MCMC用显卡算的确快,我现在算的东西,完全用CPU算要11.35分钟;用一块GTX650分担
一部分任务,降低到8.06分钟;换成一块GTX580,降低到5.95分钟。我这个任务的可并
行程度还比较低,如果是另一个并行度高的任务(具体说来就是单分区的数据),单用
CPU要11.47分钟,用一块GTX580降低到4.07分钟,同时还节省了CPU的三个核用来做别
的事情。
据我的理解,用显卡算MCMC,最重要的是核心多,其次是内存传输速率。GTX580虽然纯
计算能力强,但是核心不多(512个),所以不是最佳选择。我推测AMD的79xx系列应该
是现在性价比最高的卡,一个GPU就有2048个核心。即便它们被矿工搞得价格飞涨,现
阶段也是性价比最高的卡。如果能入一台三四千块的莱特矿机来算MCMC,那应该是最有
效的。
附注:我不清楚进化分析的MCMC和其他领域常见的MCMC有什么区别,感觉似乎是前者自
由度高参数多,一个基因就有几百个碱基,每个都看做一个可变的单位。所以,显卡核
心越... 阅读全帖 |
|
B******s 发帖数: 52 | 33 至于针对性,是针对什么呢????就因为LZ是数学或者计算的 就不用去理解生物
系统了??? 还是说就不用学一学生
物和物理了?
难道他是计算数学出身就该 整天摆弄toy model fit data 做一堆optimisations 和
predictions
你不管是啥背景的 你想做合成生物学 至少生物学的基础知识和问题就要了
解吧 难道生物学里的理论知识
就不用去学习了??
那你告诉我,你说针对性的数学都是什么,假如你知道用什么数学去解决特定的问题,
我觉得那就不会成为问题。。。
另外,不管是 systems biology 和 synthetic biology 跟 biology 没有区别,只不
过是生物学研究到达瓶颈后 自然提出来
的概念 (既然是瓶颈必然需要很多其他学科的知识和工具来试图解决问题)
各种领域的人都试过很多方法,就像你列举的那些 Matrix PDE Boolean network
Bayesian network Game theory
MCMC, HMM, Kalman... 阅读全帖 |
|
B******s 发帖数: 52 | 34 至于针对性,是针对什么呢????就因为LZ是数学或者计算的 就不用去理解生物
系统了??? 还是说就不用学一学生
物和物理了?
难道他是计算数学出身就该 整天摆弄toy model fit data 做一堆optimisations 和
predictions
你不管是啥背景的 你想做合成生物学 至少生物学的基础知识和问题就要了
解吧 难道生物学里的理论知识
就不用去学习了??
那你告诉我,你说针对性的数学都是什么,假如你知道用什么数学去解决特定的问题,
我觉得那就不会成为问题。。。
另外,不管是 systems biology 和 synthetic biology 跟 biology 没有区别,只不
过是生物学研究到达瓶颈后 自然提出来
的概念 (既然是瓶颈必然需要很多其他学科的知识和工具来试图解决问题)
各种领域的人都试过很多方法,就像你列举的那些 Matrix PDE Boolean network
Bayesian network Game theory
MCMC, HMM, Kalman... 阅读全帖 |
|
w**********y 发帖数: 1691 | 35 本质都是随机抽样,大样本去近似估计以关心的统计量.
区别是如何做随机抽样. MC不能做的,就用MCMC了.
MCMC在统计领域火了这么久,就是因为你可以随便做非常复杂的model,基于MCMC都能给
estimation/model calibration..(但是对错不保证.哈哈) |
|
s******a 发帖数: 184 | 36 谢谢。
可不可以从实用角度这么理解
比如说有一个符合normal distribution的随机变量x, 对f(x) 求积分。
1) 可以用R自带的函数产生符合normal distribution的sample
2) 可以用MCMC 产生sample,
那针对这种问题,MCMC并没有优势
但假如需要对一个有复杂distribution的随机变量x,
R或者Matlab都没有现成的函数,则只能用MCMC 产生这些sample |
|
a*****i 发帖数: 1045 | 37 第一年,完全没什么概念呢。已经开始选择论文题目了。现在有几个option,不知道有
没有好心人可以帮忙看看哪些方向比较好,或者对将来工作会有帮助。
自己之前定了跟statistical process control 有关的方向。但不怎么样。
1. Title : A comparison of different statistical process monitoring schemes
on real life data (这个是关于statistical process control的)
It is often desirable to provide online monitoring for industrial or
agricultural processes. Faced with the task of performing such monitoring,
practitioner will often choose to apply a control chart. However, there many
options available, and it i... 阅读全帖 |
|
|
g**********t 发帖数: 475 | 39 其实最大的缺点是MCMC太慢了。我们实验室有一个人下了一个MCMC软件算一个比较大的
数据集,已经算了三个多月还没有收敛,汗~~
不过Bayesian逻辑上看起来很爽,我已经把frequentist看作是Bayesian的一个特例了。 |
|
l**********1 发帖数: 5204 | 40 不要只看到Bayesian+Markov Chain Monte Carlo (MCMC) 用于NGS sensitivity
analysis
新的非 Bayesian+MCMC的 Fisher Information Matrix (FIM) sensitivity
analysis 已有英国 帝国理工大的论文了吧 吧
Reference:
i,
Bioinformatics. (2012) 28:731-3.
web link:
HTTP://www.ncbi.nlm.nih.gov/pubmed/22378710
PDF file:
HTTP: //www.theosysbio.bio.ic.ac.uk/wp-content/uploads/2011/04/manual1.pdf
就是由减少Stochastic simulation process 中的参数 数量的 视点入手的
关联论文
ii,
J R Soc Interface. (2008) 5 Suppl 1:S59-69.
HTTP: //www.ncbi.nlm.nih.gov/pubmed/1848... 阅读全帖 |
|
l**********1 发帖数: 5204 | 41 名校 新人PhD 的 有关 关键词的 博士论文 最近三年到五年的 至少100篇
其全部PDF 文档或hard paper 都参考一下的话 可以看出点 如何建筑这幢楼的 端倪了
吧 (possible)
比如
citation from UBC 2009 PhD dissertation: "Particle Markov Chain Monte Carlo"
by
Roman Holenstein
full text pdf link:
HTTP: //www.cs.ubc.ca/grads/resources/thesis/May09/Holenstein_Roman.pdf
Monte Carlo methods have become the standard tool to solve many problems in
statistics and scientific computing. Examples are abound, and include
instances in
Bayesian statistics (posterior estimat... 阅读全帖 |
|
g**u 发帖数: 504 | 42 写个MCMC算法可以解这个问题,每一步MCMC交换两个点(这两个点的选择可以是随机的
)的label或不变,但估计要自己写。 |
|
t*******e 发帖数: 172 | 43 别搞笑了,econometric,要不要我给你指出几篇用MCMC做inference的?Kalman filter
在2003年还有什么技术上的难度呢?
nature中用Gibbs sampling 之内做生物信息的,理论上又有多难?
当然了,你又要说,找到合适的问题才是重要的。发现问题才是做科学最重要的。这个
当然重要,数学技术不重要。 这个不正是前段时间恽和他的学生之间的争论的原因?做
数学的看问题角度和所谓的做应用的角度不同导致了这个争议。
做经济/金融的不是看你做了什么,而是看是谁做的,这种例子到处都是。
大家发文章都找牛人挂名,这种事情,在数学中难道不是最少见的?
胡扯要有观众,当然是对的,你要是前core,扯八荣八耻,也有大把人买单。但你要是
一无名之辈,你扯八荣八耻,有人买单么?经济学中不就是这样子?你要有大佬捧,用
MCMC随便算点什么也是top5. 如果你推崇的就是科学活动家,学以致用, 那我们可以
单说。
这里只是说,转行的障碍不在于其他行业有多难,而在于人家是不是带你玩。要有人带
你玩,学数学的转行还是相对容易的。对于自己不愿意转行的,那就是另外的故事了。 |
|
t*******e 发帖数: 172 | 44 别搞笑了,econometric,要不要我给你指出几篇用MCMC做inference的?Kalman filter
在2003年还有什么技术上的难度呢?
nature中用Gibbs sampling 之内做生物信息的,理论上又有多难?
当然了,你又要说,找到合适的问题才是重要的。发现问题才是做科学最重要的。这个
当然重要,数学技术不重要。 这个不正是前段时间恽和他的学生之间的争论的原因?做
数学的看问题角度和所谓的做应用的角度不同导致了这个争议。
做经济/金融的不是看你做了什么,而是看是谁做的,这种例子到处都是。
大家发文章都找牛人挂名,这种事情,在数学中难道不是最少见的?
胡扯要有观众,当然是对的,你要是前core,扯八荣八耻,也有大把人买单。但你要是
一无名之辈,你扯八荣八耻,有人买单么?经济学中不就是这样子?你要有大佬捧,用
MCMC随便算点什么也是top5. 如果你推崇的就是科学活动家,学以致用, 那我们可以
单说。
这里只是说,转行的障碍不在于其他行业有多难,而在于人家是不是带你玩。要有人带
你玩,学数学的转行还是相对容易的。对于自己不愿意转行的,那就是另外的故事了。 |
|
w**********y 发帖数: 1691 | 45 简单的说,如果你知道一个Y的distribution是个很好(?)的distribution,你知道很多直
接的间接的方法去generator这个random variable,这就是monte carlo了.但是:
1. 很多distribution是不能找到好的generator的.
2.特别对于high dimension的random variable/joint density,更加无法做simulation
.这种情况是现实问题中最常见的.也是建模最需要的..
而针对这两种情况,1的解决办法就有MCMC里面的Metropolis–Hastings. 而2的解决办
法就是MCMC里面常用的Gibbs Sampling. |
|
m*****o 发帖数: 259 | 46 MCMC sample generating algorithm V.S. being in a relationship
Maxareo
Introduction: Inspired by the current relationship between ** and
his girlfriend, I found the astounding similarity between Markov Chain
Monte Carlo sample generating algorithm and being in a relationship.
Key words: algorithm, converge, oscillation, debug
Being in a relationship is like running an iterative algorithm, say
generating random sample from a posterior distribution using MCMC
method: At the starting period, say a f |
|
m**c 发帖数: 88 | 47 我不是学习统计的,现在的研究用到这个了,看了好长时间了。
不知道水深浅啊,想找个懂的交流一下。
不管是线性还是非线性模型,状态估计应该不是什么问题了。难就难在模型参数的估计
,看文献现在也
有不少方法,像Liu and West 的方法,现在还有Particle Learning 的方法,不知道
到底怎
样,自己写代码有点难。不知道这几篇是不是目前这一方面的最高水平了?还有没有其
他的好的方法?
主要是Sequential Monte Carlo的方法。
MCMC的方法暂时不讨论,状态空间模型好像用Sequential Monte Carlo方法的比较多,
MCMC也有
但好像不多。 |
|
f***a 发帖数: 329 | 48 运算部分matlab快一些,特别是你有很多matrix computation的话。
但是R的优点就是对MCMC samples的分析支持好,譬如tracking,autocorrelation,
chain diagnosis,很多tests,library{coda}用的挺多的.
你运算量不大的话用R吧,特别是刚开始的时候,等algorithm设计好了发现R太慢再把
computation heavy的part写成matlab or C++ code。
R里面也有很多现成的MCMC library可以用,譬如 《bayesian computation with R》
里面的Packages。 |
|
y*****y 发帖数: 98 | 49 simply speaking, by law of large numbers, you can draw N samples and use the
average to approximate the distribution, expectation, etc. (which are
integrals and usually not easy to get close forms). The method is Monte
Carlo.
MCMC means your samples are from a Markov Chain (check references for
definitions etc.) MCMC is useful in Bayesian computation because in many
situations the posterior is not in close form. This is a sampling technique
which allows you to obtain samples sequentially. |
|
f***a 发帖数: 329 | 50 你是要求积分还是要generate samples from distribution?
generate samples from distribution的话:有buit-in funtion的就用,不然有很多别
的办法,譬如inverse CDF, transformation, accept-reject algorith, important
sampling, ..., etc. MCMC是其中一种,一般来说MCMC运算量大,不是特别麻烦的
distribution,能用别的algorithm就用别的吧。
你是要求f(x)积分的话:常见的当然直接用CDF就完了;f(x)是很复杂的pdf,或者是很
复杂的
f(x)的函数的话有很多numerical methods可以用(具体看相关的书),其中一种方法
就是用
distribution sampling求,譬如
\integral f(x) dx= \integral f(x)/g(x)*g(x ) dx = E[f(x)/g(x)];
generate x_i, i=1,...,n from g(x);
then the e |
|