从物理意义上了解PCA

什么是线性变换

什么是线性变换?
一个变换同时具有以下2条性质,则它是一个线性变换:
1.变换前后,所有直线仍是直线。
2.变换前后,原点保持不变。
具体参考:https://www.cnblogs.com/joefish/p/8150006.html

如何描述一个线性变换
通常,要描述一个线性变换,我们可以通过一个矩阵来表示。
在表示一个向量时,我们最常使用的两个基分别是[1, 0]T 和[0, 1]T,在这两个基下,线性变换可以表示成以下这种形式。
可以看到,此时向量[x, y]T的线性变换,被表达成了它左乘一个矩阵A的形式。

但在二维平面中,基是可以任意选择的,如果不选用[1, 0]T 和[0, 1]T作为基,线性变换应该怎样表示呢?
同样,在其它基下,向量做线性变换的过程同样可以表示成它左乘一个矩阵的形式。

如:[α1, α2]A[x, y]T

其中,α1和α2分别表示两个基(例如[1, 0]T 和[0, 1]T),A为线性变换的描述矩阵,类似第一张图片中的[[a, b], [c, d]],[x, y]T就是做线性变换的向量了。
不难发现,其实在基为[1, 0]T 和[0, 1]T,是符合以上式子的。因为此时两个基组成的矩阵[α1, α2]即为一个单位矩阵,而由EA = A的性质,就通常把最左边的[α1, α2]给省略了。

什么是相似矩阵

了解了什么是线性变换以及它如何描述,就可以看看什么是相似矩阵了。

所谓相似矩阵,就是同一个线性变换在不同基下的描述矩阵。

看下面这张图:

图片转自:https://zhidao.baidu.com/question/1243223137254287179.html
其中,α和β代表基,x和y代表同一向量在不同基下的表示。
由2式,A和B即为同一线性变换在不同基下的描述矩阵
P为基α到基β的过渡矩阵,在5式满足时,2式即满足,A和B即为相似矩阵。

从物理意义上了解PCA

PCA的作用就是降维。即:假设有N组数据,每组数据有M个特征(此处的特征就是事物的一些性质,例如预测房价时,这些特征可以是房屋的面积、卧室的面积、房屋的楼层、是否是学区房等等);PCA的作用就是从这M个特征中,提取出T个特征,使得T<M,同时,这T个特征应该尽量独立(即相互之间没有关系,例如房屋的面积和卧室的面积这两个特征之间就不独立,有相互关系),且尽可能多的包含原始数据中的信息。但是,经过PCA提取出的特征是没有物理上的意义的,例如就不能说某个特征代表了房屋的面积。这就是PCA的基本作用。

下面给出PCA的运算步骤:
转自:https://www.bilibili.com/video/av29441413/?p=3&t=453

下面从物理意义上,解释一下这个运算过程:

  1. 这个例子中有两行数据,每一行代表一个特征,此处有特定物理意义,例如第一行可以表示房屋面积、第二行可以表示楼层。(这里对数据做了预处理,即对每行的数据,都减去了这一行的平均值,使得每行的和为0,这么做是为了使得协方差矩阵中,从左上到右下那条对角线上的值可以代表每行数据的方差,不懂的可以看上面链接里的视频)。
  2. 计算协方差矩阵。C=1/N * S * ST (N代表数据的组数,S代表原始数据构成的矩阵)。这个矩阵是以从左上到右下这条对角线为对称轴的一个对称矩阵。矩阵中的值用a表示,其中,aii表示第i种特征的方差,方差越大代表这N组数据在这个特征上散布得越开,越利于我们对这N组数据进行分类aij(i不等于j)代表第i种特征和第j种特征的相关程度,正值代表正相关(正值越大正相关程度越高),0代表不相关,负值代表负相关(负值越小代表负相关程度越高)(这里也可以看出为什么是对称阵)。而我们的目标,就是找出一组基,使得在这组基下,协方差矩阵中从左上至右下这组数值越大越好,而其余数字全为0。这就代表在这组基下,数据可以分散得更开,而各个基之间是相互独立(垂直)的,这就是前文说到的PCA的作用。
  3. 怎么求这组基呢?神奇的是,这组基即为将协方差矩阵相似对角化的过程中,求得的可逆变换矩阵P中自左向右排列的各个向量。即,**假设可逆变换矩阵 P=(β1, β2),那么这组基即为β1和β2。**在我的理解上,这个相似对角化后的矩阵,从左上到右下这条对角线上的各个值,代表着原始数据在这组“新”的基下分散的程度。而其它数值全为0,代表这组基是相互独立的,这就是PCA的需求。
  4. 如何降维?刚刚说到,对角线上的值代表原始数据在这个基上的分散程度,数值越大,代表分散得越开,也就越利于分类。例如,假设对角化后的协方差矩阵中,aii的数值最大,代表这个基对这组数据最重要,表达的信息最多,最利于分类;显然,次大就代表次重要。我们只要从这个对角化后的协方差矩阵中,挑选出前T(T<M)个最大的a值,并从P中取出这些a值对应的β(例如,aii对应βi),这T组β就是我们最终使用的基
  5. “降维打击”。我们知道,两个向量a和b的内积=|a||b|cosx,x表示向量a和b之间的夹角。如果a为单位向量,那么这两个向量的内积也就表示b在a上的投影。在这T组β中,每个β都是一个单位向量。只要将每个β与每N组原始数据计算内积,就得到了这N组数据在这个基上的投影,也就是坐标。一共有T组β,所以一共进行T*N组内积(这个过程用矩阵乘法表示就是上面图片中的“降维”部分),仍得到N组数据,但每组数据的特征数量已经从M减少到T,实现了“降维”

