选择聚类分析方法
本主题简要概述了统计和机器学习工具箱™中可用的聚类方法。
聚类方法
聚类分析,也叫市场细分分析或分类分析,是一种常见的无监督学习方法。无监督学习用于从无标记响应的输入数据组成的数据集中进行推理。例如,可以使用聚类分析进行探索性数据分析,以发现未标记数据中的隐藏模式或分组。
聚类分析创建组,或者集群的数据。属于同一个集群的对象彼此相似,不同于属于不同集群的对象。为了量化“相似”和“不同”,你可以使用不相似度量(或距离度量),这是特定于你的应用程序和你的数据集的领域。此外,根据您的应用程序,您可能会考虑缩放(或标准化)数据中的变量,以便在聚类过程中给予它们同等的重要性。
统计和机器学习工具箱为这些聚类方法提供了功能:
分层聚类
分层聚类通过创建一个聚类树或系统树图。树不是单一的集群集合,而是多层次的层次结构,一个层次的集群结合形成下一层次的集群。这种多层层次结构允许您选择最适合您的应用程序的集群级别或规模。分层聚类将数据中的每个点分配到一个集群中。
使用clusterdata
对输入数据进行分层聚类。clusterdata
包含了pdist
,链接
,集群
函数,你可以单独使用更详细的分析。的系统树图
函数绘制聚类树。更多信息,请参见《层次聚类介绍》。
k则和k-Medoids集群
k——集群和k-medoids聚类分区数据成k相互排斥的集群。这些聚类方法需要指定聚类的数量k。这两个k则和k-medoids聚类将数据中的每个点分配到一个聚类中;然而,与分层聚类不同的是,这些方法是基于实际观察结果(而不是不相似度量)进行操作的,并创建单一级别的聚类。因此,k——或k-medoids聚类通常比分层聚类更适合于大量数据。
使用kmeans
和kmedoids
来实现k——集群和k分别-medoids集群。更多信息,请参见介绍k聚类则和k-Medoids集群。
基于密度的带噪声应用空间聚类(DBSCAN)
DBSCAN是一种基于密度的算法,可以识别数据中任意形状的聚类和异常值(噪声)。在聚类过程中,DBSCAN会识别不属于任何聚类的点,这使得这种方法对于基于密度的离群点检测非常有用。不像k则和k-medoids聚类,DBSCAN不需要集群数量的先验知识。
高斯混合模型
高斯混合模型(GMM)作为多元法向密度分量的混合物形成簇。对于给定的观测,GMM将后验概率分配给每个成分密度(或聚类)。后验概率表明观察结果有一定概率属于每个聚类。一个GMM可以执行硬聚类,选择后验概率最大化的成分作为观察的指定聚类。你也可以使用GMM来执行软,或模糊,聚类,根据聚类的评分或后验概率将观察值分配给多个聚类。GMM可能是一种比k-表示聚类,当聚类具有不同的大小和不同的内部关联结构时。
使用fitgmdist
适合一个gmdistribution
对象指向你的数据。你也可以使用gmdistribution
来通过指定分布参数来创建一个GMM对象。当您有一个拟合的GMM时,您可以使用群集查询数据集群
函数。更多信息,请参见使用高斯混合模型聚类。
k-最近邻搜索和半径搜索
k-最近邻搜索找到k数据中最接近一个或一组查询点的点。相比之下,半径搜索查找数据中与某个查询点或一组查询点在指定距离内的所有点。这些方法的结果取决于距离度量你指定。
使用knnsearch
函数来找到k-最近的邻居或rangesearch
函数查找在输入数据的指定距离内的所有邻居。你也可以使用训练数据集创建一个搜索器对象,并将对象和查询数据集传递给对象函数(knnsearch
和rangesearch
)。更多信息,请参见使用最近邻居分类。
谱聚类
谱聚类是一种基于图的查找算法k数据中任意形状的簇。该技术涉及到用低维表示数据。在低维中,数据中的集群分离得更广,使您能够使用算法,如k——或k-medoids集群。这种低维是基于拉普拉斯矩阵的特征向量。拉普拉斯矩阵是一种表示相似图的方法,它将数据点之间的局部邻域关系建模为无向图。
使用spectralcluster
在输入数据矩阵或相似图的相似矩阵上执行谱聚类。spectralcluster
要求指定聚类的数量。然而,谱聚类的算法也提供了一种估计数据中聚类数量的方法。更多信息,请参见使用光谱聚类划分数据。
聚类方法的比较
本表比较了统计和机器学习工具箱中可用的聚类方法的特点。
方法 | 基础算法 | 算法的输入 | 需要指定数量的集群 | 集群的形状识别 | 对离群点检测很有用 |
---|---|---|---|---|---|
分层聚类 | 对象之间的距离 | 观测点之间的成对距离 | 没有 | 任意形状的集群,取决于指定的“链接” 算法 |
没有 |
k - means聚类和k-Medoids集群 | 物体与质心之间的距离 | 实际观察 | 是的 | 具有相等对角协方差的球状聚类 | 没有 |
基于密度的有噪声应用的空间聚类(DBSCAN) | 数据中区域的密度 | 实际观测值或观测值之间的成对距离 | 没有 | 任意形状的簇 | 是的 |
高斯混合模型 | 混合高斯分布 | 实际观察 | 是的 | 具有不同协方差结构的球状聚类 | 是的 |
最近的邻居 | 对象之间的距离 | 实际观察 | 没有 | 任意形状的簇 | 是的,取决于指定的邻居数量 |
谱聚类(使用光谱聚类划分数据) | 表示数据点之间连接的图 | 实际观察或相似度矩阵 | 是的,但算法也提供了一种估计集群数量的方法 | 任意形状的簇 | 没有 |