【人工智能数学基础】标准贝叶斯公式的一般化推导:从单一条件到任意多条件

标准贝叶斯公式的一般化推导:从单一条件到任意多条件

1. 标准贝叶斯公式回顾

标准的贝叶斯公式处理两个事件:
P(A∣B)=P(B∣A)P(A)P(B) P(A|B) = \frac{P(B|A)P(A)}{P(B)} P(A∣B)=P(B)P(B∣A)P(A)

2. 推导具有三个事件的贝叶斯公式

目标 :推导 P(A∣B,C)P(A|B, C)P(A∣B,C) 的表达式。

步骤1:应用条件概率定义

根据条件概率的定义:
P(A∣B,C)=P(A,B,C)P(B,C) P(A|B, C) = \frac{P(A, B, C)}{P(B, C)} P(A∣B,C)=P(B,C)P(A,B,C)

这是直接由定义得到的。

步骤2:用另一种方式表示联合概率

同样根据条件概率定义:
P(B∣A,C)=P(A,B,C)P(A,C) P(B|A, C) = \frac{P(A, B, C)}{P(A, C)} P(B∣A,C)=P(A,C)P(A,B,C)

整理得:
P(A,B,C)=P(B∣A,C)⋅P(A,C) P(A, B, C) = P(B|A, C) \cdot P(A, C) P(A,B,C)=P(B∣A,C)⋅P(A,C)

步骤3:代入步骤1

将步骤2的结果代入步骤1:
P(A∣B,C)=P(B∣A,C)⋅P(A,C)P(B,C) P(A|B, C) = \frac{P(B|A, C) \cdot P(A, C)}{P(B, C)} P(A∣B,C)=P(B,C)P(B∣A,C)⋅P(A,C)
步骤4:进一步分解

将 P(A,C)P(A, C)P(A,C) 和 P(B,C)P(B, C)P(B,C)分解:

  • P(A,C)=P(A∣C)⋅P(C)P(A, C) = P(A|C) \cdot P(C)P(A,C)=P(A∣C)⋅P(C)
  • P(B,C)=P(B∣C)⋅P(C)P(B, C) = P(B|C) \cdot P(C)P(B,C)=P(B∣C)⋅P(C)

代入得:
P(A∣B,C)=P(B∣A,C)⋅P(A∣C)⋅P(C)P(B∣C)⋅P(C) P(A|B, C) = \frac{P(B|A, C) \cdot P(A|C) \cdot P(C)}{P(B|C) \cdot P(C)} P(A∣B,C)=P(B∣C)⋅P(C)P(B∣A,C)⋅P(A∣C)⋅P(C)
步骤5:简化

约去 P(C)P(C)P(C),得到:
P(A∣B,C)=P(B∣A,C)⋅P(A∣C)P(B∣C) P(A|B, C) = \frac{P(B|A, C) \cdot P(A|C)}{P(B|C)} P(A∣B,C)=P(B∣C)P(B∣A,C)⋅P(A∣C)

3. 扩展到n个条件

目标 :推导 P(A∣B1,B2,...,Bn)P(A|B_1, B_2, \ldots, B_n)P(A∣B1,B2,...,Bn)。

步骤1:将所有条件视为一个复合条件

令 B=(B1,B2,...,Bn)\mathbf{B} = (B_1, B_2, \ldots, B_n)B=(B1,B2,...,Bn),则问题转化为求 P(A∣B)P(A|\mathbf{B})P(A∣B)。

步骤2:应用条件概率定义
P(A∣B)=P(A,B)P(B) P(A|\mathbf{B}) = \frac{P(A, \mathbf{B})}{P(\mathbf{B})} P(A∣B)=P(B)P(A,B)

步骤3:用另一种方式表示联合概率
P(B∣A)=P(A,B)P(A) P(\mathbf{B}|A) = \frac{P(A, \mathbf{B})}{P(A)} P(B∣A)=P(A)P(A,B)

整理得:
P(A,B)=P(B∣A)⋅P(A) P(A, \mathbf{B}) = P(\mathbf{B}|A) \cdot P(A) P(A,B)=P(B∣A)⋅P(A)

步骤4:代入并推导(方法一)

代入步骤2:
P(A∣B)=P(B∣A)⋅P(A)P(B) P(A|\mathbf{B}) = \frac{P(\mathbf{B}|A) \cdot P(A)}{P(\mathbf{B})} P(A∣B)=P(B)P(B∣A)⋅P(A)

