K-means
来源:互联网 发布:淘宝更换类目有影响吗 编辑:程序博客网 时间:2024/05/16 11:19
K-Means
基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。该算法认为簇是由距离靠近的对象组成的,因此把得到紧凑且独立的簇作为最终目标.
k个初始类聚类中心点的选取对聚类结果具有较大的
公式
影响,因为在该算法第一步中是随机的选取任意k个对象作为初始聚类的中心,初始地代表一个簇。该算法在每次迭代中对数据集中剩余的每个对象,根据其各个簇中心的距离将每个对象重新赋给最近的簇。当考察完所有数据对象后,一次迭代运算完成,新的聚类中心被计算出来。如果在一次迭代前后,J的值没有发生变化,说明算法已经收敛。
输入:聚类个数k,以及包含 n个数据对象的数据库。
输出:满足方差最小标准的k个聚类。
优点
1.算法快速、简单;
2.对大数据集有较高的效率并且是可伸缩性的;
3.时间复杂度近于线性,而且适合挖掘大规模数据集。K-Means聚类算法的时间复杂度是O(nkt) ,其中n代表数据集中对象的数量,t代表着算法迭代的次数,k代表着簇的数目。
算法的缺点:
(1)在 K-means 算法中 K 是事先给定的,这个 K 值的选定是非常难以估计的。很多时候,事先并不知道给定的数据集应该分成多少个类别才最合适。这也是 K-means 算法的一个不足。
(2)在 K-means 算法中,首先需要根据初始聚类中心来确定一个初始划分,然后对初始划分进行优化。这个初始聚类中心的选择对聚类结果有较大的影响,一旦初始值选择的不好,可能无法得到有效的聚类结果,这也成为 K-means算法的一个主要问题。对于该问题的解决,许多算法采用遗传算法(GA)
(3) 从 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
- K-means
- K-Means
- 【REACT NATIVE 系列教程之十】真机运行报错COMMAND /BIN/SH FAILED WITH EXIT CODE 1 的解决方法
- hihoCoder1252 2015北京区域赛 D.Kejin Game
- C++编程(数组) 去除最大值和最小值,评委的平均分。
- 关于闭包的简单理解
- 单片机存储中的大小端模式
- K-means
- 【REACT NATIVE 系列教程之十一】插件的安装、使用与更新(示例:REACT-NATIVE-TAB-NAVIGATOR)
- Python Print的扩展
- 三层神经网络自编码算法推导和MATLAB实现
- Android EventBus框架(一)之使用详细介绍
- 未发现后门:开源加密软件TrueCrypt安全审计结束
- cmd复制.java并合并为.txt
- PPT让艺术字倾斜一点
- ionic图片资源懒加载,延迟加载—— ionic-image-lazy-load