热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

评估K均值精度

如何解决《评估K均值精度》经验,为你挑选了1个好方法。

我在MATLAB中创建了一个带有4个定义模式/类的三维随机数据集.我在数据上应用了K-means算法,以了解K-means如何根据创建的4个模式/类对我的样本进行分类.

我需要以下帮助;

    我可以使用什么函数/代码来评估K-means算法如何正确识别我的样本类?假设我设置K = 4,如下图所示:

在此输入图像描述

    如何自动识别班级数(K)?假设我的数据中的类未知?


我的目标是评估K-mean的准确性以及数据的变化(通过预处理)如何影响算法识别类的能力.使用MATLAB代码的示例会很有帮助!



1> aus_lacy..:

与已知类标签相比,衡量聚类"好"的一个基本指标称为纯度.现在,这是一个监督学习的例子,你可以在其中了解一个外部指标,它是基于真实世界数据的实例标签.

纯度的数学定义如下:

在此输入图像描述

在话这是什么意思是,来自斯坦福大学的教授引用在这里,

为了计算纯度,将每个聚类分配给聚类中最常见的类,然后通过计算正确分配的文档的数量并除以N来测量该分配的准确性.

一个简单的例子就是如果你有一个非常天真的聚类,它是通过Kmeans生成的,其中k = 2看起来像:

Cluster1    Label
  1           A         
  5           B
  7           B
  3           B
  2           B

Cluster2    Label
  4           A
  6           A
  8           A
  9           B

在Cluster1中,标签B有4个实例,标签A有1个实例,而Cluster2有3个实例,标签为A,1个实例为集群B.现在,您正在寻找总纯度,这将是每个集群的纯度之和在这种情况下,k = 2.因此,Cluster1的纯度是给定标签的最大实例数除以Cluster1中的实例总数.

因此Cluster1的纯度是:

4/5 = 0.80

这四个来自这样一个事实:发生最多的标签(B)发生了4次,并且集群中总共有5个实例.

因此,Cluster2的纯度为:

3/4 = 0.75

现在总纯度只是纯度的总和1.55.那告诉我们什么呢?如果群集的纯度为1,则认为该群集是"纯净的",因为它表示该群集中的所有实例都具有相同的标签.这意味着您的原始标签分类非常好,并且您的Kmeans做得非常好.整个数据集的"最佳"纯度分数将等于原始的K数群集,因为这意味着每个群集的个体纯度分数为1.

但是,您需要意识到纯度并不总是最佳或最有说服力的指标.例如,如果您有10个点并且您选择了k = 10,则每个簇的纯度为1,因此总纯度为10,等于k.在这种情况下,最好使用不同的外部指标,如精确度,召回率和F度量.如果可以,我建议调查一下.再次重申一下,这只适用于有监督的学习,在这里您可以预先了解标签系统,我相信您的问题就是这样.

回答你的第二个问题......如果没有任何先前的数据知识,选择你的K个簇是Kmeans最困难的部分.有一些技术可以通过选择初始K数量的聚类和质心来缓解所提出的问题.可能最常见的是一种名为Kmeans ++的算法.我建议调查一下以获取更多信息.


