聚类1-K-means-EM算法
来源:互联网 发布:淘宝女运动服套装冬款 编辑:程序博客网 时间:2024/05/21 17:37
转自http://blog.csdn.net/lvhao92/article/details/50788380
记忆力太差了,很多东西之前研究过的,然后又忘了。然后又得重新看。浪费时间。所以,现在就把一些东西做个归纳,总结。一来方便自己日后回看,二来把之前零零散散的知识点串一串。写什么内容,估计也不是按照课本来的。就是乱写,内容是乱写,顺序也是乱序。现在文章比较少,估计以后文章多起来了可能会根据逻辑对他们排个序把。那个还很长远,先认真写好这篇吧。
OK,聚类是属于“无监督学习”(unsupervised learning)中的一种,何为无监督,就是样本标签信息是未知的,训练的时候,你只能看见他们的特性而不知道他们类别。
聚类的方法也有很多,我就不多说了,因为我也不懂。
今天就给大家好好聊聊其中一个比较经典的聚类K-means。
首先,我们用k-means的时候会先告诉算法希望生成的聚类数量,然后算法会根据数据的结构来确定聚类的大小从而达到分类的效果。
我直接口述一下K-means的算法流程吧。
1)随机确定K个中心位置。
2)将各个数据项分配给最邻近的中心点。
3)分配完成后,聚类中心会移到该类所有节点的平均位置处。
4)重复2)和3)直至结果不再变化。
这个过程很简单,但是为什么要用迭代的思想去完成这个任务?让我们先来看看下面这个公式。
(1)这个就是K类数据到中心点的距离之和。而,我们上面这四个步骤希望求的也就是想要使得这个公式最小。
要知道,如果不采用迭代的思想去最小化这个式子是非常困难的,因为这是一个NP难问题,所以K-means采用了贪心策略,通过迭代优化来近似求解。
这是一个k-means的演示,大家可以试一试:http://home.dei.polimi.it/matteucc/Clustering/tutorial_html/AppletKM.html
代码就不写了,比较的简单。
恩,接下来,稍微提一下世界十大算法之一的EM算法。这里只是简单的提一下,只是想看看EM算法和k-means算法的某种关系~后面会有博文详细对它进行描述的。
好了,简单的语言描述一下EM算法:这是一个两个步骤交替计算的算法,第一步是期望(E)步,利用当前已知参数值来估计最优隐变量的值。第二步是最大化(M)步,就是寻找能使E步期望似然最大化的参数。然后,新的参数值重新被用于E步,直到收敛到局部最优解。
回头来看k-means,这里我们的已知变量就是各个类的中心点ui,而隐变量就是物体的标签类别Ci,这是我们不知道的(毕竟无监督)。一开始我们会根据随机确定的中心点位置(已知变量)来确定他们的类别(隐变量)。这是不是有点类似EM的E步,根据已知参数来估计最优隐参数(类别)。
一旦确定了类别之后,k-means就会将聚类中心转移到该类所有节点的平均处,这么做的原因就是使得公式(1)最小,公式(1)可不可以理解成成本函数最小?是不是类似于极大似然估计(寻求满足式子最优化时候的参数)?所以这一步是不是又和EM算法里面的M步类似?寻求能使E步期望似然最大化的参数。而我们这里就是寻求能使所有点距离最小的聚类中心点位置(已知参数)。
然后二者都是开开心心的迭代完成上面的两步。
所以k-means的血液里是有EM算法的存在的。
两个步骤又是迭代完成,很多前辈喜欢称此类问题为鸡蛋悖论,先有鸡还是先有蛋呢?
管你先有鸡还是先有蛋,只要蛋生鸡,鸡生蛋这个循环还一直存在着。我们就能一直有肉吃。
- 聚类1-K-means-EM算法
- EM算法结合k-means
- 13.k-means聚类,混合高斯,EM算法
- k-means与EM算法小结
- EM算法在K-Means中的运用
- 聚类:K-means算法
- GMM&K-means&EM
- 再论EM算法的收敛性和K-Means的收敛性
- K-Means聚类和EM算法复习总结
- K-Means聚类和EM算法复习总结
- k-means和EM算法的Matlab实现
- K-means聚类算法背后的EM思想
- 聚类 K-means & K-medoids 算法
- 第12节-K-means算法,高斯混合分布和EM求解算法
- K-means算法、EM算法——斯坦福CS229机器学习个人总结(五)
- K-means算法、EM算法——斯坦福CS229机器学习个人总结(五)
- Machine learning10------K-means聚类算法与EM算法的关系
- EM算法(期望最大化)——从EM算法角度理解K-Means与GMM的区别
- powerdesigner 16.5 name code 取消同步
- 专业面试
- 线性代数:第三章 矩阵的初等变换与线性方程组(2)线性方程组的解 初等方阵
- 12. JPA EntityManager persist 方法详解
- [BZOJ2286][SDOI2011]消耗战
- 聚类1-K-means-EM算法
- /etc/securetty和禁止telnet root登录
- pat 1001 - 1004
- httpClient 使用post方法提交json数据,接收返回数据实例
- openGL之圆环---openGL学习笔记(七)
- java 调用webservice 接口 解析返回json
- centOS 开机自启动配置方法
- 线性代数:第四章 向量组的线性相关性(1)向量组的线性相关性 向量组的秩
- 低功耗蓝牙(BLE)官方文档翻译