問題タブ [jags]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
842 参照

r - JAGS を使用して、2 項および 20 サンプル/プロットで林冠被覆の中央値を推定する

13 のグループ (植生の有無にかかわらず 20 からのポイント数として記録) と合計 223 のサンプルについて、中央値と、5、25、75、および 95 パーセンタイルのキャノピー カバーを推定したいと思います。以前、ベータ版配布を想定してこれを投稿しましたが、それは正しくありませんでした。これは提出期限が過ぎた原稿のためのもので、これが最後に欠落している部分です。誰かが私を完成させるのを手伝ってくれたら本当にありがたいです(コードが機能するまで)。私はそれに近いと思いますが、微調整が必​​要です-私は思います。

(私は編集して2つの反対票を修正しましたが、何が明確でないのかわかりません)。

大変感謝します!

以下は、私のモデル ステートメント、R コード、およびデータです。そのまま、私が得るエラーは

ただし、以下のスペースを削除したことに注意してください。エラーは可能性のステートメントを参照しています。

R コード:

データ:

0 投票する
0 に答える
222 参照

r - サッカー結果のモデリング

MCMC と R の理解を深めるために改善しようとしている添付モデル (Rasmus Bååth の厚意による) があります。モデルにフィードされるのは、各行に (HomeTeam、AwayTeam、Season、HomeGoals、AwayGoals、MatchResult を含む) サッカーの試合です。 、ホームフォーム、アウェイフォーム)。このモデルは、ポアソン分布としてモデル化された HomeGoals と AwayGoals を使用して、2 つのチーム間の試合でサッカーの結果を予測するために使用されます。私がここ数日達成しようとしてきたことは、モデル内のチームの現在のフォームに関するこのデータを使用することですが、それを実現する方法が思いつきません。どのようにすればよいか、いくつかの提案を期待しています。

いくつかの説明:

  • シーズンは、ゲームがプレイされたシーズンです
  • MatchResult は、アウェイ チームが勝った場合は -1、引き分けの場合は 0、ホーム チームが勝った場合は 1 です。
  • HomeForm と AwayForm は、それぞれホーム チームとアウェイ チームの現在のフォームを定量化する値です (-1 対 1、5 のウィンドウでのチームの最後のゲームのローリング平均試合結果、チームがアウェイ サイドでプレーした場合は負の試合結果)。 .
  • テキスト内の列は、モデル (因子) に渡される前に整数に変換されます。

ありがとうございました!

モデル:

データ (の一部):

0 投票する
0 に答える
153 参照

r - JAGS/WinBUGS のベクトル リテラル

JAGS/WinBUGS でベクトル リテラルを記述する方法はありますか? JAGS でこれらを試してみましたが、すべてエラーになります。

それらを1つずつ割り当てたくありません。

ここまたはマニュアルで実際に役立つものは何も見つかりませんでした。

0 投票する
1 に答える
672 参照

r - forループを使用して複数のパラメーターに事前分布を割り当てる

JAGS マニュアルを読みましたが、同じ事前分布を JAGS / R2JAGS モデルの複数のパラメーターに割り当てる方法が見つかりませんでした。

たとえば、現在、次のような多くのコードを繰り返さなければなりません。

このコードを乾かすには?

0 投票する
0 に答える
1305 参照

python - PyMC の実行中にエラーが発生しました - 確率値がサポート範囲外であるか、親の現在の値を禁止しています

私は PyMC を使用して、病状の 4 つの異なる予測因子を入力として取り、それらを組み合わせて、「はい、この患者にはこの状態があります」という予測因子のサブセットが与えられた場合に、患者がその状態にあるという全体的な事後確率を生成しようとしています。

アイデアは、ベータ分布から各予測子のシータ (条件の全体的な割合) と偽陰性および偽陽性の割合を選択し、そこからベイズの定理を使用して周辺確率と事後確率を計算することです。カウントの 16 個の観測値の配列があり、予測子の可能な組み合わせごとに 1 つです (4 つの予測子があるため、予測子の可能な組み合わせは 2**4 = 16 通りあります)。PyMC チュートリアルhttp://pymc-devs.github.io/pymc/tutorialの次の例で、disasters_array をポアソン分布で使用する方法と同様に、この最後のカウント セットと限界確率を多項分布に入力しています。 .html .

これを試して実行するために私が書いたコードは次のとおりです。

これを実行すると、カウントを計算するときに、最後の行でエラーが発生します。

明らかに、このエラーは、PyMC が Multinomial() に入力している値を気に入らないことに関係していますが、どちらが間違っているのかわかりません。値は counts_array (カウントの観測値) である必要があり、n は 16 である必要があります。これは、カウントに 16 項目の配列を選択し、予測子の可能な組み合わせごとに 1 つ、p が限界確率であり、観測されたものである必要があるためです。私は値を観察したので、真でなければなりません。

