详解极大似然估计与极大后验估计
最新文章地址:机器学习:通俗理解极大似然估计和极大后验估计+实例分析
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所示。
根据似然函数可以看出:当 θ = 0.7 \theta=0.7 θ=0.7即硬币向上概率为70%时,最有可能出现实验样本的正反序列。当然 θ = 0.7 \theta=0.7 θ=0.7并不符合直觉,因为实验样本数量太少存在偶然误差,随着实验次数的增加, θ \theta θ将趋于0.5。
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=green∣A=blue)=
P(A=blue)
P(B=green,A=blue)
=
4
3
(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=red∣B=green)=
P(B=green)
P(B=green∣A=red)P(A=red)
=
11
2
先验概率,指根据以往经验和分析,在实验或采样前就可以得到而不依赖于其他任何事件的概率。例如(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)=∑
i
P(X
i
)P(Y∣X
i
)也可作为边缘化的工具,例如(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=green∣A=red)+P(A=blue)P(B=green∣A=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) (x
1
,x
2
,⋯,x
n
)是满足独立同分布的一组抽样 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(x
1
;θ)P(x
2
;θ)⋯P(x
n
;θ)]
=argmax[lnP(x
1
;θ)+lnP(x
2
;θ)+lnP(x
n
;θ)]
=argmin[−
i=1
∑
n
lnP(x
i
;θ)]
其中对数化是极大似然估计及其他机器学习理论推导的重要方法。
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) (x
1
,x
2
,⋯,x
n
)是满足独立同分布的一组抽样 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)
=argmax
P(X)
P(X∣θ)P(θ)
=argmax[lnP(X∣θ)+lnP(θ)−lnP(X)]
=argmin[−∑
i=1
n
lnP(x
i
∣θ)−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−θ)
3
2π
1
e
−
2
(θ−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考虑了结构风险,有对过拟合进行修正的趋势。