聚类算法,KMeans

聚类算法为无监督

聚类算法追求“簇内差异小,簇外差异大”,而差异由样本点到其所在的簇的质心的距离来衡量。通过欧几里得、曼哈顿距离和余弦距离度量。

1.KMeans中不存在损失,样本点到簇心的距离是聚类算法的评估指标,不是损失函数。损失函数本质是用来衡量模型的拟合效果的,只有有着求解参数需求的算法,才有损失函数。决策树和KNN有衡量分类效果指标准确度,准确度对应的损失叫泛化误差,但不能通过最小化泛化误差来求解某个模型需要的信息,只是希望模型的效果表现出来的泛化误差很小,所以决策树,KNN也不存在损失函数。

2.聚类算法的模型评估指标

不同于分类模型和回归,聚类算法的模型评估不是一件简单的事。在分类中,有直接结果(标签)的输出,并且分类的结果有正误之分,所以我们使用预测的准确度,混淆矩阵,ROC曲线等等指标来进行评估,但无论如何评估,都是在”模型找到正确答案“的能力。而回归中,由于要拟合数据,我们有SSE均方误差,有损失函数来衡量模型的拟合程度。但这些衡量指标都不能够使用于聚类。

而将一个数据集中的所有簇的簇内平方和相加,就得到了整体平方和(Total Cluster Sum of
Square),又叫做total inertia。平方和是用距离衡量簇内差异的指标,但是这个指标来衡量聚类算法缺点和极限极大。

2.1当样本有真实聚类情况的数据,可以对于聚类算法的结果和真实结果来衡量聚类的效果:常用的有互信息分、V-measure和调整兰德系数

2.2当真实标签未知的时候:轮廓系数

在99%的情况下,我们是对没有真实标签的数据进行探索,也就是对不知道真正答案的数据进行聚类。这样的聚类,是完全依赖于评价簇内的稠密程度(簇内差异小)和簇间的离散程度(簇外差异大)来评估聚类的效果。其中轮廓系数是最常用的聚类算法的评价指标。它是对每个样本来定义的,它能够同时衡量:
1)样本与其自身所在的簇中的其他样本的相似度a,等于样本与同一簇中所有其他点之间的平均距离
2)样本与其他簇中的样本的相似度b,等于样本与下一个最近的簇中的所有点之间的平均距离
根据聚类的要求”簇内差异小,簇外差异大“,我们希望b永远大于a,并且大得越多越好。

2.3 当真实标签未知的时候:Calinski-Harabaz Index

除了轮廓系数是最常用的,我们还有卡林斯基-哈拉巴斯指数(Calinski-Harabaz Index,简称CHI,也被称为方差比标准),戴维斯-布尔丁指数(Davies-Bouldin)以及权变矩(Contingency Matrix)可以使用。

 比起轮廓系数,有个大的优点就是计算非常迅速。

3.重要参数涉及到代码部分,后面有空更

4.重要属性和接口,涉及到代码部分,后面有空更

6.核心函数,cluster.k_means类

7.案例实践,涉及到很多代码,有空回来更

 

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Kmeans聚类算法的评价标准通常有两种,一种是内部评价指标,另一种是外部评价指标。 内部评价指标是通过对聚类结果内部的数据进行分析来评价聚类的质量。其中一个常用的内部评价指标是轮廓系数(Silhouette Coefficient)。轮廓系数是通过计算每个样本点的轮廓系数值,然后求取所有样本点轮廓系数的均值来评价聚类效果的好坏。轮廓系数的取值范围为\[-1, 1\],越接近1表示聚类效果越好,越接近-1表示聚类效果越差。 外部评价指标是通过将聚类结果与已知的真实标签进行比较来评价聚类的质量。其中一个常用的外部评价指标是兰德系数(Rand Index)。兰德系数通过计算聚类结果与真实标签之间的一致性来评价聚类效果的好坏。兰德系数的取值范围为\[0, 1\],越接近1表示聚类效果越好。 除了轮廓系数和兰德系数,还有其他一些评价指标,如互信息(Mutual Information)、调整兰德系数(Adjusted Rand Index)等,可以根据具体需求选择适合的评价指标来评价Kmeans聚类算法的效果。\[2\] #### 引用[.reference_title] - *1* *2* [Kmeans聚类算法](https://blog.csdn.net/weixin_51877649/article/details/124068456)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Matlab实现Kmeans聚类算法](https://blog.csdn.net/qq_37904531/article/details/128839657)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值