落生* 2019-02-21 10:39 采纳率: 0%
浏览 2488

sparkMLlib PCA降维后的数据与原来的数据不一样了,怎么使用sparkMLlib PCA降维后得到数据?

原始数据矩阵如下
// 原始数据
val arr = Array(
Vectors.dense(4.0,1.0, 4.0, 5.0),
Vectors.dense(2.0,3.0, 4.0, 5.0),
Vectors.dense(4.0,0.0, 6.0, 7.0))
降维后的数据如下:
[-5.061524965038313,2.6731387750445608]
[-7.489827262491891,4.4347709591799624]
[-2.9078143281202276,4.506586481532503]

spark PCA处理后的数据代表什么意思,和原来的数据不一样,怎么利用这个数据,比如我想对它做线性回归?

  • 写回答

2条回答 默认 最新

  • 落生* 2019-02-21 14:51
    关注

    PCA(Principal Components Analysis),翻译成主成分分析,它将多维度数据压缩,保留最主要的信息维度,去掉那些不重要的,这就是PCA降维。注意:降维后的特征数据与原特征数据没有业务含义上的联系了,它是由一个高维空间投影到一个低维空间,里面的数据被投影转换到另一个维度上了,因此具体数值已经没有了原先的业务含义。举个例子,上述24维度包括本日收入、耗币数量、广场客流等,压缩成12个维度后就没有对应的12个业务概念了,这么做只是为了存留最主要的信息从而便于后续更有效的处理和分析数据。
    PCA具体执行过程如下:
    标准化原始维度数据(实质只需要减均值即可,不必标准化方差);
    计算出多维特征的协方差矩阵,从而得到矩阵的特征值和特征向量;
    将特征值从大到小排序,选取前k个主成分,找到其对应的k个特征向量;
    将原始维度数据投影到选取的k个特征向量上,原始数据特征的维度就变成了k维;
    可以用这k维数据代表原始大维度的数据,进行后续数据处理分析。

    引用:https://zhuanlan.zhihu.com/p/37495710

    评论

报告相同问题?

悬赏问题

  • ¥15 openwrt双栈NAT
  • ¥15 部分网页页面无法显示!
  • ¥15 怎样解决power bi 中设置管理聚合,详细信息表和详细信息列显示灰色,而不能选择相应的内容呢?
  • ¥15 QTOF MSE数据分析
  • ¥15 平板录音机录音问题解决
  • ¥15 请问维特智能的安卓APP在手机上存储传感器数据后,如何找到它的存储路径?
  • ¥15 (SQL语句|查询结果翻了4倍)
  • ¥15 Odoo17操作下面代码的模块时出现没有'读取'来访问
  • ¥50 .net core 并发调用接口问题
  • ¥15 网上各种方法试过了,pip还是无法使用