タグ付けされた質問 「mcmc」

マルコフ連鎖モンテカルロ(MCMC)は、定常分布がターゲット分布であるマルコフ連鎖から乱数を生成することにより、ターゲット分布からサンプルを生成するためのメソッドのクラスを指します。MCMCメソッドは通常、乱数を生成するためのより直接的なメソッド(たとえば、反転メソッド)が実行不可能な場合に使用されます。最初のMCMCメソッドはMetropolisアルゴリズムで、後にMetropolis-Hastingsアルゴリズムに変更されました。

3
MCMCの実行:jags / stanを使用するか、自分で実装する
ベイジアン統計の研究は初めてです。ベイジアンの研究者はJAGS / Stanのようなツールを使用するよりも、MCMCを自分で実装する方がよいと研究者から聞いた。学習目的を除いて、MCMCアルゴリズムを(Rのような「高速ではない」言語で)自分で実装することの利点は何ですか?
13 bayesian  mcmc 

1
ハミルトニアンモンテカルロおよび離散パラメーター空間
私はちょうどスタンでモデルの構築を始めました。このツールに慣れるために、私はベイジアンデータ分析(第2版)のいくつかの演習を行っています。ウォーターバック運動想定し、そのデータと、(N 、θ )は不明。ハミルトニアンモンテカルロは離散パラメーターを許可しないため、Nを実ε [ 72 、∞ )として宣言し、関数を使用して実数値の二項分布をコード化しました。n∼binomial(N,θ)n∼binomial(N,θ)n \sim \text{binomial}(N, \theta)(N,θ)(N,θ)(N, \theta)NNN∈[72,∞)∈[72,∞)\in [72, \infty)lbeta 結果のヒストグラムは、事後密度を直接計算して見つけたものとほぼ同じに見えます。ただし、これらの結果を一般的に信頼してはいけない微妙な理由があるのではないかと心配しています。の実数値推論は非整数値に正の確率を割り当てるため、実際には分数ウォーターバックは存在しないため、これらの値は不可能であることがわかります。一方、結果は良好であるように見えるため、この場合、単純化は推論に影響を与えないように見えます。NNN この方法でモデリングするための指針や経験則はありますか?それとも、個別のパラメーターを実際の悪い慣行に「促進」するこの方法はありますか?

2
異分散測定誤差を伴うAR(1)プロセス
1.問題 I変数のいくつかの測定値有する、、Iは、配信有するため簡単にするため、私は仮定しますMCMCを介して得られたが、平均値のガウス分布でありますと分散。ytyty_tt=1,2,..,nt=1,2,..,nt=1,2,..,nfyt(yt)fyt(yt)f_{y_t}(y_t)μtμt\mu_tσ2tσt2\sigma_t^2 これらの観測の物理モデル、たとえばありますが、残差相関しているようです。具体的には、私がいることを考えるのは物理的な理由持っているプロセスを考慮に相関を取るために十分であろう、と私は、私は必要のあるMCMC、経由フィットの係数を求めることを計画する可能性を。解決策はかなり簡単だと思いますが、私にはよくわかりません(とても簡単に思えるので、何かが足りないと思います)。g(t)g(t)g(t)rt=μt−g(t)rt=μt−g(t)r_t = \mu_t-g(t)AR(1)AR(1)AR(1) 2.尤度の導出 平均ゼロのAR(1)AR(1)AR(1)プロセスは次のように記述できます Xt=ϕXt−1+εt, (1)Xt=ϕXt−1+εt, (1)X_t = \phi X_{t-1}+\varepsilon_t,\ \ \ (1) ここで、εt∼N(0,σ2w)εt∼N(0,σw2)\varepsilon_t\sim N(0,\sigma_w^2)。したがって、推定されるパラメーターはθ={ϕ,σ2w}θ={ϕ,σw2}\theta = \{\phi,\sigma_w^2\}(私の場合、モデルg(t)のパラメーターも追加する必要がありますが、g(t)g(t)g(t)それは問題ではありません)。しかし、私が観察しているのは変数 Rt=Xt+ηt, (2)Rt=Xt+ηt, (2)R_t = X_t+\eta_t,\ \ \ (2) ここで\ eta_t \ sim N(0、\ sigma_t ^ 2)を想定してηt∼N(0,σ2t)ηt∼N(0,σt2)\eta_t\sim N(0,\sigma_t^2)おり、σ2tσt2\sigma_t^2は既知です(測定エラー)。XtXtX_tはガウス過程であるため、RtRtR_tもそうです。特に、私はそれを知っています X1∼N(0,σ2w/[1−ϕ2]),X1∼N(0,σw2/[1−ϕ2]),X_1 \sim N(0,\sigma_w^2/[1-\phi^2]), したがって、 R1∼N(0,σ2w/[1−ϕ2]+σ2t).R1∼N(0,σw2/[1−ϕ2]+σt2).R_1 \sim N(0,\sigma_w^2/[1-\phi^2]+\sigma_t^2). 次の課題は、t \ neq 1に対してR_t | R_ …

