无监督学习聚类算法代码
时间: 2024-06-17 14:07:09 浏览: 131
无监督学习聚类算法是一种通过对数据进行自动分组来发现数据内在结构的算法。下面我给你介绍两种常见的无监督学习聚类算法以及它们的代码实现:
1. K-Means聚类算法
K-Means算法是一种常见的无监督学习聚类算法,它将数据集分成K个簇,并将每个数据点分配到最近的簇中心。下面是K-Means算法的代码实现:
```python
from sklearn.cluster import KMeans
import numpy as np
# 定义数据集
X = np.array([[1, 2], [1, 4], [1, 0], [4, 2], [4, 4], [4, 0]])
# 定义K值
kmeans = KMeans(n_clusters=2, random_state=0)
# 训练模型
kmeans.fit(X)
# 输出预测结果
print(kmeans.labels_)
```
2. 层次聚类算法
层次聚类算法是另一种常见的无监督学习聚类算法,它通过不断合并最近的簇来构建一棵树形结构,直到所有数据点都在同一个簇中。下面是层次聚类算法的代码实现:
```python
from sklearn.cluster import AgglomerativeClustering
import numpy as np
# 定义数据集
X = np.array([[1, 2], [1, 4], [1, 0], [4, 2], [4, 4], [4, 0]])
# 定义聚类器
agg = AgglomerativeClustering(n_clusters=2)
# 训练模型
agg.fit(X)
# 输出预测结果
print(agg.labels_)
```
阅读全文