综述常用的聚类算法(包括:单聚类算法和双聚类算法)
时间: 2023-07-09 17:55:22 浏览: 169
python实现聚类算法原理
聚类是一种无监督学习方法,其目标是将数据集中相似的数据点分组为若干个类别。常用的聚类算法包括单聚类算法和双聚类算法。
1. 单聚类算法
单聚类算法是指只能将数据集分成一个整体类别的聚类算法。常用的单聚类算法有K-Means、层次聚类和DBSCAN。
- K-Means:将数据集分成K个类别,每个类别的中心是该类别所有数据点的平均值。
- 层次聚类:将数据集分成一颗树形结构,每个节点表示一个类别,叶子节点表示单个数据点,根节点表示所有数据点属于同一个类别,树的高度表示K的大小。
- DBSCAN:通过密度来定义一个簇,簇的边界由密度较低的区域来划分。
2. 双聚类算法
双聚类算法是指能将数据集分成多个行和列的聚类算法。常用的双聚类算法有Biclustering、Spectral Co-Clustering和Non-Negative Matrix Factorization。
- Biclustering:将数据集分成子矩阵,其中行和列的聚类结构是相互独立的。
- Spectral Co-Clustering:基于谱聚类的思想,在行和列两个维度上分别进行谱聚类。
- Non-Negative Matrix Factorization:将数据矩阵分解为两个非负矩阵,分别表示行和列的聚类特征。
以上是常见的聚类算法,不同的算法适用于不同的数据集和问题,需要根据实际情况进行选择。
阅读全文