ML——参数估计MLE-MAP-BEP

极大似然估计(Maximum Likelihood Estimation,MLE)
最大后验概率估计(Maximum a posteriori Estimation,MAP)
贝叶斯估计(Bayesian Parameter Estimation,BPE)


一般理解

  • 极大似然估计(MLE): 频率学派(参数为固定的某个值)
  • 贝叶斯估计(BPE): 贝叶斯学派(参数服从某个分布)
  • 最大后验概率估计(MAP): 一般的书籍认为属于频率学派
    • 个人理解:MAP前半部分是贝叶斯学派,后半部分是频率学派
      • 前半部分认为参数 \(\theta\))有先验分布,此时参数服从一个分布,而不是确定的值,是贝叶斯学派的
      • 后半部分认为参数不是服从后验分布,而是一个具体的使得后验概率最大的值,这里是频率学派的做法
  • 三者的终极目标都是估计模型参数 \(\theta\),MAP和MLE估计参数 \(\theta\) 为具体某个值,BPE估计参数 \(\theta\) 为一个分布
  • 其他贝叶斯网络模型(有向图概率图模型)参数估计的方法还有吉布斯采样,变分推断,EM算法等

极大似然估计与最大后验概率估计

最大后验概率估计与贝叶斯估计

  • 相似点:
    • 都考虑了参数的先验分布(贝叶斯学派)
    • 最大后验概率估计是贝叶斯估计的一种简化实现(认为 \(\theta\) 都是出现在最可能出现的地方,牺牲一点精度,不用求复杂的分母积分)
    • 二者都围绕下面的公式进行估计
      $$P(\theta|X)=\frac{P(X|\theta)P(\theta)}{P(X)}$$
  • 区别:
    • 贝叶斯估计 :求得的结果估计参数 \(\theta\) 服从一个分布,不能忽略归一化因子 \(P(X)\),此时 \(P(X)=\int_{\theta}P(X|\theta)P(\theta)d_{\theta}\),贝叶斯估计要计算后验分布,所以需要计算归一化因子,虽然对不同参数值,分母积分结果是相同的,但是计算分布时需要这个归一化因子,否则后续得到的不是分布,也无法求取参数的期望等
    • 最大后验概率估计 :求得的结果估计参数 \(\theta\) 是一个具体的值,把分母 \(P(X)\) 给忽略了,直接对分子极大化求得最优的参数 \(\theta^{\star}\),由于跟贝叶斯估计一样,对不同参数值,分母积分结果是相同的,所以 \(P(X)\) 的值不影响最优参数值的选取【不求参数 \(\theta\) 的分布,所以不用求分母,分母是不影响求参数最优值的】,不用计算归一化因子(很复杂,需要积分),速度会快很多
  • 最大后验概率估计相当于是参数后验分布 \(P(\theta|X)\) 被最可能的参数值 \(\theta^{\star}=\mathop{\arg\max}_{\theta}P(\theta|X)\) 替代的贝叶斯估计
