K均值聚类分析流程

这篇具有很好参考价值的文章主要介绍了K均值聚类分析流程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

K均值聚类分析流程

K均值聚类分析流程

一、案例背景

在某体育赛事中,意大利、韩国、罗马尼亚、法国、中国、美国、俄罗斯七个国家的裁判对300名运动员进行评分,现在想要通过评分上的差异将300名选手进行分类,计划将选手分为高水平、中水平、低水平三个类别。因为评分均为定量数据,所以通过K均值聚类进行聚类分析,部分数据如下:

K均值聚类分析流程

二、异常值检查

异常值对于聚类分析的结果影响比较大,所以在分析之前要先进行异常值的检查。异常值检查的方法有很多种,比如可以使用描述统计法,查看是否有三倍标准差外的数据,或者使用箱线图,直观查看是否存在异常值,本案例使用SPSSAU箱线图进行异常值检查,输出结果如下:

K均值聚类分析流程

从箱线图分析结果来看,7个裁判的评分均没有异常值出现,都在规定范围之内(最低7分,最高10分),可以进行接下来的K均值聚类分析。

三、K均值聚类分析

K均值聚类是现在比较常用的聚类算法之一,接下来分别对该方法的原理和操作进行简单的说明,帮助大家更好的理解聚类分析的过程。

(1)基本说明

K均值聚类也称K-means聚类,是典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。该算法认为簇是由距离靠近的对象组成的,因此把得到紧凑且独立的簇作为最终目标。因为需要计算距离,所以决定了K-means算法只能处理数值型数据,而不能处理分类属性型数据。

K均值聚类分析算法步骤:

① K-means算法首先需要选择K个初始化聚类中心

② 计算每个数据对象到K个初始化聚类中心的距离,将数据对象分到距离聚类中心最近的那个数据集中,当所有数据对象都划分以后,就形成了K个数据集(即K个簇)

③ 接下来重新计算每个簇的数据对象的均值,将均值作为新的聚类中心

④ 最后计算每个数据对象到新的K个初始化聚类中心的距离,重新划分

⑤ 每次划分以后,都需要重新计算初始化聚类中心,一直重复这个过程,直到所有的数据对象无法更新到其他的数据集中。

(2)操作

在SPSSAU系统中,以上算法步骤都自动进行,只需要分析人员将数据拖拽到分析框中,选择聚类数量即可,如下图:

K均值聚类分析流程

通常情况下,建议聚类个数为3~6个比较好,SPSSAU默认聚类个数为3,本案例,预设将300名选手分为高、中、低3个类别,所以选择默认聚类个数3即可。因为K均值聚类是根据距离进行类别判断,所以需要消除量纲(单位)的影响,SPSSAU系统默认对聚类数据进行【标准化】处理,如果不需要进行标准化处理,可以选择取消勾选。同时SPSSAU默认【保存类别】,将聚类结束后,聚类的类别变量自动保存下来,用于后续分析。

四、聚类分析结果解读

K均值聚类分析(以下简称聚类分析)结果可以从以下几个方面进行分析:聚类基本情况、聚类类别命名、聚类中心、聚类效果图示化;接下来将逐个进行说明。

(1)聚类基本情况

SPSSAU输出聚类类别基本情况汇总表如下:

K均值聚类分析流程

上表描述了聚类分析的基本情况,展示了本次聚类分析共得出3类,SPSSAU自动命名为cluster_1、cluster_2、cluster_3;同时展示每个类别人群数量和比例情况。这3类群体的占比分别是34.00%,、36.00%、 30.00%。整体来看,3类人群分布较为均匀,整体说明聚类效果较好。SPSSAU同时会输出聚类类别汇总图,方便分析人员更加直观的展示聚类类别占比情况。

K均值聚类分析流程

(2)聚类类别命名

得到聚类结果后,需要根据各个聚类类别的特征进行类别命名。

K均值聚类分析流程

