Questions tagged «metropolis-hastings»

一种特殊类型的马尔可夫链蒙特卡洛(MCMC)算法,用于从复杂概率分布中进行仿真。它已通过马尔可夫链理论进行了验证,并提供了多种可能的实现方式。

1
Metropolis Hastings,Gibbs,重要性和拒绝采样之间有什么区别?
我一直在尝试学习MCMC方法,并遇到了Metropolis Hastings,Gibbs,Importance和Rejection采样。尽管其中一些差异是显而易见的,例如,当我们拥有全部条件时,吉布斯是Metropolis Hastings的特例,而其他差异则不那么明显,例如当我们想在Gibbs采样器中使用MH等时,是否有人查看每种方法之间的大部分差异的简单方法?谢谢!

1
人们用于贝叶斯推理的教科书MCMC算法有哪些众所周知的改进?
当我为某些问题编写蒙特卡洛模拟代码时,并且该模型非常简单,我使用了非常基础的教科书Gibbs采样。当无法使用Gibbs采样时,我编写了几年前学到的教科书Metropolis-Hastings。我对此的唯一想法是选择跳跃分布或其参数。 我知道有成百上千的专门方法可以改善这些教科书的选择,但我通常从不考虑使用/学习它们。通常感觉是要付出很多努力来改善已经很好地进行的工作。 但是最近我一直在思考,也许没有新的通用方法可以改善我一直在做的事情。自从发现这些方法以来已有数十年了。也许我真的过时了! 有没有众所周知的替代Metropolis-Hasting的方法: 相当容易实现, 像MH一样普遍适用 并始终在某种意义上提高MH的结果(计算性能,准确性等)? 我知道针对非常专业的模型进行了一些非常专业的改进,但是每个人都使用一些我不知道的常规知识吗?

1
自适应MCMC可以信任吗?
我正在阅读有关自适应MCMC的信息(例如,参见《马尔可夫链蒙特卡洛手册》第4章,布鲁克斯等人,2011年;Andrieu和Thoms,2008年)。 nnnp(n)p(n)p(n)limn→∞p(n)=0limn→∞p(n)=0\lim_{n \rightarrow \infty} p(n) = 0 该结果是(后验的)直观的,渐近的。由于适应量趋于零,因此最终不会与遍历无关。我担心的是有限的时间会发生什么。 我们如何知道在给定的有限时间内适应性并不会破坏遍历性,并且采样器正在从正确的分布中采样?如果完全有道理,一个人应该做多少磨合以确保早期适应不会使链条产生偏差? 该领域的从业者是否信任自适应MCMC?我问的原因是因为我已经看到许多最近的方法,这些方法尝试以已知的其他各种更复杂的方式(包括再生或整体方法)以其他更复杂的方式建立适应性(例如,选择过渡是合法的)取决于其他平行链状态的运算符)。可替代地,仅在老化期间(例如在Stan中)执行调整,而不在运行时执行。所有这些努力向我暗示,罗伯茨和罗森塔尔的自适应MCMC(实施起来非常简单)并不可靠;但也许还有其他原因。 那么具体的实现又如何呢?比如自适应都市(Hario等,2001)? 参考文献 Rosenthal,JS(2011)。最佳提案分配和自适应MCMC。马尔可夫链手册蒙特卡罗,93-112。 Andrieu,C.和Thoms,J.(2008年)。关于自适应MCMC的教程。统计与计算,18(4),343-373。 Roberts,GO和Rosenthal,JS(2007)。自适应马尔可夫链蒙特卡罗算法的耦合和遍历性。应用概率杂志,458-475。 Haario H.,Saksman E.和Tamminen J.(2001)。自适应Metropolis算法。伯努利(Bernoulli),223-242。

2
吉布斯采样与常规MH-MCMC
我一直在阅读有关Gibbs采样和Metropolis Hastings算法的文章,并有几个问题。 据我了解,在吉布斯抽样的情况下,如果我们有一个大的多元问题,我们从条件分布中抽样,即抽样一个变量,而其他变量保持不变,而在MH中,我们从整个联合分布抽样。 该文件说的一件事是,建议的样本始终在Gibbs抽样中接受,即建议的接受率始终为1。对我来说,这似乎是一个很大的优势,因为对于大型多元问题,MH算法的拒绝率似乎变得很大。如果确实如此,那么为什么一直不使用Gibbs Sampler来生成后验分布的原因是什么?

