【机器学习 | 聚类】关于聚类最全评价方法大全,确定不收藏?

在这里插入图片描述

🤵‍♂️ 个人主页: @AI_magician
📡主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。
👨‍💻景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!🐱‍🏍
🙋‍♂️声明:本人目前大学就读于大二,研究兴趣方向人工智能&硬件(虽然硬件还没开始玩,但一直很感兴趣!希望大佬带带)

在这里插入图片描述

【深度学习 | 核心概念】那些深度学习路上必经的核心概念,确定不来看看? (一)
作者: 计算机魔术师
版本: 1.0 ( 2023.8.27 )

摘要: 本系列旨在普及那些深度学习路上必经的核心概念,文章内容都是博主用心学习收集所写,欢迎大家三联支持!本系列会一直更新,核心概念系列会一直更新!欢迎大家订阅

该文章收录专栏
[✨— 《深入解析机器学习:从原理到应用的全面指南》 —✨]

聚类详解

        • ARI评价法(兰德系数)
        • AMI评价法(互信息)
        • V-measure评分
        • FMI评价法
        • 轮廓系数评价法
        • Calinski-Harabasz指数评价法
        • 分类模型评价法

以下是常用的评价算法名称

方法名称真实值最佳值sklearn****函数
ARI评价法(兰德系数)需要1.0adjusted_rand_score
AMI评价法(互信息)需要1.0adjusted_mutual_info_score
V-measure评分需要1.0completeness_score
FMI评价法需要1.0fowlkes_mallows_score
轮廓系数评价法不需要畸变程度最大silhouette_score
Calinski-Harabasz指数评价法不需要相较最大calinski_harabaz_score
  • ARI评价法(兰德系数):ARI通过比较聚类结果和真实分类之间的成对样本相似性来衡量聚类的质量,其数值范围从-1到1,值越高表示聚类结果与真实分类越相似。

  • AMI评价法(互信息):AMI利用互信息的概念衡量聚类结果和真实分类之间的共享信息量,其数值范围也从0到1,值越高表示聚类结果越好。

  • V-measure评分:V-measure综合考虑了聚类结果的均一性和完整性,通过计算均一性和完整性的加权平均得到评分,数值范围也是从0到1。

  • FMI评价法:FMI通过比较聚类结果和真实分类中成对样本关系来评估聚类的相似度,数值范围从0到1,值越高表示聚类结果越好。

  • 轮廓系数评价法:轮廓系数结合了样本与其所属簇的平均距离和样本与其他簇的平均距离来度量聚类结果的紧密度和分离度,数值范围从-1到1。

  • Calinski-Harabasz指数评价法:Calinski-Harabasz指数通过计算簇内离差平方和和簇间离差平方和的比值来评估聚类结果的质量,数值越大表示聚类结果越好。

上表总共列出了6种评价的方法,其中前4种方法均需要真实值的配合才能够评价聚类算法的优劣,后2种则不需要真实值的配合。但是前4种方法评价的效果更具有说服力,并且在实际运行的过程中在有真实值做参考的情况下,聚类方法的评价可以等同于分类算法的评价

除了轮廓系数以外的评价方法,在不考虑业务场景的情况下都是得分越高,其效果越好,最高分值均为1。而轮廓系数则需要判断不同类别数目的情况下其轮廓系数的走势,寻找最优的聚类数目。

在具备真实值作为参考的情况下,几种方法均可以很好地评估聚类模型。在没有真实值作为参考的时候,轮廓系数评价方法和Calinski-Harabasz指数评价方法可以结合使用

ARI评价法(兰德系数)

ARI(Adjusted Rand Index,调整兰德指数)是一种用于衡量聚类结果与真实分类之间的相似度的评价方法。它通过比较聚类结果与真实分类之间的成对样本相似性来计算得分,范围从-1到1,其中1表示完全匹配,0表示随机匹配,-1表示完全不匹配。

ARI的计算公式如下:

A R I = ∑ i j ( n i j 2 ) − [ ∑ i ( a i 2 ) ∑ j ( b j 2 ) ] / ( n 2 ) 1 2 [ ∑ i ( a i 2 ) + ∑ j ( b j 2 ) ] − [ ∑ i ( a i 2 ) ∑ j ( b j 2 ) ] / ( n 2 ) ARI = \frac{{\sum_{ij} \binom{n_{ij}}{2} - [\sum_i \binom{a_i}{2} \sum_j \binom{b_j}{2}]/\binom{n}{2}}}{{\frac{1}{2} [\sum_i \binom{a_i}{2} + \sum_j \binom{b_j}{2}] - [\sum_i \binom{a_i}{2} \sum_j \binom{b_j}{2}]/\binom{n}{2}}} ARI=21[i(2ai)+j(2bj)][i(2ai)j(2bj)]/(2n)ij(2nij)[i(2ai)j(2bj)]/(2n)

