0Pricing
Learn AI with Python · 课时

概率与贝叶斯定理

结合概率、条件概率、独立性和贝叶斯定理,学习真实的人工智能示例。

概率与贝叶斯定理 是 CoddyKit 上的免费 Learn AI with Python 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Learn AI with Python 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Learn AI with Python 课程共包含 4 节课。

概率基础

概率是一个介于 0 和 1 之间的数,用于衡量事件发生的可能性。条件概率 P(A|B) 表示在 B 已经发生的情况下 A 发生的可能性。

条件概率

P(A|B) = P(A and B) / P(B)。进行条件化会将样本空间缩小到 B 为真的情况。

p_a_and_b = 0.12
p_b = 0.30
print(p_a_and_b / p_b)   # P(A | B) = 0.4

贝叶斯定理

贝叶斯定理会反转条件关系:P(A|B) = P(B|A) * P(A) / P(B)。观察到证据 B 后,它会将先验信念 P(A) 更新为后验信念。

认识各个组成部分

先验 P(A):观察证据前的信念。似然 P(B|A):A 对证据的解释程度。后验 P(A|B):更新后的信念。证据 P(B):用于归一化的总量。

全概率定律

分母 P(B) 可以通过对所有情况求和得到:P(B) = P(B|A)*P(A) + P(B|not A)*P(not A)。这会将证据展开为已知的各个部分。

p_a = 0.01            # prior
p_b_given_a = 0.99   # likelihood
p_b_given_not_a = 0.05
p_not_a = 1 - p_a
p_b = p_b_given_a * p_a + p_b_given_not_a * p_not_a
print(p_b)

医学测试示例

某种疾病影响 1% 的人群。某项测试的灵敏度为 99%,但假阳性率为 5%。如果测试结果为阳性,您患病的概率是多少 GIVEN?

posterior = (p_b_given_a * p_a) / p_b
print(round(posterior, 3))   # about 0.167

令人意外的结果

尽管测试的准确率为 99%,阳性结果只意味着患病概率为 17%。罕见的基率(1% 的先验概率)起决定性作用,这就是经典的基率谬误。

独立性

当 P(A|B) = P(A) 时,两个事件相互独立,因此观察到 B 不会为 A 提供任何信息。此时 P(A and B) = P(A) * P(B)。

p_a, p_b = 0.5, 0.5
print(p_a * p_b)   # 0.25 if independent (e.g. two fair coins)

蒙提霍尔问题

三扇门后藏着一辆汽车。您选择一扇门;主持人打开另一扇门,露出一只山羊,然后给您换门的机会。反直觉的是,换门获胜的概率为 2/3。

模拟蒙提霍尔问题

模拟结果证实了数学结论。当您第一次选错时,换门就会获胜,而第一次选错的概率是 2/3。

import random
def trial(switch):
    car = random.randint(0, 2)
    pick = random.randint(0, 2)
    if switch:
        return pick != car   # switching wins if first pick was wrong
    return pick == car

wins = sum(trial(True) for _ in range(100000))
print(wins / 100000)   # about 0.667

换门为何能获胜

您第一次选对的概率是 1/3。主持人的揭示会将剩余的 2/3 概率集中到唯一未打开的门上,因此换门可以获得这 2/3 的概率。

快速检查

请测试您的概率推理能力。

回顾

概率要点:

  • 条件概率:P(A|B) = P(A and B)/P(B)
  • 贝叶斯定理:P(A|B) = P(B|A)P(A)/P(B),将先验更新为后验
  • 全概率定律会展开 P(B)
  • 基率谬误:即使测试准确,罕见条件仍会产生较低的后验概率
  • 蒙提霍尔问题:换门的获胜概率为 2/3

常见问题解答

「概率与贝叶斯定理」课时是免费的吗?

是的 — 「概率与贝叶斯定理」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Learn AI with Python 课程的其余内容,请升级到 CoddyKit PRO。 Learn AI with Python 课程共包含 4 节课。

「概率与贝叶斯定理」这节课中我会学到什么?

结合概率、条件概率、独立性和贝叶斯定理,学习真实的人工智能示例。 你通过在浏览器中直接运行的动手代码来练习 Learn AI with Python,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Learn AI with Python 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Learn AI with Python 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「概率与贝叶斯定理」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Learn AI with Python 课中编写并运行代码吗?

能。每节 Learn AI with Python 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 描述性统计与分布
  2. 概率与贝叶斯定理
  3. 假设检验
  4. 相关性与协方差
← 返回 Learn AI with Python