机器学习:详解极大似然估计(MLE)与极大后验估计(MAP)

1 概率与似然

概率与似然是站在两个角度上看待问题。假设样本集为 X X X,环境参数为 θ \theta θ,则对于:
p ( X ↔ θ ) p\left( X\leftrightarrow \theta \right) p(Xθ)

(a) 当环境参数 θ \theta θ已知时,上式退化为 p ( X ∣ θ ) p\left( X|\theta \right) p(Xθ),此为概率问题:概率即是给定模型参数后,对样本合理性的描述,而不涉及任何观测数据
(b) 当环境参数 θ \theta θ未知时,上式退化为 p ( θ ∣ X ) p\left( \theta |X \right) p(θX),此为似然问题:似然即是给定样本观测数据,从而推测可能产生这个结果的环境参数。似然问题也称为逆概(Converse Probability)问题

以一个实例进一步说明:
(Qa) 假设掷一枚硬币正面朝上概率为 θ = 0.5 \theta=0.5 θ=0.5,求掷10次硬币中有7次正面朝上的概率。
(Qb) 有一个硬币有 的概率正面朝上,为确定 θ \theta θ做如下实验:掷10次硬币得到一个正反序列——HHTTHTHHHH。

显然,(Qa)可以不依赖任何观测数据计算出 ,即最终的观测数据在0.117附近则认为是合理的;(Qb)则是通过观测数据来反推环境参数:事实上,这符合人类认识的规律——即在不断地实践中获得观测数据,再从观测数据中总结经验规律(对应于模型参数)。在机器学习中,也往往是需要机器根据已有的数据学到相应的分布——即确定由 θ \theta θ决定的模型

在似然问题中,需要引入**似然函数(Likelihood Function)**的概念——其描述了对于不同的取值 ,其对于观测数据的适合程度。由于似然本身的定义,似然函数应由全体样本得出。仍以(Qb)为例,计算似然函数为:

L ( θ ) = P ( X ; θ ) = θ ⋅ θ ⋅ ( 1 − θ ) ⋅ ( 1 − θ ) ⋅ θ ⋅ ( 1 − θ ) ⋅ θ ⋅ θ ⋅ θ ⋅ θ = θ 7 ( 1 − θ ) 3 L\left( \theta \right) =P\left( X;\theta \right) \\=\theta \cdot \theta \cdot \left( 1-\theta \right) \cdot \left( 1-\theta \right) \cdot \theta \cdot \left( 1-\theta \right) \cdot \theta \cdot \theta \cdot \theta \cdot \theta \\=\theta ^7\left( 1-\theta \right) ^3 L(θ)=P(X;θ)=θθ(1θ)(1θ)θ(1θ)θθθθ=θ7(1θ)3

值得注意的是 P ( X ; θ ) ≠ P ( X ∣ θ ) P\left( X;\theta \right) \ne P\left( X|\theta \right) P(X;θ)=P(Xθ),因为环境参数 θ \theta θ不总是随机变量。 θ \theta θ确定,即为一个固定参数是频率学派的观点; θ \theta θ不定,即为一个随机变量是贝叶斯学派的观点

对上例中 L ( θ ) L\left( \theta \right) L(θ)作出曲线如图1所示。

在这里插入图片描述

图1

根据似然函数可以看出:当 θ = 0.7 \theta=0.7 θ=0.7即硬币向上概率为70%时,最有可能出现实验样本的正反序列。当然 θ = 0.7 \theta=0.7 θ=0.7并不符合直觉,因为实验样本数量太少存在偶然误差,随着实验次数的增加, θ \theta θ将趋于0.5。

2 先验概率与后验概率

从一个实例说起。

在这里插入图片描述

图2

如图2所示,假设每次实验时随机从某个盒子里挑出一个球。随机变量 A A A表示挑出的盒子,且设 P ( A = b l u e ) = 0.6 P\left( A=blue \right) =0.6 P(A=blue)=0.6;随机变量 B B B表示挑中的球。
(Qa) P ( A = r e d ) = ? P\left( A=red \right) =? P(A=red)=?
(Qb) 在挑中蓝色盒子的条件下, P ( B = g r e e n ) = ? P\left( B=green \right) =? P(B=green)=?
(Qc) 已知挑出绿色的球,则其是从红色盒子中挑出的概率有多大?

