为简单起见,我们假设特征空间是 XY 平面。
使用聚类进行异常值检测的好方法是什么?
数据挖掘
机器学习
数据挖掘
聚类
异常检测
2021-09-23 13:23:47
4个回答
Bezdek 的 PFCM是一种非常强大的针对异常值的聚类算法。
在本文中,Bezdek 提出了 Possibilistic-Fuzzy-C-Means,它是对模糊可能性聚类的不同变化的改进。该算法特别擅长检测异常值并避免它们影响聚类。因此,使用 PFCM,您可以找到哪些点被识别为异常值,同时对您的数据进行非常稳健的模糊聚类。
高斯混合建模(如果您的数据非常类似于高斯)可用于异常值检测。每个簇中密度较低的点很可能是异常值。
在理想主义场景中效果很好。
- 应用您的聚类算法
- 计算从所有数据点到其分配的集群的距离
- 将离中心最远的数据点标记为异常值
从三个高斯随机生成 100 个数据点,用 k-means 对它们进行聚类,并标记 10 个“离中心最远”的数据点,得到下图:

有关完整示例,请参见此笔记本
解决“距离”意味着什么的负担已经必须解决,您才能运行聚类算法。您仍然可以选择距离意味着异常值。在此示例中,我只选择了 N 个最远的数据点,尽管您可能希望选择与中心有一定数量标准偏差的任意数量的数据点。
其它你可能感兴趣的问题
