采用EM算法求解高斯混合模型参数
来源:互联网 发布:北京的设计公司知乎 编辑:程序博客网 时间:2024/05/07 05:30
高斯混合模型参数
多元高斯分布的定义为:对于n为样本空间χ中的随机变量x,若x服从高斯分布,其概率密度为:
其中μ为n维均值向量,Σ为n×n的协方差矩阵,高斯分布完全由这两个参数确定,可以把这种确定关系记为p(x|μ,Σ)。
定义高斯混合分布为:
假设混合高斯模型由k个多元高斯分布混合而成,其中 , 分别为第i个高斯分布的均值向量和协方差矩阵。 被称为混合系数,表示第i的高斯分布出现的概率,因此应当满足归一性:
如果训练集由上述过程生成,令表示 属于的高斯混合的成分,由贝叶斯定理易得 的后验概率为
表示的是属于第i个高斯分布的后验概率,为了方便描述,后面用 表示。那么,对于样本的簇标记如下确定:
通俗的说就是找到他最可能属于的那个高斯分布。
对于式(2.2)中模型参数的求解方法,很直观的可以想到采用最大化对数似然的值,然后对这个多元高斯分布的每一维,已知均值方差,可以利用python的random. gauss生成一个数,然后,将所有维度组合成一个向量,就是这个多元高斯分布的一个样本。对于不同的多元高斯分布,还要考虑他的混合系数 ,也就是他的出现概率,这个不难实现。
EM算法求解高斯混合模型原理
在2.2.1节中,已经得到了最大化似然(2.5),接下来,对(2.5)求导,设导数为0得到:
对 求导设倒数为0:
混合系数 除了最大化LL(D),还要满足 ≥0, =1,考虑LL(D)的拉格朗日形式,对其求导后设导数为0,可以得到:
这里还有一个问题,虽然我们得到了导数为0的表达式,但是 这三个参数和 有相互依赖的关系,为此,我们为设置一个初值,这个初值可以根据样本合理设置,然后根据这些初值得到,再利用 ,借助公式(2.6)、(2.7)、(2.8)得到新的, 然后再利用这些参数更新…如此往复可以达到收敛状态,这个详细的数学证明没有特别理解,大概是利用了Jensen不等式。
EM算法编程实现
编程实现参考了周志华老师的《机器学习》第210页,下面附上伪代码:
对已知参数数据估计参数
生成数据为3个2元高斯分布混合模型,三个分布的均值分别为:(1,1)、(2,1)、(1.5,2)。设置三组不同的协方差矩阵,对运行结果做了比较分析。
对未知参数数据估计参数
- 采用EM算法求解高斯混合模型参数
- EM算法求解高斯混合模型
- 机器学习--EM算法求解高斯混合模型
- 用EM算法求解高斯混合模型
- EM算法 估计混合高斯模型参数 Python实现
- 吴恩达 EM算法翻译 混合高斯的EM求解
- 混合高斯模型和EM算法
- 高斯混合模型和EM算法
- EM算法_混合高斯模型
- EM算法与混合高斯模型
- 高斯混合模型EM算法
- EM算法与混合高斯模型
- 高斯混合模型EM算法
- 斯坦福大学机器学习——EM算法求解高斯混合模型
- GMM高斯混合模型学习笔记(EM算法求解)
- 斯坦福大学机器学习——EM算法求解高斯混合模型
- 斯坦福大学机器学习——EM算法求解高斯混合模型
- EM算法求解混合伯努利模型
- Apache Curator简单使用(二)
- JavaScript 声明全局变量的三种方式详解
- 自定义一个注解 annotation
- D. zb的生日
- activiti pom
- 采用EM算法求解高斯混合模型参数
- maven打包war,报servlet.jsp不存在解答
- Ubuntu Install Adobe Flash Player
- Vultr 服务器搭建及锐速破解教程,亲测1080随意拖动
- SqlServer消息 6107,级别 14 只能终止用户进程。
- 网站分析数据的三种收集方式详解
- 算法 AC自动机
- 圣杯布局(双飞翼布局)
- android studio 导入项目一直加载的问题