Inferring the Host: A Bayesian Look at the Monty Hall Problem
TL;DR · AI 摘要
Inferring the Host: A Bayesian Look at the Monty Hall Problem Towards Data Science Math Inferring the Host: A Bayesian L...
核心要点
- 主题聚焦:Inferring the Host: A Bayesian Look at the Monty
- 来源:Towards Data Science,建议结合原文判断细节。
- AI 分析暂不可用,本条为保底评分与摘要。
推断主持人:蒙提霍尔问题的贝叶斯视角 | Towards Data Science
数学
推断主持人:蒙提霍尔问题的贝叶斯视角
"始终切换"这一结论只适用于特定的主持人。观看几集节目后,你就能判断自己面对的是哪位主持人。
Samit Ganguly
2026年10月18日
11分钟阅读
更喜欢我们在Google上的内容
分享
三扇门,一个后验分布:门3背后的信息只有通过主持人行为模型才能获得意义。图片由作者创作。
将蒙提霍尔问题重新构想为贝叶斯推断的示意图。在经典谜题中,主持人打开一扇门揭示山羊。在这里,打开的门显示的是后验分布——通过观察主持人玩游戏可以了解他的习惯。这张图总结了文章的核心论点:著名的"始终切换"答案依赖于对主持人行为的建模,而这种模型可以从数据中推断出来。该图由作者创作。
假设你正在参加一档综艺节目,面对三扇关闭的门。其中一扇门后有汽车,另外两扇门后有山羊。你选择其中一扇门,比如门1。主持人知道每扇门后有什么,他会打开剩下两扇门中的一扇,比如门3,向你展示一只山羊。然后他问你是否要留在门1,或者切换到门2。
大多数人认为结果无关紧要。两扇门,一辆汽车,所以是50-50的概率。这个答案看起来显而易见,但实际上是错误的。
1990年9月,玛丽莲·沃斯·萨凡特在《Parade》专栏中回答了这个问题,收到了大约10,000封回信。其中近一千封来自拥有博士学位的人,其中大多数人认为她犯了错误。甚至著名数学家保罗·埃尔德什(Paul Erdős)直到朋友在他面前运行了计算机模拟,才相信她的结论。
最终所有人都发现玛丽莲·沃斯·萨凡特的结论是正确的。切换门会使你赢得汽车的概率达到三分之二。
但这句话隐含了一个假设,我认为这个假设才是关键所在。三分之二的概率来源于对主持人行为的特定假设。如果换成不同的主持人,同样山羊出现在同一扇门后的价值会完全不同。我日常工作是将宇宙学模型拟合到调查数据中,而这也是我最担心的错误——在没有询问证据来源过程的情况下直接解读证据。
我需要指出的是,这种表述并非我原创。Richard Gill曾论证蒙提霍尔问题本质上是建模问题而非概率谜题。Jeffrey Rosenthal分析了主要的主持人变体。Andrew Gelman曾指出绘制生成树是关键步骤。Miller和Sanjurjo将这个谜题与实证研究中的选择偏差联系起来。我从他们所有人的工作中借鉴了内容,并在文章前半部分进行了呈现。
文章后半部分是我认为最有趣的部分。我将主持人视为未知变量,通过过往节目推断其行为习惯,测试主持人是否真的知道汽车的位置,并观察当主持人决定是否向你提供切换机会时会发生什么。
标准答案
你选择门1。主持人知道汽车的位置,他打开门3并向你展示一只山羊。你应该选择门2吗?
从平坦的先验概率开始,每扇门的概率为1/3。主持人打开门3的可能性取决于汽车可能的位置:
汽车位于
先验概率
P(主持人打开门3 | 汽车在此处)
先验概率 × 似然
门1(你的选择)
1/3
1/2(他随机选择两扇山羊门中的一扇)
1/6
门2
1(被迫选择,因为门2有汽车)
门3
0(他从不揭示汽车)
0
规范化后,门1的概率为1/3,门2的概率为2/3。
让我们看看这种偏斜性从何而来。它并非来自先验概率,而是来自第三列数据。在每一项中都有关于主持人行为的声明,但没有人真正验证过。因此,我们逐一检验这些假设。
一个不知道的主持人
Rosenthal将这种情况称为"Monty Fall"。主持人绊倒了,随机打开一扇门,幸运的是门后是一只山羊。
从你的角度看,似乎什么都没变。门3后是山羊。但现在如果汽车在门2后,主持人只有一半的概率会打开门3,因为他是在猜测。剩下的两扇门最终都获得了1/3 × 1/2的概率,就像抛硬币一样。
我不太信任自己的代数推导,因此用Python模拟了100万局游戏:
python
import numpy as np
rng = np.random.default_rng(42)
N = 1_000_000
car = rng.integers(0, 3, N) # 你总是选择门0
# 知道的主持人:从不暴露汽车
q = 0.5 # 当两扇门都是山羊时他抛硬币的概率
opened = np.where(car == 1, 2, np.where(car == 2, 1,
np.where(rng.random(N) < q, 2, 1)))
print("知道的主持人,换门获胜:", (3 - opened == car).mean())
# 不知道的主持人:随机打开一扇门,只保留出现山羊的游戏
opened = rng.integers(1, 3, N)
goat = opened != car
print("不知道的主持人,换门获胜:", (3 - opened[goat] == car[goat]).mean())知道的主持人,换门获胜: 0.6663
不知道的主持人,换门获胜: 0.4991我得到的结果是2/3对1/2,看起来是相同的情况。
为什么?因为对于笨拙的主持人,大约三分之一的游戏会直接暴露汽车,而我们默默地丢弃这些游戏,因为它们不符合我们看到的情况。这种筛选过程就是优势消失的原因。这可能让你联想到电话调查中只统计接电话的人,机制是完全一样的。
一个有偏好的主持人
回到知道汽车位置的主持人。假设当你选择了汽车,剩下的两扇门都是山羊时,他并不公平地选择。他以概率q打开门3。也许门3离摄像头更近。那么:
P(换门获胜 | 他打开了门3) = 1 / (1 + q)
P(换门获胜 | 他打开了门2) = 1 / (2 − q)
第一个公式是Rosenthal的"Monty Crawl"结果。第二个公式来自同一张表格。将q=1/2代入任一公式,都会得到熟悉的2/3,这说明教科书案例的特殊性。
换门获胜概率与主持人门偏好q的关系。在每个测试的q值上,模拟结果与理论值一致到小数点后三位。图像由作者提供。
他倾向选择的门提供了信息。然而,如果我们假设他特别偏爱门3,那么看他打开门3几乎不提供任何信息,换门几乎等同于抛硬币。看他打开门2则完全不同。他只有在必须的情况下才会这么做,因此汽车一定在门3后,换门几乎可以确定获胜。
还有一个下限。看图表,无论q取何值,两条曲线都不会低于1/2,因此换门永远不会比不换更差。这直接来自Rosenthal的1/(1 + q)结果,标准总结也指出同样的范围是1/2到1。我发现这个结果最有用的实践意义是:你无需了解主持人的习惯就能做出正确判断,你只需要知道自己的优势有多大。许多现实决策都是这样运作的,也有许多不是,而在开始讨论数字之前,知道你面对的是哪种类型很有价值。
从过去的节目学习主持人行为
现在的问题是:你真的能估计出q的值吗?如果你有旧节目的录像带,答案是肯定的。
问题是,大多数节目对这个问题没有帮助。当参赛者一开始选到山羊时,主持人没有选择余地,因此他打开的门无法透露任何偏好信息。你只有在参赛者第一次就选中汽车的节目中才能获得有效信息。
我模拟了30期节目,其中主持人的真实q值为0.8。其中只有10期是有效的信息来源。在这10期中,有9期他选择了第3扇门。使用平坦的Beta(1, 1)先验和伯努利似然函数,NumPyro中的模型仅需两行代码:
import jax, jax.numpy as jnp
import numpyro, numpyro.distributions as dist
from numpyro.infer import MCMC, NUTS
def model(y):
q = numpyro.sample("q", dist.Beta(1.0, 1.0))
numpyro.sample("obs", dist.Bernoulli(q), obs=y)
y = jnp.array([1, 1, 1, 1, 0, 1, 1, 1, 1, 1]) # 仅包含有效游戏
mcmc = MCMC(NUTS(model), num_warmup=1000, num_samples=4000)
mcmc.run(jax.random.PRNGKey(0), y=y)
qs = mcmc.get_samples()["q"]
print("P(win switch | opens door 3):", (1 / (1 + qs)).mean())
print("P(win switch | opens door 2):", (1 / (2 - qs)).mean())P(win switch | opens door 3): 0.546
P(win switch | opens door 2): 0.865没错,这里使用NUTS算法有些过度。后验分布只是Beta(10, 2),均值为0.833,采样器得到的结果是0.836。我仍然使用它是因为一旦模型变得现实(例如主持人习惯在不同赛季间变化),共轭关系就会消失。左边图表显示10期有效节目对主持人偏好的说明,右边图表显示切换选择的获胜概率,已考虑不确定性传播。图片由作者提供。
右边的图表是如果我是参赛者想看到的结果。一个分布,且根据主持人选择的门不同呈现两种不同的分布。面对这样的主持人,当主持人打开第3扇门时,获胜概率比抛硬币略高几分;而打开第2扇门时,获胜概率提升更多。
然而,仅凭10场比赛的数据量并不算多,后验分布范围较广。它的峰值更接近0.9而不是真实的0.8。这是小样本的诚实结果,我宁愿展示真实结果也不愿假装。
他甚至知道汽车在哪里吗?
再上升一个层次。将两种假设并列:一种是主持人知道汽车位置且从不展示汽车的主持人,另一种是随机开门的主持人。
每个以山羊结束的节目在第一种假设下概率为1,在第二种假设下概率为2/3。观看n期节目且从未揭示汽车时,知道汽车位置的主持人与随机开门的主持人的贝叶斯因子为(3/2)^n。
观看节目数 | 未揭示汽车 | 贝叶斯因子(知情 vs 无知) --- | --- | --- 5 | 7.6 | 10 | 57.7 | 20 | 3,325 |
到第10期节目时,你就可以相当确定。证据会不断累积,那些做出更明确预测的假设在预测持续正确的前提下会得到验证。模型比较几乎不可能比这更简单。
当提议成为证据的一部分
迄今为止的所有版本都假设主持人总是提供切换机会。如果主持人选择何时提供这个机会呢?
这个问题也有人研究过。查看维基百科页面(下方链接):它列出了一种只在你已经选中汽车时提供切换机会的主持人,以及一种根据你的选择以不同概率提供切换机会的主持人。下面的公式只是写出了一般情况。
假设当参赛者选中汽车时,主持人以概率a提供切换机会,当参赛者选中山羊时以概率b提供切换机会。已知提供切换机会的情况下:
P(通过切换获胜 | 提供切换) = 2b / (2b + a)
设置 a = b = 1 你会回到 2/3 的概率。设置 a = 1, b = 0 时,你创造了一个“地狱蒙蒂”,他只会诱惑那些已经站在汽车前的参赛者。此时切换选择会每次都失败。一般来说,只有当 a < 2b 时才应该切换。门的数量几乎无关紧要,他的动机才是关键。
真实的节目运作方式如下。1991 年《纽约时报》向蒙蒂·霍尔询问这场争议时,他指出自己从未被要求提供切换选项,并利用这个自由来戏弄参赛者。1990 年大家争论的版本却悄悄假设掉了他最重要的决策。
我为何在意
望远镜巡天只能捕捉到足够明亮才能被探测到的天体。如果你忘记这一点,微弱天体群就会从你的统计中消失,你的估计也会产生偏差。天文学家称之为马尔姆奎斯特偏差。在医学领域有时被称为幸存者偏差。统计学家将其归类为忽略选择机制。Miller 和 Sanjurjo 展示了与蒙蒂霍尔问题相同的“受限选择”逻辑,也解释了篮球运动中热手效应研究中的长期偏差。
蒙蒂跌倒问题就是去除了所有干扰因素后的版本。所以在你询问数据说了什么之前,先问清楚数据是如何来到你手中的。
···
如果你要从这里带走一个观点,请带走第一张表的第三列。2/3 的概率存在于那里,而不是门的选择中。笨拙的主持人会将其减半。有偏见的主持人虽然会让他的门选择变得具有信息量,但切换选择仍然不会对你造成伤害。旧节目片段让你能估算他的习惯,只要你只统计那些他有选择余地的游戏。一个能决定何时提供切换选项的主持人,可以将“始终切换”变成“从不切换”。
代码与可复现性:此处所有数字均来自上方展示的模拟和 NumPyro 模型(NumPyro 0.22 配合 JAX,NumPy 随机种子 42 和 7)。所有图表均由作者制作。
附注:为何这个问题被称为蒙蒂霍尔问题?
它以美国电视游戏节目《让我们做个交易》(Let's Make a Deal)的主持人蒙蒂·霍尔(Monty Hall)命名,该节目于 1963 年首次播出。他 1921 年出生于加拿大温尼伯,原名蒙特·哈帕林(Monte Halparin),2017 年去世。节目中,参赛者要在隐藏奖品和“空奖”的帷幕或门之间做出选择,而霍尔喜欢诱惑他们用已选物品交换未见物品。
这个谜题本身来自统计学家,而非节目。1975 年 2 月,史蒂夫·塞尔文(Steve Selvin)在写给《美国统计学家》(The American Statistician)的信中提出了这个问题,围绕该游戏节目设定展开。他在 1975 年 8 月的后续信件中首次将该问题称为“蒙蒂霍尔问题”。十五年后,当沃斯·萨凡特(vos Savant)的专栏让数百万读者接触到这个问题时,它才变得广为人知。
节目从未使用过这个确切的三门游戏,这很恰当。正如我们所见,霍尔本人指出,真实的主持人比谜题所允许的拥有更多自由。
参考文献
- M. vos Savant, "Ask Marilyn," 《Parade》, 1990 年 9 月 9 日。
- "蒙蒂霍尔问题," Wikipedia。信件统计和“地狱蒙蒂”变体。en.wikipedia.org/wiki/Monty_Hall_problem
- A. Vazsonyi, "哪扇门后有凯迪拉克?," 《Decision Line》30(1), 1999。PDF
- R. D. Gill, "蒙蒂霍尔问题不是概率谜题(而是数学建模的挑战)," 《Statistica Neerlandica》65(1), 58–71, 2011。doi:10.1111/j.1467-9574.2010.00474.x
- J. S. Rosenthal, "蒙蒂霍尔、蒙蒂跌倒、蒙蒂爬行," 《Math Horizons》16(1), 5–7, 2008。PDF
- A. Gelman, "蒙蒂霍尔问题与生成模型:绘制树状图是最重要的步骤," 《统计建模、因果推断与社会科学研究》 , 2025年9月20日。链接
- J. B. Miller 和 A. Sanjurjo, "从蒙蒂霍尔到热手现象的桥梁:受限选择原则," 《经济展望杂志》33(3), 144–162, 2019。doi:10.1257/jep.33.3.144
- D. Phan, N. Pradhan 和 M. Jankowiak, "用于 NumPyro 中灵活且加速的概率编程的可组合效应," arXiv:1912.11554, 2019。arxiv.org/abs/1912.11554
- J. Tierney, "蒙蒂霍尔门后的谜题、争论与答案," 《纽约时报》 , 1991年7月21日。PDF重印版