K-means聚类算法
来源:互联网 发布:google picasa mac 编辑:程序博客网 时间:2024/06/01 09:16
K-means算法又称K均值算法,它是聚类算法中最为简单的算法,也是最为常用的聚类算法。
K-means算法主要用于对已知数据集进行非监督聚类,聚类效果的好坏不仅与数据样本有关,而且与聚类质心的选取,以及质心的数目也有很大关系。
在聚类算法中,我们已知训练集
k-means聚类算法步骤如下:
- 随机地初始化聚类质心
μ1,μ2,...,μk∈Rn 。 - 循环直至收敛{
对于每一个i ,设c(i):=argminj∥x(i)−μj∥2
对于每一个j ,设μj:=∑mi=11{c(i)=j}x(i)∑mi=11{c(i)=j}
}
在上述算法中,
算法的内部循环重复执行两个步骤:(i) 将每个训练样例
图1 K-means算法。训练示例用点表示,聚类质心用×表示。(a)原始数据集。(b)随机初始化聚类质心(在这个例子中,两个训练示例的选择是不相等的)。(c-f)k-means的两层迭代的描述。在每个迭代中,我们每个训练示例赋给距离最近的聚类质心,然后将已经聚类的点的均值赋给聚类质心,也就是说质心被更新了。
K-means算法能够确保收敛吗?在某种程度上答案是肯定的。特别地,我们将扭曲函数(distortion function)定义为
因此
参考文献:
- http://cs229.stanford.edu/materials.html
- k-means聚类算法
- k-means聚类算法
- K-means聚类算法
- K-means聚类算法
- K-means聚类算法
- K-means聚类算法
- K-means聚类算法
- K-means聚类算法
- K-MEANS聚类算法
- k-means聚类算法
- K-means聚类算法
- 聚类算法 K-means
- K-means聚类算法
- K-means聚类算法
- K-means聚类算法
- 聚类算法:K-means
- K-means聚类算法
- K-means聚类算法
- Java线程同步:synchronized锁住的是代码还是对象
- UML九种图
- jsp中redirect和forward的区别
- 单位分数
- 写下每天的收获(2017年2-3月)
- K-means聚类算法
- AngularJS自定义指令
- iOS面试题经典语录(持续收集中...)
- 函数声明与函数表达式以及立即执行函数的讨论
- C++-string用法
- 第四章 上机1
- dotnet new 命令使用模板生成Angular应用
- ES6 set
- [Leetcode] #257 Binary Tree Paths