像让三支勘探队寻找群山:有人跑得快,有人能翻越山谷,还有人困在一座山头,却以为地图已经画完。贝叶斯采样也会遇到这种麻烦。它要用一批样本,近似“后验分布”——数据与事前假设结合后,各种参数取值的可能性。
据 Towards Data Science 报道,Samit Ganguly 设计了三个能算出精确答案的问题,再对照 NumPyro 的 NUTS、Emcee 和 dynesty。最值得警惕的是多峰后验:它像几座被山谷隔开的山峰,代表多组合理解释。NUTS 在平滑问题上快约 2 至 4 倍,却完全错过多峰;好在诊断指标明确报警。Emcee 更隐蔽:它给出把握很高但错误的答案,默认输出还没有警告。只有 dynesty 找全了峰,并算对模型证据——衡量数据整体支持某个模型的程度——但其误差范围偏乐观。
这组测试提醒我们:采样结果看起来稳定,不等于已经探索完整。真正危险的不是程序失败,而是程序安静地交出一个很像正确答案的错误结果。