这就是最直接的扩展,但还可以进一步分解。

步骤5:推导条件分解形式(方法二)

更实用的是将部分条件保留在条件概率中。例如,考虑:
P(A∣B1,B2,...,Bn)=P(B1,B2,...,Bn∣A)⋅P(A)P(B1,B2,...,Bn) P(A|B_1, B_2, \ldots, B_n) = \frac{P(B_1, B_2, \ldots, B_n | A) \cdot P(A)}{P(B_1, B_2, \ldots, B_n)} P(A∣B1,B2,...,Bn)=P(B1,B2,...,Bn)P(B1,B2,...,Bn∣A)⋅P(A)

但通常我们更关心每个条件的影响。

步骤6:递归应用

可以递归地应用贝叶斯公式。例如:
P(A∣B1,B2)=P(B2∣A,B1)⋅P(A∣B1)P(B2∣B1) P(A|B_1, B_2) = \frac{P(B_2|A, B_1) \cdot P(A|B_1)}{P(B_2|B_1)} P(A∣B1,B2)=P(B2∣B1)P(B2∣A,B1)⋅P(A∣B1)

更一般地:
P(A∣B1,...,Bn)=P(Bn∣A,B1,...,Bn−1)⋅P(A∣B1,...,Bn−1)P(Bn∣B1,...,Bn−1) P(A|B_1, \ldots, B_n) = \frac{P(B_n|A, B_1, \ldots, B_{n-1}) \cdot P(A|B_1, \ldots, B_{n-1})}{P(B_n|B_1, \ldots, B_{n-1})} P(A∣B1,...,Bn)=P(Bn∣B1,...,Bn−1)P(Bn∣A,B1,...,Bn−1)⋅P(A∣B1,...,Bn−1)

4. 一般形式

定理 :对于事件AAA 和条件 B1,B2,...,BnB_1, B_2, \ldots, B_nB1,B2,...,Bn,有:
P(A∣B1,...,Bn)=P(Bn∣A,B1,...,Bn−1)⋯P(B2∣A,B1)⋅P(B1∣A)⋅P(A)P(Bn∣B1,...,Bn−1)⋯P(B2∣B1)⋅P(B1) P(A|B_1, \ldots, B_n) = \frac{P(B_n|A, B_1, \ldots, B_{n-1}) \cdots P(B_2|A, B_1) \cdot P(B_1|A) \cdot P(A)}{P(B_n|B_1, \ldots, B_{n-1}) \cdots P(B_2|B_1) \cdot P(B_1)} P(A∣B1,...,Bn)=P(Bn∣B1,...,Bn−1)⋯P(B2∣B1)⋅P(B1)P(Bn∣A,B1,...,Bn−1)⋯P(B2∣A,B1)⋅P(B1∣A)⋅P(A)

或者更紧凑地:
P(A∣B1,...,Bn)=P(A)∏k=1nP(Bk∣A,B1,...,Bk−1)∏k=1nP(Bk∣B1,...,Bk−1) P(A|B_1, \ldots, B_n) = \frac{P(A) \prod_{k=1}^n P(B_k|A, B_1, \ldots, B_{k-1})}{\prod_{k=1}^n P(B_k|B_1, \ldots, B_{k-1})} P(A∣B1,...,Bn)=∏k=1nP(Bk∣B1,...,Bk−1)P(A)∏k=1nP(Bk∣A,B1,...,Bk−1)

5. 在扩散模型中的应用

在扩散模型中,我们通常有固定的条件 x0\mathbf{x}0x0 和观察到的 xt\mathbf{x}txt,想推断 xt−1\mathbf{x}{t-1}xt−1:
P(xt−1∣xt,x0)=P(xt∣xt−1,x0)⋅P(xt−1∣x0)P(xt∣x0) P(\mathbf{x}
{t-1}|\mathbf{x}_t, \mathbf{x}_0) = \frac{P(\mathbf{x}t|\mathbf{x}{t-1}, \mathbf{x}0) \cdot P(\mathbf{x}{t-1}|\mathbf{x}_0)}{P(\mathbf{x}_t|\mathbf{x}_0)} P(xt−1∣xt,x0)=P(xt∣x0)P(xt∣xt−1,x0)⋅P(xt−1∣x0)

