"Clustering by fast search and find of density peaks"是今年6月份在《Science》期刊上发表的的一篇论文,论文中提出了一种非常巧妙的聚类算法。经过几天的努力,终于用python实现了文中的算法,下面与大家分享一下自己对算法的理解及实现过程中遇到的问题和解决办法。
首先,该算法是基于这样的假设:类簇中心被具有较低局部密度的邻居点包围,且与具有更高密度的任何点有相对较大的距离。对于每一个数据点,要计算两个量:点的局部密度
和该点到具有更高局部密度的点的距离
,而这两个值都取决于数据点间的距离
。
数据点的局部密度
定义为式(1):
其中,如果