详解“协方差”与“相关系数”

引言

        PCA的目标对象是矩阵,例如,有m个样本,每个样本有n个特征,那么就可以构造成一个样本矩阵,并转换成矩阵的形式。

        PCA的最终目的是减少特征的个数,去掉那些不重要的特征,也就是减小矩阵列向量的个数,为后续分类任务实现数据预处理的作用。

        那如何识别出矩阵中有用的列?PCA的做法是应用矩阵的特征值分解。特征值分解要求矩阵是方阵,但实际上样本的数量m要远大于特征的数量n,既然不满足特征值分解的条件,那就要想办法创造条件,其中一种方法是通过m*n原始矩阵构造出n*n的协方差矩阵。

 协方差矩阵:   


 

        虽然实现了最终的目的,但针对协方差矩阵的每个元素的真正含义并没有过多的解释,这就导致很多人不明白,为什么对协方差矩阵进行特征值分解就能进行降维?下面就逐一进行讲解。

协方差:

        也即是上面协方差矩阵中每一个元素:Cov(X,Y),协方差就是用来衡量变量X和变量Y相关性的指标,通俗的讲:

(1)如果X变大,Y也变大,那么就说X和Y同向变化,X和Y正相关,此时的协方差为正数。

()如果X变大,Y变小,那么就说X和Y反向变化,X和Y负相关,此时的协方差为负数。

数值越大,说明相关性越大。

协方差的计算公式:

公式的解释:

    如果有X, Y两个变量,每个时刻的“X值与其均值之差”乘以“Y值与其均值之差”得到一个乘积,再对这每个时刻的乘积求和并求出均值。

    特别的有 Cov(X,Y)=Var(X),也就是说:方差是一种特殊的协方差。

千言不如一图:

        红色代表X变量,绿色代表Y变量,水平虚线代表均值,由图可见,每一时刻 X-\mu _x

和 Y-\mu _x 的值的“正负号”一定相同,所以把所有时刻的 X-\mu _x 和 Y-\mu _x 的乘积加在一起也是正的,说明两个变量是正相关的。

    再来看一个具有实际意义的数据:

        由图可见,商品房的销售面积随着城市化进程的发展而增长,说明两者是正相关的,所以,有的城市为了卖房,会大力搞城市建设,建地铁,搞公园,老城区拆迁等有效措施。

再来一个负相关的例子:

        由图可见,每一时刻 X-\mu _x 和 Y-\mu _x 的值的“正负号”一定相反,所以把所有时刻的

X-\mu _x 和 Y-\mu _x 的乘积加在一起求平均的时候也是负的,说明两个变量是负相关的。

        由图可见,近年来,出生率随着城镇化的加快反而呈下降趋势,这说明在城市养育一个儿童的费用较高,大家在没有赚够钱的情况下不敢生了。

    前面提到的两种情况比较理想,现实中的数据大多是有波动的。

        如上图所示,有时刻的  X-\mu _x 和 Y-\mu _x 的乘积是负的,有的时刻是正的,讲每个时刻的乘积加在一起,正负就会产生抵消,到底是正相关还是负相关,要取决于最终协方差值的正负与大小。

        还有一种情况是,虽然X和Y同向运动,但有的时刻X大于均值,Y却小于均值,他俩的乘积是负的,这与X和Y正相关是矛盾的啊?

        如上图所示,t1时刻, X-\mu _x 和  Y-\mu _x 的乘积是负的,但别着急,往后看完,后面6个时刻乘积都是正的,最终结果仍然是正的,所以,总体上看,X和Y仍然是正相关的。

相关系数:

    先从词的组合理解一下这个概念,“相关”貌似与前面的协方差有着某种联系,“系数”这个次我们并不陌生,它代表某种权重,所以相关系数代表着相关性的程度。

    既然已经有了协方差,还要相关系数干什么?因为要对比不同变量之间的相关性,既然是对比,就要要消除量纲的影响,因为不同特征之间的量纲可能是不同的,例如,房屋的价格可能是几千或者几万,房间的个数一般都是在10以内,房屋的面积一般在100左右,如果我们要对比这三者之间的相关性,例如,Cov(房屋的面积,房屋的价格)和Cov(房屋的面积,房间个数),只计算协方差可能不行,因为不是一个量纲。

        所以,就有了相关系数的概念。

相关系数的公式为:

\huge \mathbf{\rho =\frac{Cov(X,Y)}{\sigma _X \sigma_Y}}

    用X、Y的协方差除以X的标准差和Y的标准差。这跟我们在数据预处理中的数据标准化是相似的,最终相关系数在-1-1之间,也可以把它看作是一种特殊的协方差。

那它也有以下特性:

1、 也可以反映两个变量变化时是同向还是反向,如果同向变化就为正,反向变化就为负。
2、 由于它是标准化后的协方差,因此重要的特性来了:它消除了两个变量变化幅度的影响,而只是单纯反映两个变量每单位变化时的相似程度。

举个例子:

下面我们分别计算上图中的协方差和相关系数来对比一下他们之间的区别。

