MLE, MAP, Full Bayes

总结

  1. MLE:纯数据驱动,简单高效,大样本最优
  2. MAP:MLE + 正则化,利用先验,防止过拟合
  3. Full Bayes:完整不确定性,小样本最佳,计算昂贵
  • 数据多用MLE,先验强用MAP,不确定找Bayes!

最大似然估计 (Maximum Likelihood Estimation, MLE)

核心思想:找到使观测数据出现概率最大的参数值。

数学表达
θ^MLE=arg⁡max⁡θP(D∣θ)=arg⁡max⁡θ∏i=1nP(xi∣θ)\hat{\theta}{MLE} = \arg\max{\theta} P(D|\theta) = \arg\max_{\theta} \prod_{i=1}^{n} P(x_i|\theta)θ^MLE=argθmaxP(D∣θ)=argθmaxi=1∏nP(xi∣θ)

对数似然 (更常用):
θ^MLE=arg⁡max⁡θlog⁡P(D∣θ)=arg⁡max⁡θ∑i=1nlog⁡P(xi∣θ)\hat{\theta}{MLE} = \arg\max{\theta} \log P(D|\theta) = \arg\max_{\theta} \sum_{i=1}^{n} \log P(x_i|\theta)θ^MLE=argθmaxlogP(D∣θ)=argθmaxi=1∑nlogP(xi∣θ)

直觉:数据已经发生了,什么样的参数最有可能产生这些数据?

最大后验估计 (Maximum A Posteriori, MAP)

核心思想:结合先验知识,找到在观测数据下后验概率最大的参数值。

数学表达
θ^MAP=arg⁡max⁡θP(θ∣D)\hat{\theta}{MAP} = \arg\max{\theta} P(\theta|D)θ^MAP=argθmaxP(θ∣D)

利用贝叶斯定理:
P(θ∣D)=P(D∣θ)P(θ)P(D)P(\theta|D) = \frac{P(D|\theta)P(\theta)}{P(D)}P(θ∣D)=P(D)P(D∣θ)P(θ)

由于 P(D)P(D)P(D) 与 θ\thetaθ 无关,可以忽略:
θ^MAP=arg⁡max⁡θP(D∣θ)P(θ)\hat{\theta}{MAP} = \arg\max{\theta} P(D|\theta)P(\theta)θ^MAP=argθmaxP(D∣θ)P(θ)

对数形式
θ^MAP=arg⁡max⁡θ[log⁡P(D∣θ)+log⁡P(θ)]\hat{\theta}{MAP} = \arg\max{\theta} [\log P(D|\theta) + \log P(\theta)]θ^MAP=argθmax[logP(D∣θ)+logP(θ)]

直觉:在有先验信念的情况下,结合数据和先验,什么参数最合理?

MAP与正则化的联系

MAP估计与正则化有深刻联系!

L2正则化 = 高斯先验

在线性回归中,假设参数服从高斯先验:
P(θ)∝e−λ2∥θ∥2P(\theta) \propto e^{-\frac{\lambda}{2}\|\theta\|^2}P(θ)∝e−2λ∥θ∥2

MAP目标函数:
θ^MAP=arg⁡max⁡θ[log⁡P(D∣θ)+log⁡P(θ)]\hat{\theta}{MAP} = \arg\max{\theta} [\log P(D|\theta) + \log P(\theta)]θ^MAP=argθmax[logP(D∣θ)+logP(θ)]
=arg⁡max⁡θ[log⁡P(D∣θ)−λ2∥θ∥2]= \arg\max_{\theta} [\log P(D|\theta) - \frac{\lambda}{2}\|\theta\|^2]=argθmax[logP(D∣θ)−2λ∥θ∥2]
=arg⁡min⁡θ[−log⁡P(D∣θ)+λ2∥θ∥2]= \arg\min_{\theta} [-\log P(D|\theta) + \frac{\lambda}{2}\|\theta\|^2]=argθmin[−logP(D∣θ)+2λ∥θ∥2]

这正是带L2正则化的损失函数(Ridge回归)!

L1正则化 = 拉普拉斯先验

假设参数服从拉普拉斯先验:
P(θ)∝e−λ∥θ∥1P(\theta) \propto e^{-\lambda\|\theta\|_1}P(θ)∝e−λ∥θ∥1

MAP目标函数:
θ^MAP=arg⁡min⁡θ[−log⁡P(D∣θ)+λ∥θ∥1]\hat{\theta}{MAP} = \arg\min{\theta} [-\log P(D|\theta) + \lambda\|\theta\|_1]θ^MAP=argθmin[−logP(D∣θ)+λ∥θ∥1]

这正是带L1正则化的损失函数(Lasso回归)!

