在 PyMC3 中从用户提供的目标密度中采样

dev*_*ull 5 pymc pymc3

是否可以通过简单的方式从用户提供的 PyMC3 目标度量中进行采样?即我希望能够提供黑盒函数logposterior(theta)以及grad_logposterior(theta)那些和样本,而不是在 PyMC3s 建模语言中指定模型。

twi*_*cki 3

这有点笨拙。您需要创建一个新的 Theano Op。以下是一些示例:https://github.com/Theano/Theano/blob/master/theano/tensor/slinalg.py#L32

然后,您需要创建一个通过 new 评估 logp 的分发类Op,例如: https: //github.com/pymc-devs/pymc3/blob/master/pymc3/distributions/continuous.py#L70