如何在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)
資料結構
網路
關係資料庫管理系統(RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP