高斯混合模型是几个高斯成分的简单线性叠加,可以提供比单高斯更加丰富的密度模型
这就表示此模型是由K个高斯分布线性叠加而成。
高斯混合模型公式的推导
引入一个K维的二进制随机变量z其中只有一个元素zk为1,其他元素都为0因此zk的值满足zk∈0,1并且∑kzk=1。通过哪个元素不为0可以看出向量z有K种可能的状态。
因为z是1-K维的表示所鉯其分布可以写为
同样的,在确定了z后x的条件概率是一个高斯分布
另外一个具有重要作用的度量是x确定时z的条件概率我们可以使用 γ(zk)
来表示p(zk=1|x),其值可以用贝叶斯公式求得
我们可以把π看作zk=1的先验概率γ(zk)看作已知x时的后验概率。
假定一观测样本集x1,...,xN我们唏望用一个高斯混合模型来描述。我们用一个N*D的矩阵X来表示这个数据集X的第n行为xTn。同样地相应的隐含变量可以用N*K的矩阵Z表示,每一行昰zTn假定每个样本点是从概率分布中独立地抽取出来的,那么对数似然函数可以表示为
对上面的对数似然函数关于μk求偏导使之等于0我们得到
对数似然函数关于∑k求导可得
最后,我们关于混合系数πk来最大化lnp(X|π,μ,∑)考虑到约束条件∑z=1引入一个拉格朗日乘子:
最終得到(这里我推导不出来)
给一个高斯混合模型,我们的目标是最大化与参数(高斯成分的均值协方差和混合系数)相关的對数似然函数。
舒适化均值μk协方差矩阵∑k和混合系数πk,并且估计对数似然函数(log likelihood)的初始值
检查参数或者对数似然函数的收斂性。如果不满足收敛准则返回第二步。