Auto-CVI-Tool,一个自动集群有效性索引工具箱

版本1.0.0 (132 KB) Farhad Abedinzadeh
群集有效性指数(CVI)自动工具箱,用于自动确定群集数量

14下载

更新2022年10月6日星期四10:50:45 +0000

从GitHub

在GitHub上查看许可证

Auto-CVI-Tool

簇有效性指数自动工具箱(CVI)

聚类分析包括通过自动聚类确定最优数量和自然划分聚类。聚类有效性指数(CVI)是估计聚类数量的一种简单技术。关于集群内的内聚性和集群间的分离,文献中已经提出了几种集群解决方案。尽管如此,确定这些cvi工作良好的情况及其局限性是至关重要的。为了估计集群的数量,这个工具箱提供了28个健壮的cvi。它非常友好,不需要任何编码知识。无需编写一行代码,就可以比较28个cvi,并以可比较的方式将结果可视化。当加载数据时,用户将自动选择所有参数,或者使用默认设置,并且无需任何额外编程就可以比较cvi。重要的是要注意其中的一部分在这个工具箱的开发中使用,如果您使用这个工具箱的任何部分,我将感激引用参考文章和我自己。

聚类有效性指数(CVI)通过定义聚类内聚性(组内散点)和聚类间分离(组间散点)之间的关系来估计聚类解决方案的质量。表1总结了在这个工具箱中检查的22例cvi。每个CVI由表中的首字母缩略词标识,后面跟着一个向上箭头或者下箭头来分别指示索引是最大化还是最小化。

表1

不。 指数 全称&缩写 最小/最大
1 美中互利工业公司 Calinski-Harabasz指数(ch)。
2 cindex C索引(cind)。
3. copindex COP指数(COP)。
4 csindex CS指数(CS)。
5 cvddindex 基于密度相关距离(cvdd)的索引。
6 cvnnindex 基于最近邻居的索引(cvnn)。
7 dbindex davis - bouldin指数(db)。
8 db2index 增强的davis - bouldin索引(db2)。
9 dbcvindex 密度指数(dbcv)。
10 dunnindex 邓恩指数(Dunn)。
11 gd31index 邓恩指数变体3,1 (gd31)。
12 gd33index 邓恩指数变式3,3 (gd33)。
13 gd41index 邓恩指数变式4,1 (gd41)。
14 gd43index 邓恩指数变式4,3 (gd43)。
15 gd51index 邓恩指数变式5,1 (gd51)。
16 gd53index 邓恩指数变式5,3 (gd53)。
17 lccvindex 基于本地核心(lccv)的索引。
18 pbmindex PBM指数(PBM)。
19 sdbwindex S_Dbw有效性索引(sdbw)。
20. sfindex 功能指数(sf)。
21 silindex 轮廓指数(sil)。
22 ssddindex 基于形状、大小、密度和分离距离(ssdd)的索引。
23 svindex SV指数(SV)。
24 symindex 对称索引(sym)。
25 symdbindex 基于对称性的戴维斯-博尔丁指数(sdb)。
26 symdunnindex 基于对称的邓恩指数(sdunn)。
27 wbindex WB指数(WB)。
28 xbindex 谢贝尼指数(xb)。

如何使用?

有两个脚本被命名KMeans_Evaluation.m而且Hierarchichal_Evaluation.m;他们评估聚类基于KMeans而且Hierarchichal集群resepctively。

  • KMeans_Evaluation.m参数设置
    • 数据:数据
      • 加载数据
    • DistanceKMeans:距离类型k - means聚类(表二)
      • DistanceKMeans = DistKMeans;
    • Kmax:最大集群数
      • Kmax = 6;%群集的最大数目= 0 (size(data,1),Kmax);for k=1:Kmax clust(:,k) = kmeans(数据,k,'距离',DistanceKMeans);结束
    • CVI:选择表单(表1)
      • %% Select CVI = Select_CVI_KMeans;%聚类方案评价eva = evalcvi(clust,CVI, data);

表二

不。 距离
2 sqeuclidean
3. cityblock
4 汉明
5 相关
6 余弦

您可以通过执行以下代码同时比较多个cvi:

CVIs = Select_Multiple_CVI_KMeans;Multiple_Result = Do_Multiple(CVIs,集群,数据);

此外,还可以自动可视化结果。


  • Hierarchichal_Evaluation.m参数设置
    • 数据:数据
      • 加载数据
    • HierarchichalMethod:方法分层聚类树(Table3)
      • Z = linkage(data, HierarchichalMethod);
    • Kmax:最大集群数
      • Kmax = 6;% k=1的最大群集数:Kmax clust(:,k) = Cluster (Z, 'maxclust', k);结束
    • DistanceType:两组观测值之间的成对距离类型(Table4)
      • DistanceType = Distance_PDIST2;DXX = pdist2(data,data,DistanceType);
    • CVI:选择表单(表1)
      • CVI = select cvi_hierarchical;eva = evalcvi(clust,CVI, DXX);

如果您希望比较多个cvi,请运行以下代码

CVIs = select_multiple_cvi_hierarchical;Multiple_Result = Do_Multiple(CVIs,集群,DXX);

Table3

不。 方法
2 平均
3. 重心
4 完整的
5 中位数
6
7 病房

Table4

欧几里得 seuclidean
squaredeuclidean cityblock
闵可夫斯基 jaccard
chebychev mahalanobis
相关 余弦
斯皮尔曼 汉明

可视化

autocvitool

具有一定

(1) A. José-García和W. Gómez-Flores。基于差分进化的自动数据聚类有效性指标研究。遗传与进化计算会议* (GECCO '21),里尔,法国,2021。(2) Farhad Abedinzadeh(2022)。Auto-CVI-Tool (https://github.com/farhadabedinzadeh/Auto-CVI-Tool/releases/tag/v1.0.0), GitHub。检索于2022年10月6日。

进一步的问题

邮件

引用作为

Farhad Abedinzadeh(2022)。Auto-CVI-Tool,一个自动集群有效性索引工具箱GitHub (https://github.com/farhadabedinzadeh/Auto-CVI-Tool/releases/tag/v1.0.0)。检索

MATLAB版本兼容性
使用R2022a创建
兼容R2020b ~ R2022b
平台的兼容性
窗户 macOS Linux

世界杯预选赛小组名单社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!世界杯预选赛小组名单

开始狩猎!
要查看或报告此GitHub插件中的问题,请访问GitHub库
要查看或报告此GitHub插件中的问题,请访问GitHub库
Baidu
map