首页 > 其他分享 >样本轮廓系数(原理、sklearn.metrics.silhouette_score、silhouette_samples参数介绍)

样本轮廓系数(原理、sklearn.metrics.silhouette_score、silhouette_samples参数介绍)

时间:2024-02-27 17:55:24浏览次数:17  
标签:系数 silhouette metric 样本 metrics score samples 轮廓

https://blog.csdn.net/maple05/article/details/110454075?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170902662116800226570765%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=170902662116800226570765&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-1-110454075-null-null.142^v99^pc_search_result_base1&utm_term=Silhouette%20Coefficient&spm=1018.2226.3001.4187

 

一、轮廓系数含义:
轮廓系数(Silhouette Coefficient),是聚类效果好坏的一种评价方式。

最佳值为1,最差值为-1。接近0的值表示重叠的群集。负值通常表示样本已分配给错误的聚类,因为不同的聚类更为相​​似

二、计算步骤:
1)对于簇中的每个向量,分别计算它们的轮廓系数。

对于其中的一个点 i 来说:

计算 簇内不相似度a(i) :i向量到同簇内其他点不相似程度的平均值,体现凝聚度

计算 簇间不相似度b(i) :i向量到其他簇的平均不相似程度的最小值,体现分离度

那么第i个对象的轮廓系数就为:

S(i)=b(i)−a(i)max{​a(i),b(i)}

(

)
=

(

)


(

)



{


(

)
,

(

)
}

所有样本的s i 的均值称为聚类结果的轮廓系数,定义为S,是该聚类是否合理、有效的度量。聚类结果的轮廓系数的取值在【-1,1】之间,值越大,说明同类样本相距约近,不同样本相距越远,则聚类效果越好。

三、sklearn.metrics.silhouette_score 介绍及参数含义
详细参考scikit-learn官网

此函数返回所有样本的平均轮廓系数。要获取每个样本的值,请使用silhouette_samples

sklearn.metrics.silhouette_score(X, labels, metric='euclidean', sample_size=None, random_state=None)
参数
X:数组[n_samples_a,n_samples_a](如果metric ==“ precomputed”),否则为[n_samples_a,n_features] 样本之间的成对距离数组或特征数组。

labels:数组,形状= [n_samples] 每个样品的预测标签。
metric : 计算要素阵列中实例之间的距离时使用的度量。默认是euclidean(欧氏距离)。

如果metric是字符串,则必须是允许的选项之一metrics.pairwise.pairwise_distances。如果X是距离数组本身,请使用metric="precomputed"。

return 样本平均轮廓系数
可参考实例:Demo of DBSCAN clustering algorithm

四、silhouette_samples参数介绍
此函数返回所有样本的轮廓系数。

sklearn.metrics.silhouette_samples(X, labels, etric='euclidean')
参数 X:数组[n_samples_a,n_samples_a](如果metric ==“ precomputed”),否则为[n_samples_a,n_features] 样本之间的成对距离数组或特征数组。
labels:数组,形状= [n_samples] 每个样品的预测标签。
metric : 计算要素阵列中实例之间的距离时使用的度量。默认是euclidean(欧氏距离)。

如果metric是字符串,则必须是允许的选项之一metrics.pairwise.pairwise_distances。如果X是距离数组本身,请使用metric="precomputed"。

return 每个样本的轮廓系数
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/maple05/article/details/110454075

标签:系数,silhouette,metric,样本,metrics,score,samples,轮廓
From: https://www.cnblogs.com/wcxia1985/p/18037433

相关文章

  • 2 分钟,了解 4 个极为有用的 MetricsQL 函数
    夜莺社区的朋友如果问时序库的选型,我一般都会推荐VictoriaMetrics,除了其性能、稳定性、集群扩展能力之外,VictoriaMetrics还扩展了PromQL,提供了MetricsQL,即增强了PromQL的能力。比如下面介绍的场景,就很适合用MetricsQL来解决。需求某个指标(假设指标名字是interface_sta......
  • 1.m个人的成绩存放在score数组中,请编写函数fun, 它的功能是:将低于平均分的人数作为函
    /1.m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平均分的人数作为函数值返回,将低于平均分的分数放在below所指1定的数组中。/#include<stdio.h>#include<string.h>intfun(int*buf,int*buff,intnum){inti=0,j=0,sum=0;for(i=......
  • 谷歌学术指标(Google Scholar Metrics)
    影响因子(ImpactFactor,IF)是上世纪由汤森路透公司开发的,最初主要用途是为科研机构和图书馆选购期刊提供参考,现在被广泛用于衡量期刊的影响力。由于IF是一个相对统计量,所以可公平地评价和处理各类期刊。通常,期刊影响因子越大,它的学术影响力和作用也越大。我们看一下IF的计算方法:IF=......
  • 【VictoriaMetrics】一个小优化:循环改查表,性能提升56.48 倍
    作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢!cnblogs博客zhihuGithub公众号:一本正经的瞎扯做了一个vm-storage数据文件merge的工具。测试的时候发现decimal.CalibrateScale()这个函数特别慢。做了一个小优化,用查表法代替循环的乘法,性能提升明显。Benc......
  • Kubernetes系统资源的采集Metrics-server部署
    Metrics部署在新版的Kubernetes中,系统资源的采集使用Metrics-server,可以通过Metrics采集节点和Pod的内存、磁盘、CPU和网络的使用率。本文将介绍如何在Kubernetes集群上部署MetricsServer,并使用它来监控集群中各种资源的使用情况。1.前提条件Kubernetes集群已经运行,并且kube......
  • F1 score 与 平均精度 mAP
    F1score与平均精度mAP可以衡量分类模型的性能。首先先看精确率与召回率的概念。精确率与召回率对于某方概率极低的逻辑回归(例如某种罕见病症的确诊),单纯的准度(是否能正确判断病人是否得病)并不足够。毕竟,若算法只会给出negative的判断也能拥有高准度。真阳性(TP),假阳性(FP),真......
  • 无涯教程-Redis - ZSCORE 命令函数
    RedisZSCORE命令返回键排序后的元素的得分,如果元素不存在于排序集中,或者键不存在,则返回nil。ZSCORE-返回值返回元素的分数值。ZSCORE-语法以下是RedisZSCORE命令的基本语法。redis127.0.0.1:6379>ZSCOREkeymemberZSCORE-示例redis127.0.0.1:6379>ZADDm......
  • 无涯教程-Redis - ZREMRANGEBYSCORE 命令函数
    RedisZREMRANGEBYSCORE命令删除存储在键中的排序集中的所有元素,这些元素的分数介于最小和最大(含)之间。ZREMRANGEBYSCORE-返回值返回删除的元素数量。ZREMRANGEBYSCORE-语法以下是RedisZREMRANGEBYSCORE命令的基本语法。redis127.0.0.1:6379>ZREMRANGEBYSCORE......
  • Prometheus 与 VictoriaMetrics对比
    公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享时序数据库有很多,比如Prometheus、M3DB、TimescaleDB、OpenTSDB、InfluxDB等等。Prometheus和VictoriaMetrics是开源的时间序列数据库,在复杂的环境中提供了强大的监控和警报解决方案。然而,它们的设计......
  • VictoriaMetrics的指标流聚合能力应用
    原文出自:https://blog.mickeyzzc.tech/posts/opentelemetry/stream-metrics-one/ 社区VM对指标流聚合能力分析与问题一、VictoriaMetrics开源项目的原生能力VictoriaMetrics项目中的流聚合能力是从1.86版本开始整合到vmagent的,具体可参考: https://github.com/VictoriaMetrics/Vic......