在PyMC3中定义数值(自定义)似然函数

时间:2018-08-24 21:12:11

标签: python theano pymc3

查看了几个问题/答案(123456,{{3 }},78910)和PyMC3的11,我设法创建了documentation的MCMC设置(请参见下文)。

我拟合的参数是连续且离散的,因此先验是使用pm.Uniformpm.DiscreteUniform定义的(对后者应用了重新缩放)。我的似然函数特别复杂(它涉及比较观察到的数据和使用自由参数生成的一些合成数据的N维直方图),因此我不得不使用theano的{​​{1}}运算符来编写它

此处显示的实现适用于处理随机数据的玩具模型,但在我的实际模型中,可能性和参数非常相似。

我的问题是:

  1. 这是对的吗?我应该做些别的事情吗?
  2. 对似然函数的调用显然只是在那儿扔了,什么也没做,也没有任何联系。这是执行此操作的正确方法吗?
  3. 我对连续参数使用@as_op,但是由于我的可能性是数字,所以我认为我不应该这样做。由于代码仍在运行,因此我可以确定发生了什么。

这是我第一次使用NUTS,因此任何指针都将真正有用。

PyMC3

0 个答案:

没有答案