1. 前言

这就是为什么我要学习一下二维高斯分布的原因:

总感觉数学知识不够用呐,顺带把混合高斯模型也回顾一下。

2. 单高斯模型(Gaussian single model, GSM)

2.1 一维高斯模型

高斯分布(Gaussian distribution)有时也被称为正态分布(normal distribution),是一种在自然界大量的存在的、最为常见的分布形式。

如果我们对大量的人口进行身高数据的随机采样,并且将采得的身高数据画成柱状图,将会得到如下图1所示的图形。这张图模拟展示了334个成人的统计数据,可以看出图中最多出现的身高在180cm左右2.5cm的区间里。

一维高斯分布的概率密度函数如下:

其中  为数据均值(期望),  为数据标准差(Standard deviation)。均值对应正态分布的中间位置,在本例中我们可以推测均值在180cm附近。标准差衡量了数据围绕均值分散的程度。

上面的公式是概率密度函数,也就是在已知参数的情况下,输入变量指x,可以获得相对应的概率密度。还要注意一件事,就是在实际使用前,概率分布要先进行归一化,也就是说曲线下面的面积之和需要为1,这样才能确保返回的概率密度在允许的取值范围内。

如果需要计算指定区间内的分布概率,则可以计算在区间首尾两个取值之间的面积的大小。另外除了直接计算面积,还可以用更简便的方法来获得同样的结果,就是减去区间x对应的累积密度函数(cumulative density function,CDF)。因为CDF表示的是数值小于等于x的分布概率。

3.高斯混合模型(Gaussian mixture model, GMM)

3.1 公式

高斯混合模型是对高斯模型进行简单的扩展,GMM使用多个高斯分布的组合来刻画数据分布。

举例来说:

想象下现在咱们不再考察全部用户的身高,而是要在模型中同时考虑男性和女性的身高。假定之前的样本里男女都有,那么之前所画的高斯分布其实是两个高斯分布的叠加的结果。相比只使用一个高斯来建模,现在我们可以用两个(或多个)高斯分布

其中,  为数据均值(期望),  为协方差(Covariance),D 为数据维度。

3.2 高斯混合模型

高斯混合模型可以看作是由 K 个单高斯模型组合而成的模型,这 K 个子模型是混合模型的隐变量(Hidden variable)。一般来说,一个混合模型可以使用任何概率分布,这里使用高斯混合模型是因为高斯分布具备很好的数学性质以及良好的计算性能。

举个不是特别稳妥的例子,比如我们现在有一组狗的样本数据,不同种类的狗,体型、颜色、长相各不相同,但都属于狗这个种类,此时单高斯模型可能不能很好的来描述这个分布,因为样本数据分布并不是一个单一的椭圆,所以用混合高斯分布可以更好的描述这个问题,如下图所示

首先定义如下信息:

  •  表示第  个观测数据, 
  •  是混合模型中子高斯模型的数量, 
  •  是观测数据属于第  个子模型的概率,  , 
  •  是第  个子模型的高斯分布密度函数,  。其展开形式与上面介绍的单高斯模型相同
  •  表示第  个观测数据属于第  个子模型的概率

高斯混合模型的概率分布为:

对于这个模型而言,参数  ,也就是每个子模型的期望、方差(或协方差)、在混合模型中发生的概率。

4. 二维高斯分布的参数理解

4.1 均值和协方差矩阵对二维高斯分布的影响

4.2 总结

参考链接:

https://blog.csdn.net/lin_limin/article/details/81024228

https://blog.csdn.net/lin_limin/article/details/81048411

https://zhuanlan.zhihu.com/p/31103654

https://zhuanlan.zhihu.com/p/30483076

