极大似然法(ML)与最大期望法(EM)

极大似然法

极大似然,或者称最大似然(Maximum likelihood)。

目的

利用已知的样本结果,反推最有可能(最大概率)导致这样结果的参数值。

原理

极大似然估计是建立在极大似然原理的基础上的一个统计方法,是概率论在统计学中的应用。极大似然估计提供了一种给定观察数据来评估模型参数的方法,即:“模型已定,参数未知”。通过若干次试验,观察其结果,利用试验结果得到某个参数值能够使样本出现的概率为最大,则称为极大似然估计。

举例

说人话就是,学霸和学渣考试结束之后,一个成绩是A,一个成绩是C。这时候,一般是猜测学霸的成绩是A;学渣的成绩为C。这就体现了极大似然的基本思想。在已知结果集(一个A,一个C)的情况下,根据一些先验知识(学霸成绩有很大可能高于学渣),得到分析的结果(学霸A,学渣C)。一句话总结,已知结果,求出现这个结果的最大可能条件

数学定义

似然函数: L ( θ )

最大似然估计量(需要得到的结果): θ

目的是需要找到一个 θ ,使得 L ( θ ) 最大。这个最大的 θ 表示为: θ ^ = arg max L ( θ ) 。( arg 表示在 θ 所有的索引值)

在某些情况下, L ( θ ) 是用连乘来表示的,如 L ( θ ) = i = 1 n p ( x i ; θ ) 。此时,为了便于分析,将其转换为连加计算, H ( θ ) = ln L ( θ ) = i = 1 n p ( x i ; θ )

此时,问题转换为求 L ( θ ) 的极大值,方法就是运用求导(前提是这个函数连续可微)。值得一提的是, θ 不一定只有一个值,可能为一个向量,所以求极大值的时候需要对每个参数进行求偏导。

EM算法

EM算法,最大期望算法(Expectation-maximization)

目的

在统计中被用于寻找,依赖于不可观察的隐性变量的概率模型中,参数的最大似然估计。

原理

最大期望算法经过两个步骤交替进行计算,第一步是计算期望(E),利用对隐藏变量的现有估计值,计算其最大似然估计值;第二步是最大化(M),最大化在E步上求得的最大似然值来计算参数的值。M步上找到的参数估计值被用于下一个E步计算中,这个过程不断交替进行。

举例

说人话就是,一堆钞票(很多很多),在不借助外力(点钞机)的情况下,如何平均分成两部分。最简单的做法就是,首先大致分为两堆,然后比较两堆钞票的高低;将高堆的一部分钞票转给低堆;来回往复,直到两堆同高。前提钞票是崭新,每张厚度一样。为了想得到在开始状态下未知的两个参数A、B(平均分为两堆钞票),前提条件是得到A了就可以得到B,得到B也可以得到A。此时,就可以随机(指定)赋予A某初值(先大概分一堆钞票出来),B也得到了一个值(另一堆钞票就是B);根据B的当前值(钞票高度)重新估计A值(对比两堆高低,进行转钞票),直到收敛(两堆钞票相等)。一句话总结,想要得到一堆有关联的未知参数,先猜一个大概的参数结果,再不断的调整,直到参数结果符合条件(收敛)

数学定义

样本集: { x ( 1 ) x ( 2 ) x m }

每个样本对应的类别(未知): z ( i )

基于最大似然问题的定义,概率估计模型 p ( x ( i ) ; θ ) 。现在多了一个未知变量 z ( θ ) ,变成了 p ( x ( i ) , z ( i ) ; θ ) 。问题还是一样,求解 θ ^

E步骤:根据参数初始值或上一次迭代的参数值(一开始定义的钞票高度或者每次调整完钞票高度后的两堆高度)来计算隐性变量( z ( i ) 的后验概率(隐性变量的期望,新估计值)

M步骤:将似然函数极大化获得新参数值(根据B堆高度调整A堆高度)

推导过程

一个背景知识,Jensen不等式。 f 是凸函数, X 是随机变量,公式是这样的, E ( f ( X ) ) f ( E X ) 。具体推导过程不做介绍。

H ( θ ) = log L ( θ ) = i = 1 m log p ( x ( i ) ; θ ) = i = 1 m log z ( i ) p ( x ( i ) , z ( i ) ; θ ) = i = 1 m log z ( i ) Q i ( z ( i ) ) p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) i = 1 m z ( i ) Q i ( z ( i ) ) log p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) )

稍作解释,第一行到第二行,是引出 z ( i ) 这个未知变量,第三行是引入一个额外的 Q i ( z ( i ) ) 变量,便于使用Jensen不等式,第四行运用Jensen不等式。

接下来,就是求解 p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) ) ,令其等于 c 。由推导可得 z Q i ( z ( i ) ) = 1 。所以:

Q i ( z ( i ) ) = p ( x ( i ) , z ( i ) ; θ ) z p ( x ( i ) , z ; θ ) = p ( x ( i ) , z ( i ) ; θ ) p ( x ( i ) ; θ ) = p ( z ( i ) | x ( i ) ; θ )

所以,接下来就可以正式的进行E、M步骤

E: Q i ( z ( i ) ) = p ( z i | x ( i ) ; θ )

M: θ = arg max i z ( i ) Q i ( z ( i ) ) log p ( x ( i ) , z ( i ) ; θ ) Q i ( z ( i ) )

最后收敛。关于一定会收敛的证明。

在第t步骤中,

L ( θ ( t ) ) = i z ( i ) Q i ( t ) ( z ( i ) ) log p ( x ( i ) , z ( i ) ; θ ( t ) ) Q i ( t ) ( z ( i ) )

之后进行M步骤,固定了 Q i ( t ) ( z ( i ) ) ,求新的 θ ,即 θ ( t + 1 ) 。所以,

L ( θ ( t + 1 ) ) i z ( i ) Q i ( t ) ( z ( i ) ) log p ( x ( i ) , z ( i ) ; θ ( t + 1 ) ) Q i ( t ) ( z ( i ) )

显然, L ( θ ( t + 1 ) ) L ( θ ( t ) )

参考文章:

(EM算法)The EM Algorithm

从最大似然到EM算法浅解

猜你喜欢

转载自blog.csdn.net/wnma3mz/article/details/81429500