结论:正则化本质上是在做MAP估计,正则化项对应先验分布!

完全贝叶斯方法

问题设定

  • 已观测数据:D={x1,x2,...,xn}D = \{x_1, x_2, ..., x_n\}D={x1,x2,...,xn}
  • 未知参数:θ\thetaθ(已通过贝叶斯推断得到后验分布 P(θ∣D)P(\theta|D)P(θ∣D))
  • 目标 :预测新数据 xnewx_{new}xnew 的分布

核心思想

问题 :我们想知道 P(xnew∣D)P(x_{new}|D)P(xnew∣D),但参数 θ\thetaθ 是未知的(不确定的)

频率派做法

  1. 用点估计 θ^\hat{\theta}θ^(如MLE)
  2. 预测:P(xnew∣θ^)P(x_{new}|\hat{\theta})P(xnew∣θ^)
  3. 问题:忽略了参数的不确定性

贝叶斯做法

  1. 考虑所有可能的 θ\thetaθ 值
  2. 用后验概率 P(θ∣D)P(\theta|D)P(θ∣D) 加权
  3. 对所有 θ\thetaθ 进行积分(边缘化)

与MLE和MAP都不同,完全贝叶斯方法不估计单一参数值,而是计算参数的完整后验分布:

P(θ∣D)=P(D∣θ)P(θ)P(D)P(\theta|D) = \frac{P(D|\theta)P(\theta)}{P(D)}P(θ∣D)=P(D)P(D∣θ)P(θ)

预测 时使用后验分布的期望或积分:
P(xnew∣D)=∫P(xnew∣θ)P(θ∣D)dθP(x_{new}|D) = \int P(x_{new}|\theta)P(\theta|D)d\thetaP(xnew∣D)=∫P(xnew∣θ)P(θ∣D)dθ


推导过程

目标 :求 P(xnew∣D)P(x_{new}|D)P(xnew∣D)

步骤1:引入参数

利用全概率公式 (Law of Total Probability),对参数 θ\thetaθ 进行边缘化:

P(xnew∣D)=∫P(xnew,θ∣D)dθP(x_{new}|D) = \int P(x_{new}, \theta|D) d\thetaP(xnew∣D)=∫P(xnew,θ∣D)dθ

这是在说:"xnewx_{new}xnew 的概率等于对所有可能的 θ\thetaθ 求和"

步骤2:分解联合概率

使用条件概率的链式法则:

P(xnew,θ∣D)=P(xnew∣θ,D)⋅P(θ∣D)P(x_{new}, \theta|D) = P(x_{new}|\theta, D) \cdot P(\theta|D)P(xnew,θ∣D)=P(xnew∣θ,D)⋅P(θ∣D)

步骤3:条件独立性假设

关键假设:给定参数 θ\thetaθ 后,新数据 xnewx_{new}xnew 与旧数据 DDD 条件独立

P(xnew∣θ,D)=P(xnew∣θ)P(x_{new}|\theta, D) = P(x_{new}|\theta)P(xnew∣θ,D)=P(xnew∣θ)

为什么成立?

这是因为:

  • θ\thetaθ 包含了生成数据的全部信息
  • 一旦知道 θ\thetaθ,xnewx_{new}xnew 的分布就确定了
  • 旧数据 DDD 不再提供额外信息

数学表达
xnew⊥D∣θx_{new} \perp D | \thetaxnew⊥D∣θ

(xnewx_{new}xnew 和 DDD 在给定 θ\thetaθ 下独立)

步骤4:代入得到最终公式

P(xnew∣D)=∫P(xnew∣θ,D)⋅P(θ∣D)dθP(x_{new}|D) = \int P(x_{new}|\theta, D) \cdot P(\theta|D) d\thetaP(xnew∣D)=∫P(xnew∣θ,D)⋅P(θ∣D)dθ
=∫P(xnew∣θ)⋅P(θ∣D)dθ= \int P(x_{new}|\theta) \cdot P(\theta|D) d\theta=∫P(xnew∣θ)⋅P(θ∣D)dθ

这就是后验预测分布!

MLE vs MAP vs Full Bayes 对比表

