K-means聚类方法 - Andrew Ng笔记的翻译及理解
来源:互联网 发布:海岛奇兵医师数据 编辑:程序博客网 时间:2024/05/21 04:21
The k-means clustering algorithm
在聚类问题中,我们给定一组训练集{x(1), . . . , x(m)},要把这些数据归到几个内部联系紧密的簇(cluster)里,其中x(i)∈Rn,但是并没有事先给出每个样本点的分类,所以这是一个非监督学习的问题。K-means聚类算法如下
1. 随机初始化聚类的质心(centroids) µ1, µ2, . . . , µk∈Rn
2.重复下面的步骤直至收敛 {
对每个i,令
在上述算法中,k是我们想找到的簇的数量,质心µj 代表我们当前对每个簇的中心的估计值。在初始化(第一步中)时,我们可以随机选择k个训练样本作为质心。
在此算法的循环中有两个步骤: (i) 给每个样本分配到离它距离最短的质心µj所代表的簇。(ii)移动簇的质心,把新簇中所有成员的均值当做质心,赋值给µj。
图一展示了k-means演算的过程。
畸变方程J是一个非凸方程(?),所以J在下降过程中不能保证其能收敛到一个全局最优解。或者说,k-means得到的可以说是一个local的最优化。尽管如此,在通常情况下,k-means都能得到不错的结果。但是如果你担心你得到的局部最优解并不完美,一种通用的弥补颁发就是以不同的初值多运行几次k-means,然后从几个不同的聚类结果中找出一个畸变函数值最低的解。
以上是翻译内容,翻译内容来自Andrew Ng的机器学习笔记 CS229 Lecture Notes
以下是我自己的一些理解:
对于收敛性,我的理解是在这个聚类问题中,其实和畸变函数单调下降的性质是等价的。因为畸变函数值显然有0这个下界。所以只要单调下降,必然能保证收敛到一个范围或者在一个允许范围内波动,这只是我的一个直观感觉,我并没有找到有关收敛的严格证明。
对于全局最优解和局部解以及几组解间震荡的问题,我的一个想法是这可能代表聚类个数的选择上有问题,假设样本点是二维的,在图像上组成了两个全等不相交圆,只要样本个数与位置恰好处在某个范围内,那么显然当k为3时就会出现两个J值相等但聚类结果不等的情况。同样,找到特殊的个例是很容易的,但怎么严格阐述并证明这个问题,我并没有找到答案。
另外,关于能否找到最优解的问题,我在stackoverflow上看到一篇很好的回答,转载如下:
First, there are at most
原文链接:http://stats.stackexchange.com/questions/188087/proof-of-convergence-of-k-means
对于循环中两个修正过程的问题,我觉得这本质上就是不断求一个参数对另一个的条件期望的问题。而最有意思的一点是尽管迭代是一步一步进行的,但整个过程中可用到的信息总量是不变的,迭代的过程仿佛是对样本信息的挖掘过程。
- K-means聚类方法 - Andrew Ng笔记的翻译及理解
- Andrew Ng机器学习笔记ex7 K-means聚类和PCA
- 非监督学习之k-means聚类算法——Andrew Ng机器学习笔记(九)
- Machine Learning by Andrew Ng --- K-means
- Andrew Ng Machine Learning 专题【K-Means】
- k-means/k-means++算法的笔记及scala实现
- 斯坦福NG机器学习:K-means笔记
- Andrew Ng 的 Deep Learning 教程翻译
- K-means 聚类算法的理解与案例实战
- 深入理解K-Means聚类算法
- 深入理解K-Means聚类算法
- K-Means 方法及应用
- Andrew Ng 《Machine Learning》第八讲——无监督学习(K-Means & PCA)
- Andrew NG 机器学习 练习7-K-means Clustering and Principal Component Analysis
- K-Means聚类算法的原理及实现
- K-Means聚类算法的原理及实现【转】
- K-Means聚类算法的原理及实现
- k-means聚类方法的简单java实现
- UVA - 10474 Where is the Marble?
- UVA - 152 Tree's a Crowd
- HEI
- 微信支付
- Strange Way to Express Integers--扩展欧几里得和中国剩余定理
- K-means聚类方法 - Andrew Ng笔记的翻译及理解
- 接入微信的流程,不官方,赞
- Android学习之AutoCompleteTextView和MultiAutoCompleteTextView
- URAL 1519 Formula 1 dp(插头)
- 文章标题
- CF 678A 暑假集训13
- HTML之表单初识
- 支付宝植入
- JVM GC与频繁GC