以上过程举个直观点的例子:
假设坐标系中分布着5个点,[1,1],[2,2],[2,4],[4,4],[5,5]。

用矩阵形式表示为:
1224512445\begin{matrix} 1 & 2 & 2 & 4 & 5\\ 1 & 2 & 4 & 4 & 5 \end{matrix} 11​22​24​44​55​
此时的基为[1, 0]T 和[0, 1]T。不难发现,此时的基“表现并不好”。因为两个特征之间,明显存在正相关的关系,计算出的协方差肯定为正值。不妨计算一下,首先预处理:
−1.8−0.8−0.81.22.2−2.2−1.20.80.81.8\begin{matrix} -1.8 & -0.8 & -0.8 & 1.2 & 2.2\\ -2.2 & -1.2 & 0.8 & 0.8 & 1.8 \end{matrix} −1.8−2.2​−0.8−1.2​−0.80.8​1.20.8​2.21.8​
然后计算一下协方差矩阵:
2.161.841.842.16\begin{matrix} 2.16 & 1.84\\ 1.84 & 2.16 \end{matrix} 2.161.84​1.842.16​
可以看到,a12=a21>0,说明此数据的两个特征在当前基下并不独立(正相关)。
我们的目标是找到一组“新”的基,在这组新的基下,这些数据尽可能散布得开,且相互独立。
不难发现,在这组数据中,新的基应该与图中两条虚线平行,即 [1/√2, 1/√2]T以及 [-1/√2, 1/√2]T
下面用PCA算法验证一下:
求可逆变换矩阵:
可以看到,β1和β2即为求出的基,分别为[-1/√2, 1/√2]T以及 [1/√2, 1/√2]T,验证了我们的猜想。而数据在β2方向上的离散程度更大,在分类时就更需要参考原始数据在这个基上的投影。所谓“降维打击”,就是指将原始数据在以β1和β2为基的二维平面中,“强迫”它投影到一维的直线上,这个直线的选取,就参照数据在各个基方向上的离散程度,离散程度越大,代表这个基越容易被选取。
此处显然选取β2作为原始数据被降维到的那个基,由于此时β2已经是单位向量,只要将它与原始数据相乘,得出的结果即为原始数据在这个基上的投影,以下是计算结果:
1.41422.82844.24265.65697.0711\begin{matrix} 1.4142 & 2.8284 & 4.2426 & 5.6569 & 7.0711 \end{matrix} 1.4142​2.8284​4.2426​5.6569​7.0711​
以上结果即为用PCA对原始数据降维后的结果。

