MCMCは単一の値に収束しますか?


12

私は、jagsとrjagsパッケージを使用して階層モデルを適合させようとしています。私の結果変数はyです。これは一連のベルヌーイ試行です。すべてのスピーカーはのカテゴリPにおける成功の確率があり、私の分析にPとM.ベース:私は、2つのカテゴリの下で実行されている38人の被験者を持っとのカテゴリMの成功の確率θ P × θ メートルを。:私はまた、いくつかのコミュニティレベルのPとMのためのハイパーパラメータがあることを仮定しているμ Pおよびμ メートルθpθp×θmμpμm

だから、すべてのスピーカーのため: θ メートルBのE T μ メートル × κ メートル1 - μ メートル× κ Mここで、κ P及びκ Mθpbeta(μp×κp,(1μp)×κp)θmbeta(μm×κm,(1μm)×κm)κpκm分布のピークに達したかコントロールが周りにあるおよびμ メートルμpμm

また、μ MBのE T MBのMμpbeta(Ap,Bp)μmbeta(Am,Bm)

これが私のジャグモデルです。

model{
## y = N bernoulli trials
## Each speaker has a theta value for each category
for(i in 1:length(y)){
    y[i] ~ dbern( theta[ speaker[i],category[i]])
}

## Category P has theta Ptheta
## Category M has theta Ptheta * Mtheta
## No observed data for pure Mtheta
##
## Kp and Km represent how similar speakers are to each other 
## for Ptheta and Mtheta
for(j in 1:max(speaker)){
    theta[j,1] ~ dbeta(Pmu*Kp, (1-Pmu)*Kp)
    catM[j] ~ dbeta(Mmu*Km, (1-Mmu)*Km)
    theta[j,2] <- theta[j,1] * catM[j]
}

## Priors for Pmu and Mmu
Pmu ~ dbeta(Ap,Bp)
Mmu ~ dbeta(Am,Bm)

## Priors for Kp and Km
Kp ~ dgamma(1,1/50)
Km ~ dgamma(1,1/50)

## Hyperpriors for Pmu and Mmu
Ap ~ dgamma(1,1/50)
Bp ~ dgamma(1,1/50)
Am ~ dgamma(1,1/50)
Bm ~ dgamma(1,1/50)
}

私が持っている問題は、私は適応のための5000回の繰り返しで、このモデルを実行すると、その後、1000個のサンプルを取る、ということであるMmuKm、単一の値に収束しました。4つのチェーンで実行しており、各チェーンは同じ値を持ちませんが、各チェーン内には単一の値があります。

MCMCメソッドを使用して階層モデルを近似するのは初めてなので、これがどれほど悪いのかと思います。これは、このモデルが適合しないことを望んでいるか、私の優先順位に何か問題があるか、またはコースのこのパーであるかの兆候としてとるべきですか?

編集:それは重要な場合には、値が(チェーンにわたって平均)に収束は0.91であり、κ mは 1.78でしたμmκm


私があなたを正しく理解している場合、これらのパラメータは各チェーンの1つの固定値に「収束」します(いくつかの反復後はまったく変更されません)が、その値は実行するチェーンごとに異なりますか?多分本当にくだらないメトロポリスヘイスティングスのステップのように、それは悪いように聞こえます。それはあなたのモデルかもしれませんし、JAGSかもしれませんし、両方の組み合わせかもしれません。おそらく、このモデルはフィットするのに時間がかかりすぎないので、特に適応期間については、最初に(はるかに)長いチェーンを実行してみます。
JMS

そのため、モデルをさらに5000回反復して更新しましたが、問題のパラメーターは動きませんでした。私は彼らがこのように極小に陥ることに気づかなかった。
-JoFrhwld

1
迅速な提案:1。n = 1でdbinを使用してみてください。そして、境界を使用してpの値を制限します。このようなもの:p.bound [i] <-max(0、min(1、p [i]))
マノエル・ガルディーノ

1
いくつかの明確な質問:1.カテゴリPの下に38人の被験者、カテゴリMの下に38人の被験者(例えば、length(y)= 76?)があります。2.ハイパーパラメーターと実験の理論的根拠に関する背景情報をもっと教えてください。それは私を少し混乱させます。
マノエルガルディーノ

1
たぶん、theta [j、1]〜dbeta(1.1、1.1)などのように、すべてのハイパーパラメーターを修正して、ハイパープライアーに移行する前にどのような結果が得られるかを確認します。また、シータ[j、2]の事前分布は2つのベータの積であり、一般にベータそのものではなく、当然の結果としてシータ[j、2] <シータ[j、1]です。あなたはこれを意図していたようです。好奇心から、なぜですか?
jbowman

回答:


2

これはコメントではありますが、十分な評判が得られていないので、回答することもできます。

MCMCサンプラーでの限られた経験から、私が観察したことは、ハイパーパラメーターが狭すぎるとパラメーターが固定されたままになる傾向があることです。パラメータの広がりを制御するため、ソリューションスペースが効率的にサンプリングされるのを防ぎます。

ハイパーパラメーターの値を大きくして、何が起こるかを確認してください。

このテクニカルペーパーは、MCMCサンプラーの理解に大いに役立ちました。2つのサンプラー、Gibbs(使用しているもの)、Hybrid Monte Carloで構成されており、パラメーターとハイパーパラメーターの事前、ハイパー事前、および値の選択方法をすばやく説明しています。


0

これはチェーンの構造の問題である可能性があります。どこで終わるかは、どこから始めるかによって異なります。MCMCを使用するには、チェーンを再帰的にする必要があります。つまり、どこから始めても、状態空間の他のすべての状態に到達できます。チェーンが再帰的でない場合、状態空間のサブセットに閉じ込められる可能性があります。MCMCの考え方は、チェーンが最終的に巻き込まれる既存の定常分布を持つことです。この定常分布は、通常、チェーン内のいずれかの状態になる可能性が高く、説明したように単一のポイントに閉じ込められません。私はあなたのアルゴリズムをチェックすることはできませんが、おそらくあなたはそれに間違いがあるかもしれません。マルコフ連鎖が再発しない問題を定義した可能性もあります。

MCMCの知識を深めたい場合は、MCMCのあらゆる側面を説明する記事が掲載されているマルコフ連鎖モンテカルロハンドブックをご覧になることをお勧めします。2011年にCRC Pressによって発行されました。

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