第2关:K-means模型训练代码
时间: 2025-01-04 09:39:55 浏览: 11
K-means是一种常用的无监督机器学习算法,用于数据聚类。第二关的K-means模型训练代码一般包括以下几个步骤:
1. **导入必要的库**:
```python
import numpy as np
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt
```
2. **加载或生成数据**:
```python
# 假设数据是一个二维数组
data = np.random.rand(100, 2) # 示例随机数据
```
3. **初始化聚类中心**(可以选择随机样本或预定义点):
```python
k = 3 # 要划分的簇数
initial_centers = data[np.random.choice(range(data.shape[0]), k, replace=False)]
```
4. **设置KMeans模型并拟合数据**:
```python
kmeans = KMeans(n_clusters=k, init=initial_centers)
kmeans.fit(data)
```
5. **获取聚类结果**:
```python
labels = kmeans.labels_
cluster_centers = kmeans.cluster_centers_
```
6. **可视化结果**:
```python
plt.scatter(data[:, 0], data[:, 1], c=labels, cmap='viridis')
plt.scatter(cluster_centers[:, 0], cluster_centers[:, 1], c='red', marker='x')
plt.xlabel('特征1')
plt.ylabel('特征2')
plt.title('K-means聚类结果')
plt.show()
```
阅读全文