Machine Learning 简明教程

Machine Learning - Density-Based Clustering

基于密度的聚类基于这样的思想:聚类是高密度区域,由低密度区域隔开。

  1. 此算法通过首先识别“核心”数据点来运作,这些数据点是在指定距离内具有最小数量邻居的数据点。这些核心数据点构成了聚类的中心。

  2. 接下来,此算法识别“边界”数据点,这些数据点不是核心数据点,但至少有一个核心数据点作为邻居。

  3. 最后,此算法识别“噪声”数据点,这些数据点不是核心数据点或边界数据点。

以下是最常见的基于密度的聚类算法——

DBSCAN Clustering

DBSCAN (基于密度的噪声应用空间聚类)算法是最常见的基于密度的聚类算法之一。DBSCAN算法需要两个参数:最小邻居数(minPts)和核心数据点之间的最大距离(eps)。

OPTICS Clustering

OPTICS (对点进行排序以识别聚类结构)是一种基于密度的聚类算法,通过建立数据集的可达性图来进行操作。可达性图是有向图,它将数据点连接到指定距离阈值内的最近邻居。可达性图中的边根据连接数据点之间的距离进行加权。然后该算法基于指定的密度阈值,通过递归分割可达性图将可达性图构造为分层的聚类结构。

HDBSCAN Clustering

HDBSCAN (分层基于密度的噪声应用空间聚类)是基于密度聚类的聚类算法。这是一种较新的算法,它建立在流行的DBSCAN算法之上,并具有许多优势,例如更好地处理不同密度的聚类,以及检测不同形状和大小的聚类的能力。

在接下来的三章中,我们将详细讨论这三个基于密度的聚类算法,以及它们在Python中的实现。