定义:

主成分分析(Principal Component Analysis,PCA), 是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。PCA的思想是将n维特征映射到k维上(k<n),这k维是全新的正交特征。这k维特征称为主成分,是重新构造出来的k维特征,而不是简单地从n维特征中去除其余n-k维特征。

简单解释:

具体的,假如我们的数据集是n维的,共有m个数据。我们希望将这m个数据的维度从n维降到k维,希望这m个k维的数据集尽可能的代表原始数据集。我们知道数据从n维降到k维肯定会有损失,但是我们希望损失尽可能的小。那么如何让这k维的数据尽可能表示原来的数据呢?

我们先看看最简单的情况,也就是n=2,k=1,也就是将数据从二维降维到一维。数据如下图。我们希望找到某一个维度方向,它可以代表这两个维度的数据。图中列了两个向量方向,u1和u2,那么哪个向量可以更好的代表原始数据集呢?从直观上也可以看出,u1比u2好,因为数据在这个方向上投影后的样本点之间方差最大。

例子:

有两维数据:

对X进行归一化,使X每一行减去其对应的均值,得到:

求X的协方差矩阵:

求解C的特征值,利用线性代数知识或是MATLAB中eig函数可以得到:

对应的特征向量分别是:

将原数据降为一维,选择最大的特征值对应的特征向量,因此P为:

降维后的数据:

那么,为什么要求特征值和特征向量呢?

特征值和特征向量:

转自https://blog.csdn.net/fuming2021118535/article/details/51339881

定义: 设A是n阶矩阵,如果数λ和n维非零向量x使关系式

……(1)

成立,那么,这样的数λ称为矩阵A的特征值,非零向量x称为A的对应于特征值λ的特征向量,(1)式还可以写为

……(2)

如果想求出矩阵对应的特征值和特征向量就是求式(2)的解了。

那么,问题来了,这个式子要怎么理解呢?

首先得先弄清矩阵的概念:一个矩阵代表的是一个线性变换规则,而一个矩阵的乘法运行代表的是一个变换;

比如有一个矩阵A:

一个列向量为X为:

一个矩阵的乘法为:

向量X通过矩阵A这个变化规则就可以变换为向量Y了

知道了这个就可以从几何上理解特征值和特征向量是什么意思了,由

可知:

所以,确定了特征值之后,向量x的变换为:

引用《线性代数的几何意义》的描述:“矩阵乘法对应了一个变换,是把任意一个向量变成另一个方向或长度都大多不同的新向量。在这个变换的过程中,原向量主要发生旋转、伸缩的变化。如果矩阵对某一个向量或某些向量只发生伸缩变换,不对这些向量产生旋转的效果,那么这些向量就称为这个矩阵的特征向量,伸缩的比例就是特征值。”

那么这样定义的特征值和特征向量有什么实际用途呢?在这里我举个数据挖掘算法中重要的一个算法:PCA(主成分分析)来给大家直观的感受一下。

首先,理解一下信息量这个概念

看几张图:

如果我们单独看某一个维度的话,比如看x1这个维度

可以看到将点投影到x1这个维度上看的话,图1的数据离散性最高,图3较低,图2数据离散性是最低的。数据离散性越大,代表数据在所投影的维度上具有越高的区分度,这个区分度就是信息量。如果我们用方差来形容数据的离散性的话,就是数据方差越大,表示数据的区分度越高,也就是蕴含的信息量是越大的。

基于这个知识,如果我们想对数据进行降维的话,比如图1的两个维度的数据降成一维,我们可以选择保留X1这个维度的数据,因为在这个维度上蕴含的信息量更多。

同理,图2就可以保留x2这个维度的数据。但是,问题来了,图3应该保留哪个维度的数据呢?答案是保留哪个维度都不好,都会丢失较大的信息量。但是,如果我们把图3的坐标轴旋转一下

比较容易看出,图3在新的坐标轴下就能进行降维了。所以选取正确的坐标轴,然后根据各个维度上的数据方差大小,决定保留哪些维度的数据,这样的做法就是主成分分析的核心思想。

选取正确的坐标轴的过程中,我们需要一个矩阵变换,就类似于这样:

也就是:

其实,经过数学上的推导的,我们就可以知道,特征值对应的特征向量就是理想中想取得正确的坐标轴,而特征值就等于数据在旋转之后的坐标上对应维度上的方差。

也就是说,直接求出矩阵A的特征向量得出对应的特征向量。我们就能找到旋转后正确的坐标轴。这个就是特征值和特征向量的一个实际应用:“得出使数据在各个维度区分度达到最大的坐标轴。”

所以,在数据挖掘中,就会直接用特征值来描述对应特征向量方向上包含的信息量,而某一特征值除以所有特征值的和的值就为:该特征向量的方差贡献率(方差贡献率代表了该维度下蕴含的信息量的比例)。

通常经过特征向量变换下的数据被称为变量的主成分,当前m个主成分累计的方差贡献率达到一个较高的百分数(如85%以上)的话,就保留着这m个主成分的数据。实现了对数据进行降维的目的。整个主成分分析的算法原理也就是这个。

