ML之DR之PCA:利用PCA对手写数字图片识别数据集进行降维处理(理解PCA)

ML之DR之PCA:利用PCA对手写数字图片识别数据集进行降维处理(理解PCA)


初步理解PCA

#理解PCA:线性相关矩阵秩计算样例

import numpy as np

M = np.array([[1, 2], [1009, 2018]])      #初始化一个2*2的线性相关矩阵
result=np.linalg.matrix_rank(M, tol=None) #计算2*2线性相关矩阵的秩
print('得出矩阵的秩:',result)

输出结果

利用PCA对手写数字图片识别数据集进行降维处理

核心代码


X_digits = digits_train[np.arange(64)]
y_digits = digits_train[64]

estimator = PCA(n_components=2)
X_pca = estimator.fit_transform(X_digits)

    for i in range(len(colors)):
        px = X_pca[:, 0][y_digits.as_matrix() == i]
        py = X_pca[:, 1][y_digits.as_matrix()== i]
        plt.scatter(px, py, c=colors[i])

    plt.legend(np.arange(0,10).astype(str))
    plt.xlabel('First Principal Component')
    plt.ylabel('Second Principal Component')
(0)

相关推荐