EM算法
期望极大算法.它是一种迭代算法,用于含有隐变量的概率模型参数估计.EM算法的每次迭代由两步组成:E步求期望,M步求极大.
三硬币模型:已知三枚硬币A,B,C.这些硬币正面出现的概率分别为,现进行如下的实验
graph TD
x-->A
A-->|p|B
A-->|n|C
B-->|p|D[1]
B-->|n|E[0]
C-->|p|D[1]
C-->|n|E[0]
D-->y
E-->y
独立重复地n次试验,观测结果为:1,1,0,1,0,...,0,1.
y是观测变量,表示一次试验观察到的结果是1或者0.z是隐变量,表示未观测到的投掷硬币A的结果.是模型参数.观测数据表示为
EM算法先给出参数的初值:.设第i次迭代参数的估计值为,则第i+1次迭代如下
- E步:计算模型在参数下,观察数据来自于投掷硬币B的概率
- M步:更新模型参数的新估计值如下
高斯混合模型
为n维均值向量,是的协方差矩阵,是第k个成分对应的高斯分布的参数.
为簇标记.
输入
1. 样本集
2. 高斯混合成分个数
输出
高斯混合模型参数.
算法步骤
1. 取参数的初始值
2. 迭代直至算法收敛
- E步:根据当前模型参数,计算分模型k对观测数据的响应度
- M步:计算新一轮迭代的模型参数