很显然,可以得到如下答案:
(Aa) P ( A = r e d ) = 0.4 P\left( A=red \right) =0.4 P(A=red)=0.4
(Ab) P ( B = g r e e n ∣ A = b l u e ) = P ( B = g r e e n , A = b l u e ) P ( A = b l u e ) = 3 4 P\left( B=green|A=blue \right) =\frac{P\left( B=green,A=blue \right)}{P\left( A=blue \right)}=\frac{3}{4} P(B=greenA=blue)=P(A=blue)P(B=green,A=blue)=43
(Ac) P ( A = r e d ∣ B = g r e e n ) = P ( B = g r e e n ∣ A = r e d ) P ( A = r e d ) P ( B = g r e e n ) = 2 11 P\left( A=red|B=green \right) =\frac{P\left( B=green|A=red \right) P\left( A=red \right)}{P\left( B=green \right)}=\frac{2}{11} P(A=redB=green)=P(B=green)P(B=greenA=red)P(A=red)=112

先验概率,指根据以往经验和分析,在实验或采样前就可以得到而不依赖于其他任何事件的概率。例如(Aa)中 P ( A = r e d ) = 0.4 P\left( A=red \right) =0.4 P(A=red)=0.4,其不依赖于任何事件(如取出绿球等),在实验前就可得出。先验概率有时也称作边缘概率,全概率公式 P ( Y ) = ∑ i P ( X i ) P ( Y ∣ X i ) P\left( Y \right) =\sum_i{P\left( X_i \right) P\left( Y|X_i \right)} P(Y)=iP(Xi)P(YXi)也可作为边缘化的工具,例如(Ac)中:

P ( B = g r e e n ) = P ( A = r e d ) P ( B = g r e e n ∣ A = r e d ) + P ( A = b l u e ) P ( B = g r e e n ∣ A = b l u e ) = 0.4 × 0.25 + 0.6 × 0.75 = 0.55 P\left( B=green \right) =P\left( A=red \right) P\left( B=green|A=red \right) +P\left( A=blue \right) P\left( B=green|A=blue \right) \\=0.4\times 0.25+0.6\times 0.75\\=0.55 P(B=green)=P(A=red)P(B=greenA=red)+P(A=blue)P(B=greenA=blue)=0.4×0.25+0.6×0.75=0.55

后验概率,指某事件(如实验或采样)已经发生,而与此相因果事件的概率。后验概率有时也称作条件概率。例如(Ab)(Ac)

3 极大似然估计

根据似然的定义知道,似然方法往往只关注似然函数取最大值时,对应的模型参数,因为这个模型参数下最有可能出现样本的分布。由此引申出基于似然函数值极大的参数估计方法——极大似然法。

假设数据样本 ( x 1 , x 2 , ⋯   , x n ) \left( x_1,x_2,\cdots ,x_n \right) (x1,x2,,xn)是满足独立同分布的一组抽样 X X X,设模型参数为 θ \theta θ,则:
θ ^ M L E = a r g max ⁡ P ( X ; θ ) = a r g max ⁡ [ P ( x 1 ; θ ) P ( x 2 ; θ ) ⋯ P ( x n ; θ ) ] = a r g max ⁡ [ ln ⁡ P ( x 1 ; θ ) + ln ⁡ P ( x 2 ; θ ) + ln ⁡ P ( x n ; θ ) ] = a r g min ⁡ [ − ∑ i = 1 n ln ⁡ P ( x i ; θ ) ] \widehat{\theta }_{MLE}=arg\max P\left( X;\theta \right) \\=arg\max \left[ P\left( x_1;\theta \right) P\left( x_2;\theta \right) \cdots P\left( x_n;\theta \right) \right] \\=arg\max \left[ \ln P\left( x_1;\theta \right) +\ln P\left( x_2;\theta \right) +\ln P\left( x_n;\theta \right) \right] \\=arg\min \left[ -\sum_{i=1}^n{\ln P\left( x_i;\theta \right)} \right] θ MLE=argmaxP(X;θ)=argmax[P(x1;θ)P(x2;θ)P(xn;θ)]=argmax[lnP(x1;θ)+lnP(x2;θ)+lnP(xn;θ)]=argmin[i=1nlnP(xi;θ)]

其中对数化是极大似然估计及其他机器学习理论推导的重要方法。

