Steve Brunton | Probability Bootcamp | 笔记 | 第四部分:高级统计 | Lecture 41 | 协方差与相关性

目录

    • 前言
    • [1. 引言](#1. 引言)
    • [2. 定义协方差](#2. 定义协方差)
    • [3. 协方差的直观图示](#3. 协方差的直观图示)
    • [4. 协方差的公式改写](#4. 协方差的公式改写)
    • [5. 独立变量的协方差为零](#5. 独立变量的协方差为零)
    • [6. 协方差为零 ≠ 独立](#6. 协方差为零 ≠ 独立)
    • [7. 其他性质](#7. 其他性质)
    • [8. 定义相关性](#8. 定义相关性)
    • [9. 线性变换下的相关性](#9. 线性变换下的相关性)
    • [10. 结语](#10. 结语)
    • 结语
    • 参考

前言

学习 Steven Brunton 讲授的概率与统计入门概述视频,本篇文章记录第四十一讲:协方差与相关性,记录下个人学习笔记,和大家一起分享交流😄

videohttps://www.youtube.com/playlist?list=PLMrJAkhIeNNR3sNYvfgiKgcStwuPSts9V

1. 引言

今天我们要介绍几个非常重要的概念,这些概念在概率统计领域会频繁使用,特别是在处理数据、机器学习以及模型拟合等场景中,这些概念就是协方差与相关性。

相关性这个概念确实经常出现,你们应该都听说过 "相关性不等于因果性" 这个说法,我们经常需要判断两个变量或事件是否存在相关性,或者数据之间是否具有关联性。主成分分析、奇异值分解这类高维统计方法,本质上都深深根植于相关性和协方差的概念。

通常来说,相关系数可以理解为标准化后的协方差,因此我们主要讨论协方差的概念。协方差可以近似理解为衡量两个变量 X X X 和 Y Y Y 之间共同变化的程度,我们知道可以建立联合概率分布,也能计算 X X X 和 Y Y Y 的条件期望以及条件概率,协方差描述的是 X X X 的变化与 Y Y Y 的变化之间存在怎样的关联。

我们希望协方差具有一个良好特性:变量 X X X 与其自身的协方差应等于 X X X 的方差,这将成为非常重要的性质。因此,当我们定义 X X X 和 Y Y Y 的协方差时,若代入两个相同的 X X X ,其计算结果应等于 X X X 的方差。

OK,现在让我们来正式定义协方差。接下来我们将通过具体实例进行探讨,随后再给出相关性的定义。

2. 定义协方差

两个随机变量 X X X 和 Y Y Y 的协方差定义起来其实很简单:

C o v ( X , Y ) = E ( ( X − μ X ) ( Y − μ Y ) ) Cov(X,Y) = \mathbb{E} \left( (X-\mu_X)(Y-\mu_Y) \right) Cov(X,Y)=E((X−μX)(Y−μY))

其定义为:随机变量 X X X 与其均值(我们将其记作 μ X \mu_X μX)之差乘以随机变量 Y Y Y 与其均值(记作 μ Y \mu_Y μY)之差的期望值,其中, μ X \mu_X μX 是 X X X 的期望值, μ Y \mu_Y μY 是 Y Y Y 的期望值。

你会注意到,这个定义与方差的定义几乎完全相同, X X X 的方差是 X X X 与其均值之差的平方的期望值,因此,若在上式中代入两个 X X X 的副本,便可得到 ( X − μ X ) 2 (X - \mu_X)^2 (X−μX)2 的期望值,即 X X X 的方差。

这至少与我们熟知的单个随机变量方差的定义非常接近,这就是两个随机变量 X X X 和 Y Y Y 共同变化的方式,即它们的协方差。

这个概念非常直观,计算、运用、分析和理解起来都相当简单,直观来看,我们取样本 X X X 与其均值的偏差,如果我有 X X X 的分布,并非所有值都会恰好落在均值上,根据期望值,这些值有一定概率会偏离均值, X X X 通常存在标准差, Y Y Y 也是如此,我们计算的是二者各自偏离均值的联合变动的期望值。

3. 协方差的直观图示

现在我想给大家画个示意图,然后我们会讨论这个概念的几个特性:

那么协方差到底是什么意思呢?如果我有变量 X X X 和变量 Y Y Y ,假设我的数据分布如上图所示,接下来我们将通过代码实现这个功能,我们将生成数据,并且我有一系列关于主成分分析的讲座,这完全关乎变量间的协方差关系,特别是两个不同变量之间的协方差,若想直接学习高维联合分布与协方差矩阵,可以参考主成分分析 --- SVD 系列讲座。

现在,假设我们手头的数据大致呈高斯分布,我们假设它呈高斯分布,但这是一个椭圆形的高斯分布,因此存在一个主方向,并且在 xy 平面上具有非零倾角。对于这组数据,如果实际计算其 X X X 的均值,其中每个数据点都服从联合分布, X X X 变量存在概率密度函数, Y Y Y 变量也有对应的概率密度函数,同时二者会形成联合概率分布。

若在此处计算均值,就能直接分析这些数据点: x x x 值相对于其均值的波动与 y y y 值相对其均值的波动之间存在怎样的关联,对于大多数据点而言,当 x − μ X x-\mu_X x−μX 较大时, y − μ Y y-\mu_Y y−μY 通常也会较大,因为这条趋势线具有正斜率,这种具有明显斜率的分布趋势,以及数据点紧密聚集的特征,表明该数据集将具有较大的协方差。

我们再来看另一个例子:

假设我有一组数据,其分布趋势较为平缓,且数据分布范围更广,而且这里的相关趋势也略显平缓,此时 X X X 与 Y Y Y 之间依然存在协方差关系,但关联强度已有所减弱,当 X X X 值相对其均值出现较大正向偏离时, Y Y Y 值相应的偏离幅度预计不会同样显著。

再来看下面这个极端情况:

我强烈建议你们用 Python 生成这类散点分布,实际计算样本期望值,对全部 100 或 1000 个数据点取期望平均值,通过实践你会确信上述三张图中协方差确实存在差异。

此处我假设 X X X 和 Y Y Y 服从对称的高斯分布,随着距离中心越远,数据点的密度会逐渐降低,这样我们就得到了一个在 x 和 y 方向上对称的高斯分布,这种情况下, X X X 和 Y Y Y 之间的协方差很可能接近于零,这意味着 X X X 的偏差与 Y Y Y 的偏差之间实际上不存在相关性。

OK,这就是我所说的协方差的直观含义,若斜率较大且数据分布集中,协方差值就会很高,若斜率较小且数据分布较分散,则协方差值会偏低,最终,若数据分布无特定方向且非常分散,此处的协方差将趋近于零。值得注意的是,分布的均值位置并不影响结果,因为我们已经减去了 μ X \mu_X μX 和 μ Y \mu_Y μY ,所以数据可以去中心化在任何位置。

4. 协方差的公式改写

现在我们来列举一些特性,接下来我将对协方差定义的公式展开说明,对乘积项进行展开,推导出一个关于 X X X 和 Y Y Y 期望值的协方差简洁公式,这个公式相当实用。

那么我们来定义 X X X 和 Y Y Y 的协方差,我将直接改写现有的表达式:

C o v ( X , Y ) = E ( X Y − μ X Y − μ Y X + μ X μ Y ) Cov(X,Y) = \mathbb{E} \left( XY -\mu_X Y - \mu_Y X + \mu_X \mu_Y \right) Cov(X,Y)=E(XY−μXY−μYX+μXμY)

OK,这里只是将原式展开成了四项表达式,我们知道,即使随机变量 X X X 和 Y Y Y 之间存在相互依赖关系,求和项的期望值仍然可以分解为四个独立期望值的总和。

因此可以将其表示为:

C o v ( X , Y ) = E ( X Y ) − μ X E ( Y ) − μ Y E ( X ) + μ X μ Y Cov(X,Y) = \mathbb{E} \left( XY \right) - \mu_X \mathbb{E}(Y) - \mu_Y \mathbb{E}(X) + \mu_X \mu_Y Cov(X,Y)=E(XY)−μXE(Y)−μYE(X)+μXμY

其中, μ X \mu_X μX 就是随机变量 X X X 的数学期望, μ Y \mu_Y μY 就是随机变量 Y Y Y 的数学期望,因此,原始经过化简后有:

C o v ( X , Y ) = E ( X Y ) − E ( X ) E ( Y ) Cov(X,Y) = \mathbb{E} \left( XY \right) - \mathbb{E}(X) \mathbb{E}(Y) Cov(X,Y)=E(XY)−E(X)E(Y)

由此可见,协方差的表达式可以简洁地表示为上式,这一公式非常实用。这个公式是可以通过推导得出的,我们刚刚已经完成了推导过程。

因此,两个随机变量 X X X 和 Y Y Y 的协方差 C o v ( X , Y ) Cov(X,Y) Cov(X,Y) 可以通过 E ( X ) \mathbb{E}(X) E(X)、 E ( Y ) \mathbb{E}(Y) E(Y) 和 E ( X Y ) \mathbb{E}(XY) E(XY) 的运算关系来表达。

5. 独立变量的协方差为零

我们立即可以发现:若 X X X 与 Y Y Y 相互独立,则协方差 C o v ( X , Y ) = 0 Cov(X,Y) = 0 Cov(X,Y)=0 ,我们知道,若 X X X 与 Y Y Y 相互独立,则 E ( X Y ) = E ( X ) E ( Y ) \mathbb{E}(XY) = \mathbb{E}(X) \mathbb{E}(Y) E(XY)=E(X)E(Y) ,此时期望值项会与乘积项相互抵消。

显然,若 X X X 与 Y Y Y 相互独立,则协方差 C o v ( X , Y ) Cov(X,Y) Cov(X,Y) 为零。这是因为当 X X X 与 Y Y Y 相互独立时, X Y XY XY 的期望值可拆分为 E ( X ) E ( Y ) \mathbb{E}(X) \mathbb{E}(Y) E(X)E(Y) ,正好与第二项相抵消,从而使得协方差为零。

因此,若变量相互独立,则协方差必然为零,但反之则未必成立,我可能有一个联合分布的概率密度函数,可能存在两个相互依赖的变量 X X X 和 Y Y Y ,其协方差仍可能为零。确实存在协方差为零但 X X X 和 Y Y Y 相互依赖的情况,若 X X X 与 Y Y Y 相互独立,则协方差必为零。

6. 协方差为零 ≠ 独立

若要构建协方差为零但 X X X 与 Y Y Y 存在依赖关系的示例,我会将 X X X 设为离散型随机变量,使其在 -1、0、1 上服从均匀分布,也就是说, X X X 取其中每个值的概率均为 1 3 \frac{1}{3} 31 ,那么我会设定变量 Y = X 2 Y =X^2 Y=X2 。

OK,这样我们就得到了两个离散型随机变量,显然, Y Y Y 的取值依赖于 X X X ,这两个随机变量具有联合概率密度函数,它们之间存在完全的相互依赖关系,但若计算这两个随机变量的协方差,通过数学推导可得 C o v ( X , Y ) = 0 Cov(X,Y)=0 Cov(X,Y)=0 。

这个计算其实相当简单,只需将 X X X 和 Y Y Y 的有限可能取值进行求和即可, X X X 有三种可能取值, Y Y Y 有三种可能取值,虽然 X X X 和 Y Y Y 不相互独立,但它们的协方差为零。

这确实是一个非常简单的反例,若 X X X 与 Y Y Y 相互独立,则协方差必然为零,但即便变量不独立,有时仍可能出现协方差为零的情况,原因在于 X X X 在对称区间上呈现偶函数特性,当我对这些数值进行求和时,正负值会相互抵消。

7. 其他性质

其他性质我们之前已经提到过, X X X 的方差等于 X X X 与自身的协方差,实际上,如果直接将 X X X 代入协方差公式,得到的就是方差的定义:即 X X X 与其均值之差的平方的期望值,因此这个性质是确定成立的。

变量 X X X 与 Y Y Y 之和的方差,即变量 Z = X + Y Z=X+Y Z=X+Y 的方差,等于 X X X 的方差加 Y Y Y 的方差,再加两倍的 X X X 与 Y Y Y 的协方差:

V a r ( X + Y ) = V a r ( X ) + V a r ( Y ) + 2 C o v ( X , Y ) Var(X+Y) = Var(X) + Var(Y) + 2Cov(X,Y) Var(X+Y)=Var(X)+Var(Y)+2Cov(X,Y)

请务必自行验证这个结论,请将 X + Y X+Y X+Y 代入方差公式的两个位置,展开后自行验证:最终结果确实是方差 X X X 加方差 Y Y Y 再加两倍 X X X 与 Y Y Y 的协方差。

那么请你想一想,如果 X X X 和 Y Y Y 相互独立,这个结论会如何变化?很简单,如果二者相互独立,则协方差为零,最终得到 X X X 的方差加 Y Y Y 的方差,若存在相关性,则需额外增加协方差项。

主要内容就是这些,这种方法可以量化两个随机变量之间的联合依赖关系,因此,若两个变量高度相关,即 X X X 的变化会引起 Y Y Y 的同步变化,二者的协方差值就会很高,若 X X X 与 Y Y Y 的相关性较弱,二者的协方差值也会相应较低,通俗来说就是这样。

8. 定义相关性

我想我需要明确一下定义,我已经定义了协方差,现在来定义相关性,相关性本质上是经过标准化的协方差:

C o r r ( X , Y ) = ρ ( X , Y ) = C o v ( X , Y ) S D ( X )   S D ( Y ) Corr(X,Y) = \rho(X,Y) = \frac{Cov(X,Y)}{SD(X) \, SD(Y)} Corr(X,Y)=ρ(X,Y)=SD(X)SD(Y)Cov(X,Y)

X X X 与 Y Y Y 的相关系数定义为 ρ ( X , Y ) \rho(X,Y) ρ(X,Y) ,它等于 X X X 与 Y Y Y 的协方差除以 X X X 的标准差乘以 Y Y Y 的标准差。

我们进行归一化的原因在于:即使保持相同的分布形态,只需将所有值放大,就能直接增大协方差值,若将变量 X X X 进行缩放,其方差会按平方关系变化,它会随 X X X 的缩放而线性变化。

因此,若扩大数据分布范围,例如将单位从英尺转换为英寸,或从米转换为厘米,协方差值就会相应增大,因此,我通过除以 X X X 和 Y Y Y 的标准差来对协方差进行归一化处理,所以这本质上是一个经过归一化处理的协方差。

实际上,我们有时会将协方差称为 σ X Y \sigma_{XY} σXY ,因此有时我们将协方差的相关系数表示为:

ρ ( X , Y ) = σ X Y σ X   σ Y \rho(X,Y) = \frac{\sigma_{XY}}{\sigma_X \, \sigma_Y} ρ(X,Y)=σXσYσXY

如果你愿意,这也可以作为一种表达方式。

9. 线性变换下的相关性

这里有个很好的性质,相关性具有这一特性,而协方差则不具备:

C o r r ( a X + b , c Y + d ) = C o r r ( X , Y ) Corr(aX+b,cY+d) = Corr(X,Y) Corr(aX+b,cY+d)=Corr(X,Y)

a X + b aX+b aX+b 与 c Y + d cY+d cY+d 的相关系数恰好等于 X X X 与 Y Y Y 的相关系数,这意味着我可以在 X X X 和 Y Y Y 方向上分别平移 b b b 和 d d d ,并按系数 a a a 和 c c c 进行拉伸,但这并不会改变归一化的协方差,也就是相关系数,但这确实会改变协方差值。

实际上,你应该计算这些变换后数据的协方差,但当我进行这种线性数据变换时,相关系数并不会改变,这正是相关性非常实用且优越的特性,这就是为什么我们通常倾向于使用标准化后的协方差。

10. 结语

OK,协方差与相关性是概率统计中极其重要的概念,这反映了两个变量之间的某种联合变动关系,当我们处理高维统计数据时,这种关联性将变得极为重要。

假设我随机抽取一万人,对每个人提出一百个问题,通过分析答案之间的相关性,我们或许能从中推理出某些数据规律,这正是主成分分析、奇异值分解等方法的基础,这些内容需要整个系列课程才能讲透,这些内容将为后续的线性回归、多元线性回归及建模奠定基础,这正是后续内容的基础所在。

结语

协方差与相关系数是联合分布理论(L26--L27)的自然产物---当概率论从单一变量走向多维空间时,仅仅知道 X X X 和 Y Y Y 各自的边缘分布是不够的,需要一个数量指标来刻画 它们如何"一起动" 。 Cov ( X , Y ) = E ( X − μ X ) ( Y − μ Y ) = E ( X Y ) − E ( X ) E ( Y ) \text{Cov}(X,Y) = \mathbb{E}(X-\\mu_X)(Y-\\mu_Y) = \mathbb{E}(XY) - \mathbb{E}(X)\mathbb{E}(Y) Cov(X,Y)=E(X−μX)(Y−μY)=E(XY)−E(X)E(Y)---第二个等号是实用计算的核心,它将协方差从定义中的"联合偏离乘积的期望"转化为只需三个期望值( E ( X ) , E ( Y ) , E ( X Y ) \mathbb{E}(X),\mathbb{E}(Y),\mathbb{E}(XY) E(X),E(Y),E(XY))的代数运算。

但协方差有一个致命弱点:对缩放敏感 。将 X X X 从米换算为厘米,协方差膨胀 100 倍,然而变量间的关联强度并无变化。这正是相关系数 ρ = Cov ( X , Y ) σ X σ Y \rho = \frac{\text{Cov}(X,Y)}{\sigma_X \sigma_Y} ρ=σXσYCov(X,Y) 存在的原因---除以两变量标准差的乘积后, ρ ∈ − 1 , 1 \rho \in -1, 1 ρ∈−1,1 成为一个 无量纲的纯关联度量 ,且在线性变换下保持不变: ρ ( a X + b , c Y + d ) = ρ ( X , Y ) \rho(aX+b, cY+d) = \rho(X,Y) ρ(aX+b,cY+d)=ρ(X,Y) 。这使得 ρ \rho ρ 成为比较不同变量对之间线性关联强度的通用 "度量衡"。

Brunton 给出了一个至关重要的逻辑警告:独立 ⇒ \Rightarrow ⇒ 协方差为零,但 协方差为零 ⇏ \nRightarrow ⇏ 独立 。 X ∼ Uniform { − 1 , 0 , 1 } X \sim \text{Uniform}\{-1,0,1\} X∼Uniform{−1,0,1} , Y = X 2 Y=X^2 Y=X2 为经典反例--- Y Y Y 完全由 X X X 决定(最强依赖),但 E ( X Y ) = E ( X 3 ) = 0 = E ( X ) ⋅ 0 \mathbb{E}(XY) = \mathbb{E}(X^3) = 0 = \mathbb{E}(X) \cdot 0 E(XY)=E(X3)=0=E(X)⋅0 ,协方差恰好为零,因为 X X X 的三次方在对称区间上正负抵消。协方差/相关性只检测 线性 关联---非线性依赖(二次、周期等)可以完全逃逸其探测范围。这是 "相关性 ≠ 因果性" 这一俗语的数学根源之一,也为互信息、距离相关等非线性依赖度量留下了必要性空间。

扩展到 n n n 个变量,协方差矩阵 Σ i j = Cov ( X i , X j ) \Sigma_{ij} = \text{Cov}(X_i, X_j) Σij=Cov(Xi,Xj) 成为整个多元统计的运算核心:PCA 对其进行特征分解以寻找方差最大的方向,线性回归的系数估计依赖其逆矩阵,高斯过程的核函数本质上就是在定义协方差结构。本讲从两变量协方差的定义出发,为这些高阶主题铺设了第一块基石 🤗。

参考

相关推荐
爱听歌的周童鞋4 小时前
Steve Brunton | Probability Bootcamp | 笔记 | 第四部分:高级统计 | Lecture 37 | 矩母函数
moments·statistics·steve brunton·probability·mgf
爱听歌的周童鞋21 小时前
Steve Brunton | Probability Bootcamp | 笔记 | 第四部分:高级统计 | Lecture 35 | 大数定律
statistics·steve brunton·probability·lln·sample mean
爱听歌的周童鞋14 天前
Steve Brunton | Probability Bootcamp | 笔记 | 第一部分:概率导论 | Lecture 8 | 条件概率
statistics·steve brunton·probability·conditionalprob
爱听歌的周童鞋14 天前
Steve Brunton | Probability Bootcamp | 笔记 | 第一部分:概率导论 | Lecture 7 | 二项分布与多项分布
statistics·multinomial·steve brunton·probability·binomial
xcLeigh6 个月前
Python入门:Python3 statistics模块全面学习教程
开发语言·python·学习·模块·python3·statistics
头发没了还会再长8 个月前
Basic statistics - 12. One-way ANOVA Basics
统计学·statistics
头发没了还会再长8 个月前
Basic statistics - 10. The unpaired t-test | Independent samples t-test
统计学·statistics
头发没了还会再长8 个月前
Basic statistics -11. The paired t-test | explained with a sample example
统计学·statistics
头发没了还会再长8 个月前
Basic statistics - 07. The degrees of freedom - explained with a simple example
统计学·statistics