高斯混合模型


与分类不同,在聚类的时候,我们并不关心某一类是什么,我们需要实现的目标只是把相似的东西聚到一起
高斯模概率密度函数

假设n个人身高如下红色分布

下面假设miu,sigma为180,28,拟合度如下(绿色)

当然可以不断调miu,sigama,使二者的拟合度最为接近,但是更准确的办法是通过算法来生成它们,这个过程就被称为模型训练(model training)。最常用的方法是期望最大(EM)算法
在这里的高斯模型中,我们需要同时更新两个参数:分布的均值和标准差
假定之前的样本里男女都有,那么之前所画的高斯分布其实是两个高斯分布的叠加的结果。相比只使用一个高斯来建模,现在我们可以用两个(或多个)高斯分布

该公式和之前的公式非常相似,细节上有几点差异。首先分布概率是K个高斯分布的和,每个高斯分布有属于自己的μ和σ 参数,以及对应的权重参数,权重值必须为正数,所有权重的和必须等于1,以确保公式给出数值是合理的概率密度值。换句话说如果我们把该公式对应的输入空间合并起来,结果将等于1。

所谓混合高斯模型(GMM)就是指对样本的概率密度分布进行估计,而估计采用的模型(训练模型)是几个高斯模型的加权和(具体是几个要在模型训练前建立好(3-5个))。每个高斯模型就代表了一个类(一个Cluster)。对样本中的数据分别在几个高斯模型上投影,就会分别得到在各个类上的概率。然后我们可以选取概率最大的类所为判决结果。(比如上面的男女模型,给出身高,可以得出其中比较符合那一种模型(概率较高)来判断是男生还是女生)

每个 GMM 由 K 个 Gaussian 分布组成,每个 Gaussian 称为一个“Component”,这些 Component 线性加成在一起就组成了 GMM 的概率密度函数:

根据上面的式子,如果我们要从 GMM 的分布中随机地取一个点的话,实际上可以分为两步:首先随机地在这 K 个 Component 之中选一个,每个 Component 被选中的概率实际上就是它的系数 \pi_k(每个模型的权重) ,选中了 Component 之后,再单独地考虑从这个 Component 的分布中选取一个点就可以了──这里已经回到了普通的 Gaussian 分布,转化为了已知的问题。

背景相减法:

上面流程适合背景固定的情况,在背景变化时用高斯混合模型及时更新背景。
背景的提取与更新:


混合高斯步骤:
– 模型匹配
– 参数初始化
– EM算法参数估计
– 参数跟新
– 生成背景分布
– 检测前景






0

发表评论

电子邮件地址不会被公开。