Pymc:将值传递给随机装饰器

时间:2017-09-25 20:37:35

标签: python decorator python-decorators pymc

我正在尝试使用value将值传递给随机装饰器。

@pymc.stochastic(value=(1.0, 1.0), dtype=np.float64)
def beta_priors(value):
    alpha, beta = value
    if alpha <= 0 or beta <= 0:
        return -np.inf
    else:
        return np.log(np.power((alpha + beta), -2.5)) 

我正在使用beta_priors(value=calc_tuple)[0]

进行呼叫

我收到错误:

TypeError: StochasticMeta object got multiple values for keyword argument 'value'

如何覆盖装饰器的值关键字?

1 个答案:

答案 0 :(得分:0)

我不确定是否有办法覆盖,但文件说你不能这样做:

  

装饰者随机可以采取任何论点   Stochastic.__init__除了parentslogprandomdocvalue外,还需要{。}}。

https://pymc-devs.github.io/pymc/modelbuilding.html?highlight=decorator#creation-of-stochastic-variables