其中, n n n是样本总数, n i j n_{ij} nij表示同时被聚类结果和真实分类划分为同一簇的样本对数量, a i a_i ai表示被聚类结果划分为第 i i i簇的样本数量, b j b_j bj表示被真实分类划分为第 j j j类的样本数量。

AMI评价法(互信息)

AMI(Adjusted Mutual Information,调整互信息)是一种用于评估聚类结果与真实分类之间的相似度的指标。它基于信息论中的互信息概念,度量聚类结果和真实分类之间的共享信息量。

AMI的计算公式如下:

A M I = I ( X ; Y ) − E [ I ( X ; Y ) ] max ⁡ ( H ( X ) , H ( Y ) ) − E [ I ( X ; Y ) ] AMI = \frac{I(X;Y) - E[I(X;Y)]}{\max(H(X), H(Y)) - E[I(X;Y)]} AMI=max(H(X),H(Y))E[I(X;Y)]I(X;Y)E[I(X;Y)]

其中, I ( X ; Y ) I(X;Y) I(X;Y)表示聚类结果和真实分类的互信息, H ( X ) H(X) H(X) H ( Y ) H(Y) H(Y)分别表示聚类结果和真实分类的熵, E [ I ( X ; Y ) ] E[I(X;Y)] E[I(X;Y)]是互信息的期望值,用于校正由于随机因素引起的误差。

V-measure评分

V-measure是一种用于评估聚类结果的均一性(homogeneity)和完整性(completeness)的综合指标。它结合了这两个度量以平衡聚类结果的质量。

V-measure的计算公式如下:

V = 2 × ( h × c ) ( h + c ) V = \frac{2 \times (h \times c)}{(h + c)} V=(h+c)2×(h×c)

其中, h h h表示聚类结果的均一性, c c c表示聚类结果的完整性。均一性和完整性的计算公式如下:

h = 1 − H ( C ∣ K ) H ( C ) h = 1 - \frac{H(C|K)}{H(C)} h=1H(C)H(CK)

c = 1 − H ( K ∣ C ) H ( K ) c = 1 - \frac{H(K|C)}{H(K)} c=1H(K)H(KC)

其中, H ( C ∣ K ) H(C|K) H(CK)表示给定聚类结果 K K K的条件熵, H ( C ) H(C) H(C)表示真实分类的熵, H ( K ∣ C ) H(K|C) H(KC)表示给定真实分类 C C C的条件熵, H ( K ) H(K) H(K)表示聚类结果的熵。

FMI评价法

FMI(Fowlkes-Mallows Index)是一种用于评估聚类结果与真实分类之间的相似度的指标。它通过比较聚类结果中的成对样本关系与真实分类中的成对样本关系来计算得分。

FMI的计算公式如下:

F M I = T P ( T P + F P ) ( T P + F N ) FMI = \frac{TP}{\sqrt{(TP + FP)(TP + FN)}} FMI=(TP+FP)(TP+FN) TP

其中, T P TP TP表示聚类结果和真实分类中成对样本被划分到同一簇的数量, F P FP FP表示聚类结果中被错误划分到同一簇的样本对数量, F N FN FN表示真实分类中被错误划分到同一簇的样本对数量。

轮廓系数评价法

轮廓系数(Silhouette Coefficient)是一种用于评估聚类结果的紧密度和分离度的指标。它结合了样本与其所属簇的平均距离和样本与其他簇的平均距离,用于衡量聚类结果的质量。

轮廓系数的计算公式如下:

s = b − a max ⁡ ( a , b ) s = \frac{b - a}{\max(a, b)} s=max(a,b)ba

其中, a a a表示样本与其所属簇的平均距离, b b b表示样本与其他簇的平均距离。对于每个样本,轮廓系数的取值范围在-1到1之间,值越接近1表示样本聚类得越好,值越接近-1表示样本更适合被划分到其他簇,值接近0表示样本在两个簇之间的边界。

Calinski-Harabasz指数评价法

Calinski-Harabasz指数是一种用于评估聚类结果的紧密度和分离度的指标。它基于簇内的离差平方和(Within-Cluster Sum of Squares,WCSS)和簇间的离差平方和(Between-Cluster Sum of Squares,BCSS),用于衡量聚类结果的质量。

Calinski-Harabasz指数的计算公式如下:

C H = BCSS / ( k − 1 ) WCSS / ( n − k ) CH = \frac{{\text{BCSS}/(k-1)}}{{\text{WCSS}/(n-k)}} CH=WCSS/(nk)BCSS/(k1)

其中, k k k表示簇的数量, n n n表示样本的总数。Calinski-Harabasz指数的值越大表示聚类结果的质量越好。

分类模型评价法

