Questions tagged «monte-carlo»

使用(伪)随机数和大数定律模拟真实系统的随机行为。

1
汉密尔顿·蒙特卡洛(Hamiltonian Monte Carlo):如何解读“大都市-哈斯特”提案?
我想了解汉密尔顿·蒙特卡洛(HMC)的内部工作原理,但是当我们用Metropolis-Hasting提案取代确定性时间积分时,无法完全理解该部分。我正在阅读Michael Betancourt撰写的引人入胜的入门论文《哈密尔顿蒙特卡洛概念概论》,因此我将沿用其中的相同符号。 背景 马尔可夫链蒙特卡洛(MCMC)的总体目标是逼近目标变量的分布。π(q)π(q)\pi(q)qqq HMC的想法是引入辅助的“动量”变量以及与建模为“位置” 的原始变量结合。位置-动量对形成一个扩展的相空间,可以用哈密顿动力学来描述。联合分布可以用微规范分解来表示:pppqqqπ(q,p)π(q,p)\pi(q, p) π(q,p)=π(θE|E)π(E)π(q,p)=π(θE|E)π(E)\pi(q, p) = \pi(\theta_E | E) \hspace{2pt} \pi(E), 其中表示给定能级上的参数,也称为典型集合。参见图21和图22进行说明。θEθE\theta_E(q,p)(q,p)(q, p)EEE 原始的HMC程序包括以下两个交替步骤: 在能量水平之间执行随机过渡的随机步骤,以及 确定性步骤,沿着给定的能量水平执行时间积分(通常通过跳跃式数值积分实现)。 在本文中,有人认为越级跳跃(或辛积分器)具有小的误差,会引入数值偏差。因此,与其将其视为确定性步骤,不如将其转变成Metropolis-Hasting(MH)提案以使该步骤成为随机步骤,并且所产生的过程将从分布中产生确切的样本。 MH提案将执行步越级操作,然后反转动量。然后,该提案将以以下接受概率被接受:LLL a(qL,−pL|q0,p0)=min(1,exp(H(q0,p0)−H(qL,−pL)))a(qL,−pL|q0,p0)=min(1,exp⁡(H(q0,p0)−H(qL,−pL)))a (q_L, -p_L | q_0, p_0) = min(1, \exp(H(q_0,p_0) - H(q_L,-p_L))) 问题 我的问题是: 1)为什么将确定性时间积分转换为MH提议的这种修改会消除数值偏差,以使生成的样本完全符合目标分布? 2)从物理学的角度来看,能量在给定的能量水平上是守恒的。这就是为什么我们能够使用汉密尔顿方程的原因: dqdt=∂H∂p,dpdt=−∂H∂qdqdt=∂H∂p,dpdt=−∂H∂q\dfrac{dq}{dt} = \dfrac{\partial H}{\partial p}, \hspace{10pt} \dfrac{dp}{dt} = -\dfrac{\partial H}{\partial q}。 从这个意义上说,能量在典型集合上的任何地方都应该恒定,因此应当等于。为什么在能量上存在差异,可以构造接受概率?H(q0,p0)H(q0,p0)H(q_0, p_0)H(qL,−pL)H(qL,−pL)H(q_L, …
9 mcmc  monte-carlo  hmc 

1
计算多个期望值时如何最佳地分布抽奖
假设我们要计算一些期望值: EYEX|Y[f(X,Y)]EYEX|Y[f(X,Y)]E_YE_{X|Y}[f(X,Y)] 假设我们要使用蒙特卡洛模拟对此进行近似。 EYEX|Y[f(X,Y)]≈1RS∑r=1R∑s=1Sf(xr,s,yr)EYEX|Y[f(X,Y)]≈1RS∑r=1R∑s=1Sf(xr,s,yr)E_YE_{X|Y}[f(X,Y)] \approx \frac1{RS}\sum_{r=1}^R\sum_{s=1}^Sf(x^{r,s},y^r) 但是,假设从这两个分布中抽取样本成本很高,因此我们只能承受绘制固定数。 KKK 我们应该如何分配?示例包括每种分布的抽奖,或者极端情况下,外部抽奖,内部为抽奖,反之亦然,等等。K / 2 K − 1KKKK/2K/2K/2K−1K−1K-1 我的直觉告诉我,这将与分布相对于彼此的方差/熵有关。假设外一个是质点,则分割最小化MC误差将被绘制的1和绘制的的。 ÿKKKYYYX | ÿK−1K−1K-1X|YX|YX|Y 希望这很清楚。

1
蒙特卡洛==是否应用随机过程?
我从来没有参加过正式的统计学课程,但是由于我的研究领域,我经常遇到一些应用了几种统计学概念的文章。 通常,我会看到对适用于给定情况的蒙特卡洛过程的描述,对于我可以从10次中收集到9次的结果,可以归结为简单的随机人口总体及其后续研究。 我的问题:在统计世界中,蒙特卡洛(Monte Carlo)是一种代码字,适用于涉及点/种群/等的随机生成的任何算法吗?

3
对蒙特卡洛Pi估计的误解
我相当确定我了解蒙特卡洛积分的工作原理,但不了解如何用它来估算Pi。我将按照此演示文稿第5张幻灯片中概述的步骤进行操作,网址为http://homepages.inf.ed.ac.uk/imurray2/teaching/09mlss/slides.pdf 我了解初步步骤。Pi等于单位圆四分之一面积的4倍。并且以(0,0)为中心的单位圆的右上四分之一的面积等于曲线的积分,即和单位圆的右上四分之一的曲线。。 0&lt;x&lt;10&lt;x&lt;10<x<10&lt;y&lt;10&lt;y&lt;10<y<1 我不明白的是这个积分是如何 ∬I((x2+y2)&lt;1)P(x,y)dxdy∬I((x2+y2)&lt;1)P(x,y)dxdy\iint I((x^2+y^2)<1)P(x,y)dxdy 其中P(x,y)P(x,y)P(x,y)在四分之一圆周围的单位正方形中均匀分布(即,如果0&lt;x&lt;10&lt;x&lt;10<x<1且0 &lt;y &lt;1则始终等于1,否则等于0&lt;y&lt;10&lt;y&lt;10<y<10)。因此,这意味着 I((x2+y2)&lt;1)P(x,y)I((x2+y2)&lt;1)P(x,y)I((x^2+y^2)<1)P(x,y) 是在0&lt;x&lt;10&lt;x&lt;10<x<1和0 &lt;y &lt;的情况下单位圆右上象限的函数1,0&lt;y&lt;10&lt;y&lt;10<y<1但我不明白这是怎么回事,因为指标函数只能是1或0。我理解它可能是通过这种方式编写的,以简化蒙特卡洛采样(即,这是一种期望,因此仅从P(x,y)P(x,ÿ)P(x,y)并获得应用于I((x ^ 2 + y ^ 2)&lt;1)的样本的平均值一世((X2+ÿ2)&lt; 1 )一世((X2+ÿ2)&lt;1个)I((x^2+y^2)<1)),但对我来说,这在直觉上没有意义,为什么该积分表示该曲线下方的面积。 有人可以对此提供直观的解释。也许说明该积分是如何逐步生成的? 编辑: 通过将期望与某个领域相关联,我能够获得更好的理解。如果有帮助,我将在这里进行解释。首先将Pi与单位圆的右上象限区域相关联 π= 4 ×一个Ť [Rπ=4×一个Ť[R\pi=4\times A_{tr} 然后,将右上象限放入单位正方形。在单位正方形上均匀分布的情况下,圆象限的面积与从中获取样本的概率成正比。因此,以下等式成立 P(X2+ÿ2&lt; 1 )=一个Ť [R一个小号qü 一个[R êP(X2+ÿ2&lt;1个)=一个Ť[R一个sqü一个[RËP(x^2+y^2<1)=\frac{A_{tr}}{A_{square}} 并且这样一个小号qü 一个[R ê= 1一个sqü一个[RË=1个A_{square}=1 P(X2+ÿ2&lt; 1 )=一个Ť [RP(X2+ÿ2&lt;1个)=一个Ť[RP(x^2+y^2<1)=A_{tr} 并代入原方程 π= 4 × P(X2+ÿ2&lt; 1 …

1
将p值的Monte Carlo模拟应用于卡方检验的规则
我想了解chisq.test()R函数中蒙特卡罗模拟的用法。 我有一个具有128个级别/类的定性变量。我的样本数量为26(我无法对更多的“个人”进行抽样)。所以很明显,我将在某些级别上拥有0个“个人”。但是事实是,在127种可能的类别中,我只代表了非常少的类别。我听说要应用卡方检验,每个级别上至少应有5个人(我不完全了解其原因),我认为我必须使用该simulate.p.value选项来进行蒙特卡洛模拟来估计分布并计算一个p值 没有蒙特卡罗模拟,R给我p值&lt; 1e-16。通过蒙特卡洛模拟,它给了我p值4e-5。 我尝试使用26个1和101个零的向量来计算p值,并且通过蒙特卡洛模拟,得到的p值为1。 是否可以声明,即使我的样本量与可能分类的数量相比很小,观察到的分布也是如此,使得在实际总体中所有可能分类以相同的概率(1/127)存在的可能性很小?

1
非平方可积函数的蒙特卡洛积分
我希望这是一个正确的地方,如果不是随意将其移至更合适的论坛的话。 我一直想知道如何使用蒙特卡洛积分来处理非平方可积函数。我知道MC仍会给出适当的估计,但对于此类功能,错误是不可靠的(发散的?)。 让我们限制一个维度。蒙特卡洛积分意味着我们近似积分 一世=∫1个0d XF(x )一世=∫01个dXF(X) I = \int_0^1 \mathrm{d}x \, f(x) 使用估计 Ë=1个ñ∑我= 1ñF(X一世)Ë=1个ñ∑一世=1个ñF(X一世) E = \frac{1}{N} \sum_{i=1}^N f(x_i) 与 X一世∈ [ 0 ,1 ]X一世∈[0,1个]x_i \in [0,1]均匀分布的随机点。大数定律确保Ë≈ 我Ë≈一世E \approx I。样本方差 小号2=1个ñ− 1∑我= 1ñ(f(X一世)- Ë)2小号2=1个ñ-1个∑一世=1个ñ(F(X一世)-Ë)2 S^2 = \frac{1}{N-1} \sum_{i=1}^N (f (x_i) - E)^2 近似方差 σ2σ2\sigma^2 引起的分布 FFf。但是,如果FFf 不是平方可积的,即平方函数的积分发散,这意味着 σ2=∫1个0d X(f(x …

2
稳健的边际可能性MCMC估计器?
我正在尝试通过蒙特卡洛方法来计算统计模型的边际可能性: f(x)=∫f(x∣θ)π(θ)dθf(x)=∫f(x∣θ)π(θ)dθf(x) = \int f(x\mid\theta) \pi(\theta)\, d\theta 可能性表现良好-平滑,对数凹入-但维数高。我已经尝试过重要性抽样,但是结果很奇怪,并且在很大程度上取决于我使用的建议。我简要地考虑了假设哈密顿量在前一个统一的基础上,进行哈密顿量计算θθ\theta并以谐波均值,直到我看到了。经验教训,谐波均值可以具有无限方差。是否存在替代MCMC估算器,该估算器几乎一样简单,但具有良好的方差?

2
使用MCMC从已知密度的双变量分布中抽样
我尝试使用R中的Metropolis算法从二元密度进行模拟,但是没有运气。密度可以表示为 ,其中是Singh-Maddala分布p (X ,ÿ)p(X,ÿ)p(x,y)p (ÿ| x)p(x)p(ÿ|X)p(X)p(y|x)p(x)p (x )p(X)p(x) p(x)=aqxa−1ba(1+(xb)a)1+qp(x)=aqxa−1ba(1+(xb)a)1+qp(x)=\dfrac{aq x^{a-1}}{b^a (1 + (\frac{x}{b})^a)^{1+q}} 参数,q,b和p(y | x)是对数正态的,其中log-mean是x的分数,而log-sd是常数。为了测试我的样本是否是我想要的样本,我查看了x的边际密度,其应为p(x)。我尝试了R包MCMCpack,mcmc和dream中的不同Metropolis算法。我舍弃了老化,使用细化处理,使用了大小不超过100万的样本,但是由此产生的边际密度从来不是我提供的那种。aaaqqqbbbp(y|x)p(y|x)p(y|x)xxxxxxp(x)p(x)p(x) 这是我使用的代码的最终版本: logvrls &lt;- function(x,el,sdlog,a,scl,q.arg) { if(x[2]&gt;0) { dlnorm(x[1],meanlog=el*log(x[2]),sdlog=sdlog,log=TRUE)+ dsinmad(x[2],a=a,scale=scl,q.arg=q.arg,log=TRUE) } else -Inf } a &lt;- 1.35 q &lt;- 3.3 scale &lt;- 10/gamma(1 + 1/a)/gamma(q - 1/a)* gamma(q) Initvrls &lt;- function(pars,nseq,meanlog,sdlog,a,scale,q) { cbind(rlnorm(nseq,meanlog,sdlog),rsinmad(nseq,a,scale,q)) } library(dream) …
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.