当前位置: 首页 > news >正文

【机器学习】聚类评价指标之福尔克斯–马洛斯指数(Fowlkes–Mallows Index, FMI)

福尔克斯–马洛斯指数Fowlkes–Mallows Index, FMI)是一种用于评估聚类结果与实际标签之间一致性的指标。FMI 值可以用于衡量聚类的准确性,特别是在有真值标签的监督评估场景中。

计算公式

FMI 的计算基于以下公式:

其中:

  • TP(True Positive):聚类中正确地将同一类别的样本分到同一簇的对数。
  • FP(False Positive):聚类中错误地将不同类别的样本分到同一簇的对数。
  • FN(False Negative):聚类中错误地将同一类别的样本分到不同簇的对数。

FMI 是基于样本对(pairwise)的评价方法,它考虑了聚类结果与实际标签在配对样本之间的一致性。


FMI 的取值范围

  • FMI∈[0,1]
  • 值越接近 1,表示聚类结果与实际标签越一致。
  • 值越接近 0,表示聚类结果与实际标签基本无关。

优点

  1. 平衡性:FMI 通过结合精确率(Precision)和召回率(Recall)的平方根,能够综合反映聚类的性能。
  2. 可解释性强:与常见的分类指标类似,易于理解和分析。
  3. 适用于有标签数据:特别适用于监督学习场景下的聚类结果评估。

缺点

  1. 对类别不平衡敏感:当数据的类别分布不均衡时,FMI 的结果可能会受到影响。
  2. 计算成本较高:在大规模数据集上,由于需要计算所有样本对之间的关系,计算开销可能较大。

应用场景

  • 聚类性能评估:用于评价聚类算法在有真值标签数据集上的性能。
  • 多模态数据对齐:在多模态单细胞分析中,FMI 可用于衡量不同模态数据对齐结果的优劣。
  • 模型比较:在聚类算法的对比实验中,FMI 常作为关键评估指标之一。

常见的有监督评价方式

以下是一些典型的有监督聚类评价指标及其特点:

  1. 调整兰德指数(ARI, Adjusted Rand Index): 衡量两个聚类(算法结果 vs. 真值标签)的一致性,调整了随机聚类带来的影响。

  2. 归一化互信息(NMI, Normalized Mutual Information): 测量聚类结果与真值标签之间的信息共享,值越大表明聚类质量越高。

  3. 聚类准确率(CA, Clustering Accuracy): 简单地计算聚类结果与真值标签匹配的准确率。

  4. 福尔克斯–马洛斯指数(FMI, Fowlkes-Mallows Index): 衡量聚类中同类点和异类点的正确划分比例,尤其对簇大小不平衡问题敏感。


聚类评价中的注意事项

  1. 真值标签的质量: 如果“真值”标签本身不可靠(如细胞类型标签的分类标准主观性较强),则评价结果可能存在偏差。

  2. 不依赖标签的无监督评价: 除了上述有监督指标,还可以采用无监督指标,如轮廓系数(Silhouette Coefficient)或聚类内的平方误差(SSE),来评价聚类效果。

  3. 真实应用场景: 在实际无标注场景中,我们无法依赖有监督指标,这时需要结合领域知识或其他方式验证聚类的意义。

http://www.lryc.cn/news/519649.html

相关文章:

  • 分享一次面试经历
  • 网络攻击行为可视化分析系统【数据分析 + 可视化】
  • Qt 智能指针
  • CODESYS MODBUS TCP通信(禾川Q1 PLC作为MODBUS TCP从站)
  • 10.STM32F407ZGT6-内部温度传感器
  • 运维安全中心(堡垒机)
  • Linux OOM | Early OOM | 进程监视
  • 【2024年华为OD机试】(A卷,100分)- 等和子数组最小和(Java JS PythonC/C++)
  • NFS服务
  • RabbitMQ 交换机、队列和路由键的命名规范
  • 腾讯云AI代码助手编程挑战赛-刑说
  • 【测试】持续集成CI/CD
  • 阿里云直播Web
  • DuckDB:PRAGMA语句动态配置数据库行为
  • GO通过SMTP协议发送邮件
  • 轻量自高斯注意力机制LSGAttention模型详解及代码复现
  • 解读若依框架中的`@Excel` 和 `@Excels` 注解
  • 云商城--基础数据处理和分布式文件存储
  • 六十九:基于openssl实战验证RSA
  • Three.js 用户交互:构建沉浸式3D体验的关键
  • Android车机DIY开发之学习篇(五)默认应用修改
  • linux 设置mysql 外网访问
  • SQL UNION 操作符
  • c++ 17 constexpr
  • Java QueryWrapper groupBy自定义字段,以及List<Map>转List<Entity>
  • 【Rust自学】11.7. 按测试的名称运行测试
  • Git:Cherry-Pick 的使用场景及使用流程
  • Ubuntu 24.04 LTS系统安装Docker踩的坑
  • 工作生活的感悟
  • NCCL学习笔记-函数解析