all_lessons/数学的逻辑/32第 33 课 / 共 44 课

第九部分 · 概率、统计与信息

贝叶斯推断:用证据更新信念

第 10 课我们初遇贝叶斯定理,用它把一次"假阳性"的概率算了出来。但那时我们只是用它算"一个数"。这一课要把它升级成一套完整的世界观:参数本身就是一个分布,每来一份证据,就把这个分布往真相挪一步。信念,原来是可以拿数学连续更新的。

线性回顾
上一课:第 31 课我们用最大似然 MLE最大后验 MAP,从数据里估出了参数的"最佳点"——硬币抛 10 次得 7 正,估计 p̂ = 0.7。MAP 还顺带揭穿:正则化就是一个先验。
留下的问题:可一个"最佳点"丢掉了太多信息。抛 10 次得 7 正 与 抛 1000 次得 700 正,MLE 都吐出 p̂ = 0.7,却完全说不出"我对前者远没那么有把握"。参数本身的不确定,一个点根本表达不了。
本课新增:贝叶斯推断——不再挑一个点,而是保留整条后验分布 P(θ|D)。先验是一条曲线,每来一个观测就用贝叶斯定理把它更新成更尖的后验。我们还会遇上一对天造地设的搭档——共轭(Beta 配伯努利),让"更新"简单到只是数个数。
本课路线
(1) 从 MAP 的"一个点"到贝叶斯的"一整条曲线";(2) 重写贝叶斯定理:后验 ∝ 似然 × 先验,逐项拆解四个名字;(3) 把"信念"画成 Beta 先验曲线;(4) 一次一个观测,看后验如何变尖、往真值靠;(5) 共轭——为什么 Beta 配硬币时更新只是"加计数";(6) 后验给的不止一个数:均值、众数(=MAP)、可信区间;(7) 常见误解;(8) 它把我们逼向"该最小化什么损失"。

从"一个点"到"一整条曲线"

上一课的 MAP 已经写出了关键的一行:P(θ|D) ∝ P(D|θ)·P(θ)。当时我们只做了一件事——挑这条曲线的最高点,把它当答案,曲线本身随手扔了。贝叶斯推断的全部主张就是一句话:别扔。整条曲线才是答案。

为什么?因为曲线的形状本身就是"把握"。一条又窄又尖的后验,说"参数几乎肯定在这附近";一条又矮又胖的后验,说"我也就大概知道个范围"。MLE 和 MAP 把这条曲线压成了一个点,"把握"这个维度当场蒸发。保留整条 P(θ|D),我们就同时握住了"最可能的值""有多确定"。

贝叶斯定理,逐项拆开

第 10 课那个紧凑的公式,这次我们把它每一块都命名清楚,因为这四个名字是整套推断的骨架:

P(θ | D) = P(D | θ) · P(θ) / P(D)
读作"看过数据后参数的概率 P(θ|D),等于 似然 P(D|θ) 乘 先验 P(θ),再除以证据 P(D)"。四块各有名号:

抛开那个只管归一化的分母,骨架就是上一课见过的那一行——但这次我们要看的是整条曲线,不只是它的顶点:

后验 ∝ 似然 × 先验
读作"后验 正比于 似然 乘 先验"( 读作"正比于")。这是贝叶斯推断的心脏:新证据(似然)作用在旧信念(先验)上,得到新信念(后验)。而今天的后验,明天又可以当作下一轮的先验——信念就这样被证据一步步推着走。

把"信念"画成一条曲线:Beta 先验

参数 p(硬币出正面的概率)是 0 到 1 之间的一个数,所以"对 p 的信念"就是 [0,1] 上的一条概率曲线。有一族曲线天生适合干这个,叫 Beta 分布,由两个旋钮 α、β(读作"alpha、beta")决定:

Beta(p; α, β) ∝ p^(α−1) · (1−p)^(β−1)
读作"Beta 分布在 p 处的密度,正比于 p 的 (α−1) 次方 乘 (1−p) 的 (β−1) 次方"。直觉上:把 α 看成"事先脑补的正面次数 + 1",β 看成"事先脑补的反面次数 + 1"。

挑哪条先验,就是把你的信念诚实地画出来。然后让数据来修正它。

共轭:为什么"更新"简单到只是数个数

现在做更新。先验是 Beta(α, β),似然是抛硬币(伯努利):观测到 k 次正面、m 次反面,似然 ∝ p^k·(1−p)^m。把它们相乘:

后验 ∝ p^(α−1)·(1−p)^(β−1) × p^k·(1−p)^m = p^(α+k−1)·(1−p)^(β+m−1)
读作"后验正比于:先验那两项 乘 似然那两项;同底数相乘指数相加"。

看右边这个式子——它又是一个 Beta 分布,只不过旋钮变成了 α+kβ+m

Beta(α, β) ——观测 k 正、m 反——→ Beta(α + k, β + m)
读作"以 Beta(α,β) 为先验,看到 k 次正、m 次反之后,后验是 Beta(α+k, β+m)"。更新整条分布,竟然只是把观测计数加到旋钮上!

这种"先验和后验属于同一族、更新只改参数"的美妙配对,叫共轭(Beta 是伯努利/二项的共轭先验)。它的意义不只是省事:它让"用证据更新信念"从一个吓人的积分,退化成了数个数。这也让先验有了极清爽的解读——Beta(α,β) 先验 = "我假装事先已经看过 α−1 个正、β−1 个反",所谓伪计数。下面的小实验,就让你一次一次抛硬币,亲眼看后验从一条胖曲线被证据"挤"得越来越尖。

用证据更新信念:每抛一次,后验就被挤尖一点
先用滑块设定先验 Beta(α, β):α=β=1 是"一无所知"的平线,加大它们表示"事先就信硬币接近公平"。再点"抛一次"——硬币有一个隐藏的真实偏好(你看不到),每次结果会把后验更新成 Beta(α+正数, β+反数),曲线随观测增多逐渐变窄、向真值聚拢。观测越多,后验越尖 = 把握越大。这正是 MLE 那个"一个点"丢掉的信息。
观测:正 / 反
0 / 0
后验均值 (α+正)/(α+β+总)
后验众数 = MAP
最大似然 MLE = 正/总

后验给的,远不止一个数

握住整条后验之后,上一课那些点估计,都成了从这条曲线上"读"出来的不同读数——而曲线还多给了我们一样上一课没有的东西:

一句话:MLE/MAP 是从这条后验曲线上各掐一个点;贝叶斯则把整条曲线交到你手上,要点估计自己掐,要不确定性也现成。

常见误解

一句话带走
贝叶斯推断不挑一个点,而保留整条后验 P(θ|D) ∝ P(D|θ)·P(θ):先验是旧信念,似然是新证据,后验是更新后的信念,明天又能当先验。共轭(Beta 配硬币)让更新简单到"给计数加个数"。MLE/MAP 只是从这条曲线上掐出的点,而曲线本身多给了我们最珍贵的一样东西——把握有多大
下一步
贝叶斯把"信念"量化了,可它一路都在反复盘问同一对量:某件事有多"出乎意料"?两个分布(比如我预测的 q 和真实的 p)到底差多远?训练一个分类器时,我们要最小化的"损失",究竟该长什么样才算合理?答案要靠一门专门度量"不确定"与"差异"的语言——它会让交叉熵损失从最大似然里自然冒出来。→ 第 33 课《信息论:熵、交叉熵与 KL 散度》。