OPTICS聚类

2025年1月5日 | 阅读6分钟

OPTICS 是一种基于密度的聚类技术,可以提取具有不同密度和形状的簇。在大型、高维数据集中查找具有不同密度的簇是其用途之一。

OPTICS 的主要目标是查找数据集中密度连接的点,以提取其聚类结构。通过可达性图(一个由一组规则生成的有序点列表),可以生成数据的完全基于密度的图示。

每个点都被赋予一个可达距离,或者说一个点从数据集中其他点到达它的容易程度。

同一簇中的点是那些具有相似可达距离的点。

OPTICS 算法的主要步骤如下:

  • 设置一个密度阈值参数 Eps,它调节可能的最小簇密度。
  • 找出数据集中每个变量与其 k 个最近邻之间的距离。
  • 通过从一个随机位置开始,并基于其邻居的密度来计算数据集中每个点的可达距离。
  • 根据可达距离对分量进行排序,可以创建可达性图。
  • 将彼此靠近且可达距离相似的点分组,以从可达性图中创建簇。
  • OPTICS 相对于 DBSCAN 的一个主要优点是,它通过提取数据的聚类结构来生成可达性图,而不是需要预先指定簇的数量。
  • 在特定点停止可达性图,使用户在选择要创建的簇数量时拥有更大的自由度。
  • 此外,与 DBSCAN 等其他基于密度的聚类算法相比,它可以识别分层结构并处理具有不同密度和形状的簇。

Python 中的 sklearn.cluster 用于实现 OPTICS。scikit-learn 库中的一个类名为 OPTICS。需要几个参数,例如最小密度阈值(Eps)、要考虑的最近邻的数量(min_samples)以及可达距离限制(xi)。

它们如下:

核心距离:将某个点指定为核心点所需的最小半径。如果该因子不是核心因子,则其核心距离未知。

可达距离:可达距离是相对于另一个数据点 q 定义的。任意两点之间的可达距离是 p 的核心距离和 q 与 p 之间的欧几里得距离(或其他距离度量)中的最大值。请记住,如果 q 不是核心因子,则可达距离不一定指定。

OPTICS CLUSTERING

此聚类方法与其他方法之间的区别在于,此方法不将数据正式划分为组。相反,它使用此可视化来根据可达距离生成数据的聚类。

将 OPTICS 与 DBSCAN 聚类进行比较

内存成本:OPTICS 聚类方法使用更多内存,因为它会跟踪下一个数据点,即在可达距离方面,最接近正在处理的点。此外,由于 DBSCAN 中的最近邻查询比半径查询更复杂,因此它需要更多的处理能力。

更少的参数:OPTICS 聚类技术仅包含在上述伪代码中,以最小化所需时间,并且不需要维护 epsilon 参数。因此,减少了微调参数的分析过程。此方法不会将提供的数据分组到子集中。

此方法不会将提供的数据分组到子集中。它仅生成可达性图,程序员必须理解它并相应地聚类这些点。

处理不同密度:由于 DBSCAN 聚类需要一个 epsilon 值来定义每个点的邻域大小,因此在处理不同密度的数据集时需要帮助。另一方面,OPTICS 可以通过利用可达距离的概念来适应数据的局部密度。这表明,在具有不同密度的的数据集中,OPTICS 在识别各种大小和形状的簇方面比 DBSCAN 更有效。

簇提取:OPTICS 生成各种粒度;但是,DBSCAN 也能识别簇。这使得聚类更加灵活,并且可以突出 DBSCAN 中可能在固定 epsilon 值下不可见的簇。但是,在这种情况下,程序员还需要进行更多的手动解释和决策。

噪声处理:虽然 DBSCAN 准确地区分了核心点、边界点和噪声点,但 OPTICS 在识别噪声点方面并不十分有效。另一方面,高可达距离的点可以被视为可能的噪声点。

然而,这意味着 OPTICS 在定位被噪声点包围的小簇方面可能不太成功,因为可达性图可能会将这些簇与噪声点混合。

运行时间复杂度:由于使用优先队列来维护可达距离,OPTICS 通常比 DBSCAN 具有更高的运行时间复杂度。另一方面,新的研究表明,通过优化可以降低 OPTICS 的计算复杂度并提高其在大数据集上的可伸缩性。

它在处理数据中的噪声和查找任何形状的簇方面非常有帮助。主要目标是根据数据点的密度对其进行“排序”。这是一种灵活的方法,因为它不需要预先指定簇的数量。

以下是 OPTICS 聚类功能的快速回顾:

可达距离:OPTICS 引入了一个度量标准,用于衡量数据点聚集在一起的紧密程度。其定义是,在给定密度下,从一个位置到另一个位置可以到达的最大距离。

核心距离:一个点必须至少可达一次才能被视为核心点。密集区域中的中心位置称为核心点。

聚类:此图中的簇中心表示为峰值。通过检查此图,可以识别组及其层次结构。

设置参数:为了使用 OPTICS,必须指定簇的最小点数和距离阈值。

优点

  • OPTICS 可以识别不同大小和形状的簇。
  • 与其他一些聚类算法相比,它不太容易受到参数选择的影响。
  • OPTICS 揭示的层次结构有助于理解簇组织。

挑战

  • OPTICS 可能计算成本很高,尤其是在处理大型数据集时。
  • 确定理想的参数可能具有挑战性,需要一些尝试和错误。

结论

总之,OPTICS(Ordering Points To Identify the Clustering Structure)是一种有效的基于密度的聚类算法,在查找任何大小或形状的数据集中的簇方面表现出色。它的关键要素,包括生成可达性图、可达距离和核心距离,使其能够显示簇的分层结构。OPTICS 在处理具有不同密度和噪声级别的数据集,以及在簇的数量和形状未知的情况下特别有用。

该技术非常适合层次聚类,因为它能够根据数据点的密度自然地对其进行排序。通过对数据底层结构更深入的理解,这种排序揭示了簇之间的关联和层次结构。

OPTICS 存在缺点,如处理成本和需要设置适当的参数。然而,它也有优点,如灵活性和分层洞察力,这使其成为数据挖掘、模式识别和探索性数据分析的有用工具。OPTICS 可以帮助从业者和研究人员更好地理解复杂的数据集,尤其是在簇可能具有不同密度和形状的实际环境中。与任何聚类技术一样,最佳结果取决于仔细的参数调整以及对数据独特属性的考虑。