ML 中用于聚类算法的不同方法类型

2025年6月20日 | 阅读 4 分钟

聚类算法有很多种。由于它们并非都使用相同的模型进行聚类,因此不容易进行分类。在本教程中,我们将介绍最流行的聚类算法方法,因为已发表的聚类算法已超过100种。

基于分布的方法

这是一种聚类模型,它根据数据点可能属于同一分布的概率来拟合数据。完成的聚类可以是正态分布,也可以是高斯分布。在固定数量的分布情况下,高斯分布可能更为普遍,所有将要出现的数据都将被纳入其中,以便最大化数据分布。这导致了如下图所示的分组。

Different Types of Methods for Clustering Algorithms in ML

此外,基于分布的聚类生成的簇依赖于为数据精确指定的数学模型,这对于某些数据分布来说是一个高风险的假设。这种模型在处理合成数据以及不同大小的簇时表现良好。然而,如果不施加约束以降低模型的复杂性,该模型可能会出现问题。

例如: 使用多元正态分布的期望最大化算法是该算法的一个流行示例。

基于质心的方法

这是一种最基本的迭代聚类算法,其中簇是根据信息点与簇中心的接近程度形成的。在这种情况下,簇的中心,即质心,的构建方式是使数据点与中心之间的距离最小化。这是NP-Hard问题中最基本的一种,因此解决方案通常是通过多次试验构建的。

例如: K-均值算法是该算法最著名的实例之一。

Different Types of Methods for Clustering Algorithms in ML

该算法的主要问题在于我们必须在过程开始前定义 K 值。当簇是基于密度形成时,该算法也会遇到问题。

基于连通性的方法

基于连通性模型的基本思想与质心模型相似,即根据数据点之间的距离来定义簇。该模型基于这样一个理念:距离较近的数据点比距离较远的数据点具有更相似的行为。

距离函数的选择是一个主观问题。它不是对数据集的简单划分;相反,它提供了一个在特定距离处合并的广泛簇阵列。这些模型易于理解,但缺乏可扩展性。

Different Types of Methods for Clustering Algorithms in ML

例如: 层次聚类算法及其变体。

密度模型

这种聚类模型将搜索数据空间,以找到该数据区域中具有不同数量数据点的区域。它将根据数据空间中存在的不同密度来分离不同的密度区域。

例如: DBSCAN 和 OPTICS。

Different Types of Methods for Clustering Algorithms in ML

子空间聚类方法

子空间聚类是一种无监督方法,旨在将数据点分组到簇中,使得一个簇中的所有数据点都位于一个低维线性子空间中。它是特征选择的一种扩展形式。子空间聚类需要一种搜索技术和评估标准;然而,基于子空间的聚类方法限制了评估标准的范围。子空间聚类算法将搜索定位到相关维度,并使其能够识别跨多个子空间存在的簇。子空间聚类最初是为了解决特定的计算机视觉问题而设计的,这些问题需要将子空间结构合并到数据中。不过,它在机器学习社区中正获得越来越多的关注。它被用于电影和社交网络推荐以及生物数据集中。子空间聚类引发了关于数据隐私的问题,因为许多这些应用处理的是敏感数据。数据点被认为是互不相干的,因为它只保护用户每个方面的独特隐私,而不是数据库用户的完整个人资料。

根据其搜索策略,有两种类型的子空间聚类。

  • 自顶向下算法 在整个维度范围内识别初始聚类,然后评估每个簇的子空间。
  • 自底向上方法 在低维空间中找到密集区域。然后这些区域合并形成簇。

结论

在本教程中,我们讨论了用于聚类算法的不同类型的方法,这些方法可用于区分属性值。