首先让我们了解一下理论知识:聚类分析常常用于发现局部强相关的对象组,而异常检测是发现局部不与其他对象强相关的对象,因此,聚类分析经常用于离群点检测,而常用的检测方法主要有:,我来为大家科普一下关于python获取最佳聚类数目?下面希望有你要的答案,我们一起来看看吧!

python获取最佳聚类数目(python基于聚类的离群点检测方法)

python获取最佳聚类数目

首先让我们了解一下理论知识:

聚类分析常常用于发现局部强相关的对象组,而异常检测是发现局部不与其他对象强相关的对象,因此,聚类分析经常用于离群点检测,而常用的检测方法主要有:

丢弃远离其他簇的小簇:

这个方法可以和其他聚类方法一起使用,但是需要最小簇大小和小簇与其他簇之间距离的阈值。而且这种方案对簇个数的选择高度敏感,使用这个方案很难将离群点得分附加到对象上。也就是说丢弃小于某个最小阈值的所有簇。

基于原型的聚类:

首先聚类所有对象,然后评估对象属于簇的程度(离群点得分)。在这种方法中,可以用对象到它簇中心的距离来度量属于簇的程度。特别地,如果删除一个对象导致该目标的显著改进,则可将该对象视为离群点。对于基于原型的聚类,主要有两种方法评估对象属于簇的程度:一是度量对象到簇原型的距离,并用它作为该对象的离群点得分;二是考虑到簇具有不同的密度,可以度量簇到原型的相对距离,相对距离是点到质心的距离与簇中所有点到质心的距离的中位数之比。

,