K均值
简介
K均值聚类算法(k-means clustering algorithm)是一种迭代求解的聚类分析算法。
当我们需要将数据分成不同的组时,可以使用聚类算法。k-means是一种常用的聚类算法,它的目标是将数据分成k个不同的簇,其中每个簇都有自己的中心点。下面是k-means算法的详细步骤:
- 随机选择k个数据点作为初始中心点。
- 对于每个数据点,计算它与k个中心点之间的距离,并将其归为距离最近的中心点所在的簇。
- 对于每个簇,重新计算它们的中心点(即该簇中所有数据点的平均值)。
- 重复步骤2和3,直到簇不再发生变化或达到最大迭代次数。
需要注意的是,k-means算法对于初始中心点的选择非常敏感,不同的初始中心点可能会导致不同的聚类结果。因此,通常会多次运行算法,并选择最优的聚类结果。
算法参数及说明
参数 | 说明 |
---|---|
聚簇数 | K值,默认8 |
初始化方法 | 默认k-means++ |
迭代次数 | 默认10 |
最大迭代次数 | 默认300 |
收敛 | Relative tolerance with regards to Frobenius norm of the difference in the cluster centers of two consecutive iterations to declare convergence. 默认1e-4 |
案例
案例数据下载:iris.xlsx
案例介绍:Iris数据集是常用的分类实验数据集,由Fisher, 1936收集整理。Iris也称鸢尾花卉数据集,是一类多重变量分析的数据集。数据集包含150个数据样本,分为3类,每类50个数据,每个数据包含4个属性。可通过花萼长度,花萼宽度,花瓣长度,花瓣宽度4个属性预测鸢尾花卉属于(Setosa,Versicolour,Virginica)三个种类中的哪一类。
- Sepal.Length(花萼长度),单位是cm;
- Sepal.Width(花萼宽度),单位是cm;
- Petal.Length(花瓣长度),单位是cm;
- Petal.Width(花瓣宽度),单位是cm;
- 种类:Iris Setosa(山鸢尾)、Iris Versicolour(杂色鸢尾),以及Iris Virginica(维吉尼亚鸢尾)。
制作流程:
- 选择iris数据集;
- 在智能分析图表中选择K-Means;
- 设置目标属性和特征属性;
- 设置聚簇数K值;
- 点击执行预测;
- 设置X轴属性和Y轴属性;