4
实践中使用的Metropolis-Hastings算法
我今天正在阅读Christian Robert的Blog,非常喜欢他正在讨论的新的Metropolis-Hastings算法。看起来很容易实现。 每当我对MCMC进行编码时,我都会坚持使用非常基本的MH算法,例如对数刻度上的独立移动或随机游动。 人们通常使用哪种MH算法?特别是: 为什么使用它们? 从某种意义上讲,您必须认为它们是最佳的-毕竟,您通常会使用它们!那么,您如何判断最优性:易于编码,收敛,... 我对实际使用的内容特别感兴趣,即您编写自己的方案时。


1
Metropolis-Hastings集成-为什么我的策略不起作用?
假设我有一个函数,我想集成 当然,假设在端点处为零,没有爆炸,功能很好。一种方式,我已经和摆弄是使用大都市斯算法来生成列表的样品从分配比例,以,其缺少归一化常数 ,我将其称为,然后在这些上计算一些统计量: g(x)g(x)g(x)∫∞−∞g(x)dx.∫−∞∞g(x)dx. \int_{-\infty}^\infty g(x) dx.g(x)g(x)g(x)克(X )ñ = ∫ ∞ - ∞克(X )d X p (X )˚F (X )X 1x1,x2,…,xnx1,x2,…,xnx_1, x_2, \dots, x_ng(x)g(x)g(x)N=∫∞−∞g(x)dxN=∫−∞∞g(x)dxN = \int_{-\infty}^{\infty} g(x)dx p(x)p(x)p(x)f(x)f(x)f(x)xxx1n∑i=0nf(xi)≈∫∞−∞f(x)p(x)dx.1n∑i=0nf(xi)≈∫−∞∞f(x)p(x)dx. \frac{1}{n} \sum_{i=0}^n f(x_i) \approx \int_{-\infty}^\infty f(x)p(x)dx. 由于,我可以用代替以从积分中消除,从而得到形式的表达式 因此,假设沿该区域积分为,我应该得到结果,我可以取倒数来获得我想要的答案。因此,我可以取样品的范围(以最有效地利用这些点),让我绘制的每个样品的U(x)= 1 / r。这样U(x)f (x )= U (x )/ g (x )g 1p(x)=g(x)/Np(x)=g(x)/Np(x) = g(x)/Nf(x)=U(x)/g(x)f(x)=U(x)/g(x)f(x) …

