問題タブ [pymc]
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.
python - PyMC を使用して二重統合を実行する
MCMC メソッドを使用して二重積分を実行する必要があります。私はすでに正しい結果でrombergとdoublequadの統合を使用してそれを行っています。結果を比較するには、MCMC 統合も使用する必要があります。PyMCを理解するのは難しいと思いました。
概要は次のとおりです。いくつかの時系列データがあり、どの分布がそれに適合するかを調べる必要があります。二重積分を含む何をすべきかを教えてくれる一連の方程式があります。
いくつかのガイダンスを期待しています。
python - pymcを使用してMCMCで2つの正規分布(ヒストグラム)を当てはめますか?
CCD のスペクトログラフで検出されたライン プロファイルを適合させようとしています。検討しやすいように、解決した場合に実際に解決したいものと非常によく似たデモンストレーションを含めました。
私はこれを見てきました: https://stats.stackexchange.com/questions/46626/fitting-model-for-two-normal-distributions-in-pymc と他のさまざまな質問と回答ですが、根本的に異なることをしていますやりたいことより。
私の質問: PyMC (またはいくつかのバリアント) は、上記で使用された 2 つのコンポーネントの平均、振幅、およびシグマを教えてくれますか?
実際の問題に実際に適合する関数はガウス関数ではないことに注意してください-したがって、「組み込み」の pymc.Normal() 型ではなく、汎用関数 (私の例では GaussFunc など) を使用して例を提供してください関数。
また、モデルの選択も別の問題であることは理解しています。したがって、現在のノイズでは、1 つのコンポーネント (プロファイル) だけが統計的に正当化される可能性があります。しかし、1、2、3 などのコンポーネントの最適なソリューションが何であるかを確認したいと思います。
また、PyMC を使用するという考えにも慣れていません。scikit-learn、astroML、またはその他のパッケージが完璧だと思われる場合は、お知らせください。
編集:
私は多くの方法で失敗しましたが、正しい軌道に乗っていたと思うことの 1 つは次のとおりです。
しかし、機能する mc.model を構築できませんでした。
matplotlib - 画面でmatplotlib/pymcを実行するとエラーが発生します
pymcでMatplot.plotを実行すると、screenを使用して一時停止します。それが行われた後、いくつかのエラーが表示されます:
ioff()を試しましたが、機能しませんでした。それを修正する他の方法はありますか?
python - Ubuntu 12.10 での PyMC テスト
Ubuntu 12.10 に PyMC をインストールしました。
Python 2.7.3 32 ビット。
実行しようとすると:
私は得る:
最新の HDF5 と PyTables もインストールされています。
テストが機能しない理由はありますか?
python - 多くの回帰のPyMC回帰?
私は長い間 PyMC を使用していませんが、すぐに線形回帰を取得できたことに満足しています (このコードはIPython で変更せずに実行する必要があります)。
このモデルには、40 の被験者 (観察) と各被験者の 5 つの共変量があります。モデルはランダム データのため収束しませんが、エラーなしでサンプリングされます (実際のデータは正確な結果に収束します)。
私が問題を抱えているモデルは、これの延長です。各被験者には実際には 3 つ (または N) の観測値があるため、これらの観測値に線を当てはめ、線の切片を「データ」または最終回帰ノードの入力として使用する必要があります。これは古典的な階層モデルだと思いますが、間違った方法で考えている場合は修正してください。
私の解決策は、一連の 40 の線形回帰 (被験者ごとに 1 つ) を設定し、切片パラメーターのベクトルを最終的な回帰のデータとして使用することでした。
このモデルは、サンプリング ステップで失敗します。dtype=object の代わりに、offsetArr を dtype=float64 としてキャストしようとすると、エラーが発生するようです。これを行う正しい方法は何ですか?私のoffsetArrをfloat64にキャストするために別の決定論的ノードが必要ですか? 特別な種類の pymc.Container が必要ですか? ご協力いただきありがとうございます!
python - pymc は事前分布と尤度関数をどのように表していますか?
pymc が Metropolis-Hastings アルゴリズムを実装して、関心のあるパラメーターの事後密度からサンプルを取得する場合、マルコフ連鎖の次の状態に移動するかどうかを決定するために、事後密度に比例する何かを評価できなければなりません。指定されたすべてのパラメーター値の密度。
事後密度は、観測データに事前密度を掛けたものに基づく尤度関数に比例します。
これらのそれぞれは、pymc 内でどのように表されますか? モデルオブジェクトからこれらの各量をどのように計算するのでしょうか?
誰かが私にアプローチの高レベルの説明を与えてくれるか、それを見つけることができる場所を教えてくれるのだろうか.
python - PyMC で逆問題を解く
Xの事前確率(例: X ~ Gaussian) と前方演算子y = f(x)が与えられたとします。さらに、ある実験によってyを観測し、この実験を無期限に繰り返すことができるとします。出力Yは、ガウス (Y ~ ガウス) またはノイズのない (Y ~ デルタ (観察)) と見なされます。
観察されたXに関する主観的な知識の程度を一貫して更新するにはどうすればよいでしょうか? PyMC で次のモデルを試しましたが、何か足りないようです。
事後はxtrueに収束していません。