pymc3では、切り捨てられた正規の事前設定はどうすればできますか? pymc2ではかなり簡単ですが、pymc3では切り捨てられた正規分布が利用できなくなったようです。切り詰められた通常の前の作成方法:pymc2をpymc3に変換する
Pymc2:
TruncatedNormal('gamma_own_%i_' % i, mu=go, tau=v_gamma_inv, value=0, a=-np.inf, b=0)
Pymc3:?
pymc3では、切り捨てられた正規の事前設定はどうすればできますか? pymc2ではかなり簡単ですが、pymc3では切り捨てられた正規分布が利用できなくなったようです。切り詰められた通常の前の作成方法:pymc2をpymc3に変換する
Pymc2:
TruncatedNormal('gamma_own_%i_' % i, mu=go, tau=v_gamma_inv, value=0, a=-np.inf, b=0)
Pymc3:?
まずあなたが(ここBoundedNormal
と呼ばれる)有界分布、あなたを入力根本的な分布の通常のパラメータ変数を作成を構築する必要があります次のコードはPymc3バージョン3.0で動作します
a, b=np.float32(0.0), np.float32(10.0)
K_lo, K_hi = 0.0, 1.0
BoundedNormal = pm.Bound(pm.Normal, lower=K_lo, upper=K_hi)
with pm.Model() as model:
n = BoundedNormal('n', mu=a, tau=b)
tr = pm.sample(2000, pm.NUTS())
traceplot(tr)
ありがとうございますKiudee! – Kemp
これを今見つけた方に。 'AttributeError: 'bool'オブジェクトを取得している場合、 'any'属性はありません。その後、 'BoundedNormal'インスタンス化で' testval'を指定します。 – JudoWill