为了得到各个类别之间的差异,使用方差分析进行聚类类别的差异对比分析,然后根据各个类别的差异性特征进行聚类类别的命名。

从上表聚类类别方差分析差异对比结果来看,7个裁判对于3个类别的评分之间均存在差异性(p<0.05),说明聚类分析得到的3个群体他们在研究的特征上具有明显的差异性,也能从一定程度上说明本次聚类分析效果较好。3个聚类类别的具体差异性可通过评分的平均值进行对比,并对聚类类别进行命名。

从3个类别的评分平均值来看,结合前面预设将300名选手分为高水平、中水平、低水平3类,故将cluster_1命名为低水平、cluster_2命名为中水平、cluster_3命名为高水平。SPSSAU可使用数据处理中的【数据标签】功能,进行命名,操作如下:

K均值聚类分析流程

(3)聚类中心

前面我们通俗介绍了K均值聚类分析的聚类过程,提到初始聚类中心,在迭代过程中最后会成为最终聚类中心点,这个结果SPSSAU也为大家提供了,见下表:

K均值聚类分析流程

聚类中心是聚类算法的数学理论或中间过程指标,针对分析来看其实际意义较小。一般来讲相较于聚类中心,K均值聚类更关注误差平方和SSE值。该值可用于测量各点与中心点的距离情况,理论上是希望越小越好,通常用于辅助判断聚类个数。如果在开始分析之初,不确定聚类个数,那么可以多次分析选择不同聚类个数,对比分析SSE值,比如发现从3个聚类个数到4个聚类个数时SSE值减少幅度明显很大,那么此时选择4个聚类类个数较好。但聚类类别并不是越多越好,还需要结合专业知识进行判断。

(4)聚类效果可视化

除了使用表格展示聚类分析的结果,还可以通过图示化展示聚类项重要性,如下图:

K均值聚类分析流程

聚类分析以多个研究指标作为基准,对样本进行分类。每个指标对于聚类的贡献不一样, 具体贡献大小对比可见上图。如果某项的贡献明显非常低,可考虑将该项移除后重新进行聚类分析。

可以通过使用散点图直观展示聚类效果,使用任意两个聚类指标进行散点图绘制,并且在颜色区分(定类)框中放入“聚类类别”项(SPSSAU自动保存的聚类类别),以查看不同类别时,两两指标的散点效果。SPSSAU操作如下:

K均值聚类分析流程

比如使用罗纳尼亚和韩国进行散点图绘制,在颜色区分框中放入聚类类别,SPSSAU输出散点图如下:

K均值聚类分析流程

从上图来看,3个类别之间虽然有些部分存在交叉,但是绝大部分类别的划分都有明显的区别,说明本次聚类分析效果较好。

五、总结

首先使用箱线图对数据进行异常值检查,确保不存在异常数据后,进行K均值聚类分析。通过7位裁判的打分,将300位选手最终划分为高水平、中水平、低水平3类。从聚类分析基本情况、聚类类别方差分析差异对比结果以及聚类效果散点图分析来看,本次聚类分析效果较好,聚类结果比较可靠。文章来源地址https://www.toymoban.com/news/detail-412517.html