私は何を間違っていますか?

編集:それが役立つ場合、以前は次のコードを使用してR2jagsでこれを行っていました:

0 投票する
1 に答える
283 参照

r - runjags サマリーの psrf 値が低すぎませんか?

Runjags はpsrf = 1.0047、明らかに収束の問題があるチェーンに対して非常に低いと報告しています。

ここに画像の説明を入力

using codaを計算しようとすると、psrfより合理的に見える結果が得られます。

psrfでは、runjags による報告がこれほど低いのはなぜでしょうか。それはrunjagsの問題ですか、それとも何か間違っていますか?

R 3.1.0 で現在のバージョンの runjags (1.2.1-0) を使用しています。

編集:要約の作成中に警告が表示されました-前に言及しなかったことをお詫びします:

0 投票する
1 に答える
40 参照

jags - JAGS の変更ログはありますか?

JAGS の変更履歴はありますか? JAGS のホームページと sourceforge を調べましたが、何も見つかりませんでした。

0 投票する
1 に答える
2003 参照

r - デバッグ目的で JAGS ノード値をダンプする方法はありますか?

JAGS から次のエラーが発生しました。

この単なる情報から、そこで何が起こっているかを知ることは非常に困難です。コードの次の部分が原因です。

Y[107]ノードの親の値、つまりノードを出力すると非常に便利でしたpi[107,]。これにより、エラーを探す場所が非常に明確なフィードバックが得られます。JAGSにそのような方法はありますか?

JAGS マニュアルの第 3.2 章で、JAGS はいくつかの有用なjags.dumpN.Rファイルを残すことについて話しています。

モデルが正しくコンパイルおよび初期化されても、更新中にエラーが発生した場合、モデルの現在の状態が jags.dumpN.R という名前のファイルにダンプされます。ここで、N はチェーン番号です。次に、ダンプされたデータを R にロードして、エラーが発生したときの各チェーンの状態を調べる必要があります。

ただし、これが私のケースに当てはまるかどうかはわかりません。そこで、ダンプファイルを取得しようとしました。私はrunjags::run.jags()JAGSを実行するために使用しているので、デバッグモードで実行しようとしました:

runjagsfiles_3残念ながら、ディレクトリには有用な情報を含むダンプやファイルはありません 。

これらの「無効な親の値」をJAGSから取得する方法はありますか?

JAGS 3.4.0 を使用しています。

PS: 意図的に完全なモデル コードをここに提出しません。私の質問は JAGS に関する一般的なものであり、私のモデルが機能しない理由ではありません。

0 投票する
2 に答える
1314 参照

r - JAGS は dcat のすべての親ノードを評価しますか、それとも必要な 1 つだけを評価しますか?

次のステートメントがあるとします。

としましょうY[1] = 5。ジャグはすべてのpi[1,1:100]ノードを評価しますか、それとも必要なノードのみを評価しpi[1,5]ますか?

私の経験から、JAGS はすべての親ノードを非効率的に評価しているようです。これは、dcat を取り除いた後、私のモデルが 3 倍高速化されたためです。のさまざまな結果のために、複数の for ループを使用する必要がありましたY[i]

dcatここで、JAGS では が実際には必要なくsum(pi[]) = 1、合計が 1 にdcatなるように正規化されることに気付きました。これは、すべてのノードを評価する必要があることを意味します。pi[]

これはとても悲しいことです。必要な唯一の親ノードのみを評価するスマートな同等物はありますか? dcatWinBUGS と Stan はどうですか?

0 投票する
2 に答える
2429 参照

jags - JAGS:観測不能変数と観測可能変数の両方を持つ多変量正規?

JAGS には「単純な」問題があり、気が狂いそうになります。本質的に、動作する次の例を検討してください。

ここで、x2 は観測可能な変数 (つまり、データ) であり、u は潜在変数です。この例では、両方が 2 つの異なる正規分布から独立して描かれています。しかし、私はそれらが (おそらく) 依存していること、つまり、1 つの多変量正規分布から引き出されることを望んでいます。だから私はやりたい:

残念ながら、この構文は正しくないため、これは機能しません。ただし、多くの異なる構文を試してみましたが、どちらも機能しません。例えば、

明らかなエラーNode y[1,1:2] overloades 以前に定義されたノード につながります。それで、なにかお手伝いできますか?助けてください、私は怒っています...

更新:少なくとも次のことができることがわかりました:(Rで:)

(ジャグで:)

これは (少し) 機能しますが、観測可能な変数 (x2) が (s を介して) 間接的にのみ観測可能であるかのように扱われるため、もちろん効率が低下します。