1
斯坦
我正在浏览Stan文档,可以从此处下载。我对他们实施Gelman-Rubin诊断程序特别感兴趣。最初的论文Gelman&Rubin(1992)定义了潜在的水垢减少因子(PSRF)如下: 令为第个采样的马尔可夫链,并让整个独立的链采样。假设为第链的均值,而为整体均值。定义 其中 并定义Xi,1,…,Xi,NXi,1,…,Xi,NX_{i,1}, \dots , X_{i,N}iiiMMMX¯i⋅X¯i⋅\bar{X}_{i\cdot}iiiX¯⋅⋅X¯⋅⋅\bar{X}_{\cdot \cdot}W=1M∑m=1Ms2m,W=1M∑m=1Msm2,W = \dfrac{1}{M} \sum_{m=1}^{M} {s^2_m}, s2m=1N−1∑t=1N(X¯mt−X¯m⋅)2.sm2=1N−1∑t=1N(X¯mt−X¯m⋅)2.s^2_m = \dfrac{1}{N-1} \sum_{t=1}^{N} (\bar{X}_{m t} - \bar{X}_{m \cdot})^2\,. BBB B=NM−1∑m=1M(X¯m⋅−X¯⋅⋅)2.B=NM−1∑m=1M(X¯m⋅−X¯⋅⋅)2.B = \dfrac{N}{M-1} \sum_{m=1}^{M} (\bar{X}_{m \cdot} - \bar{X}_{\cdot \cdot})^2 \,. 定义 使用估算PSRF ,其中 其中。V^=(N−1N)W+(M+1MN)B.V^=(N−1N)W+(M+1MN)B.\hat{V} = \left(\dfrac{N-1}{N} \right)W + \left( \dfrac{M+1}{MN} \right)B\,. [R= VR^−−√R^\sqrt{\hat{R}}d ˚F = 2 V / …

2
与MCMC Metropolis-Hastings变化相混淆:随机行走,非随机行走,独立,都会
在过去的几周中,我一直在尝试了解MCMC和Metropolis-Hastings算法。每当我认为自己理解时,我就会意识到自己错了。我在网上找到的大多数代码示例都实现了与描述不一致的内容。即:他们说他们实施了Metropolis-Hastings,但实际上是实施了随机漫步的城市。其他人(几乎总是)默默地跳过黑斯廷斯校正率的实现,因为他们使用的是对称提案分配。实际上,到目前为止,我还没有找到一个简单的示例来计算比率。这让我更加困惑。有人可以给我以下代码示例(任何语言): 具有Hastings校正比率计算的Vanilla非随机步行Metropolis-Hastings算法(即使使用对称投标分布最终将为1)。 Vanilla Random Walk Metropolis-Hastings算法。 Vanilla Independent Metropolis-Hastings算法。 无需提供Metropolis算法,因为如果我没有记错的话,Metropolis和Metropolis-Hastings之间的唯一区别是,第一个总是从对称分布中采样,因此它们没有黑斯廷斯校正率。无需详细说明算法。我确实了解基本知识,但是对于Metropolis-Hastings算法的不同变体,我对所有不同的名称感到困惑,但对于在Vanilla非随机行走MH上实际实现黑斯廷斯校正率的方式,我还是感到困惑。请不要复制粘贴链接以部分回答我的问题,因为很可能我已经看过它们。这些联系使我感到困惑。谢谢。

4
我可以在不影响马尔可夫性的情况下更改随机行走MH MCMC中的提案分配吗?
具有对称建议的随机漫步都会区 具有接受概率的性质q(x | y)= 克(| y− x | )q(X|ÿ)=G(|ÿ-X|)q(x|y)= g(|y-x|) P(一个ç ç ë p 吨ÿ )= min { 1 ,f(y)/ f(x )}P(一种CCËpŤ ÿ)=分{1个,F(ÿ)/F(X)}P(accept\ y) = \min\{1, f(y)/f(x)\} 不依赖提案 。G(⋅ )G(⋅)g(\cdot) 这是否意味着我可以更改 根据链的先前性能 g (⋅ ),而不会影响链的马尔可夫性?G(⋅ )G(⋅)g(\cdot) 我特别感兴趣的是根据接受率调整普通提案的比例。 如果有人可以指出在实践中用于此类问题的适应算法,也将不胜感激。 非常感谢。 [编辑:从robertsy和wok给出的参考开始,我发现了以下关于MH自适应算法的参考: Andrieu,Christophe和ÉricMoulines。2006。 一些自适应MCMC算法的遍历性。应用概率年鉴16,第。3:1462-1505。http://www.jstor.org/stable/25442804。 Andrieu,Christophe和Johannes Thoms。 2008年。有关自适应MCMC的教程。统计与计算18,没有。4(12):343-373。doi:10.1007 / s11222-008-9110-y。http://www.springerlink.com/content/979087678366r78v/。 Y.Atchadé,G。Fort,E。Moulines和P. Priouret。2009。 自适应马尔可夫链蒙特卡洛:理论与方法。预印本。 …

1
了解不对称提案分配的都市人
我一直试图理解Metropolis-Hastings算法,以便编写代码来估计模型的参数(即)。根据参考书目,Metropolis-Hastings算法具有以下步骤:F(x )= a ∗ xf(x)=a∗xf(x)=a*x 生成ÿŤ〜q(y| XŤ)Yt∼q(y|xt)Y_t \sim q(y|x^t) Xt + 1= { YŤ,XŤ,很有可能ρ (xŤ,YŤ),很有可能1 - ρ (XŤ,YŤ),Xt+1={Yt,with probabilityρ(xt,Yt),xt,with probability1−ρ(xt,Yt),X^{t+1}=\begin{cases} Y^t, & \text{with probability} \quad \rho(x^t,Y_t), \\ x^t, & \text{with probability} \quad 1-\rho(x^t,Y_t), \end{cases} 其中ρ (x ,y)= 分钟(f(y)F(x )* q(x | y)q(y| X),1 )ρ(x,y)=min(f(y)f(x)∗q(x|y)q(y|x),1)\rho(x,y)=\min \left( \frac{f(y)}{f(x)}*\frac{q(x|y)}{q(y|x)},1 \right) 我想问几个问题: 参考书目指出,如果是对称分布,则比率变为1,该算法称为Metropolis。那是对的吗?Metropolis和Metropolis-Hastings之间的唯一区别是,第一个使用对称分布吗?那么“随机漫步”都会区(Hastings)呢?它与其他两个有何不同?q (x …

1
了解MCMC和Metropolis-Hastings算法
在过去的几天里,我一直在试图了解Markov Chain Monte Carlo(MCMC)的工作方式。特别是,我一直在尝试理解和实现Metropolis-Hastings算法。到目前为止,我认为我对该算法有一个整体的了解,但是有些事情我还不清楚。我想使用MCMC使某些模型适合数据。因此,我将描述我对Metropolis-Hastings算法的理解,该算法用于将直线拟合到一些观测数据D:F(x )= a xf(x)=axf(x)=axdDD 1)制作为初始猜测。将此a设置为我们的当前a(a 0)。还要在马尔可夫链(C)的末尾添加a。一个aa一个aa一个aa一个0a0a_0一个aaCCC 2)重复以下步骤。 3)评估当前似然()给出一个0和d。大号0L0{\cal L_0}一个0a0a_0DDD 4)通过从正态分布取μ = a 0和σ = s t e p s i z e来提出新的(a 1)。现在,š 吨È p 小号我Ž ê是恒定的。aaaa1a1a_1μ=a0μ=a0\mu=a_0σ=stepsizeσ=stepsize\sigma=stepsizestepsizestepsizestepsize 5)评估新的可能性()给定的一个1和d。L1L1{\cal L_1}a1a1a_1DDD 6)如比更大大号0,接受一个1作为新的一个0,将其追加在年底Ç并转到步骤2。L1L1{\cal L_1}L0L0{\cal L_0}a1a1a_1a0a0a_0CCC 7)如果小于L 0,则从均匀分布生成范围[0,1] 的数字(U)L1L1{\cal L_1}L0L0{\cal L_0}UUU 8)如果比两个似然性(之间的差较小的大号1 - 大号0),接受一个1作为新的一个0,将其追加在年底Ç并转到步骤2。UUUL1L1{\cal L_1}L0L0{\cal L_0}a1a1a_1a0a0a_0CCC UUUL1L1{\cal L_1}L0L0{\cal L_0}a0a0a_0CCCa0a0a_0 10)重复结束。 CCC …