1
非対称のプロポーザル分布を使用したMetropolis-Hastingsの理解
モデルのパラメーターを推定するためのコード(つまり)を記述するために、Metropolis-Hastingsアルゴリズムを理解しようとしています。参考文献によると、Metropolis-Hastingsアルゴリズムには次の手順があります。f(x )= a ∗ xf(バツ)=a∗バツf(x)=a*x を生成しYt〜Q(y| バツt)Yt〜q(y|バツt)Y_t \sim q(y|x^t) バツt + 1= { Yt、バツt、確率でρ (xt、Yt)、確率で1 - ρ (Xt、Yt)、バツt+1={Yt、確率でρ(バツt、Yt)、バツt、確率で1−ρ(バツt、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 )ρ(バツ、y)=分(f(y)f(バツ)∗q(バツ|y)q(y|バツ)、1)\rho(x,y)=\min \left( \frac{f(y)}{f(x)}*\frac{q(x|y)}{q(y|x)},1 \right) いくつか質問したい方法: 書誌では、qqqが対称分布の場合、比率q(x | y)/ q(y| …


1
MCMC収束診断を半自動化してバーンインの長さを設定できますか?
MCMCチェーンのバーンインの選択を自動化したいと思います。たとえば、収束診断に基づいて最初のn行を削除します。 このステップはどの程度安全に自動化できますか?それでも自己相関、mcmcトレース、pdfをダブルチェックしても、バーンインの長さを自動で選択できると便利です。 私の質問は一般的ですが、R mcmc.objectを処理するための詳細を提供できれば素晴らしいと思います。Rでrjagsおよびcodaパッケージを使用しています。
13 r  bayesian  mcmc 

3
MCMCの理解:代替手段は何でしょうか?
ベイジアン統計を初めて学習します。MCMCを理解するための角度として、私は疑問に思った:それは根本的に別の方法ではできないことをしているのか、それとも代替手段よりもはるかに効率的に何かをしているのか? 例として、反対のを計算するモデルが与えられたデータ与えられた場合、パラメーターの確率を計算しようとしていると仮定します。これをベイズの定理で直接計算するには、ここで指摘した分母が必要です。しかし、次のように、統合によってそれを計算できますか?P (D | x 、y 、z )P (D )P(x 、y、z| D)P(バツ、y、z|D)P(x,y,z|D)P(D | x 、y、z)P(D|バツ、y、z)P(D|x,y,z)P(D )P(D)P(D) p_d = 0. for x in range(xmin,xmax,dx): for y in range(ymin,ymax,dy): for z in range(zmin,zmax,dz): p_d_given_x_y_z = cdf(model(x,y,z),d) p_d += p_d_given_x_y_z * dx * dy * dz それは機能しますか(変数の数が非常に多いにもかかわらず非常に非効率的です)、またはこのアプローチが失敗する原因となる何か他のものがありますか?
13 bayesian  mcmc 

1
MCMCとMetropolis-Hastingsアルゴリズムについて
過去数日間、私はマルコフ連鎖モンテカルロ法(MCMC)の仕組みを理解しようと試みてきました。特に、Metropolis-Hastingsアルゴリズムを理解して実装しようとしています。これまでのところ、私はアルゴリズムの全体的な理解を持っていると思いますが、私にはまだ明確ではないいくつかの事柄があります。MCMCを使用して、一部のモデルをデータに適合させたい。このため、観測データDに直線を当てはめるためのMetropolis-Hastingsアルゴリズムの理解について説明します。f(x)=axf(x)=axf(x)=axDDD 1)の初期推測を行い。このセットAを私たちの現在とA(0)。また、マルコフ連鎖の最後にaを追加します(C)。aaaaaaaaaa0a0a_0aaaCCC 2)以下の手順を数回繰り返します。 3)0およびDが与えられた現在の尤度()を評価します。L0L0{\cal L_0}a0a0a_0DDD 4)μ = a 0およびσ = s t e p s i z eの正規分布からサンプリングすることにより、新しい(a 1)を提案します。今のところ、s t e p s i z eは一定です。aaaa1a1a_1μ=a0μ=a0\mu=a_0σ=stepsizeσ=stepsize\sigma=stepsizestepsizestepsizestepsize 5)1とDが与えられた場合、新しい尤度()を評価します。L1L1{\cal L_1}a1a1a_1DDD 6)がL 0よりも大きい場合、新しいa 0として1を受け入れ、 Cの末尾に追加してステップ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)が2つの尤度の差(L 1 - L 0)より小さい場合、新しいa 0として1を受け入れ、 Cの末尾に追加してステップ2に進みます。UUUL1L1{\cal L_1}L0L0{\cal L_0}a1a1a_1a0a0a_0CCC 9)が2つの尤度の差(L 1 - …

1
冗長な平均パラメータ化によりGibbs MCMCが高速化されるのはなぜですか?
Gelman&Hill(2007)の本(Regression and Multilevel / Hierarchical Modelsを使用したデータ分析)で、著者は、冗長な平均パラメーターを含めることでMCMCを高速化できると主張しています。 与えられた例は、「フライトシミュレーター」(式13.9)のネストされていないモデルです。 yiγjδk∼N(μ+γj[i]+δk[i],σ2y)∼N(0,σ2γ)∼N(0,σ2δ)yi∼N(μ+γj[i]+δk[i],σy2)γj∼N(0,σγ2)δk∼N(0,σδ2) \begin{align} y_i &\sim N(\mu + \gamma_{j[i]} + \delta_{k[i]}, \sigma^2_y) \\ \gamma_j &\sim N(0, \sigma^2_\gamma) \\ \delta_k &\sim N(0, \sigma^2_\delta) \end{align} 彼らは平均パラメータを追加し、再パラメータ化を推奨およびμ δ次のように:μγμγ\mu_\gammaμδμδ\mu_\delta γj∼N(μγ,σ2γ)δk∼N(μδ,σ2δ)γj∼N(μγ,σγ2)δk∼N(μδ,σδ2) \begin{align} \gamma_j \sim N(\mu_\gamma, \sigma^2_\gamma) \\ \delta_k \sim N(\mu_\delta, \sigma^2_\delta) \end{align} 提供される唯一の正当化はそれです(p。420): シミュレーションは、ベクトル(またはδ)全体がゼロから遠くなるような構成でスタックする可能性があります(平均0の分布が割り当てられている場合でも)。最終的に、シミュレーションは正しい分布に収束しますが、待つ必要はありません。γγ\gammaδδ\delta 冗長な平均パラメータはこの問題にどのように役立ちますか? ネストされていないモデルは、主にとδが負に相関しているため、遅いように思えます。(実際、一方が上がると、もう一方は下がる必要があります。合計がデータによって「固定」されるためです)。冗長な平均パラメーターは、γとδの間の相関を減らすのに役立ちますか?γγ\gammaδδ\deltaγγ\gammaδδ\delta

2
MCMCサンプルからのモードの信頼性
彼の著書Doing Bayesian Data Analysisで、John KruschkeはRのJAGSを使用する際に次のように述べています。 ... MCMCサンプルからのモードの推定は、MCMCサンプルのランダムなバンプとリップルに敏感な平滑化アルゴリズムに基づいているため、かなり不安定になる可能性があります。(ベイジアンデータ分析の実行、ページ205、セクション8.2.5.1) メトロポリスアルゴリズムとギブスサンプリングのような正確な形式を把握していますが、スムージングアルゴリズムについてもよく知らないので、MCMCサンプルからのモードの推定が不安定になることを意味します。誰もが平滑化アルゴリズムが何をしていて、なぜモードの推定が不安定になるのかについて直感的な洞察を与えることができますか?
12 bayesian  mcmc  mode 

1
MCMC; 後部から「純粋」で「十分に大きい」サンプルがあることを確認できますか?そうでない場合、どのように機能しますか?
このスレッドを参照:マルコフ連鎖モンテカルロ法(MCMC)を素人にどのように説明しますか?。 マルコフ連鎖とモンテカルロの組み合わせであることがわかります。マルコフ連鎖は、不変の制限分布として事後で作成され、その後、制限分布(=事後)からモンテカルロドロー(従属)が作成されます。 後ことをしましょうと言う(私はここに簡素化していますことを知っている)手順我々は極限分布ですΠ(*)。LLLΠΠ\Pi 確率変数の配列であるマルコフ連鎖は、私はシーケンスを取得、Xは、iの確率変数であるとΠは ''制限確率変数であります''サンプリング元です。 X1,X2,…,XL,Π,Π,Π,…ΠX1,X2,…,XL,Π,Π,Π,…ΠX_1, X_2, \dots , X_L, \Pi, \Pi, \Pi, \dots \PiXiXiX_iΠΠ\Pi MCMCは初期値から始まります。つまり、は、その1つの値x 1ですべての質量を持つランダム変数です。私は確率変数の実現のための確率変数と小文字のために大文字を使用する場合は、MCMCは私にシーケンス与え、X 1、X 2、X 3、... のx L、π 1、π 2、π 3、。。。。π のn。したがって、MCMCチェーンの長さはL + nです。X1X1X_1x1x1x_1x1,x2,x3,…xL,π1,π2,π3,....πnx1,x2,x3,…xL,π1,π2,π3,....πnx_1,x_2,x_3, \dots x_L, \pi_1, \pi_2, \pi_3, ....\pi_n [[*注:大文字はランダム変数(つまり、一連の結果)であり、小さなは結果、つまり1つの特定の値です。*]]xxx もちろん、唯一の私の「」事後「」と後部を近似するための「」だけでなく「に属しているが」の値nが '十分な大きさ「」でなければなりません。πiπi\pi_innn 私はこれをまとめるならば、私はMCMCチェーン持ち長さN = L + N、のみπ 1、π 2、... 、π Nは私の後方近似に関連する、及びnは十分な大きさでなければなりません。x1,x2,x3,…xL,π1,π2,π3,....πnx1,x2,x3,…xL,π1,π2,π3,....πnx_1,x_2,x_3, \dots x_L, \pi_1, \pi_2, …
12 mcmc 

1
ベイジアンモデルの選択におけるジェフリーズ-リンドリーのパラドックスをいつ心配する必要がありますか?
RJMCMCを使用して探索する、さまざまな複雑さのモデルの大きな(ただし有限の)スペースを検討しています。各モデルのパラメーターベクトルの事前分布は非常に有益です。 どのような場合(もしあれば)、より複雑なモデルの1つがより適している場合、ジェフリーズ-リンドリーのパラドックスがより単純なモデルを好むかについて心配する必要がありますか? ベイジアンモデルの選択におけるパラドックスの問題を浮き彫りにする簡単な例はありますか? 私はいくつかの記事、すなわち西安のブログとアンドリュー・ゲルマンのブログを読んだことがありますが、私はまだ問題をよく理解していません。

2
MCMCはいつ便利ですか?
MCMCアプローチが実際にどのような状況で役立つかを理解するのに苦労しています。Kruschkeの本「Doing Bayesian Data Analysis:A Tutorial with R and BUGS」のおもちゃの例を見ていきます。 これまで私が理解していたのは、P (θ | D )のサンプルを得るために、p(D|θ)p(θ)p(D|θ)p(θ)p(D|\theta)p(\theta)に比例するターゲット分布が必要だということです。しかし、p (D | θ )p (θ )が得られたら、分布を正規化して後部を取得するだけでよく、正規化係数は数値的に簡単に見つけることができます。それでは、これが不可能な場合はどうなりますか?P(θ|D)P(θ|D)P(\theta|D)p(D|θ)p(θ)p(D|θ)p(θ)p(D|\theta)p(\theta)
12 mcmc 

1
MCMCで自己相関プロットを解釈する方法
「子犬の本」としても知られるジョンK.クルシュケの本Doing Bayesian Data Analysisを読んで、ベイジアン統計に精通しています。第9章では、この単純な例で階層モデルを紹介します: 及びベルヌーイ観察は3枚のコイン、それぞれ10のフリップあります。1つは9つのヘッド、他の5つはヘッド、もう1つは1つのヘッドです。yj iθjμκ〜BのEのR 、N 、O 、U 、L L I(θj)〜BのEのトン(μκ、(1-μ)κ)〜BのE T(Aμ、Bμ)〜G A M M A(Sκ、Rκ)yj私〜Bernoあなたはll私(θj)θj〜Beta(μκ、(1−μ)κ)μ〜Beta(Aμ、Bμ)κ〜Gamma(Sκ、Rκ)\begin{align} y_{ji} &\sim {\rm Bernoulli}(\theta_j) \\ \theta_j &\sim {\rm Beta}(\mu\kappa, (1-\mu)\kappa) \\ \mu &\sim {\rm Beta}(A_\mu, B_\mu) \\ \kappa &\sim {\rm Gamma}(S_\kappa, R_\kappa) \end{align} ハイパーパラメーターを推測するためにpymcを使用しました。 with pm.Model() as model: # define the mu = …

1
lmerとp値に関する混乱:memiscパッケージのp値はMCMCのものとどのように比較されますか?
パッケージlmer()内の関数はlme4p値を生成しなかったという印象を受けました(lmerp値とその他すべてを参照)。 代わりに、MCMCが生成したp値を使用して、この質問:混合モデルでの重要な効果lme4とこの質問:のパッケージの出力にp値が見つかりませんlmer()lm4R。 最近、私はmemiscと呼ばれるパッケージを試してgetSummary.mer()、モデルの固定効果をcsvファイルに入れました。まるで魔法のようにp、MCMCのp値と​​非常に密接に一致する列が表示されます(また、を使用した場合の処理​​時間はかかりませんpvals.fnc())。 私は暫定的にコードを見てgetSummary.mer、p値を生成する行を見つけました: p <- (1 - pnorm(abs(smry@coefs[, 3]))) * 2 これは、p値をlmer実行するのではなく、出力から直接生成できることを意味しpvals.fncますか?これが疑いなく「p-値フェティシズム」の議論を開始することを理解していますが、知りたいと思っています。memiscそれに関しては以前言及されたことを聞いたことがありませんlmer。 もっと簡潔に:生成された値よりもMCMC p値を使用する利点(ある場合)はgetSummary.mer()何ですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.