0x03 PyMC与MCMC
PyMC使用MCMC解决问题的原理
根据贝叶斯公式有:
P(θ∣X)∝P(θ)P(X∣θ)
在这里, θ是我们想要求的随机变量, X是随机变量θ的观测值集合. 我们并不知道θ的真实分布是怎么样的, 因此我们先假设出θ的先验分布P(θ), 在观测点集合X的纠正下, 得到后验分布P(θ∣X), 就是我们认为的随机变量θ的真实分布, 即我们的目标就是求解后验分布P(θ∣X).
而对于贝叶斯公式中的P(X∣θ)项, 表示的是在θ当前分布的条件下, 观测集X的发生概率, 因此P(X∣θ)是一个关于θ的函数, 其实就是似然函数:
fθ(X)=L(θ∣X)=P(X∣θ)
似然函数与条件概率都是指事件发生的可能性, 但是关注点不同, 似然函数关注的是当前模型参数的下, 观测结果(已知)发生的概率. 可以参考这篇文章.
因此有如下的公式:
P(θ∣X)∝P(θ)fθ(X)
即后验概率正比于先验分布以及似然函数.
因此, 对于复杂的后验分布, 可以通过假设的先验分布以及以及求得的似然函数来表示(正比关系, 只是相差一个系数), 通过MCMC采样去逼近后验分布, 即随机变量θ的真实分布. 在收敛之后的采样就是对后验分布的采样, 也就能代表随机变量θ的真实分布情况. 然后再用这些样本去代替分布概率, 计算我们关心的变量, 如积分, 关于θ的函数f(θ)的期望等等.
最后更新于