主成分分析PCA以及特征值和特征向量的意义相关推荐

  1. 特征值与特征向量的意义

    转载地址:http://blog.csdn.net/sunshine_in_moon/article/details/45749691 从定义出发,Ax=cx:A为矩阵,c为特征值,x为特征向量.  ...

  2. 直观上理解PCA中特征值和特征向量

    很多人都了解PCA算法,但是总很难直观上去想象和理解整个过程,特别是为什么特征向量可以作为一个PCA特征空间变换后的一个基?特征向量和特征值到底怎么理解? 也许很多人查了很多文章和书籍,但是它们几乎没 ...

  3. 花了10分钟,终于弄懂了特征值和特征向量到底有什么意义

    转自 http://k.sina.com.cn/article_6367168142_17b83468e001005yrv.html 有振动 就有特征值 今天,超模君看到了一句神翻译: 吓得超模君马上 ...

  4. 特征值和特征向量的理解

    最近看了几篇文章,对理解特征值和特征向量有很大帮助,贴到这里供日后复习 花了10分钟,终于弄懂了特征值和特征向量到底有什么意义_豚-CSDN博客_特征向量有什么用转自 http://k.sina.co ...

  5. 特征值和特征向量的理解 浅显易懂 肯定有收获

    特征值和特征向量的理解 前言 一.矩阵是什么? 二.举个例子 1.计算特征值与特征向量 2.用特征向量表示任意向量 三.理解其他结论 1.对角化分解 2.矩阵的特征值分别是原矩阵特征值的倒数 3.特征 ...

  6. 如何理解特征值和特征向量

    学完线性代数的同学,可能会对线性代数的很多概念有所疑惑. 这个东西有什么用?那个玩意定义出来有什么意义? 本文将探讨线性代数中及其重要的两个概念:特征值与特征向量. (PS:下文中的矩阵AA均认为是方 ...

  7. ai数学之矩阵特征值、特征向量、矩阵分解

    特征值和特征向量的意义 从定义出发,Ax=cx:A为n阶矩阵,c为特征值,x为特征向量. 矩阵A乘以x表示,对向量x进行一次转换(旋转或拉伸)(是一种线性转换),而该转换的效果为常数c乘以向量x(即只 ...

  8. 特征值和特征向量的实际意义

    特征值和特征向量的实际意义 从定义出发,Ax=cx:A为矩阵,c为特征值,x为特征向量. 矩阵A乘以x表示,对向量x进行一次转换(旋转或拉伸)(是一种线性转换),而该转换的效果为常数c乘以向量x(即只 ...

  9. 主成分分析PCA算法:为什么去均值以后的高维矩阵乘以其协方差矩阵的特征向量矩阵就是“投影”?

    这是从网上看到的PCA算法的步骤: 第一步,分别求每列的平均值,然后对于所有的样例,都减去对应的均值. 第二步,求特征协方差矩阵. 第三步,求协方差的特征值-显示全部 关注者 1,218 被浏览 78 ...

最新文章

  1. phpStorm如何用FTP,SSH连接到虚拟机linux系统?
  2. 阿里云云服务器的端口配置问题
  3. python函数的作用降低编程复杂度_Python函数式编程
  4. IDEA发布新版本,支持禅模式(免打扰)!
  5. Oracle Sql语句定时执行
  6. php父子遍历,jQuery 遍历
  7. rsync+inotify文件变动后自动同步程序
  8. 2021-3测试通过:eclipse安装svn插件
  9. atm机编程java_初识Java,关于一个简单的ATM机的java程序设计
  10. 22数学建模美赛 22美赛C题
  11. 3月第2周易盾业务风控关注 | 新版个人信息安全规范正式发布
  12. PostgreSQL+PostGIS下载和离线安装
  13. 一份完整的app产品运营推广方案,app推广运营的方法(二
  14. 阿里面试题-判断是不是一个IP地址的测试用例设计(Python实现)
  15. js 将json数据自动绑定到 html table 表格中
  16. 【Rust日报】2022-07-20 极简主义 Poem 指南
  17. 20169220 网络攻防实践 第二周学习总结
  18. 小学五年级计算机教学论文,五年级小学英语教学论文【三篇】
  19. 汽车行业消费者洞察|车载屏幕是否越大越多就越好?
  20. Git远程仓库配置SSH(以github为例)

热门文章

  1. 生活中c语言排序案例,C语言之数字排序-基于冒泡排序法的一些案例(对未知数量的数字进行排序)...
  2. 还在买白酒?算法工程师们,量化投资了解一下
  3. Google 资深软件工程师 LeetCode 刷题笔记首次公开
  4. 前端感官性能的衡量和优化实践
  5. 论文小综 | Using External Knowledge on VQA
  6. Python 文件操作中的读写模式:open(path, ‘-模式-‘,encoding=‘UTF-8‘)+python读写文件txt +文本数据预处理
  7. Android官方开发文档Training系列课程中文版:通过NFC共享文件之从其它设备接收文件
  8. 量子计算机首次成功模拟化学反应
  9. 浅谈Spring IOC和DI及Spring工厂类
  10. 【大数据】分布式集群部署