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

sklearn.datasets模块中的分类数据集生成器

发布时间:2024-01-04 01:50:51

sklearn.datasets模块提供了几个分类数据集生成器,这些生成器可以用来创建分类问题的样本数据。本文将介绍这些生成器,并提供使用例子。

1. make_classification: 这个生成器可以创建具有指定数量的样本和特征的分类问题数据。它可以根据指定的分布生成不同的类别,也可以生成具有指定相关性的特征。下面是一个使用make_classification生成样本数据的例子:

from sklearn.datasets import make_classification

# 创建样本数据
X, y = make_classification(n_samples=1000, n_features=10, n_informative=5, n_classes=2)

# 打印样本数据的维度
print(X.shape) #(1000, 10)
print(y.shape) #(1000,)

2. make_blobs: 这个生成器可以创建聚类问题中的样本数据。它可以生成具有不同类别的高斯分布数据集。下面是一个使用make_blobs生成样本数据的例子:

from sklearn.datasets import make_blobs

# 创建样本数据
X, y = make_blobs(n_samples=1000, n_features=2, centers=3)

# 打印样本数据的维度
print(X.shape) #(1000, 2)
print(y.shape) #(1000,)

3. make_moons: 这个生成器可以创建具有两个半月形类别的样本数据。它可以用于创建非线性可分的分类问题数据。下面是一个使用make_moons生成样本数据的例子:

from sklearn.datasets import make_moons

# 创建样本数据
X, y = make_moons(n_samples=1000, noise=0.1)

# 打印样本数据的维度
print(X.shape) #(1000, 2)
print(y.shape) #(1000,)

4. make_circles: 这个生成器可以创建具有两个同心圆形类别的样本数据。它可以用于创建非线性可分的分类问题数据。下面是一个使用make_circles生成样本数据的例子:

from sklearn.datasets import make_circles

# 创建样本数据
X, y = make_circles(n_samples=1000, noise=0.1)

# 打印样本数据的维度
print(X.shape) #(1000, 2)
print(y.shape) #(1000,)

这些生成器可以帮助我们在机器学习模型的训练和评估过程中生成分类问题的样本数据。通过调整生成器的参数,可以创建不同分布、不同类别数和不同特征数的样本数据,从而适应各种类型的分类问题。