如何用pymc建模硬币翻转(来自Probabilistic Programming和贝叶斯方法的黑客)

时间:2017-04-28 00:37:36

标签: bayesian pymc

基本上询问https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers/issues/150

https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers/blob/master/Chapter2_MorePyMC/Ch2_MorePyMC_PyMC2.ipynb,作者讨论了一个模型,询问学生是否在测试中作弊。他们翻转硬币并诚实地回答,如果是头,否则随机回答。鉴于"是"答案,我们怎样才能得到作弊者的分布?

作者在那里基本上模仿了这种欺骗的可能性,这会产生一些学生观察或者作弊的观察,然后通过硬币翻转产生一些答案,然后产生一些观察到的回答概率,"是的,我作弊。"

然而,不是让观察到的概率(或仅仅是"是")的答案是观察,他然后在其上模拟二项分布,并且在实验中记录的观察是设置为该分布的观察值。

我的问题:

  1. 这是正确的做法吗?如果是这样,为什么?

  2. 假设不是,是否有更好的解决方案(缺少他提出的根本简化版本)?

  3. 这种情况的一般情况是观察到""随机变量之和的值。网上的人似乎认为这是不可能的,但我不明白为什么你不能,例如,"观察"来自均匀分布的平局,在您的确定性观察中具有均值并且在+/- epsilon处界定。

1 个答案:

答案 0 :(得分:0)

Prob / Stat问题很微妙。如果我正确地阅读你的问题;二项式和统一发行版之间的选择与场景设置后期的重要性有关。它说如果学生翻转尾巴,他们可以随机回答。这意味着no的答案与yes的答案不同,因为虽然硬币翻转是均匀分布的,但以下答案却不是。

如果学生完全不肯回答“没有”#39;在尾巴上,你绝对可以使用另一种均匀分布。希望有所帮助!