维度 MLE (最大似然估计) MAP (最大后验估计) Full Bayes (完全贝叶斯)
核心公式 arg⁡max⁡P(D∣θ)\arg\max P(D|\theta)argmaxP(D∣θ) arg⁡max⁡P(D∣θ)P(θ)\arg\max P(D|\theta)P(\theta)argmaxP(D∣θ)P(θ) P(θ∣D)=P(D∣θ)P(θ)P(D)P(\theta|D) = \frac{P(D|\theta)P(\theta)}{P(D)}P(θ∣D)=P(D)P(D∣θ)P(θ)
输出 单个点 θ^\hat{\theta}θ^ 单个点 θ^\hat{\theta}θ^ 完整分布 P(θ∣D)P(\theta|D)P(θ∣D)
参数观点 固定未知常数 随机变量(取众数,概率峰值) 随机变量(保留分布)
使用先验 ❌ 不使用 ✅ 使用 ✅ 使用
不确定性 ❌ 无 ❌ 无 ✅ 完整量化
等价形式 min⁡−log⁡P(D∣θ)\min -\log P(D|\theta)min−logP(D∣θ) min⁡[−log⁡P(D∣θ)−log⁡P(θ)]\min [-\log P(D|\theta) - \log P(\theta)]min[−logP(D∣θ)−logP(θ)] 无简化(完整分布)
与正则化关系 无正则化 L2正则=高斯先验 L1正则=拉普拉斯先验 正则化=先验分布
硬币例子 10次抛6正 θ=0.6\theta=0.6θ=0.6 θ=0.583\theta=0.583θ=0.583 (Beta(2,2)先验) 均值=0.571 95%CI=[0.34,0.80]
小样本 1次抛1正 θ=1.0\theta=1.0θ=1.0 ❌极端 θ=0.67\theta=0.67θ=0.67 ✅合理 均值=0.6 CI=[0.16,0.95] ✅最优
大样本行为 不变 → MLE 后验集中于真值
预测 P(xnew∣θ^)P(x_{new}|\hat{\theta})P(xnew∣θ^) P(xnew∣θ^)P(x_{new}|\hat{\theta})P(xnew∣θ^) ∫P(xnew∣θ)P(θ∣D)dθ\int P(x_{new}|\theta)P(\theta|D)d\theta∫P(xnew∣θ)P(θ∣D)dθ
计算复杂度 低 ⚡ 中 ⚡⚡ 高 ⚡⚡⚡
优化方法 梯度下降、牛顿法 梯度下降、L-BFGS MCMC、变分推断
主要优点 • 简单快速 • 无主观性 • 渐近最优 • 防止过拟合 • 利用先验 • 小样本稳健 • 完整不确定性 • 自动传播误差 • 理论最优
主要缺点 • 小样本过拟合 • 无不确定性 • 极端估计 • 仍无不确定性 • 先验主观 • 点估计局限 • 计算昂贵 • 高维困难 • 先验依赖
适用场景 大数据、快速原型 正则化、中等数据 小样本、高风险决策
典型应用 神经网络(无正则) 极大似然估计 神经网络(L2/Dropout) Ridge/Lasso回归 医疗诊断 金融风险 贝叶斯优化
何时使用 n>10000n>10000n>10000 且无先验 需要正则化或有先验 需要不确定性量化

三者关系

MLE→+先验MAP→保留完整分布Full Bayes\text{MLE} \xrightarrow{+先验} \text{MAP} \xrightarrow{保留完整分布} \text{Full Bayes}MLE+先验 MAP保留完整分布 Full Bayes

  • 均匀先验时: MAP = MLE
  • 大样本时: MAP ≈ MLE,Full Bayes 集中
  • 小样本时: Full Bayes > MAP > MLE

快速决策

如果你需要... 选择
速度 MLE
防过拟合 MAP
不确定性 Full Bayes
相关推荐
fengfuyao9851 天前
MATLAB的加权K-means(Warp-KMeans)聚类算法
算法·matlab·kmeans
Elastic 中国社区官方博客1 天前
Elasticsearch:如何为 Elastic Stack 部署 E5 模型 - 下载及隔离环境
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
xier_ran1 天前
深度学习:神经网络中的参数和超参数
人工智能·深度学习
8Qi81 天前
伪装图像生成之——GAN与Diffusion
人工智能·深度学习·神经网络·生成对抗网络·图像生成·伪装图像生成
循环过三天1 天前
3.1、Python-列表
python·算法
阿里云大数据AI技术1 天前
PAI Physical AI Notebook详解2:基于Cosmos世界模型的操作动作数据扩增与模仿学习
人工智能
傻啦嘿哟1 天前
Python高效实现Word转HTML:从基础到进阶的全流程方案
人工智能·python·tensorflow
该用户已不存在1 天前
Gemini CLI 核心命令指南,让工作从从容容游刃有余
人工智能·程序员·aigc
思通数科多模态大模型1 天前
扑灭斗殴的火苗:AI智能守护如何为校园安全保驾护航
大数据·人工智能·深度学习·安全·目标检测·计算机视觉·数据挖掘
dragoooon341 天前
[优选算法专题六.模拟 ——NO.40~41 外观数列、数青蛙]
数据结构·算法·leetcode