《PCA 原理推导》18-5线性变换生成的随机变量y_i和y_j的协方差 公式解析

本文是将文章《PCA 原理推导》中的公式单独拿出来做一个详细的解析,便于初学者更好的理解。


公式 18 - 5 18\text{-}5 18-5 的内容如下:

cov ( y i , y j ) = a i T Σ a j , i , j = 1 , 2 , ... , m \text{cov}(y_i, y_j) = a_i^T \Sigma a_j, \quad i, j = 1, 2, \dots, m cov(yi,yj)=aiTΣaj,i,j=1,2,...,m


解释公式 18 - 5 18\text{-}5 18-5

背景与意义

公式 18 - 5 18\text{-}5 18-5 描述了通过线性变换生成的随机变量 y i y_i yi 和 y j y_j yj 的协方差关系。在主成分分析(PCA)中,这个公式用于衡量不同主成分之间的线性相关性。

主成分分析的目标是寻找一组新的坐标轴(即主成分),使得这些轴之间相互正交(线性无关),从而消除原始数据中不同特征之间的相关性。这一过程依赖于协方差公式来分析线性相关性。


公式符号解析
  1. cov ( y i , y j ) \text{cov}(y_i, y_j) cov(yi,yj): 表示变换后随机变量 y i y_i yi 和 y j y_j yj 的协方差。协方差反映了两个变量之间的线性相关性。如果协方差为零,说明这两个变量是线性无关的。

  2. Σ \Sigma Σ: 表示原始随机向量 x x x 的协方差矩阵,定义为:
    Σ = E ( x − μ ) ( x − μ ) T \Sigma = \mathbb{E}(x - \\mu)(x - \\mu)\^T Σ=E(x−μ)(x−μ)T

    它是一个 m × m m \times m m×m 的对称矩阵,描述了原始数据的各个特征之间的线性关系。

  3. a i , a j a_i, a_j ai,aj:

    表示用于线性变换的权重向量,分别定义了第 i i i 和第 j j j 个主成分的方向。

  4. a i T Σ a j a_i^T \Sigma a_j aiTΣaj:

    这是协方差矩阵 Σ \Sigma Σ 的二次型形式,表示将协方差矩阵作用于两个方向 a i a_i ai 和 a j a_j aj 后得到的协方差值。


公式推导

假设通过线性变换得到的随机变量为:
y i = a i T x , y j = a j T x y_i = a_i^T x, \quad y_j = a_j^T x yi=aiTx,yj=ajTx

则 y i y_i yi 和 y j y_j yj 的协方差定义为:
cov ( y i , y j ) = E ( y i − E ( y i ) ) ( y j − E ( y j ) ) \text{cov}(y_i, y_j) = \mathbb{E}(y_i - \\mathbb{E}(y_i))(y_j - \\mathbb{E}(y_j)) cov(yi,yj)=E(yi−E(yi))(yj−E(yj))

  1. 代入 y i = a i T x y_i = a_i^T x yi=aiTx 和 y j = a j T x y_j = a_j^T x yj=ajTx:
    cov ( y i , y j ) = E ( a i T x − E ( a i T x ) ) ( a j T x − E ( a j T x ) ) \text{cov}(y_i, y_j) = \mathbb{E}(a_i\^T x - \\mathbb{E}(a_i\^T x))(a_j\^T x - \\mathbb{E}(a_j\^T x)) cov(yi,yj)=E(aiTx−E(aiTx))(ajTx−E(ajTx))

  2. 利用期望的线性性质:

    由于 a i a_i ai 和 a j a_j aj 是常量向量,可以将其从期望符号内提取出来:
    cov ( y i , y j ) = a i T E ( x − E ( x ) ) ( x − E ( x ) ) T a j \text{cov}(y_i, y_j) = a_i^T \mathbb{E}(x - \\mathbb{E}(x))(x - \\mathbb{E}(x))\^T a_j cov(yi,yj)=aiTE(x−E(x))(x−E(x))Taj

  3. 协方差矩阵的定义:

    根据协方差矩阵的定义:
    Σ = E ( x − E ( x ) ) ( x − E ( x ) ) T \Sigma = \mathbb{E}(x - \\mathbb{E}(x))(x - \\mathbb{E}(x))\^T Σ=E(x−E(x))(x−E(x))T

    将其代入上式:
    cov ( y i , y j ) = a i T Σ a j \text{cov}(y_i, y_j) = a_i^T \Sigma a_j cov(yi,yj)=aiTΣaj


