如何在Python中将Sklearn DIGITS数据集转换为2特征和3特征数据集?


Sklearn DIGITS数据集有64个特征,因为每个数字图像的大小为8x8像素。我们可以使用主成分分析 (PCA) 将Scikit-learn DIGITS数据集转换为具有2个特征的新特征空间。将64个特征的数据集转换为2个特征的数据集将大大减少数据大小,并且我们会丢失一些有用的信息。这也将影响机器学习模型的分类准确性。

将DIGITS数据集转换为2特征数据集的步骤

我们可以按照以下步骤使用PCA将DIGITS数据集转换为2特征数据集:

  • 首先,从scikit-learn导入必要的包。我们需要导入datasets和decomposition包。

  • 加载DIGITS数据集。

  • 初始化主成分分析 (PCA) 并应用fit()函数来拟合数据。

  • 将数据集转换为新的维度,即2特征数据集。

示例

在下面的示例中,我们将使用上述步骤将scikit-learn DIGITS数据集使用PCA转换为2个特征。

# Importing the necessary packages from sklearn import datasets from sklearn import decomposition # Load DIGITS dataset DIGITS = datasets.load_digits() X_digits, Y_digits = DIGITS.data, DIGITS.target print('DIGITS Dataset Size: ', X_digits.shape, Y_digits.shape) # Initialize PCA and fit the data pca_2 = decomposition.PCA(n_components=2) pca_2.fit(X_digits) # Transforming DIGITS data to new dimensions(with 2 features) X_digits_pca2 = pca_2.transform(X_digits) # Printing new dataset print('New Dataset size after transformations: ', X_digits_pca2.shape)

输出

它将产生以下输出:

DIGITS Dataset Size: (1797, 64) (1797,)
New Dataset size after transformations: (1797, 2)

将具有6个类别的DIGITS数据集转换为2特征数据集

Sklearn DIGITS数据集有64个特征,针对0-9数字有10个类别。我们可以使用主成分分析 (PCA) 将具有前6个类别的DIGITS数据集转换为具有2个特征的新特征空间。

我们可以按照以下步骤使用PCA将具有前6个类别的DIGITS数据集转换为2特征数据集:

  • 首先,从scikit-learn导入必要的包。我们需要导入datasets和decomposition包。

  • 加载具有6个类别的DIGITS数据集。

  • 初始化主成分分析 (PCA) 并应用fit()函数来拟合数据。

  • 将数据集转换为新的维度,即2特征数据集。

示例

在下面的示例中,我们将使用上述步骤将具有6个类别的scikit-learn DIGITS数据集使用PCA转换为2个特征。

# Importing the necessary packages from sklearn import datasets from sklearn import decomposition # Load DIGITS dataset with 6 classes DIGITS = datasets.load_digits(n_class = 6) X_digits, Y_digits = DIGITS.data, DIGITS.target print('DIGITS Dataset Size: ', X_digits.shape, Y_digits.shape) # Initialize PCA and fit the data pca_2 = decomposition.PCA(n_components=2) pca_2.fit(X_digits) # Transforming DIGITS data to new dimensions(with 2 features) X_digits_pca2 = pca_2.transform(X_digits) # Printing new dataset print('New Dataset size after transformations: ', X_digits_pca2.shape)

输出

它将产生以下输出:

DIGITS Dataset Size: (1083, 64) (1083,)
New Dataset size after transformations: (1083, 2)

使用PCA将DIGITS数据集转换为3特征数据集

Sklearn DIGITS数据集有64个特征,因为每个数字图像的大小为8x8像素。我们可以使用主成分分析 (PCA) 将DIGITS数据集转换为具有3个特征的新特征空间。将64个特征的数据集转换为3个特征的数据集将大大减少数据大小,并且我们会丢失一些有用的信息。这也将影响机器学习模型的分类准确性。

我们可以按照以下步骤使用PCA将DIGITS数据集转换为3特征数据集:

  • 首先,从scikit-learn导入必要的包。我们需要导入datasets和decomposition包。

  • 加载DIGITS数据集。

  • 初始化主成分分析 (PCA) 并应用fit()函数来拟合数据。

  • 将数据集转换为新的维度,即3特征数据集。

示例

在下面的示例中,我们将使用上述步骤将scikit-learn DIGITS数据集使用PCA转换为3个特征。

# Importing the necessary packages from sklearn import datasets from sklearn import decomposition # Load DIGITS dataset DIGITS = datasets.load_digits() X_digits, Y_digits = DIGITS.data, DIGITS.target print('DIGITS Dataset Size: ', X_digits.shape, Y_digits.shape) # Initialize PCA and fit the data pca_3 = decomposition.PCA(n_components=3) pca_3.fit(X_digits) # Transforming DIGITS data to new dimensions(with 3 features) X_digits_pca3 = pca_3.transform(X_digits) # Printing new dataset print('New Dataset size after transformations: ', X_digits_pca3.shape)

输出

它将产生以下输出

DIGITS Dataset Size: (1797, 64) (1797,)
New Dataset size after transformations: (1797, 3)

更新于:2022年10月4日

浏览量:523

启动您的职业生涯

完成课程获得认证

开始学习
广告