推荐阅读
  • 本文介绍了使用Spark实现低配版高斯朴素贝叶斯模型的原因和原理。随着数据量的增大,单机上运行高斯朴素贝叶斯模型会变得很慢,因此考虑使用Spark来加速运行。然而,Spark的MLlib并没有实现高斯朴素贝叶斯模型,因此需要自己动手实现。文章还介绍了朴素贝叶斯的原理和公式,并对具有多个特征和类别的模型进行了讨论。最后,作者总结了实现低配版高斯朴素贝叶斯模型的步骤。 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • 解决python matplotlib画水平直线的问题
    本文介绍了在使用python的matplotlib库画水平直线时可能遇到的问题,并提供了解决方法。通过导入numpy和matplotlib.pyplot模块,设置绘图对象的宽度和高度,以及使用plot函数绘制水平直线,可以解决该问题。 ... [详细]
  • 本文介绍了机器学习手册中关于日期和时区操作的重要性以及其在实际应用中的作用。文章以一个故事为背景,描述了学童们面对老先生的教导时的反应,以及上官如在这个过程中的表现。同时,文章也提到了顾慎为对上官如的恨意以及他们之间的矛盾源于早年的结局。最后,文章强调了日期和时区操作在机器学习中的重要性,并指出了其在实际应用中的作用和意义。 ... [详细]
  • web.py开发web 第八章 Formalchemy 服务端验证方法
    本文介绍了在web.py开发中使用Formalchemy进行服务端表单数据验证的方法。以User表单为例,详细说明了对各字段的验证要求,包括必填、长度限制、唯一性等。同时介绍了如何自定义验证方法来实现验证唯一性和两个密码是否相等的功能。该文提供了相关代码示例。 ... [详细]
  • 本文介绍了Swing组件的用法,重点讲解了图标接口的定义和创建方法。图标接口用来将图标与各种组件相关联,可以是简单的绘画或使用磁盘上的GIF格式图像。文章详细介绍了图标接口的属性和绘制方法,并给出了一个菱形图标的实现示例。该示例可以配置图标的尺寸、颜色和填充状态。 ... [详细]
  • 本文介绍了在序列化时如何对SnakeYaml应用格式化,包括通过设置类和DumpSettings来实现定制输出的方法。作者提供了一个示例,展示了期望的yaml生成格式,并解释了如何使用SnakeYaml的特定设置器来实现这个目标。对于正在使用SnakeYaml进行序列化的开发者来说,本文提供了一些有用的参考和指导。摘要长度为169字。 ... [详细]
  • 网址:https:vue.docschina.orgv2guideforms.html表单input绑定基础用法可以通过使用v-model指令,在 ... [详细]
  • 先看看ElementUI里关于el-table的template数据结构:<template><el-table:datatableData><e ... [详细]
  • Gitlab接入公司内部单点登录的安装和配置教程
    本文介绍了如何将公司内部的Gitlab系统接入单点登录服务,并提供了安装和配置的详细教程。通过使用oauth2协议,将原有的各子系统的独立登录统一迁移至单点登录。文章包括Gitlab的安装环境、版本号、编辑配置文件的步骤,并解决了在迁移过程中可能遇到的问题。 ... [详细]
  • 本文介绍了如何使用n3-charts绘制以日期为x轴的数据,并提供了相应的代码示例。通过设置x轴的类型为日期,可以实现对日期数据的正确显示和处理。同时,还介绍了如何设置y轴的类型和其他相关参数。通过本文的学习,读者可以掌握使用n3-charts绘制日期数据的方法。 ... [详细]
  • OpenMap教程4 – 图层概述
    本文介绍了OpenMap教程4中关于地图图层的内容,包括将ShapeLayer添加到MapBean中的方法,OpenMap支持的图层类型以及使用BufferedLayer创建图像的MapBean。此外,还介绍了Layer背景标志的作用和OMGraphicHandlerLayer的基础层类。 ... [详细]
  • 如何在elementui table 内容里面放多选框?
    本文介绍了如何在elementui的table组件中放置多选框的方法,并提供了相应的代码示例和UI图效果。通过阅读本文,你将了解如何将UI图中的多选框放到表格内容中,并实现相应的功能。 ... [详细]
  • [echarts] 同指标对比柱状图相关的知识介绍及应用示例
    本文由编程笔记小编为大家整理,主要介绍了echarts同指标对比柱状图相关的知识,包括对比课程通过率最高的8个课程和最低的8个课程以及全校的平均通过率。文章提供了一个应用示例,展示了如何使用echarts制作同指标对比柱状图,并对代码进行了详细解释和说明。该示例可以帮助读者更好地理解和应用echarts。 ... [详细]
  • 本文介绍了利用ARMA模型对平稳非白噪声序列进行建模的步骤及代码实现。首先对观察值序列进行样本自相关系数和样本偏自相关系数的计算,然后根据这些系数的性质选择适当的ARMA模型进行拟合,并估计模型中的位置参数。接着进行模型的有效性检验,如果不通过则重新选择模型再拟合,如果通过则进行模型优化。最后利用拟合模型预测序列的未来走势。文章还介绍了绘制时序图、平稳性检验、白噪声检验、确定ARMA阶数和预测未来走势的代码实现。 ... [详细]
author-avatar
愛你2502933237
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有