1

私は pymc3 で自分の変数stochasticと変数を書き込もうとしていますが、 pymc2.3の古い公開されたレシピでは、変数をパラメーター化する方法が機能しなくなりました。たとえば、私はこのアプローチを使用しようとしましたが、失敗しました:deterministicdirect

def x_logp(value, x_l, x_h):
    if ((value>x_h) or (value<x_l)):
        return -np.inf
    else:
        return -np.log(x_h-x_l+1)
def x_rand(x_l,x_h):
    return np.round((x_h-x_l)*np.random.random_sample())+x_l

Xpos=pm.stochastic(logp=x_logp,
                   doc="X position of halo center ",
                   observed=False, 
                   trace=True,
                   name='Xpos',
                   random=x_rand,
                   value=25.32,
                   parents={'x_l':0,'x_h'=500},
                   dtype=float64,
                   plot=True,
                   verbose=0)

次のエラー メッセージが表示されました。

ERROR: AttributeError: 'module' object has no attribute 'Stochastic' [unknown]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'Stochastic'

pymc3たとえば、デコレータと利用可能なディストリビューションを使用せずに、自分の事前確率または可能性をどのように定義できるか疑問に思っていますpymcか?

4

1 に答える 1