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

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

Sklearn DIGITS数据集有64个特征,因为每个数字的图像都是8×8像素大小。我们可以使用主成分分析(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数据集具有10个类别的64个特征,表示0-9的数字。我们可以使用主成分分析(PCA)将具有前6个类别的DIGITS数据集转换为具有2个特征的新特征空间。

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

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

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

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

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

示例

在下面的示例中,我们将使用上述步骤将scikit-learn的具有6个类别的DIGITS数据集转换为具有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个特征,因为每个数字的图像都是8×8像素的。我们可以使用主成分分析(PCA)将DIGITS数据集转换成具有3个特征的新特征空间。将64个特征的数据集转换为3个特征的数据集将大大减少数据的大小,我们将会丢失一些有用的信息。这也会影响机器学习模型的分类准确性。

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

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

  • 加载DIGITS数据集。

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

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

示例

在下面的示例中,我们将使用上述步骤将scikit-learn的DIGITS数据集转换为具有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)

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程