首先计算它们的协方差:
第一种情况下:

\huge \left [ (100-0) \times (70-0) + (-100-0) \times (-70-0)+(-200-0) \times (-200-0) \cdot \cdot \cdot \right ]\div 7\approx 15428.57

第二种情况下:

\huge \left [ (0.01-0) \times (70-0) + (-0.01-0) \times (-70-0)+(-0.02-0) \times (-200-0) \cdot \cdot \cdot \right ]\div 7\approx 1.542857

    虽然同是正相关,但协方差相差了一万倍,只能从两个协方差都是正数判断出两种情况下X,Y都是同向变化,但是无法对比两种情况下的相关程度。

这是为什么呢?

    因为第一种情况量纲大,量纲大的起到了主导作用,第二种情况会有多个小数相乘,结果会越来越小。

下面计算一下相关系数:

X的标准差为

Y的标准差为

于是相关系数为

    说明第一种情况下,X的变化与Y的变化具有高度的相似性,而且已经接近完全正相关了,X,Y几乎就是线性变化的。

那第二种情况呢?
X的标准差为

Y的标准差为

于是相关系数为

    说明第二种情况下,虽然X的变化幅度比第一种情况X的变化幅度小了10000倍,但是丝毫没有改变“X的变化与Y的变化具有很高的相似度”这一结论。同时,由于第一种、第二种情况的相关系数是相等的,因此在这两种情况下,X,Y的变化过程有着同样的相似度。

    那么为什么要通过除以标准差的方式来剔除变化幅度的影响呢?咱们简单从标准差公式看一下:

\huge \sigma =\sqrt{E((X-\mu _x)^2)}

    标准差描述了变量在整体变化过程中偏离均值的幅度。协方差除以标准差,也就是把协方差中变量变化幅度对协方差的影响剔除掉,这样协方差也就标准化了,它反应的就是两个变量每单位变化时的情况。这也就是相关系数的公式含义了。

为什么对协方差矩阵进行特征值分解能显示降维?

    在讲矩阵列空间的时候,我们说如果矩阵的某一列是其他列的线性组合,我们就说这些列是线性相关的,举个最简单的例子,第一列是第二列的两倍,那么这两列完全可以去掉其中一列,去掉后并没有丢失什么信息,如果把矩阵当作一种变换,那去掉冗余的列和,其他列所张成的空间维度并不会受影响。

    对协方差矩阵进行特征值分解,就是找到矩阵的变换主方向,这些主方向对应的就是线性无关的列,也就是对通过这些列能张成最大子空间。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/167075.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于单片机双路压力监测报警系统

**单片机设计介绍, 【毕设课设】基于单片机双路压力监测报警系统 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机双路压力监测报警系统是一个复杂的系统,它涉及到单片机、压力传感器、报警器等多…

Docker网络详细说明

