0%

11. EM算法

[TOC]

原理

全概率公式

全概率公式:假设事件的发生受某一隐含变量的影响,可通过贝叶斯推断建立模型

  • 若推测 $X$ 与 $Z$ 之间存在隐含关系,则存在似然概率 $P(X\vert Z)$

  • 假设 $Z$ 服从某种先验分布,则可以通过关闭数据用和初始参数推断出先验概率 $P(Z)$

贝叶斯

频率派:从统计意义上,表示事件发生的可能性

贝叶斯派:概率为通过经验对时间的不确定性进行度量,表示对事件的信任程度

即使一个事件的先验概率很大,若似然概率很小,则后验概率也可能很小

对于数据集 $D\{(X_1,y_1),(X_2,y_2),\cdots,(X_N,y_N)\}$ ,且满足$f(X_i)\rightarrow y_i$,估计后验概率 $P(y\vert X)$

  • 似然概率 $L(\mu;\sigma)=\prod\limits_{i=1}^N P(X_i\vert \mu,\sigma)\Rightarrow \sum\limits_{i=1}^N \log P(X_i\vert \mu,\sigma)$

则有,

通过贝叶斯推断隐变量与概率分布的关系

二项分布

$\theta$ 表示正面为1的概率大小

多次投掷硬币为N重伯努利实验

N重伯努利实验结果

混合伯努利模型

假设结果与某一隐变量有关,每次结果出现两种输出 $Z=\{0,1\}$

参数模型:

z为控制y发生的隐变量

由于:

上述为二模态混合模型,每次实验常数权重 $\pi$ 选择实验结果的概密


对于多模态混合模型,每次实验都有各自的权重/概密

对于每一次的结果,需要了解由哪部分概密得出,才可以对三个参数进行估计

image-20230130170949072

image-20230130170955216

E step

对每个隐含状态,估计每种结果来源概密的权重

image-20230130174456221

用参数 $\mu$ 估计每个数据的来源概密 $Q(z_i)=P(z_i\vert x_i,\theta)$

表示第j个数据,多大概率由 $Q(z_i)$ 概密得出

M step

在给定权重的条件下,求参数的极大似然值

对参数 $\pi$ 估计

随机给定初始值 $(\pi_0,p_0,q_0)$ ,再根据初始值计算 $\mu_j$ ,根据来源密度估计 $p,q$

$P=\frac{P概密中1的结果份数}{P概密中的所有结果份数}$

二项伯努利混合模型

  1. 给参数赋随机值

  2. E step:求在给定隐含变量值前提下的,事件发生的期望,根据初始值估计来源概密

  3. M step:求参数最大化,估计参数

  4. 迭代,直至参数稳定

EM 算法 期望最大化算法

Jensen不等式

函数的期望与期望的函数大小关系

对于凸函数,函数值小于均值,故期望的函数值比较小,即函数的期望大于期望的函数

image-20230130175640164

线性函数为期望函数,凸函数为f(x)

对于凹函数,$E[f(x)]\le f(E[X])$

EM算法

  1. 计算完全数据的对数似然期望
  2. 最大化期望

目标:在假设参数 $\theta^{(j)}$ 的前提下,使不完全数据发生的期望最大化

在已知 $X$ 与隐变量 $Z$ 相关的前提下

  • $X$ :观测数据,不完全数据
  • $Z$ :隐变量
  • $\theta$ :模型的参数

E step

假设参数初始值 $\theta^{(0)}$ ,不完全数据发生的期望 $\propto$ 完全数据的对数期望

  1. 在参数 $\theta^{(j)}$ 与观测数据 $X$ 下,找到隐变量的条件概率 $P(Z\vert X,\theta^{(j)})$

    在有结果时,哪个模型得到的概率可计算

  2. 得到X,Z联合概率 $P(X,Z\vert \theta^{(j)})$

  3. 似然概率与隐变量的关系

由于 $P(Z_i\vert X_i,\theta^{(j)})$ 确定,故似然概率正比于

M step

最大化完全数据的对数期望 $\iff$ 最大化似然概率

进一步泛化,假设每个数据来源概密的权重 $Z_{i}$ 服从 $Q(Z_{i})$ 分布,$ Q(Z_{i})$ 表示 $Z_{i}$ 服从的概率分布,$\sum_{Z_{i}} Q(Z_{i})f(Z_{i})=E_Z[f(Z_{i})]$ :在给定观测数据 $X$ 与当前参数值 $\theta^{(j)}$ 前提下,对隐变量 $Z$ 的条件概率的期望 $\Rightarrow$ 完全数据的对数期望

完成一次参数迭代 $\theta^{(j)}\rightarrow \theta^{(j+1)}$ ,似然函数会增大或达到局部最大

一些特性

当数据均匀分布时,期望最大