到了这里,关于K均值聚类分析流程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数学建模—聚类(matlab、spss)K均值 Q型聚类 R型聚类

    聚类三种方法: 【说明】 1、三种方式输入矩阵行为个案,列为变量 量纲不同需要预处理,一般使用zscore() zscore()标准化为对每一列操作减去均值除以标准差 2、k均值需要自己确定k取值。Q、R型聚类需要运行完以后再确定选择 matlab实现 SPSS实现(默认使用kmeans++) 数据预处理

    2024年02月12日
    浏览(42)
  • OpenCV-Python(48):K均值聚类

    学习K值聚类的概念以及工作原理。 K均值聚类的OpenCV实现         下面用一个最常用的例子来给大家介绍K 值聚类。         话说有一个公司要生产一批新的T 恤。很明显他们要生产不同大小的T 恤来满足不同客客的要求。所以这个公司搜集了很多人的身高和体重信息,

    2024年01月20日
    浏览(43)
  • 人工智能算法|K均值聚类算法Python实现

    K 均值聚类算法是一种简单的迭代型聚类算法,采用距离作为相似性指标,从而发现给定数据集中的 K 个类,且每个类有一个聚类中心,即质心,每个类的质心是根据类中所有值的均值得到。对于给定的一个包含n个d维数据点的数据集X以及要分得的类别 K ,选取欧式距离作为

    2024年02月05日
    浏览(61)
  • 机器学习中的 K-均值聚类算法及其优缺点

            K-均值聚类算法是一种常用的无监督学习算法,用于将相似的数据点分组为聚类。         其步骤如下: 1. 初始化:选择聚类数K,随机选取K个聚类中心。 2. 计算距离:计算每个数据点与K个聚类中心的距离,将其分配到距离最近的聚类中心所在的聚类。 3. 更

    2024年02月14日
    浏览(43)
  • K-Means(K-均值)聚类算法理论和实战

    目录 K-Means 算法 K-Means 术语 K 值如何确定 K-Means 场景 美国总统大选摇争取摆选民 电商平台用户分层 给亚洲球队做聚类 ​编辑 其他场景 K-Means 工作流程 K-Means 开发流程 K-Means的底层代码实现 K-Means 的评价标准 对于 n 个样本点来说,根据距离公式(如欧式距离)去计 算它们的

    2024年02月11日
    浏览(40)
  • 讲解机器学习中的 K-均值聚类算法及其优缺点

    K-均值聚类算法是一种常见且简单的无监督学习算法,用于将数据集分为K个不同的类别。其主要思想是将数据集中的每个样本点分配给离它最近的质心,然后更新质心的位置,重复此过程直到质心不再移动或达到预定的迭代次数。 K-均值聚类算法的步骤如下: 随机初始化K个

    2024年01月17日
    浏览(58)
  • 131基于matlab的差分进化算法优化K均值聚类问题

    基于matlab的差分进化算法优化K均值聚类问题,可调整K参数得到最佳聚类结果。输出聚类可视化图和优化迭代曲线。可替换自己的数据,程序已调通,可直接运行。 131matlab差分进化算法K均值聚类 (xiaohongshu.com)

    2024年01月16日
    浏览(58)
  • 模糊C均值聚类(Fuzzy C-means)算法(FCM)

    本文的代码与数据地址已上传至github:https://github.com/helloWorldchn/MachineLearning 1、模糊集理论 L.A.Zadeh在1965年最早提出模糊集理论,在该理论中,针对传统的硬聚类算法其隶属度值非0即1的严格隶属关系,使用模糊集合理论,将原隶属度扩展为 0 到 1 之间的任意值,一个样本可以

    2024年02月09日
    浏览(34)
  • opencv进阶08-K 均值聚类cv2.kmeans()介绍及示例

    K均值聚类是一种常用的无监督学习算法,用于将一组数据点分成不同的簇(clusters),以便数据点在同一簇内更相似,而不同簇之间差异较大。K均值聚类的目标是通过最小化数据点与所属簇中心之间的距离来形成簇。 当我们要预测的是一个离散值时,做的工作就是“分类”

    2024年02月12日
    浏览(53)
  • MATLAB实现k-means算法(k-均值)对无标签数据进行聚类,并通过肘部法则确定聚类类别

    应一个小伙伴的要求介绍了一下K均值聚类算法。本人也不是很专业,这是之前自学的,如果有错,大家可以提出来,共同进步嘛。   聚类属于非监督学习,K均值聚类是最基础常用的聚类算法。它的基本思想是,通过迭代寻找K个簇(Cluster)的一种划分方案,使得聚类结果

    2023年04月26日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包