Docker网络 docker不启动,默认网络情况 ipconfig----------ens33、lo、virbr0 在CentOS7的安装过程中如果有选择相关虚拟化的的服务安装系统后,启动网卡时会发现有一个以网桥连接的私网地址的virbr0网卡(virbr0网卡:它还有一个固定的默认I…

代码随想录算法训练营第五十九天丨 单调栈02

503.下一个更大元素II 思路 做本题之前建议先做739. 每日温度 (opens new window)和 496.下一个更大元素 I (opens new window)。 这道题和739. 每日温度 (opens new window)也几乎如出一辙。 不过,本题要循环数组了。 关于单调栈的讲解我在题解739. 每日温度 …

MAX/MSP SDK学习01:Object的基本构成、创建销毁行为函数的定义、属性的赋值、以及相关注意事项

Object的基本构成、创建&销毁&行为函数的定义、属性的赋值、以及相关注意事项。 #include "ext.h" // standard Max include, always required #include "ext_obex.h" // required for new style Max object// object struct,定义属…

每日一题 53. 最大子数组和(中等,数组)

很经典的数组题了 class Solution:def maxSubArray(self, nums: List[int]) -> int:ans -inft 0for i in nums:t ians max(ans, t)if t < 0:t 0return ans

【论文阅读】SPARK:针对视觉跟踪的空间感知在线增量攻击

SPARK: Spatial-Aware Online Incremental Attack Against Visual Tracking introduction 在本文中&#xff0c;我们确定了视觉跟踪对抗性攻击的一个新任务&#xff1a;在线生成难以察觉的扰动&#xff0c;误导跟踪器沿着不正确的&#xff08;无目标攻击&#xff0c;UA&#x…

java多线程中的Fork和Join

文章目录 1. 简介2. 使用 1. 简介 Fork/Join是JDK 1.7中加入的新的线程池的实现&#xff0c;它体现的使用分治的思想&#xff0c;适用于能够进行任务拆分的cpu密集型任务。所谓的任务拆分&#xff0c;是将一个大任务拆分为算法上相同的小任务&#xff0c;直到不能拆分可以直接…

蔡崇信看好的菜鸟,“基本面”究竟如何?

今年5月,阿里巴巴集团曾公布云智能集团将完全分拆独立走向上市&#xff0c;菜鸟、盒马启动上市计划&#xff0c;国际数字商业集团启动外部融资。但随着16日阿里巴巴集团最新财报的发布&#xff0c;及宣布终止分拆阿里云、盒马IPO搁置&#xff0c;现在&#xff0c;仅有菜鸟在按原…

高效案例检索工具,Alpha案例库智慧检索成为律师检索工具首选

“工欲善其事&#xff0c;必先利其器。”当今&#xff0c;律界同仁需要权衡的问题早已不是“要不要”使用法律科技&#xff0c;而是如何高质量、高效率地使用法律科技工具。在业内人士看来&#xff0c;随着人工智能技术的不断发展&#xff0c;法律行业科技化将成为不可逆转的趋…

[黑马程序员SpringBoot2]——开发实用篇2

目录&#xff1a; Mongodb简介Mongodb下载与安装Mongodb基础操作Sprintboot整合MongodbES简介ES下载与安装ES索引操作ES文档操作SpringBoot整合ES客户端操作添加文档查询文档缓存的作用Spring缓存使用方式手机验证码案例-生成验证码手机验证码案例-验证码校验变更缓存供应商Eh…

dxva2+ffmpeg硬件解码(Windows)终结发布

《dxva2超低延迟视频播放器》演示demo下载URL&#xff1a; 【免费】dxva2硬解码超低延迟网络本地播放器资源-CSDN文库 本地播放 截图&#xff1a; rtsp播放截图&#xff08;推送内容为本地桌面&#xff0c;所以是这样的&#xff09; OK&#xff0c;进入主题&#xff1a; 前前…

一文看懂:5分钟玩转容器云,彻底化解业务上云烦恼

在高速发展的数字化时代&#xff0c;容器云的作用与日俱增。作为一种新兴的技术趋势&#xff0c;容器云的核心思想是&#xff1a;基于容器化技术&#xff0c;将应用程序及其依赖项封装在独立的容器中&#xff0c;进而实现应用程序与其运行环境的完全隔离&#xff0c;极大简化了…

一文读懂:为什么GPU比CPU更快?

大家好&#xff0c;我是老猫&#xff0c;猫头鹰的猫。 在过去几十年里&#xff0c;GPU变得越来越流行&#xff0c;尤其是最近ChatGPT大火&#xff0c;背后训练大模型的硬件设备GPU达到了一片难求的地步。 你有没有好奇&#xff1a;为什么必须要用GPU&#xff1f;CPU被淘汰了吗…

Polygon Miden VM中的哈希函数对比

1. 引言 在Polygon Miden VM中&#xff0c;使用了多个不同的哈希函数&#xff1a; 1&#xff09;“传统”哈希函数&#xff0c;如BLAKE3&#xff1a;对STARK之外的性能进行了优化。2&#xff09;algebraic哈希函数&#xff0c;如Rescue Prime&#xff1a;对STARK内部优化&…

指针学习(五)

一.函数指针数组 定义&#xff1a;函数指针放进数组中&#xff0c;就叫函数指针数组&#xff0c;准确的说&#xff0c;将一个函数的地址存到⼀个数组中 那这个数组就叫函数指针数组。 int (*pi[5])(int); 解读&#xff1a;pi先和[]结合&#xff0c;因此是数组&#xff0c;加i…

向量数据库——AI时代的基座

1.前言 向量数据库在构建基于大语言模型的行业智能应用中扮演着重要角色。大模型虽然能回答一般性问题&#xff0c;但在垂直领域服务中&#xff0c;其知识深度、准确度和时效性有限。为了解决这一问题&#xff0c;企业可以利用向量数据库结合大模型和自有知识资产&#xff0c;…

龙讯旷腾PWmat发PRL:多k点计算的NAMD方法应用于小型超胞与在等效的大型超胞中进行的单个Γ点模拟之间的一致性

文章信息 作者信息&#xff1a;郑帆&#xff0c;汪林望 通信单位&#xff1a;上海科技大学 中国科学院半导体所 背景导读 固态材料中的超快载流子动力学在能源材料、光电子学、传感器和量子材料等领域起着关键作用。随着超快实验技术在固态系统中载流子动力学研究中的快速发…

C++大神之路——环境篇

序 在我还在做后端的时候&#xff0c;当时程序员圈里就有个梗很火&#xff0c;说的是当时几种常用编程语言的鄙视链&#xff1a;做C的鄙视做Java的&#xff0c;做Java的鄙视做C#的&#xff0c;而我很不幸&#xff0c;当时在鄙视链最底层。一开始只是当个笑话听听就算了&#x…

IC卡操作软件支持PN532

IC卡操作软件&#xff0c;在知道卡片密码的情况下&#xff0c;可以对卡片修改数据&#xff0c;格式化清卡&#xff0c;修改UID卡和CUID卡的卡号&#xff0c;锁UFUID卡等 卡片dump文件拖进软件&#xff0c;即可打开文件&#xff0c;编辑修改文件&#xff0c;写卡&#xff0c;就…