几何意义
  1. 协方差的几何解释:

    • 公式 a i T Σ a j a_i^T \Sigma a_j aiTΣaj 描述了原始数据 x x x 在两个方向 a i a_i ai 和 a j a_j aj 上的投影之间的线性相关性。
    • 如果协方差为零,即 cov ( y i , y j ) = 0 \text{cov}(y_i, y_j) = 0 cov(yi,yj)=0,说明 y i y_i yi 和 y j y_j yj 是线性无关的(在 PCA 中,这对应于两个主成分是正交的)。
  2. PCA 中的作用:

    • PCA 的目标是通过选择一组正交的 a i a_i ai 和 a j a_j aj,使得变换后的主成分 y i y_i yi 和 y j y_j yj 的协方差为零(线性无关)。
    • 如果协方差不为零,说明 y i y_i yi 和 y j y_j yj 之间存在某种线性相关性,需要重新调整主成分方向以消除这种相关性。

举例说明

假设数据 x x x 是二维随机向量,其协方差矩阵为:
Σ = 4 2 2 3 \Sigma = \begin{bmatrix} 4 & 2 \\ 2 & 3 \end{bmatrix} Σ=4223

选择两个方向向量:
a 1 = 1 0 , a 2 = 0 1 a_1 = \begin{bmatrix} 1 \\ 0 \end{bmatrix}, \quad a_2 = \begin{bmatrix} 0 \\ 1 \end{bmatrix} a1=10,a2=01

则 y 1 = a 1 T x y_1 = a_1^T x y1=a1Tx, y 2 = a 2 T x y_2 = a_2^T x y2=a2Tx,它们的协方差为:
cov ( y 1 , y 2 ) = a 1 T Σ a 2 \text{cov}(y_1, y_2) = a_1^T \Sigma a_2 cov(y1,y2)=a1TΣa2

计算过程:

  1. 先计算 Σ a 2 \Sigma a_2 Σa2:
    Σ a 2 = 4 2 2 3 0 1 = 2 3 \Sigma a_2 = \begin{bmatrix} 4 & 2 \\ 2 & 3 \end{bmatrix} \begin{bmatrix} 0 \\ 1 \end{bmatrix} = \begin{bmatrix} 2 \\ 3 \end{bmatrix} Σa2=422301=23

  2. 再计算 a 1 T Σ a 2 a_1^T \Sigma a_2 a1TΣa2:
    a 1 T Σ a 2 = 1 0 2 3 = 2 a_1^T \Sigma a_2 = \begin{bmatrix} 1 & 0 \end{bmatrix} \begin{bmatrix} 2 \\ 3 \end{bmatrix} = 2 a1TΣa2=1023=2

因此, y 1 y_1 y1 和 y 2 y_2 y2 的协方差为 2 2 2,说明它们之间存在相关性。


公式 18 - 5 18\text{-}5 18-5 的作用
  1. 衡量主成分之间的相关性:
    公式提供了一种计算变换后随机变量之间协方差的方法。
  2. 验证主成分的正交性:
    在 PCA 中,我们希望通过选择正交的方向向量 a i a_i ai 和 a j a_j aj,使得协方差为零,从而消除主成分之间的相关性。
  3. 数学基础:
    公式直接体现了协方差矩阵的作用,它描述了原始数据特征之间的相关性如何通过线性变换传播到新特征空间。

总结

公式 18 - 5 18\text{-}5 18-5 描述了主成分之间的协方差,它是主成分分析的核心之一。通过选择合适的方向向量 a i a_i ai 和 a j a_j aj,PCA 可以确保主成分彼此正交(协方差为零),从而实现降维和特征去相关的目标。这一公式体现了线性代数中二次型和协方差矩阵的深刻联系。

相关推荐
To_OC14 小时前
搞懂 Token 和 Embedding 后,我终于明白大模型是怎么 "读" 文字的
人工智能·llm·agent
冬奇Lab17 小时前
每日一个开源项目(第139篇):Voicebox - 本地运行的开源 ElevenLabs 替代品
人工智能·开源·资讯
冬奇Lab17 小时前
Skill 系列(03):Skill 设计范式——5 个模式让输出从混沌到可预测
人工智能·开源·agent
IT_陈寒19 小时前
Python搞不定字符串编码?这破玩意坑我两小时!
前端·人工智能·后端
大模型真好玩20 小时前
什么是Loop Engineering?最通俗易懂的Loop Engineering核心概念
人工智能·agent·deepseek
叁两20 小时前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js
LaiYoung_21 小时前
🎁 送你一套超好用超实用的 FE AI-Coding Skills
前端·人工智能·开源
ZzT1 天前
怎么做才不会被 AI 替代?
人工智能·程序员
道友可好1 天前
从今天开始:你的第一个 Harness Engineering 实践
前端·人工智能·后端