这正是三个事件情况下贝叶斯公式的直接应用:

  • A=xt−1A = \mathbf{x}_{t-1}A=xt−1
  • B=xtB = \mathbf{x}_tB=xt
  • C=x0C = \mathbf{x}_0C=x0

6. 直观理解

一般化的贝叶斯公式告诉我们:

  • 后验概率 P(A∣B1,...,Bn)P(A|B_1, \ldots, B_n)P(A∣B1,...,Bn) 正比于:
    1. 先验概率 P(A)P(A)P(A)
    2. 一系列似然 P(Bk∣A,B1,...,Bk−1)P(B_k|A, B_1, \ldots, B_{k-1})P(Bk∣A,B1,...,Bk−1)

分母是归一化常数,确保概率和为1。

7. 重要性质

  1. 顺序无关性:条件出现的顺序不影响最终结果(只要乘积顺序相应调整)
  2. 条件独立性简化:如果某些条件在给定A时相互独立,公式可以简化
  3. 马尔可夫性简化:如果具有马尔可夫性质,许多条件可以省略

8. 示例:四个事件的情况

求 P(A∣B,C,D)P(A|B, C, D)P(A∣B,C,D):
P(A∣B,C,D)=P(D∣A,B,C)⋅P(C∣A,B)⋅P(B∣A)⋅P(A)P(D∣B,C)⋅P(C∣B)⋅P(B) P(A|B, C, D) = \frac{P(D|A, B, C) \cdot P(C|A, B) \cdot P(B|A) \cdot P(A)}{P(D|B, C) \cdot P(C|B) \cdot P(B)} P(A∣B,C,D)=P(D∣B,C)⋅P(C∣B)⋅P(B)P(D∣A,B,C)⋅P(C∣A,B)⋅P(B∣A)⋅P(A)

或者按另一种顺序:
P(A∣B,C,D)=P(B∣A,C,D)⋅P(C∣A,D)⋅P(D∣A)⋅P(A)P(B∣C,D)⋅P(C∣D)⋅P(D) P(A|B, C, D) = \frac{P(B|A, C, D) \cdot P(C|A, D) \cdot P(D|A) \cdot P(A)}{P(B|C, D) \cdot P(C|D) \cdot P(D)} P(A∣B,C,D)=P(B∣C,D)⋅P(C∣D)⋅P(D)P(B∣A,C,D)⋅P(C∣A,D)⋅P(D∣A)⋅P(A)

总结

标准贝叶斯公式向多条件的扩展是直接的:

  1. 核心思想:将所有额外条件视为背景知识
  2. 形式:P(A∣B,C)=P(B∣A,C)P(A∣C)P(B∣C)P(A|B, C) = \frac{P(B|A, C)P(A|C)}{P(B|C)}P(A∣B,C)=P(B∣C)P(B∣A,C)P(A∣C)
  3. 递归:可以递归应用到任意多个条件
  4. 应用:在复杂概率模型(如扩散模型)中,这种一般化形式让我们能正确处理多个已知条件下的推断问题
相关推荐
Testopia3 小时前
走一遍 AI 学习之路 —— AI实例系列说明
开发语言·人工智能·python
琅琊榜首20203 小时前
用AI打造付费短篇小说脑洞:从灵感激活到落地变现
人工智能
机 _ 长3 小时前
YOLO26 改进 | 训练策略 | 知识蒸馏 (Response + Feature + Relation)
python·深度学习·yolo·目标检测·机器学习·计算机视觉
Deepoch3 小时前
Deepoc具身大模型开发板:重构农业采摘机器人的智能新生态
人工智能·科技·采摘机器人·农业机器人·具身模型·deepoc
美狐美颜sdk3 小时前
抖动特效在直播美颜sdk中的实现方式与优化思路
前端·图像处理·人工智能·深度学习·美颜sdk·直播美颜sdk·美颜api
2501_911067663 小时前
光能筑底,智联全城——叁仟智慧太阳能路灯杆重构城市基础设施新生态
大数据·人工智能·重构
OpenCSG3 小时前
AgenticOps x CSGHub:智能体时代的工程化革命,让企业 AI 落地可控可规模化
人工智能
hrrrrb3 小时前
【算法设计与分析】随机化算法
人工智能·python·算法
Zero_to_zero12343 小时前
Claude code系列(一):claude安装、入门及基础操作指令
人工智能·python
szcsun53 小时前
机器学习(二)-线性回归实战
人工智能·机器学习·线性回归