• 主成分分析(principal components analysis, PCA)——无监督学习


    降维的两种方式:

    (1)特征选择(feature selection),通过变量选择来缩减维数。

    (2)特征提取(feature extraction),通过线性或非线性变换(投影)来生成缩减集(复合变量)。

    主成分分析(PCA):降维

    1. 将多个变量通过线性变换(线性相加)以选出较少个数重要变量。

    2. 力求信息损失最少的原则。

    3. 主成分:就是线性系数,即投影方向。

    4. 通常情况下,变量之间是有一定的相关关系的,即信息有一定的重叠。将重复的变量删除。

    5. 基本思想:将坐标轴中心移到数据的中心,然后旋转坐标轴,使得数据在C1轴上的上的方差最大,即全部n个数据个体在该方向上的投影最为分散。意味着更多的信息被保留下来。C1成为第一主成分

      C2第二主成分:找一个C2,使得C2与C1的协方差(相关系数)为0,以免与C1信息重叠,并且使数据在该方向的方差尽量最大。

      以此类推,找到第三主成分,第四主成分。。。。第p个主成分。p个随机变量就有p个主成分。

    6. 通过协方差对特征值、特征向量进行分析。

    7. 特征向量(特征脸)。

    8. 它是一个线性变换。这个变换把数据变换到一个新的坐标系统中, 使得任何数据投影的第一大方差在第一个坐标(称为第一主成分)上,第二大方差 在第二个坐标(第二主成分)上,依次类推。主成分分析经常用减少数据集的维数, 同时保持数据集的对方差贡献最大的特征。
    9. 主成分分析法是一种降维的统计方法,它借助于一个正交变换,将其分量相关的原随机向量转化成其分量不相关的新随机向量,这在代数上表现为将原随机向量的协方差阵变换成对角形阵,在几何上表现为将原坐标系变换成新的正交坐标系,使之指向样本点散布最开的p个正交方向,然后对多维变量系统进行降维处理,使之能以一个较高的精度转换成低维变量系统,再通过构造适当的价值函数,进一步把低维系统转化成一维系统。

    主成分分析的定义:

    主成分分析的性质:

    主成分分析的推导

      主成份分析(PCA, Principal Component Analysis)有多种推导方法,最大化方差是一种比较直观的方法。比如给出一坨数据,如果你想给出一条坐标轴可以尽量清晰的描述这些数据,即更容易把它们分类,那么直观来看,肯定会选择与数据方差最大的那条直线,才能最大化数据的差异性。

    实际的做法就是将数据的高维坐标投影到这条直线,也就是向量上去,然后最大化投影后的方差。

       很明显上式的含义是u1是矩阵S的特征向量,即特征向量即为投影向量。这就转换成一个矩阵特征值分解问题。我们将特征值从大到小排列,保留前M个特征向量,即实现了从原来N维空间到M维新空间的降维。

    主成分数目的选取

      设有p个随机变量,便有p个主成分。由于总方差不增不减,C1, C2等前几个综合变量的方差较大,而Cp,Cp-1等后几个综合变量的方差较小, 严格 说来,只有前几个综合变量才称得上主(要)成份,后几个综合变量实为“次 ”(要) 成份。实践中总是保留前几个,忽略后几个。 保留多少个主成分取决于保留部分的累积方差在方差总和中所占百分比(即累计贡献率),它标志着前几个主成分概括信息之多寡。实践中,粗略规定一个百分比便可决定保留几个主成分;如果多留一个主成分,累积方差增加无几,便不再多留。

    主成分分析的主要作用

    1. 降维
    2. 多维数据的一种图形表示方法。我们知道当维数大于3时便不能画出几何图形,多元统计研究的问题大都多于3个变量。要把研究的问题用图形表示出 来是不可能的。然而,经过主成分分析后,我们可以选取前两个主成分或其中某两个主成分,根据主成分的得分,画出n个样品在二维平面上的分布况,由图形可直观地看出各样品在主分量中的地位,进而还可以对样本进行分类处理,可以由图形发现远离大多数样本点的离群点。 
    3. 由主成分分析法构造回归模型。即把各主成分作为新自变量代替原来自变量x做回归分析。
    4. 用主成分分析筛选回归变量。回归变量的选择有着重要的实际意义,为了使模型本身易于做结构分析、控制和预报,好从原始变量所构成的子集合中选择最佳变量,构成最佳变量集合。用主成分分析筛选变量,可以用较少的计算量来选择变量,获得选择最佳变量子集合的效果。

    主成分分析的计算步骤

    对 m 个主成分进行加权求和,即得最终评价值,权数为每个主成分的方差 贡献率。

     主成分分析的缺点

    在有些情况下,PCA算法的性能很差,如下图:

      用不同的颜色标注C1,C2两个不同类别的数据。根据PCA算法,数据应该映射到方差最大的那个方向,亦即Y轴方向,但是如果映射到Y轴方向,C1,C2两个不同类别的数据将完全混合在一起,很难区分开,所以使用PCA算法进行降维后再进行分类的效果会非常差。

    Reference:

    主成分分析PCA算法 原理解析

    浅谈对主成分分析(PCA)算法的理解

    特征值分解和主成份分析

  • 相关阅读:
    Python爬取微博热搜榜,将数据存入数据库
    Python爬取网站文章数据并存到数据库
    在自己的框架系统中使用tp类
    conda环境下pip install 无法安装到指定conda环境中(conda环境的默认pip安装位置)
    jupyter notebook 加入conda虚拟环境(指定conda虚拟环境)
    本地打包好的项目如何运行在docker中
    测试
    SQL Server创建dblink跨库查询
    深入浅析BIO、NIO、AIO
    JavaWeb_html_js_css_javaweb
  • 原文地址:https://www.cnblogs.com/fuleying/p/4458439.html
Copyright © 2020-2023  润新知