参考:https://blog.csdn.net/u014755493/article/details/69950744
降维:即将高纬度的数据,去除其属性维度的冗余,在保证原有数据分布和信息的情况下有效简化数据。降维后最终的目标是各个属性之间线性无关。
PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,可用于提取数据的主要特征分量,常用于高维数据的降维。
PCA步骤:
设有m条n维数据。
1)将原始数据按列组成n行m列矩阵X
2)将X的每一行(代表一个属性字段)进行零均值化,即减去这一行的均值
3)求出协方差矩阵
4)求出协方差矩阵的特征值及对应的特征向量r
5)将特征向量按对应特征值大小从上到下按行排列成矩阵,取前k行组成矩阵P
6)即为降维到k维后的数据
主要代码:
from sklearn.decomposition import PCA
#保证降维后的数据保持90%的信息
pca = PCA(n_components=0.9)
pca.fit(x)
pca.transform(x)
参考:
https://www.cnblogs.com/NextNight/p/6180542.html
PCA的数学模型
多层感知器模型:
https://blog.csdn.net/xueli1991/article/details/52386611