問題タブ [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.
bayesian - PyMC - 分散共分散行列推定
次の論文 ( http://www3.stat.sinica.edu.tw/statistica/oldpdf/A10n416.pdf ) を読んで、分散共分散行列 Σ を次のようにモデル化しています。
Σ = diag(S)*R*diag(S) (論文の式 1)
S は標準偏差の k×1 ベクトル、diag(S) は対角要素 S をもつ対角行列、R は k×k 相関行列です。
PyMC を使用してこれを実装するにはどうすればよいですか?
ここに私が書いたいくつかの初期コードがあります:
ありがとう
[編集]
私はそれが次を使用して行うことができると思います:
python - 線形回帰のための PYMC の概要
この例に従って始めたいと思いました: http://www.databozo.com/2014/01/17/Exploring_PyMC3.html
しかし、pymc 2.3 を使用して例を正確にたどると、終了し、API が UserWarning を変更したことが通知されました。MCMC() 構文は非推奨です。M = MCMC(input) を介してノードを明示的に渡してください。'MCMC() 構文は非推奨です。M = MCMC(input).') を介してノードを明示的に渡してください。ただし、モデル関数に正確に何を提供するために例を変更するか、および「with」句をどのように処理するかについては、良い考えがありません。
問題のコードは次のとおりです。
上記のサンプルデータジェネレーターは正常に動作します
linux - Linux に pymc をインストールするときにエラーが発生する
pymc
を使用してインストールしようとすると easy_install pymc
次のエラーが表示されます
Ubuntu 12.04 を使用していますが、このエラーを修正するにはどうすればよいですか?
serialization - サンプリング後の PyMC 変更バックエンド
私はいくつかの高エネルギー物理学データの分析に PyMC を使用しています。完璧に機能し、分析が完了し、論文に取り組んでいます。
ただし、小さな問題があります。RAM
データベース バックエンドでサンプラーを実行しました。トレースは、IPython カーネル プロセスのメモリ内に数か月間置かれています。問題は、ワークステーションのサポート スタッフがカーネルのアップグレードを実行してそのワークステーションを再起動したいということです。これにより、トレースが失われます。これらのトレースは、すべてのプロットを作成したものであるため、(単に新しいものを生成するのではなく) 保持したいと思います。また、出版物の補足資料として、トレースの一部 (関心のあるパラメーターのみ) を含めたいと思います。
pymc.MCMC
バックエンドで作成されたオブジェクトで既存のチェーンを取得RAM
し、別のバックエンドに変更して、チェーン内のトレースを書き出すことは可能ですか?
python - PyMCの変数にカスタム関数を適用するには?
私が書いているモデルの 1 つのステップで、量の誤差関数を計算する必要があります。私がやろうとしていることは次のようになります。
erf
配列では機能しないため、これは失敗します。私は試した:
しかし、成功しませんでしたが、次の方法で結果を得ることができることを知っています:
しかし、これは を生成せず、 のみを生成するため、正しい方法とは思えませpm.Deterministic
んnp.array
。代わりにどうすればいいですか?(PyMC はバージョン 2.3)
編集:上記の例は、わかりやすくするために単純化されています。実際のコードで関連する箇所がどのように見えるかを次に示します。理想的には、これが機能することを望みます:
しかし、メッセージで失敗した場合TypeError: only length-1 arrays can be converted to Python scalars
。np.vectorize
ルートを行く
同じエラー メッセージでクラッシュします。リスト内包表記
そのように動作しますが、コードの後半でこの場所でエラーが発生します。
エラーはAttributeError: log
です。
数値近似を使用してエラー関数の計算を行っています。これは、一般的なセットアップが正しいことを意味するはずです。erf
関数を直接使用する方が、より適切で明確になります。
pymc - pymc モデルに測定誤差を追加する
私はpymc2に次のモデルを持っています:
このモデルの物理的背景は、銀河の光度関数(LF)、つまり銀河が光度 L を持つ確率です。銀河の種類によっては、LF は単なるガンマ関数です。銀河の調査では通常、ターゲットのかなりの部分、特に光度の低いターゲットを見逃しているため、データの切り捨ての可能性が説明されています。このモデルでは、以下のすべてが欠けていますlmin
この方法の詳細は、ケリーらによるこの論文で見つけることができます。
このモデルは機能します。モデルを実行するMAP
と、シミュレートされたデータからパラメーターをMCMC
回復できますが、成長するにつれて不確実性が高まります。alpha
scale
sample
lmin
ここで、ガウス測定誤差を挿入したいと思います。簡単にするために、すべてのデータの精度は同じです。エラーも含める可能性を変更していません。
しかし、このモデルは機能しないため、ここで何か間違ったことをしていることは確かです。このモデルで実行すると、とpymc.MAP
の初期値が回復しますalpha
scale
を実行するpymc.MCMC
とalpha
、beta
まったくトレースされません。
再び初期値。実際alpha
、たとえば 0.02 で開始するように変更すると、復元された値alpha
は 0.02 になります。
これは、作業モデルとシミュレートされたデータを含むノートブックです。
これは、エラー モデルとシミュレートされたデータを含むノートブックです。
この作業を行うためのガイダンスは本当にありがたいです。
pymc - PyMC 3 での生存分析
ここ (導入の最初のもの) から単純なサバイバル モデルをPyMC 2 から PyMC 3 に移植しようとしました。PyMC 3でこれがどのように行われるか、誰かが例を提供できますか?