sklearn make_blobs 参数详解
时间: 2024-06-09 09:08:48 浏览: 141
`make_blobs` 是一个用于生成聚类数据的函数,可以用于测试聚类算法的效果。下面是 `make_blobs` 中常用参数的说明:
- `n_samples`:生成的样本数,默认值为 100。
- `n_features`:生成的特征数,默认值为 2。
- `centers`:指定样本的中心点,可以是整数或数组。当 `centers` 为整数时,表示生成几个中心点;当 `centers` 为数组时,表示指定每个中心点的坐标位置。
- `cluster_std`:每个簇的标准差,表示簇中每个点与该簇中心点的距离。默认值为 1.0。
- `center_box`:指定中心点的范围,当 `centers` 为整数时有效。默认值为 (-10.0, 10.0)。
- `shuffle`:是否打乱样本顺序,默认值为 True。
- `random_state`:随机种子,保证每次生成的样本相同。
例如,以下代码将生成一个包含 300 个样本,共四个中心点的聚类数据集:
```python
from sklearn.datasets import make_blobs
X, y = make_blobs(n_samples=300, centers=4, cluster_std=0.5, random_state=42)
```
其中,`X` 是生成的样本特征矩阵,`y` 是每个样本所属的簇的标签。可以使用 `matplotlib` 将生成的数据可视化:
```python
import matplotlib.pyplot as plt
plt.scatter(X[:, 0], X[:, 1], c=y, cmap='viridis')
plt.show()
```
生成的效果如下图所示:
![make_blobs](https://img-blog.csdn.net/20180801173925140?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xlZ2FjeV9wbGFjZV9zaGFyZQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/75)
阅读全文