K-means聚类算法笔记
K-means算法,是一种非常典型的,基于距离的聚类算法。
该算法采用距离作为相似性的评价指标。即认为两个对象的距离越近,其相似度就越大。
1.K-means聚类算法简介
在数据挖掘中, K-Means 算法是一种 cluster analysis 的算法,其主要是来计算数据聚集的算法,通过不断地取离种子点最近均值的算法。
特点如下:
- 出色的速度和良好的可扩展性。
- 是一个重复移动类中心点的过程,把类的中心点移动到其包含成员的平均位置,然后重新划分其内部点数k必须是一个比训练集样本数小的正整数。
- 有时,类的数量是由问题内容指定的。
2.K-means算法优劣
2.1优点
(1). 原理简单。需要调节的参数就一个k。
(2). 由具有出色的速度和良好的可扩展性。
(3).时间复杂度近于线性,而且适合挖掘大规模数据集。K-Means聚类算法的时间复杂度是O(nkt) ,其中n代表数据集中对象的数量,t代表着算法迭代的次数,k代表着簇的数目。
2.2 缺点
(1). kk 需要事先确定,这个 kk 值的选定有时候是比较难确定。
(2). 首先需要初始k个聚类中心,然后以此来确定一个初始划分,然后对初始