1
具有Metropolis-Hastings算法的MCMC:选择方案
我需要进行仿真以评估3参数函数的积分,我们说,它的公式非常复杂。要求使用MCMC方法进行计算并实施Metropolis-Hastings算法以生成以分配的值,并建议使用3变量正态作为建议分布。阅读有关它的一些示例,我发现其中一些使用带有固定参数的法线一些使用具有可变均值,其中是最后接受的值根据分布。我对这两种方法都有疑问:ffffffN(μ,σ)N(μ,σ)N(\mu, \sigma)N(X,σ)N(X,σ)N(X, \sigma)XXXfff 1)选择最后接受的值作为提案分配的新均值是什么意思?我的直觉说,它应该保证我们的值将更接近于分布的值,并且接受的机会会更大。但这不是集中我们太多的样本吗?是否可以保证,如果我得到更多的样本,链条将变得平稳?fff 2)不会选择固定参数(因为确实很难分析)真的很困难,并且依赖于第一个样本,我们需要选择启动算法?在这种情况下,找到哪种更好的最佳方法是什么?fff 这些方法中的一种是否比另一种更好?或者这取决于具体情况? 我希望我的疑惑是明确的,如果能提供一些文献,我会很高兴(我读过一些有关该主题的论文,但是更好的是!) 提前致谢!

