美文网首页
Python 实现 PCA

Python 实现 PCA

作者: BenjaminY | 来源:发表于2019-02-19 09:34 被阅读0次

实现
基于python带有功能强大的sklearn库,非常适合做机器学习,所以在此以python为例实现。

首先,训练集有6组数据,每组数据有4个特征,我们的目的是将其降到2维,也就是2个特征。

#coding=utf-8
import numpy as np
from sklearn.decomposition import PCA
X = np.array([[-1,2,66,-1], [-2,6,58,-1], [-3,8,45,-2], [1,9,36,1], [2,10,62,1], [3,5,83,2]])  #导入数据,维度为4
pca = PCA(n_components=2)   #降到2维
pca.fit(X)                  #训练
newX=pca.fit_transform(X)   #降维后的数据
# PCA(copy=True, n_components=2, whiten=False)
print(pca.explained_variance_ratio_)  #输出贡献率
print(newX)                  #输出降维后的数据

参数解释:

n_components: 我们可以利用此参数设置想要的特征维度数目,可以是int型的数字,也可以是阈值百分比,如95%,让PCA类根据样本特征方差来降到合适的维数,也可以指定为string类型,MLE。
copy: bool类型,TRUE或者FALSE,是否将原始数据复制一份,这样运行后原始数据值不会改变,默认为TRUE。
whiten:bool类型,是否进行白化(就是对降维后的数据进行归一化,使方差为1),默认为FALSE。如果需要后续处理可以改为TRUE。
explained_variance_: 代表降为后各主成分的方差值,方差值越大,表明越重要。
explained_variance_ratio_: 代表各主成分的贡献率。
inverse_transform(): 将降维后的数据转换成原始数据,X=pca.inverse_transform(newX)。

结果分析:

[0.95713353 0.03398198]
[[ 7.96504337 4.12166867]
[ -0.43650137 2.07052079]
[-13.63653266 1.86686164]
[-22.28361821 -2.32219188]
[ 3.47849303 -3.95193502]
[ 24.91311585 -1.78492421]]
第一行为各主成分的贡献率,可以看出第一个特征占了很大比重 ,后面几行是降维后的数据。

相关文章

  • PCA降维

    参考:如何理解主元分析(PCA)?PCA的数学原理转自:python实现PCA ★ PCA思路: 我们的初始矩阵为...

  • CH04算法进阶_PCA主成分分析

    理论部分 python实现PCA主成分分析

  • Python 实现 PCA

    实现基于python带有功能强大的sklearn库,非常适合做机器学习,所以在此以python为例实现。 首先,训...

  • 数据处理之PCA

    推荐好文PCA的数学原理本文将会用Python来实现PCA,帮助更好的理解 视频地址:https://www.yo...

  • PCA原理及python实现

    PCA(Principal Component Analysis)又叫主成分分析,主要用于信息压缩,那么什么是信息...

  • PCA(主成分分析)python实现

    回顾了下PCA的步骤,并用python实现。深刻的发现当年学的特征值、特征向量好强大。 Introduction ...

  • 【火炉炼AI】机器学习053-数据降维绝招-PCA和核PCA

    【火炉炼AI】机器学习053-数据降维绝招-PCA和核PCA (本文所使用的Python库和版本号: Python...

  • PCA

    PCA降维 一、算法原理 降维算法 还原算法 二、算法实现 三、scikit-learn PCA 四、PCA降噪 ...

  • [转]PCA

    主成分分析PCA:这一篇给出了一个可视的样例 PCA方法从原理到实现 PCA算法实现:纯代码,我没有测试过

  • python PCA

    sklearn.decomposition.PCA参数介绍 接下来我们主要基于sklearn.decomposit...

网友评论

      本文标题:Python 实现 PCA

      本文链接:https://www.haomeiwen.com/subject/uixxyqtx.html