MLE是对似然函数 P ( X ; θ ) P\left( X;\theta \right) P(X;θ)的优化,其认为环境参数 θ \theta θ确定而样本空间 X X X不定。MLE可以看作采用了经验风险最小化(Experience Risk Minimization)策略,更侧重从样本数据中学习模型的潜在参数,将训练集损失降到最低。这在数据样本缺失的情况下容易管中窥豹,使模型发生过拟合。

4 极大后验估计

顾名思义,MAP优化的是后验概率 P ( θ ∣ X ) P\left( \theta |X \right) P(θX),即根据采集的数据样本反过来修正参数——因此必然存在先验性的模型参数。归结起来,MAP依然是根据已知样本,通过调整模型参数使得模型能够产生该数据样本的概率最大——这点与极大似然估计完全一致。只不过MAP相较MLE多了一个对于模型参数的先验分布假设,而不再一味地依赖数据样例,这使得此时的环境参数不再是固定的,而是一个随机变量。

假设数据样本 ( x 1 , x 2 , ⋯   , x n ) \left( x_1,x_2,\cdots ,x_n \right) (x1,x2,,xn)是满足独立同分布的一组抽样 X X X,设模型参数为 θ \theta θ,则:

θ ^ M A P = a r g max ⁡ P ( θ ∣ X ) = a r g max ⁡ P ( X ∣ θ ) P ( θ ) P ( X ) = a r g max ⁡ [ ln ⁡ P ( X ∣ θ ) + ln ⁡ P ( θ ) − ln ⁡ P ( X ) ] = a r g min ⁡ [ − ∑ i = 1 n ln ⁡ P ( x i ∣ θ ) − ln ⁡ P ( θ ) ] \widehat{\theta }_{MAP}=arg\max P\left( \theta |X \right) \\=arg\max \frac{P\left( X|\theta \right) P\left( \theta \right)}{P\left( X \right)}\\=arg\max \left[ \ln P\left( X|\theta \right) +\ln P\left( \theta \right) -\ln P\left( X \right) \right] \\=arg\min \left[ -\sum_{i=1}^n{\ln P\left( x_i|\theta \right) -\ln P\left( \theta \right)} \right] θ MAP=argmaxP(θX)=argmaxP(X)P(Xθ)P(θ)=argmax[lnP(Xθ)+lnP(θ)lnP(X)]=argmin[i=1nlnP(xiθ)lnP(θ)]

其中忽略 P ( X ) P\left( X \right) P(X)的合理性在于,对于任意一次抽样 X X X进行的参数调整都不会影响当次的 P ( X ) P\left( X \right) P(X),因为 P ( X ) P\left( X \right) P(X)属于先验概率或者说是实验的客观事实,并不依赖于环境参数。

MAP可以看作采用了结构风险最小化(Structural Risk Minimization)策略,在经验风险最小化的基础上考虑参数的先验分布——类似于在损失函数上增加了正则项,防止模型出现过拟合状态。这样在数据样本不是很充分的情况下,仍可以通过模型参数先验假设,辅以数据样本,做到尽可能地还原真实模型分布。

从最终的优化结果可知,MAP的似然函数为:
L ( θ ) = P ( X ∣ θ ) P ( θ ) L\left( \theta \right) =P\left( X|\theta \right) P\left( \theta \right) L(θ)=P(Xθ)P(θ)

其中 P ( θ ) P\left( \theta\right) P(θ)为参数的先验分布。

再次以第2节(Qb)为例。假设一枚质地均匀的硬币正面概率 θ \theta θ满足均值为0.5,方差为1的先验分布,即:

θ   N ( 0.5 , 1 ) \theta~N\left( 0.5,1 \right) θ N(0.5,1)

则似然函数为:

L ( θ ) = θ 7 ( 1 − θ ) 3 1 2 π e − ( θ − 0.5 ) 2 2 L\left( \theta \right) =\theta ^7\left( 1-\theta \right) ^3\frac{1}{\sqrt{2\pi}}e^{-\frac{\left( \theta -0.5 \right) ^2}{2}} L(θ)=θ7(1θ)32π 1e2(θ0.5)2

再对其进行MLE(考虑先验分布的MLE等价于MAP;环境参数服从均匀分布的MAP等价于MLE)可得 θ ≈ 0.696 \theta \approx 0.696 θ0.696,与第2节的 θ = 0.7 \theta =0.7 θ=0.7相比,MAP考虑了结构风险,有对过拟合进行修正的趋势。

猜你喜欢

转载自blog.csdn.net/FRIGIDWINTER/article/details/115109293