1
R / mgcv:为什么te()和ti()张量积产生不同的曲面?
的mgcv软件包R具有两个功能,用于拟合张量积相互作用:te()和ti()。我了解两者之间的基本分工(拟合非线性交互与将这种交互分解为主要效果和交互)。我不明白的是为什么te(x1, x2)而ti(x1) + ti(x2) + ti(x1, x2)可能产生(略)不同的结果。 MWE(改编自?ti): require(mgcv) test1 <- function(x,z,sx=0.3,sz=0.4) { x <- x*20 (pi**sx*sz)*(1.2*exp(-(x-0.2)^2/sx^2-(z-0.3)^2/sz^2)+ 0.8*exp(-(x-0.7)^2/sx^2-(z-0.8)^2/sz^2)) } n <- 500 x <- runif(n)/20;z <- runif(n); xs <- seq(0,1,length=30)/20;zs <- seq(0,1,length=30) pr <- data.frame(x=rep(xs,30),z=rep(zs,rep(30,30))) truth <- matrix(test1(pr$x,pr$z),30,30) f <- test1(x,z) y <- f + rnorm(n)*0.2 par(mfrow = c(2,2)) # …
11 r  gam  mgcv  conditional-probability  mixed-model  references  bayesian  estimation  conditional-probability  machine-learning  optimization  gradient-descent  r  hypothesis-testing  wilcoxon-mann-whitney  time-series  bayesian  inference  change-point  time-series  anova  repeated-measures  statistical-significance  bayesian  contingency-tables  regression  prediction  quantiles  classification  auc  k-means  scikit-learn  regression  spatial  circular-statistics  t-test  effect-size  cohens-d  r  cross-validation  feature-selection  caret  machine-learning  modeling  python  optimization  frequentist  correlation  sample-size  normalization  group-differences  heteroscedasticity  independence  generalized-least-squares  lme4-nlme  references  mcmc  metropolis-hastings  optimization  r  logistic  feature-selection  separation  clustering  k-means  normal-distribution  gaussian-mixture  kullback-leibler  java  spark-mllib  data-visualization  categorical-data  barplot  hypothesis-testing  statistical-significance  chi-squared  type-i-and-ii-errors  pca  scikit-learn  conditional-expectation  statistical-significance  meta-analysis  intuition  r  time-series  multivariate-analysis  garch  machine-learning  classification  data-mining  missing-data  cart  regression  cross-validation  matrix-decomposition  categorical-data  repeated-measures  chi-squared  assumptions  contingency-tables  prediction  binary-data  trend  test-for-trend  matrix-inverse  anova  categorical-data  regression-coefficients  standard-error  r  distributions  exponential  interarrival-time  copula  log-likelihood  time-series  forecasting  prediction-interval  mean  standard-error  meta-analysis  meta-regression  network-meta-analysis  systematic-review  normal-distribution  multiple-regression  generalized-linear-model  poisson-distribution  poisson-regression  r  sas  cohens-kappa 

1
与抽样成本
我遇到了以下模拟问题:给定一组已知实数的,在上的分布由 其中表示的正数。虽然我可以靶向这种分布认为大都市,黑斯廷斯样的,我不知道是否存在一个有效的直接取样,取大量的零个概率的优势,从降低算法的顺序至。{ - 1 ,1 } d P(X = (X 1,... ,X d))α (X 1 ω 1 + ... + X d ω d )+(Ž )+ ž O (2 d)O (d ){ω1,…,ωd}{ω1,…,ωd}\{\omega_1,\ldots,\omega_d\}{−1,1}d{−1,1}d\{-1,1\}^dP(X=(x1,…,xd))∝(x1ω1+…+xdωd)+P(X=(x1,…,xd))∝(x1ω1+…+xdωd)+\mathbb{P}(X=(x_1,\ldots,x_d))\propto (x_1\omega_1+\ldots+x_d\omega_d)_+(z)+(z)+(z)_+zzzO (2d)Ø(2d)O(2^d)Ø (d)Ø(d)O(d)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.