首页 > 编程知识 正文

图像pca降维原理,pca降维后怎么输出重要特征

时间:2023-05-03 19:59:11 阅读:160692 作者:1126

****降维作用* * *

数据高维易处理,使用方便

相关特征尤其是重要特征可以更清晰地显示在数据中; 如果只有二维或三维,更容易可视化展示;

消除数据噪声

降低算法开销

****降维的简明说明* * *

为了便于说明淘宝交易数据等高维数据降维的作用,这里假设有下单数、支付数、商品类别、售价四个维度,数据量上百万条。 关于下单数和支付数,我们认为两者是线性相关的。 也就是说,如果知道以下单数,就可以得到支付数。 这里很明显这两个属性维有冗余,如果去掉下单数,保留支付数,就可以保证原始数据,这就是降维。 当然,并非所有数据都有明显与线性相关的属性维。 降低维度后,最终目标是各属性维度之间的线性无关。

*****PCA降维步骤原理******

首先,使用协方差来衡量相关属性是否存在。 在博客的相关分析中有介绍,在此不做说明。 协方差测量二维属性之间的相关。 对于n维属性,需要协方差矩阵,其对角线是每个维的方差。

步骤:

设有m条n维数据。

1)将原始数据按列组成n行m列矩阵X

2)将X的每一行(代表一个属性字段)进行零均值化,即减去这一行的均值

3)求出协方差矩阵

4)求出协方差矩阵的特征值及对应的特征向量r

5)将特征向量按对应特征值大小从上到下按行排列成矩阵,取前k行组成矩阵P

http://www.Sina.com/http://www.Sina.com /

*****关于维数k的选择*****

使用表达式error=表示压缩后的误差,m的所有特征的个数。 然后确定阈值x,例如0.01,error x选择k以使这个m可以接受。 否则,我就试试别的。

* * * * * sk learn库在python中的pca实现* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

froms klearn.decompositionimportpcaimportnumpyasnpfromsklearn.preprocessingimportstandardscalerx=NP.array (6,33 ) 22 ] (# feature normalization (feature scaling ) X_scaler=StandardScaler () x=x_scaler.) ) ) )

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。