从物理意义上了解PCA相关推荐

  1. 揭开集成芯片的面纱:物理意义上的

      扁平扬声器内部结构 01 集成芯片封装 Integrated circuit, MOSFET, processor decapsulation with fiber laser! Peek ins ...

  2. 整理:卷积的直观理解、物理意义与本质(四)

    那片云:看了后有很大的收获,开始主文及回复均非常精彩.对理解卷积的数学物理意义很有帮助. 下面说一下我的理解: 1.卷积是求累积值,就是某一时刻的反应,是多个反应的叠加值. 2.既然如一,就有2.1任 ...

  3. 【数字信号处理】序列傅里叶变换 ( 傅里叶变换物理意义 | 反应信号在整个数字角频率上的能量分布 )

    文章目录 一.傅里叶变换物理意义 一.傅里叶变换物理意义 x(n)x(n)x(n) 序列 的 傅里叶变换 X(ejω)X(e^{j\omega})X(ejω) 的 物理意义 : 傅里叶变换 : 根据 ...

  4. [线性代数] 对网络上一篇讲解特征值分解的物理意义的文章的批注

    网络上讲解特征值分解的物理意义的文章: https://blog.csdn.net/sunshine_in_moon/article/details/45749691 1.不是所有矩阵分解出特征值之后 ...

  5. 奇异值的物理意义是什么?强大的矩阵奇异值分解(SVD)及其应用

    作者:郑宁 链接:https://www.zhihu.com/question/22237507/answer/53804902 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...

  6. 奇异值的物理意义是什么?

    作者:知乎用户链接:https://www.zhihu.com/question/22237507/answer/53804902 来源:https://www.zhihu.com/question/ ...

  7. 漫谈高数曲线积分的物理意义

    漫谈高数曲线积分的物理意义 来源:CSDN libochun3217的专栏 编辑:Gemini 从函数到定积分,曲线积分到环路积分. 定积分的求解---牛顿.拉布尼茨公式有什么几何意义? 简单的说,因 ...

  8. 漫谈高数 特征向量物理意义

    什么是特征向量,特征值,矩阵分解 [1. 特征的数学意义] 我们先考察一种线性变化,例如x,y坐标系的椭圆方程可以写为x^2/a^2+y^2/b^2=1,那么坐标系关于原点做旋转以后,椭圆方程就要发生 ...

  9. 奇异值分解的物理意义

    转载自知乎:https://www.zhihu.com/question/22237507 奇异值分解精简理解以及计算参考:https://blog.csdn.net/qq_34213260/arti ...

最新文章

  1. Silverlight+WCF 新手实例 象棋 棋盘(二)
  2. python模块编程教程_python进阶教程之模块(module)介绍
  3. 常用json框架介绍和Jackson返回结果处理
  4. linux mysql temp 设置_linux上mysql的简单入门
  5. oracle中trunc x-1,oracle中trunc函数的说明
  6. c svchost 服务 dll_小机巧丨如何解决svchost一直占用网速和内存?
  7. sql 插入新数据 如何处理等字符_新手们还在到处找报表资料吗?Intouch SQL 数据库脚本给你安排...
  8. IDEA上传本地项目到SVN
  9. Linux系统编程 -- 多线程之基于阻塞队列生产者与消费者模型
  10. Nginx/Apache之伪静态设置 - 运维小结
  11. 网站打不开的原因及解决办法
  12. python画女朋友照片_用python给女朋友照片加上个性相框,学会等着她夸你!
  13. php伪装图片,GIF 图片伪装技术
  14. 如何用Sonic云真机打王者
  15. 如何进行移动端页面开发
  16. 微信小程序|icon列表跳转不同界面
  17. [原]删除dboy病毒
  18. Tableau 使用技巧总结
  19. tesseract 训练入门--记一次50张简单验证码的训练过程
  20. 下载者DownLoader.Win32.Undef分析

热门文章

  1. IDEA封神榜大语言模型二郎神系列Erlangshen-Ubert-110M-Chinese使用
  2. 安卓控件之竖向进度条
  3. 有个程序猿很忧桑:一个命令rm -rf/ ,他把整个公司删没了...
  4. 电子元器件失效模式及失效机理汇总
  5. SOIC库分为L、M、N三种
  6. NC57中间表数据源的设置流程
  7. Sphinx武林秘籍(中)
  8. Niushop单商户V4版强大的系统功能震撼来袭
  9. 打开Word提示:Office已阻止访问以下嵌入对象,以便保护你的安全解决方法
  10. 吴恩达深度学习课程-Course 4 卷积神经网络 第一周 卷积神经网络编程作业(第一部分)