1.PCA主成分分析原理和降维求解步骤
这些在前面文章都已经详细讲解,看了会很容易理解,详见前面文章:【机器学习】【PCA-1】PCA基本原理和原理推导 + PCA计算步骤讲解 + PCA实例展示数学求解过程
其实PCA计算过程很简单,核心的是理解PCA的原理推理,主要涉及协方差矩阵式C是一个实对角矩阵,实对角矩阵的不同特征值对应的特征向量是正交的!PCA降维后的降维矩阵的协方差矩阵要求是对角矩阵,每个维度特征互相的协方差cov(x,y)=0。然后用这俩思路联合起来推导出来的PCA降维公式Z=XU。
详细的推理过程还是看前面文章为妙。
2.PCA降维的Python实现
完全人肉出品,代码如下所示:
2.1代码
# -*- coding: utf-8 -*-
"""
@author: 蔚蓝的天空Tom
Talk is cheap, show me the code
Aim:使用PCA求样本矩阵X的K阶降维矩阵Z
"""
import numpy as np
class CPCA(object):
'''用PCA求样本矩阵X的K阶降维矩阵Z
Note:请保证输入的样本矩阵X shape=(m, n),m行样例,n个特征
'''
def __init__(self, X, K):
'''
:param X,训练样本矩阵X
:param K,X的