即 $\frac{P(X_1,Z_1\vert \theta^{(j)})}{P(Z_1\vert X_1,\theta^{(j)})}=\frac{P(X_2,Z_2\vert \theta^{(j)})}{P(Z_2\vert X_2,\theta^{(j)})}=\cdots=\frac{P(X_N,Z_N\vert \theta^{(j)})}{P(Z_N\vert X_N,\theta^{(j)})}$

在已知 $\sum_ZQ_i(Z_i)=1$ 的前提下,可假设Z的分布

E step:对于每个i,

M step:

给定Z时,每个部分的最优值

E-step

M-step:

基于高斯混合模型的EM算法

高斯混合模型

K个高斯 $\mathcal{N}(\mu_1,\sigma^2_1),\mathcal{N}(\mu_2,\sigma^2_2),\cdots,\mathcal{N}(\mu_K,\sigma^2_K)$ ,混合权重为 $\alpha_1,\cdots,\alpha_K$ (表示来源于各高斯模型的样本比例),且 $\sum\alpha_i=1$

若已知 $\alpha_i$ 且样本属于哪个 $\mathcal{N}$ 已知,则可用样本与参数得到模型的参数

实际问题 :只有观测数据 $X_1,\cdots,X_N$ ,$Z$:隐变量,样本归属的高斯混合模型

建模

其中,$\theta=\{\mu_1,\sigma_1;\mu_2,\sigma_2;\cdots,\mu_N,\sigma_N\}$ ,第 $k$ 个模型的概率密度为 $Q(X)=\frac{1}{\sqrt{2\pi} \sigma_k}e^{-\frac{(X-\mu_k)^2}{2\sigma_k^2}}$

隐变量 $Z_{i1},Z_{i2},\cdots,Z_{iK}$ 控制第 $i$ 个观测数据 $X_i$ 的高斯混合系数

因此,隐变量矩阵

参数为 $\theta=(\alpha_1,\mu_1,\sigma_1;\alpha_2,\mu_2,\sigma_2;\cdots;\alpha_K,\mu_K,\sigma_K)$

联合概率分布

似然概率

对隐变量求期望

$\hat{n}_k=\sum\limits_{j=1}^N\hat{z}_{jk}$

E-step

  1. 在已知 $\theta^{(i)}$ 的前提下,对隐变量 $\hat{z}_{jk},\hat{n}_k$ 求期望

  2. 找到M-step的目标函数

EM收敛性

image-20230131120158002

image-20230131120543669

t表示迭代

image-20230131120937630

  • z服从什么分布时,E最大

不断调整 \theta ,使似然概率最大

image-20230131121159571

image-20230131121501954

image-20230131121517100

image-20230131121644536

image-20230131121803788

image-20230131121914647

image-20230131142550407

image-20230131142631894

image-20230131142747854

image-20230131142953400

后俩项,在参数给定时是一个常数,$Q(\theta,\theta^{(t)})$ ,\theta可以根据上一时刻的值进行调整,使Q()变大,使L(\theta)上升和提高

image-20230131143259486

使Q的极大似然值最大时的 $\theta$ 为下一时刻的 $\theta$

img

EM算法用来解决观测数据不完全时,对模型的参数估计问题。

目标是在给定参数 $\theta^{old}$ 和观测数据 $X$ 给定下,使非完全数据的对数似然函数 $lnP(X\vert \theta^{old})$ 取最大值

$Q(q,\theta^{old})= E_{Z\vert X,\theta^{old}}[lnP(X,Z\vert \theta^{old})]$ 即完全数据的对数似然函数,关于“隐变量Z的条件概率分布 $P(Z\vert \theta^{old},X)$” 的期望。由 $KL(q||p)\ge 0\Rightarrow lnP(X\vert \theta)\ge Q(q,\theta)$,可用 $Q(q,\theta^{old})$ 作为非完全数据对数似然函数 $lnP(X\vert \theta^{old})$ 的下界

E step

在固定参数 $\theta^{old}$ 和已知观测数据 $X$ 条件下,找出使完全数据对数似然函数的期望 $Q(q,\theta^{old})$ 的最大的隐变量 $Z$ 的条件概率分布 $q(Z)=\mathop{max}\limits_{z}\{P(Z\vert X,\theta^{old})\}$ ,此时 $KL(q||p)=0$

M step

在固定 $q(Z)$ 时,调节参数 $\theta$ ,最大化 $Q(q,\theta^{new})$ ,即完全数据的似然函数,关于 “给定参数 $\theta^{old}$ 和观测数据 $X$ 的条件下,隐变量Z的条件概率分布 $P(Z\vert \theta^{old},X)$ ”的期望最大化。由于参数的更新,$q(Z)$ 与 $P(Z\vert X,\theta^{new})$ 不在相等,即 $KL(q||p)>0$ ,导致了非完全数据对数似然函数 $P(X\vert \theta^{new})$ 增大

-------------本文结束-------------