估计模型 目标值 关心对象 求值方式
MLE $$\theta^{\star}=\mathop{\arg\max}_{\theta}(P(X\mid \theta)$$ \(P(X\mid \theta)\) 最大化似然函数 \(P(X\mid \theta)\)
MAP $$\theta^{\star}=\mathop{\arg\max}_{\theta}(P(\theta\mid X)$$ \(P(X\mid \theta)P(\theta)\) 最大化后验概率 \(P(\theta\mid X)=\frac{P(X\mid \theta)P(\theta)}{P(X)}\)
只需最大化分子 \(P(X,\theta)=P(X\mid \theta)P(\theta)\)
BPE \(P(\theta\mid X)\)
(\(\theta\) 的后验概率分布)
\(\frac{P(X\mid \theta)P(\theta)}{P(X)}\) 求参数 \(\theta\) 的后验概率分布 \(P(\theta\mid X)\)
\(P(\theta\mid X)=\frac{P(X\mid \theta)P(\theta)}{\int_{\theta}P(X\mid\theta)P(\theta)d_{\theta}}\)

一个容易理解的角度

问题描述

  • 已知数据集为 \(X=(x_{1}, x_{2},,,x_{n})\)

  • 极大似然估计

    • 已知数据集 \(X\) 的情况下,求参数最优值 \(\theta^{\star}\),使得似然函数 \(P(X|\theta)\) 最大
  • 最大后验概率估计

    • 已知数据集 \(X\) 的情况下,求参数最优值 \(\theta^{\star}\),使得后验概率 \(P(\theta|X)\) 最大,实际只需使得 \(P(X,\theta)=P(X|\theta)P(\theta)\) 最大
  • 贝叶斯估计

    • 已知数据集 \(X\) 的情况下,求参数 \(\theta\) 的后验分布 \(P(\theta|X)\)

极大似然估计(MLE)

  • 推导
    $$P(\theta|X)=\frac{P(X|\theta)P(\theta)}{P(X)}$$
    • \(P(\theta)\) 的取值与参数 \(\theta\) 无关【认为每个参数 \(\theta\) 出现的概率相等】
      • \(P(\theta)\) 与参数 \(\theta\) 无关可以理解为参数 \(\theta\) 服从均匀分布 : 假设参数 \(\theta\) 有k个离散取值 \(\theta_{1}, \theta_{2},,,\theta_{k}\),那么 \(P(\theta_{1})=P(\theta_{2})=…=P(\theta_{k})=\frac{1}{k}\)
    • \(P(X)\) 的取值与 \(\theta\) 无关,设置为 \(P(X)=1\) 即可
    • 所以得到下面的表达式
      $$\mathop{\arg\max}_{\theta}P(\theta|X)=\mathop{\arg\max}_{\theta}P(X|\theta)$$
      • 式子中 \(P(X|\theta)\) 被称为似然函数
  • 结论
    • 极大似然估计: \(\theta^{\star}=\mathop{\arg\max}_{\theta}P(X|\theta)\)
    • 文字解释: 极大似然估计的目标是找一个参数 \(\theta\),使得在参数 \(\theta\) 对应的概率分布模型下,数据集 \(X\) 出现的概率最大(似然函数最大)

最大后验概率估计(MAP)

  • 推导
    $$P(\theta|X)=\frac{P(X|\theta)P(\theta)}{P(X)}$$
    • \(P(\theta)\) 为的取值与参数 \(\theta\) 相关,是关于 \(\theta\) 的一个先验概率【不同的参数 \(\theta\) 出现的概率可能不同】
      • \(P(\theta)\) 与参数 \(\theta\) 相关可以理解为: 假设参数 \(\theta\) 有k个取值 \(\theta_{1}, \theta_{2},,,\theta_{k}\),那么 \(\sum_{i=1}^{k}P(\theta_{i})=1\),但 \(P(\theta_{1}),P(\theta_{2}),,,P(\theta_{k})\) 的取值不能确定,也不一定相等
    • \(P(X)=\int_{\theta}P(X|\theta)P(\theta)d_{\theta}\) 积分结果与 \(\theta\) 不相关,分母的值不影响后验概率最大值的参数值,直接忽略(设置为 \(P(X)=1\))即可
    • 所以得到
      $$\mathop{\arg\max}_{\theta}P(\theta|X)=\mathop{\arg\max}_{\theta}P(X|\theta)P(\theta)=\mathop{\arg\max}_{\theta}P(X,\theta)$$
  • 结论
    • 最大后验概率估计: \(\theta^{\star}=\mathop{\arg\max}_{\theta}P(X|\theta)P(\theta)\)
    • 文字解释: 最大后验概率估计的目标是找一个参数 \(\theta\),使得在参数 \(\theta\) 服从已知先验分布 \(P(\theta)\) 和数据集 \(X\) 的情况下,对应的后验概率 \(P(\theta|X)\) 最大(等价于 \(P(X,\theta)=P(X|\theta)P(\theta)\) 最大)

贝叶斯估计(BPE)

  • 推导
    $$P(\theta|X)=\frac{P(X|\theta)P(\theta)}{P(X)}$$
    • \(P(\theta)\) 为的取值与参数 \(\theta\) 相关,是关于 \(\theta\) 的一个先验概率
      • \(P(\theta)\) 与参数 \(\theta\) 相关可以理解为: 假设参数 \(\theta\) 有k个取值 \(\theta_{1}, \theta_{2},,,\theta_{k}\),那么 \(\sum_{i=1}^{k}P(\theta_{i})=1\),但 \(P(\theta_{1}),P(\theta_{2}),,,P(\theta_{k})\) 的取值不确定,也不一定相等
    • \(P(X)\) 的取值与 \(\theta\) 本身不相关,但是为了求出后验分布 \(P(\theta|X)\), \(P(X)\) 作为归一化因子需要计算
      • \(P(X)\) 的值与参数的先验分布,模型的定义(高斯分布还是贝塔分布等)和数据集 \(X\) 有关系
      • 没有分母作为归一化因子的话单独的分子是联合分布 \(P(X,\theta)\),这个分布对 \(\theta\) 积分结果不为1(而是 \(P(X)\)),联合分布不能确定 \(\theta\) 的后验分布
      • \(P(X)=\int_{\theta}P(X|\theta)P(\theta)d_{\theta}\)
    • 所以得到
      $$P(\theta|X)=\frac{P(X|\theta)P(\theta)}{\int_{\theta}P(X|\theta)P(\theta)d_{\theta}}$$
  • 结论
    • 贝叶斯估计: \(P(\theta|X)=\frac{P(X|\theta)P(\theta)}{\int_{\theta}P(X|\theta)P(\theta)d_{\theta}}\)
    • 文字解释: 贝叶斯估计的目标是求参数的后验分布 \(P(\theta|X)\),参数 \(\theta\) 服从先验分布 \(P(\theta)\),在已知数据集 \(X\) 修正后,参数 \(\theta\) 的后验概率分布为 \(P(\theta|X)\)
  • 缺点
    • 计算 \(P(X)=\int_{\theta}P(X|\theta)P(\theta)d_{\theta}\) 比较耗时

一个更深入的理解

问题描述

  • 已知数据集为 \(X=(x_{1}, x_{2},,,x_{n})\),新数据集为 \(D=(d_{1}, d_{2},,,d_{m})\)
  • 求已知数据集 \(X\) 的情况下,假设数据集 \(X\) 由某个模型M(参数为 \(\theta\))生成,那么数据集 \(D\) 也由模型M生成的概率 \(P(D|X)\)
    • 模型M的确定因素:
      • 由三个因素唯一确定
        • 参数 \(\theta\) 的先验分布 \(P(\theta)\)
        • 模型的类型定义 \(f(\theta)\) (高斯分布,贝塔分布,二项分布还是其他什么分布)
        • 模型的已知观察数据集 \(X\)
      • 由两个因素唯一确定
        • 模型的类型定义 \(f(\theta)\) (高斯分布,贝塔分布,二项分布还是其他什么分布)
        • 参数 \(\theta\) 的后验分布 \(P(\theta|X)\)
  • 另一种表述: 用模型M(参数为 \(\theta\))生成数据,在已观察到模型M生成了数据集 \(X\) 后,预测模型M接下来生成数据集 \(D\) 的概率

极大似然估计(MLE)

  • 特点:假设模型M(参数 \(\theta\))没有先验分布

  • 模型参数估计

    • 模型参数为一个确定的最优值
    • \(\theta^{\star}=\mathop{\arg\max}_{\theta}P(X|\theta)\)
  • 概率计算

    • \(P(D|X)=P(D|\theta^{\star})\)
  • 优点

    • 计算速度快
  • 缺点

    • 不够精确,特别是当观察到的数据集 \(X\) 太小时,这种情况不考虑参数的先验分布可能会造成过拟合
      • 举例: 判断一个学校男女比例,在观察到两个男生,一个女生走出校门后就判断男女比例为2:1显然不合适
        • 注意:单个同学是男生或者女生的概率服从伯努利分布,多个同学中男生的数量服从二项分布,整个学校的某个学生是男生的概率服从贝塔分布

贝叶斯估计(BPE)

  • 特点:假设模型M(参数 \(\theta\))有先验分布 \(P(\theta)\),计算观察到数据集 \(X\) 后 \(\theta\) 的后验分布 \(P(\theta|X)\),然后求 \(P(D|\theta)\) 关于后验分布 \(P(\theta|X)\) 的期望(这个期望也就是模型M生成数据集 \(D\) 的概率)
    • 这里可以理解为观察到的数据集是对先验分布的修正,修正后的后验分布会更符合模型实际情况(因为先验分布很可能是瞎猜的)
  • 模型参数估计
    • 模型参数为一个分布
    • \(P(\theta|X)=\frac{P(X|\theta)P(\theta)}{\int_{\theta}P(X|\theta)P(\theta)d_{\theta}}\)
    • 分子为归一化因子 \(P(X)\)
      • 必须计算,该值与参数的先验分布 \(P(\theta)\),模型的类型定义(\(f(\theta)\))以及数据集 \(X\) 有关系,不计算 \(P(X)\) 的话后面计算得到的 \(P(D|X)\) 也将是一个不确定的值(不是概率值,是 \(P(X)\) 的函数)
  • 概率计算
    • \(P(D|X)=\int_{\theta}P(D,\theta|X)d_{\theta}=\int_{\theta}P(D|\theta,X)P(\theta|X)d_{\theta}=\int_{\theta}P(D|\theta)P(\theta|X)d_{\theta}\)
      • 式子中 \(P(D|\theta,X)=P(D|\theta)\),在通过 \(X\) 确定 \(\theta\) 后模型也就确定了, \(X\) 不会继续影响 \(D\) 的生成
    • 这里 \(P(D|X)\) 相当于 \(P(D|\theta)\) 关于后验分布 \(P(\theta|X)\) 的期望
  • 优点
    • 计算结果最精确,能根据参数的先验分布和数据集 \(X\) 的知识,准确计算模型生成数据集 \(D\) 的概率
  • 缺点
    • 计算 \(P(X)=\int_{\theta}P(X|\theta)P(\theta)d_{\theta}\) 比较耗时,不常用
关于 \(P(X)\) 是否需要计算?
  • 无需计算的情况
    • 判断两个数据集 \(D_{1},D_{2}\) 由同一个模型M生成的概率谁大,可以不用计算 \(P(X)\)
      • 因为对于同一模型M, \(P(X)\) 相同大小,此时只需要比较 \(P(D_{1},X)\) 和 \(P(D_{2},X)\) 谁大即可知道 \(P(D_{1}|X)\) 和 \(P(D_{2}|X)\) 谁大
  • 必须计算的情况
    • 判断数据集 \(D\) 由两个模型 \(M_{1},M_{2}\) 生成的概率谁大,必须计算 \(P(X)\)
      • 因为对于不同模型 \(M_{1},M_{2}\), \(P(X)\) 不相同【每个模型生成 \(X\) 的概率不同】,此时仅仅比较 \(P(D_{1},X)\) 和 \(P(D_{2},X)\) 谁大不能确定 \(P(D_{1}|X)\) 和 \(P(D_{2}|X)\) 谁大
    • 利用模型M采样生成新数据(预测问题),必须计算 \(P(X)\)
      • 这时候每次采样时需要根据参数 \(\theta\) 的后验分布采样生成 \(\theta_{i}\),然后再根据 \(\theta_{i}\) 确定的模型 \(M_{i}\) 采样生成观测数据,两次采样的过程都必须知道准确的分布(积分为1,也就是归一化后的),所以此时必须计算 \(P(X)\)

最大后验概率估计(MAP)

  • 特点:假设模型M(参数 \(\theta\))有先验分布 \(P(\theta)\),但不计算模型的后验分布 \(P(\theta|X)\),只用最可能的 \(\theta\) 代替后验分布来确定模型M

  • 模型参数估计

    • 模型参数为一个确定的最优值
    • \(\theta^{\star}=\mathop{\arg\max}_{\theta}P(\theta|X)=\mathop{\arg\max}_{\theta}P(X|\theta)P(\theta)\)
      • 这里与贝叶斯估计作对比可以发现,MAP相当于把参数后验分布简化为最可能的那个参数值,用最可能的参数值代替参数后验分布 ,这样做对最终预测结果 \(P(D|X)\) 可能有点误差,但是不用计算复杂的积分 \(P(X)=\int_{\theta}P(X|\theta)P(\theta)d_{\theta}\)
      • 这里能够用最优值替代分布的前提是分布是很集中的(也就是要 \(P(\theta|X)\) 方差小,比如贝塔分布,狄利克雷分布和高斯分布等钟型分布的塔尖要尖),不然误差可能会比较大
      • 注意后验分布 \(P(\theta|X)\) 最可能值的参数值是概率最大的地方 \(\theta^{\star}=\mathop{\arg\max}_{\theta}P(\theta|X)\),而不是参数 \(\theta\) 关于后验分布的期望 \(\mathbb{E}_{P(\theta|X)}[\theta]=\int_{\theta}\theta P(\theta|X)d_{\theta}\) (期望对应平均值,而不是最可能的值 ,特例:对称钟型分布的期望同时也是它最可能的值)
  • 概率计算

    • \(P(D|X)=P(D|\theta^{\star})\)
  • 计算速度和精确度都介于MLE和BPE之间


总结

  • 贝叶斯估计可以退化成最大后验概率估计
    • 最大后验概率估计相当于是参数后验分布 \(P(\theta|X)\) 被最可能的参数值 \(\theta^{\star}=\mathop{\arg\max}_{\theta}P(\theta|X)\) 替代的贝叶斯估计
  • 最大后验概率估计可以退化成极大似然估计
    • 极大似然估计相当于是参数 \(\theta\) 的先验分布 \(P(\theta)\) 为均为分布的最大后验概率估计