最后一种评价(evaluation)方法是分类(classification)。通过使用 k-means标签训练分类模型,然后在单独的数据子集中对其进行测试,我们可以看到分类器的表现良好,并不是完全任意的。说明学习效果良好,且存在可分类的特征。
在这里插入图片描述

						  🤞到这里,如果还有什么疑问🤞🎩欢迎私信博主问题哦,博主会尽自己能力为你解答疑惑的!🎩🥳如果对你有帮助,你的赞是对博主最大的支持!!🥳

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/219053.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

简单介绍一下js中的构造函数、原型对象prototype、对象原型__proto__、原型链

构造函数 function Star (uname, age){this.uname unamethis.age agethis.sing function(){ log(唱歌~) }}let xzq new Star(薛之谦, 30)let ldh new Star(刘德华, 20)log(ldh) // { uname: 刘德华, age: 20, sing: f }ldh.sing() // 唱歌~log(ldh.sing xzq.sing) // fal…

MYSQL基础之【创建数据表,删除数据表】

文章目录 前言MySQL 创建数据表通过命令提示符创建表使用PHP脚本创建数据表 MySQL 删除数据表在命令提示窗口中删除数据表使用PHP脚本删除数据表 后言 前言 hello world欢迎来到前端的新世界 😜当前文章系列专栏:Mysql 🐱‍👓博主…

5 个适用于 Windows 的顶级免费数据恢复软件

对于计算机来说,最重要的是用户数据。除了您的数据之外,有关计算机的其他所有内容都是可替换的。这三个是数据丢失的最常见原因: 文件/文件夹删除丢失分区分区损坏 文件/文件夹删除 文件/文件夹删除是最常见的数据丢失类型。大多数时候&am…

Proteus仿真--高仿真数码管电子钟

本文介绍基于数码管的高仿真电子钟(完整仿真源文件及代码见文末链接) 仿真图如下 本设计中80C51单片机作为主控,用74LS138作为数码管显示控制,共有4个按键,其中分别用于12/24小时显示切换、时间设置、小时加减控制和…

BUUCTF [MRCTF2020]Ez_bypass 1

题目环境:F12查看源代码 I put something in F12 for you include flag.php; $flagMRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx}; if(isset($_GET[gg])&&isset($_GET[id])) { $id$_GET[id]; $gg$_GET[gg]; if (md5($id) md5($gg) && $id ! $gg) { …

快速压缩:迅速减小PDF文件大小的步骤与技巧

虽然png图片格式是一种无损压缩格式,但是png图片的内存大小也是比较大的,而且兼容性上也没有jpg图片好,许多平台推荐的也都是jpg格式,所以当我们需要把png转jpg格式的时候,就需要用到图片格式转换器,今天推…

【数据结构】树与二叉树(廿五):树搜索指定数据域的结点(算法FindTarget)

文章目录 5.3.1 树的存储结构5. 左儿子右兄弟链接结构 5.3.2 获取结点的算法1. 获取大儿子、大兄弟结点2. 搜索给定结点的父亲3. 搜索指定数据域的结点a. 算法FindTargetb. 算法解析c. 代码实现a. 使用指向指针的指针b. 直接返回找到的节点 4. 代码整合 5.3.1 树的存储结构 5.…

openEuler Linux 部署 FineBi

openEuler Linux 部署 FineBi 部署环境 环境版本openEuler Linux22.03MySQL8.0.35JDK1.8FineBi6.0 环境准备 升级系统内核和软件 yum -y updatereboot安装常用工具软件 yum -y install vim tar net-tools 安装MySQL8 将 MySQL Yum 存储库添加到系统的存储库列表中 sudo…

DeepWalk代码实战-维基百科词条图嵌入可视化

准备工作: 从爬虫网站中爬取维基百科See also关联词条:https://densitydesign.github.io/strumentalia-seealsology/ 维基百科网站:https://www.wikipedia.org/ 爬取过程: 下载 tsv 文件: import networkx as nx # 图…

用友NC word.docx接口存在任意文件读取漏洞 附POC

@[toc] 用友NC word.docx接口存在任意文件读取漏洞 附POC 免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使…

【anaconda】numpy.dot 向量点乘小技巧

假设向量A[1,1], 向量B[2,3]。如果想知道他们的内积就可以输入如下代码: 当然,如果是两个列向量相乘,肯定是不对的 但是如果没有维度也一样可以求得内积,而且结果不会套在列表里

二年级 最少需要几个刻度?

娃二年级题目:请你设计一把尺子,用这把尺子一次能画出 1~8厘米八条不同长度的线段。最少需要几个刻度? 答:最少需要 5 个刻度; 方案有: 0, 1, 2, 5, 8 0, 1, 3, 7, 8 0, 1, 4, 6, 8 0, 1, 5, 6, 8 0, 1, 5…