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

简介: 机器学习:详解极大似然估计(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所示。


image.png

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

2 先验概率与后验概率

从一个实例说起。


image.png

如图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

 


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考虑了结构风险,有对过拟合进行修正的趋势。


目录
相关文章
|
3月前
|
机器学习/深度学习
【机器学习】误差总似然
【1月更文挑战第23天】【机器学习】误差总似然
|
机器学习/深度学习
机器学习基础:极大似然估计
机器学习基础:极大似然估计
61 0
机器学习基础:极大似然估计
|
机器学习/深度学习
机器学习(十八)极大似然估计
机器学习(十八)极大似然估计
191 0
机器学习(十八)极大似然估计
|
机器学习/深度学习 算法
机器学习之从极大似然估计到最大熵原理以及EM算法详解
一、极大似然估计 极大似然估计是建立在极大似然原理的基础上的一个统计方法,极大似然原理的直观想法是,一个随机试验如有若干个可能的结果A,B,C,… ,若在一次试验中,结果A出现了,那么可以认为实验条件对A的出现有利,也即出现的概率P(A)较大。
3170 0
|
1月前
|
机器学习/深度学习 存储 搜索推荐
利用机器学习算法改善电商推荐系统的效率
电商行业日益竞争激烈,提升用户体验成为关键。本文将探讨如何利用机器学习算法优化电商推荐系统,通过分析用户行为数据和商品信息,实现个性化推荐,从而提高推荐效率和准确性。
|
15天前
|
机器学习/深度学习 算法 搜索推荐
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
|
1月前
|
机器学习/深度学习 算法 数据可视化
实现机器学习算法时,特征选择是非常重要的一步,你有哪些推荐的方法?
实现机器学习算法时,特征选择是非常重要的一步,你有哪些推荐的方法?
26 1
|
1月前
|
机器学习/深度学习 数据采集 算法
解码癌症预测的密码:可解释性机器学习算法SHAP揭示XGBoost模型的预测机制
解码癌症预测的密码:可解释性机器学习算法SHAP揭示XGBoost模型的预测机制
93 0
|
1月前
|
机器学习/深度学习 数据采集 监控
机器学习-特征选择:如何使用递归特征消除算法自动筛选出最优特征?
机器学习-特征选择:如何使用递归特征消除算法自动筛选出最优特征?
56 0

热门文章

最新文章