欢迎访问宙启技术站
智能推送

使用sklearn.datasets.samples_generatormake_blobs()函数产生随机数据样本集

发布时间:2023-12-24 04:37:04

sklearn的datasets模块提供了一些用于机器学习的常用数据集合生成函数,其中之一是make_blobs()函数。make_blobs()函数可以用来生成随机数据样本集,其中的样本是服从多个高斯分布的。

make_blobs()函数的语法如下:

make_blobs(n_samples=100, n_features=2, centers=None, cluster_std=1.0, center_box=(-10.0, 10.0), shuffle=True, random_state=None)

参数说明:

- n_samples:样本总数,默认值为100

- n_features:特征数,默认值为2

- centers:簇中心的个数或自定义的簇中心,默认值为None

- cluster_std:簇的标准差,默认值为1.0

- center_box:每个簇的中心范围,默认值为(-10.0, 10.0)

- shuffle:是否打乱样本,默认值为True

- random_state:随机数种子,默认值为None

下面通过一个例子来演示make_blobs()函数的使用:

import matplotlib.pyplot as plt
from sklearn.datasets import make_blobs

# 生成一个样本总数为1000,特征数为2的样本集,其中有3个簇中心,簇的标准差为1.5
X, y = make_blobs(n_samples=1000, n_features=2, centers=3, cluster_std=1.5)

# 绘制生成的样本集,用不同颜色表示不同簇
plt.scatter(X[:, 0], X[:, 1], c=y)
plt.show()

通过上述代码,我们生成了一个样本总数为1000,特征数为2的样本集,其中有3个簇中心,簇的标准差为1.5。然后,我们使用plt.scatter()函数绘制了生成的样本集,用不同颜色表示不同簇。

make_blobs()函数在生成样本集时,根据传入的参数生成服从多个高斯分布的数据,并将不同簇的样本集按类别标签标记。这样生成的数据集可以用于机器学习中的聚类任务,比如K均值聚类算法。

总结来说,make_blobs()函数是一个非常方便的用于生成随机数据样本集的工具函数,通过调整参数,可以方便地生成不同分布、不同数量的样本集,为机器学习任务提供了便利。