在pymc中定义先验和边缘化先验

时间:2014-07-17 13:31:59

标签: python probability bayesian pymc mcmc

我正在阅读有关 pymc 库的蒙特卡罗马尔可夫链过程的教程。我也是使用 pymc 的新手,并尝试建立我自己的MCMC流程。我遇到了一些问题,我在pymc教程中找不到合适的答案: 第一:我们如何用pymc定义先验,然后在链式过程中对先验者进行边缘化?

我的第二个问题是Dirichlet分布,这个分布与MCMC中的先前信息有什么关系?如何定义?

1 个答案:

答案 0 :(得分:0)

我建议遵循PyMC用户指南。它明确地向您展示了如何指定模型(包括先验)。使用MCMC,您最终会得到所有后验值的边缘值,因此您不需要知道如何边缘化先验。

Dirichlet经常被用作贝叶斯模型中多项概率的先验。 Dirichlet参数的值可用于编码先验信息,通常根据与多项式的每个元素相对应的先验事件的名义数量。例如,带有1的向量作为参数的Dirichlet只是在多项量之前的Beta(1,1)的推广。