聚类评价指标S_Dbw及其python实现
介绍
最近看了一篇文章,Yanchi Liu等人比较了各个聚类评价指标(例如??, ?, ??, ??以及S_Dbw等等),在一些有着不同挑战的数据集上(例如有噪声,密度不均,某几类挨得比较近等等问题),比较了几种评价指标选择不同聚类算法中超参的能力。
其中比较结果如下:
列代表不同的聚类评价指标,行代表数据集中存在的不同扰动挑战,其中标志x代表该评价指标对这种扰动选择聚类的超参失效了,符号-代表没有对该种情况进行测试,观察可以发现评价指标S_Dbw对于各种噪声,不同密度的数据集等等干扰项来选择超参的鲁棒性最强,网上搜了下没有相关的实现,自己实现了下, python代码在这里。
S_Dbw
S_Dbw是由两项组成,分别是簇间密度((1.1)(1.1)(1.1))和簇内方差((1.2)(1.2)(1.2)),使用它评价选取不同参数下的聚类算法结果时,取S_Dbw值最小的一组参数即可。
(1.1)Dens_bw(c)=1c⋅(c−1)∑i=1n(∑j=1i≠jcdensity(uij)max(density(vi),density(vj)))Dens\_bw(c) = \frac{1}{c\cdot(c-1)}\sum_{i=1}^{n}(\sum_{{{j=1}\atop{i\neq{j}}}}^{c}\frac{density(u_{ij})}{\max(density(v_i), density(v_j))}) \tag{1.1}Dens_bw(c)=c⋅(c−1)1i=1∑n(i̸=jj=1∑cmax(density(vi),density(vj))density(uij))(1.1)
(1.2)Scat(c)=1c∑i=1c∥δ(vi)∥∥δ(S)∥Scat(c) = \frac{1}{c}\sum_{i=1}^{c}\frac{\left\|\delta(v_i)\right\|}{\left\|\delta(S)\right\|} \tag{1.2}Scat(c)=c1i=1∑c∥δ(S)∥∥δ(vi)∥(1.2)
参考文献
Clustering Validity Assessment: Finding the optimal partitioning of a data set
Understanding of Internal Clustering Validation Measures
聚类评价指标S_Dbw及其python实现相关推荐
- 聚类评价指标S_Dbw及其Matlab实现
聚类评价指标S_Dbw及其Matlab实现 简介 S _ D b w \operatorname{S}\_{Dbw} S_Dbw是一个基于密度的指标,它通过对比 类内的紧密性 和 类间的密度 来评 ...
- 聚类算法评价指标python实现_[ML] 聚类评价指标
本文将介绍几个常见的聚类评价指标: Purity, NMI, RI, Precision(查准率), Recall(查全率), F, ARI, Accuracy(正确率). 好的聚类算法,一般要求类簇 ...
- 聚类评价指标(轮廓系数 Silhouette coefficient)
聚类评价指标 最近在做聚类的项目,聚类得到结果后我们需要知道聚类的好坏,用哪个算法效果比较好.肯定要选择那个最好评价的算法.今天我们就不谈算法只谈算法结果的评价. 我也从网上看了很多的别人写的东西,总 ...
- 密度聚类(Density peaks Clustering)Python实现
密度聚类(Density peaks Clustering)Python实现 原文:http://blog.csdn.net/kryolith/article/details/39832573 Rod ...
- python kmeans聚类 对二维坐标点聚类_Kmeans均值聚类算法原理以及Python如何实现
第一步.随机生成质心 由于这是一个无监督学习的算法,因此我们首先在一个二维的坐标轴下随机给定一堆点,并随即给定两个质心,我们这个算法的目的就是将这一堆点根据它们自身的坐标特征分为两类,因此选取了两个质 ...
- sklearn的make_blobs绘制聚类数据样本,Python
sklearn的make_blobs绘制聚类数据样本,Python 例如: from sklearn.datasets import make_blobs from matplotlib import ...
- matlab中CH指标聚类评价指标,MATLAB聚类有效性评价指标(外部)
MATLAB聚类有效性评价指标(外部) 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 更多内容,请看标签:MATLAB.聚类 前提:数据的真实标签已知 ...
- 人工蜂群算法python_改进的人工蜂群算法解决聚类问题(在Python中的分步实现)...
在 之前的文章 中,我介绍了如何通过实施名为Artificial Bee Colony(ABC)的群集智能(SI)算法来解决现实世界中的优化问题. 现在是时候让我们掌握一些真实的数据并解释我们如何使用 ...
- python 密度聚类 使用_使用python+sklearn实现硬币图像上的结构化Ward层次聚类演示...
注意:单击此处https://urlify.cn/EFRn6b下载完整的示例代码,或通过Binder在浏览器中运行此示例使用Ward层次聚类计算二维图像的分割,由于聚类在空间上受到了限制,所以每个分割 ...
最新文章
- Kotlin 简化Fragment使用的扩展方法
- linux 与 window 对比式理解与应用
- Hive 窗口分析函数
- java求多项式回归_多项式回归(Polynomial Regression)(附代码)
- 作者:高翔(1984-),男,国防大学信息作战与指挥训练教研部博士后,主要研究方向为体系分析与超网建模。...
- 删除本地缓存localStorage定义的字段 - 代码篇
- CVPR 2019 CLIC 图像压缩挑战赛冠军方案解读
- ansys workbench 帮助文档在哪_中英对照读ANSYS帮助文档,是怎么玩的?
- Unity使用中文包
- WAP PUSH的SMS PDU解析
- JLink和JFlash使用方法笔记
- 如何使用FlashgameMaster修改游戏
- psd 解析 java_PSD解析工具实现(一)
- 零基础快速入门(二)爬取豆瓣电影——python爬虫实例
- VS Code下载Beautify扩展插件 | CSDN创作打卡
- 子串子序列常见算法面试题
- 通过京东商品ID获取京东商品评论数据,京东商品评论API接口,接口说明接入方案
- 企业能源管控平台在轧钢行业能源管理中的应用
- .net微信扫码支付
- 同步(Synchronous)和异步(Asynchronous)方法的区别