混合高斯模型(Gaussian mixture model, GMM)的更多相关文章

  1. [zz] 混合高斯模型 Gaussian Mixture Model

    聚类(1)——混合高斯模型 Gaussian Mixture Model http://blog.csdn.net/jwh_bupt/article/details/7663885 聚类系列: 聚类( ...

  2. 高斯混合模型Gaussian Mixture Model (GMM)——通过增加 Model 的个数,我们可以任意地逼近任何连续的概率密分布

    从几何上讲,单高斯分布模型在二维空间应该近似于椭圆,在三维空间上近似于椭球.遗憾的是在很多分类问题中,属于同一类别的样本点并不满足“椭圆”分布的特性.这就引入了高斯混合模型.——可以认为是基本假设! ...

  3. 高斯混合模型Gaussian Mixture Model (GMM)

    混合高斯模型GMM是指对样本的概率密度分布进行估计,而估计采用的模型(训练模型)是几个高斯模型的加权和(具体是几个要在模型训练前建立好).每个高斯模型就代表了一个类(一个Cluster).对样本中的数 ...

  4. sklearn聚类模型:基于密度的DBSCAN;基于混合高斯模型的GMM

    1 sklearn聚类方法详解 2 对比不同聚类算法在不同数据集上的表现 3 用scikit-learn学习K-Means聚类 4 用scikit-learn学习DBSCAN聚类 (基于密度的聚类) ...

  5. 混合高斯模型(GMM)推导及实现

    作者:桂. 时间:2017-03-20  06:20:54 链接:http://www.cnblogs.com/xingshansi/p/6584555.html 声明:欢迎被转载,不过记得注明出处哦 ...

  6. 聚类之高斯混合模型(Gaussian Mixture Model)【转】

    k-means应该是原来级别的聚类方法了,这整理下一个使用后验概率准确评测其精度的方法—高斯混合模型. 我们谈到了用 k-means 进行聚类的方法,这次我们来说一下另一个很流行的算法:Gaussia ...

  7. 漫谈 Clustering (3): Gaussian Mixture Model

    上一次我们谈到了用 k-means 进行聚类的方法,这次我们来说一下另一个很流行的算法:Gaussian Mixture Model (GMM).事实上,GMM 和 k-means 很像,不过 GMM ...

  8. Gaussian Mixture Model

    Gaussian Mixture Model (GMM).事实上,GMM 和 k-means 很像,不过 GMM 是学习出一些概率密度函数来(所以 GMM 除了用在 clustering 上之外,还经 ...

  9. 我自己用C++写了个GMM(Gaussian mixture model)模型

    我自己用C++写了个GMM(Gaussian mixture model)模型 Written for an assignment 之前粗粗了解了GMM的原理,但是没有细看,现在有个Assignmen ...

随机推荐

  1. <BackTracking> Combination, DFS :216 DP: 377

    216. Combination Sum III 保证subset.size( ) == k && target == 0的时候结束DFS subset.size( ) > k ...

  2. 不使用xftp上传/下载文件到linux

    yum install lrzsz    # 安装软件 window端上传到linux端: 1. window端先压缩需上传的文件 2. linux端运行命令rz 3. 在弹出的窗口选择压缩好的文件, ...

  3. 徒手实现lower_bound和upper_bound

    STL中lower_bound和upper_bound的使用方法:STL 二分查找 lower_bound: ; ; //初始化 l ,为第一个合法地址 ; //初始化 r , 地址的结束地址 int ...

  4. Attention篇(二)

    主要是对<Attention is all you need>的分析 结合:http://www.cnblogs.com/robert-dlut/p/8638283.html  以及自己的 ...

  5. [LeetCode] 152. Binary Tree Upside Down 二叉树的上下颠倒

    Given a binary tree where all the right nodes are either leaf nodes with a sibling (a left node that ...

  6. springboot mybatis使注解和xml两种方式同时生效

    声明:该博客参考了:https://www.jianshu.com/p/53762ac6d31c 如果上面这个博客中的内容已经解决了你的问题,那就不用往下看了,如何按照上面的配置一直报这个异常: or ...

  7. Zookeeper原理图

  8. Mybatis成为Java互联网时代首选持久框架的原因

    持久层可以将业务数据存储到磁盘,具备长期存储能力,只要磁盘不损坏(大部分的重要数据都会有相关的备份机制),在断电或者其他情况下,重新开启系统仍然可以读取这些数据.一般执行持久任务的都是数据库系统.持久 ...

  9. git自动提交脚本

    每次在linux都要重新一遍一遍敲着这些重复的代码,我想着能够优化一下,做个一键脚本,减少重复劳动. #!/bin/bash git status read -r -p "是否继续提交? [ ...

  10. Java Base64Utils ----Utils

    Java Base64Utils   目录   Java Base64Utils 7 /**  * <html>  * <body>  *  <P> Copyrig ...