zoukankan      html  css  js  c++  java
  • PCA和SVD

    一、PCA(Principal Component Analysis)

    主成分分析,数据从原来的坐标系转换到新的坐标系,只保留新坐标系中的前面几个坐标轴,即对数据进行了降维处理

    1、算法描述

    (1)第一个新坐标轴:原数据集中方差最大的方向

    (2)第二个新坐标轴:与第一个新坐标轴正交且具有最大方差的方向

    (3)一直重复,重复次数为原始数据中特征的数目,但是到最后只保留最先产生的几个新坐标轴,而忽略余下的坐标轴

    2、步骤

    (1)计算样本数据各个特征的平均值

    (2)样本各个特征的值:=样本各个特征的值-平均值

    (3)计算协方差矩阵

    (4)计算协方差矩阵的特征值和特征向量

    (5)将特征值逆序排序

    (6)保留最上面的N个特征向量

    3、举例(待续)

    二、SVD(Singular Value Decomposition)

    奇异值分解,矩阵分解中的一种,矩阵分解是将数据矩阵分解为多个独立部分的过程

    1、算法描述

    Datam*n=Um*mm*nVTn*n

    矩阵∑的对角元素是从大到小排列的,这些对角元素称为奇异值

    在某个奇异值的数目(r个)之后,其他的奇异值都置为0,即数据集中仅有r个重要特征,而其余特征则都是噪声或者冗余特征

    2、如何选取r

    (1)保留矩阵中90%的能量信息:将所有的奇异值求平方和,将奇异值的平方和累加到90%为止

    (2)当有上万个奇异值时,仅保留前面2000-3000个

    3、举例(待续)

    4、奇异值分解(待续)

  • 相关阅读:
    ShowModalDialog的一个Demo
    DockPanel的一点点改进
    使用Ado.net获取数据库架构信息
    华为离职感受
    一个简单的LINQ TO SQL的三层架构的例子
    [CSharp]volatile访问修饰方法定义
    [JWS]JavaScript访问AD,查用户所属的组
    [WCF]相关资料整理
    [CSharp]使用MSSOAPLib30调用WS的身份验证问题
    [Linux]使用光驱
  • 原文地址:https://www.cnblogs.com/naonaoling/p/4183785.html
Copyright © 2011-2022 走看看