博客
关于我
从EM算法理解k-means与GMM的关系
阅读量:180 次
发布时间:2019-02-28

本文共 791 字,大约阅读时间需要 2 分钟。

EM(期望最大化)算法解决的是在概率模型中含有无法观测的隐含变量情况下的参数估计问题,EM算法只保证收敛到局部最优解。EM算法是在最大化目标函数时, 先固定一个变量使整体函数变为凸优化函数, 求导得到最值, 然后利用最优参数更新被固定的变

量, 进入下一个循环。

k-means:E过程,根据固定的各个簇的中心点,对每个样本就近分配所属的簇;M过程,根据样本划分好的簇,重新计算簇的中心点,更新E过程的固定值。

GMM:高斯混合模型,即用多个高斯分布函数的线形组合来对数据分布进行拟合。 理论上, 高斯混合模型可以拟合出任意类型的分布。当数据事实上有多个类, 或者我们希望将数据划分为一些簇时, 可以假设不同簇中的样本各自服从不同的高斯分布, 由此得到的聚类算法称为高斯混合模型。在该假设下, 每个单独的分模型都是标准高斯模型, 其均值μi和方差Σi是待估计的参数。 此外, 每个分模型都还有一个参数πi, 可以理解为权重或生成数据的概率。 我们认为每个样本点的生成过程如下:

GMM算法同k-means一样,需要设定超参数簇个数K值。高斯混合模型的计算, 便成了最佳的均值μ, 方差Σ、 权重π的寻找。

GMM的E过程,先固定每个模型的均值和方差,计算该样本属于各个簇的概率;M过程,使用E中的概率,更新各个模型的均值和方差。所以每次循环时, 先固定当前的高斯分布不变, 获得每个数据点由各个高斯分布生成的概率。 然后固定该生成概率不变, 根据数据点和生成概率, 获得一个组更佳的高斯分布。 循环往复, 直到参数的不再变化, 或者变化非常小时, 便得到了比较合理的一组高斯分布。相比于K均值算法的优点是, 可以给出一个样本属于某类的概率是多少。

 

总结,k-means算法和GMM算法的E过程都是先固定模型参数然后对样本分类,M过程都是根据E过程中每个样本对应好的类,更新模型参数。

转载地址:http://wydi.baihongyu.com/

你可能感兴趣的文章
Nginx中使用keepalive实现保持上游长连接实现提高吞吐量示例与测试
查看>>
Nginx中实现流量控制(限制给定时间内HTTP请求的数量)示例
查看>>
nginx中配置root和alias的区别
查看>>
nginx主要流程(未完成)
查看>>
Nginx之二:nginx.conf简单配置(参数详解)
查看>>
Nginx从入门到精通
查看>>
Nginx从入门到精通(全)
查看>>
Nginx从安装到高可用,一篇搞定!
查看>>
Nginx代理websocket配置(解决websocket异常断开连接tcp连接不断问题)
查看>>
Nginx代理初探
查看>>
nginx代理地图服务--离线部署地图服务(地图数据篇.4)
查看>>
Nginx代理外网映射
查看>>
Nginx代理模式下 log-format 获取客户端真实IP
查看>>
Nginx代理解决跨域问题(导致图片只能预览不能下载)
查看>>
Nginx代理访问提示ERR_CONTENT_LENGTH_MISMATCH
查看>>
Nginx代理配置详解
查看>>
Nginx代理静态资源(gis瓦片图片)实现非固定ip的url适配网络环境映射ip下的资源请求解决方案
查看>>
Nginx代理静态资源(gis瓦片图片)实现非固定ip的url适配网络环境映射ip下的资源请求解决方案
查看>>
nginx优化日志拒绝特定404请求写入
查看>>
Nginx优化解析
查看>>