[数学建模从入门到入土] 相关性分析

[数学建模从入门到入土] 相关性分析

个人导航

知乎:https://www.zhihu.com/people/byzh_rc

CSDN:https://blog.csdn.net/qq_54636039

注:本文仅对所述内容做了框架性引导,具体细节可查询其余相关资料or源码

参考文章:各方资料

文章目录

  • [[数学建模从入门到入土] 相关性分析](#[数学建模从入门到入土] 相关性分析)
  • 个人导航
  • 概述
  • [相关系数Correlation Coefficient](#相关系数Correlation Coefficient)
        • [1. Pearson 相关系数](#1. Pearson 相关系数)
        • [2. Spearman 相关系数](#2. Spearman 相关系数)
        • [3. Pearson vs Spearman](#3. Pearson vs Spearman)
        • [4. 多重共线性](#4. 多重共线性)
        • [5. 趋势会制造伪相关](#5. 趋势会制造伪相关)
  • [自相关 ACF](#自相关 ACF)
  • [偏自相关 PACF](#偏自相关 PACF)

概述

判断变量之间有没有关系 -> 相关性

判断序列有没有"记忆" -> 自相关性

相关系数Correlation Coefficient

相关系数 = 用一个数,衡量"两个变量是否一起变化 + 变化是否有规律"

  • 取值范围: [ − 1 , 1 ] [-1, 1] [−1,1]

  • 符号:

    • > 0 >0 >0:同向变化(一起涨、一起跌)
    • < 0 <0 <0:反向变化(一个涨一个跌)
  • 绝对值大小:

    • 越接近 1 → 关系越"强"
    • 越接近 0 → 基本没关系

相关系数常用于:

  • 变量筛选: 去掉几乎没关系的变量
  • 多重共线性判断: 两个自变量高度相关 → 回归不稳定
  • 特征工程方向判断: 哪些变量值得重点建模
  • 模型选择: 线性?单调?非线性?

Pearson 只看线性,Spearman 看单调

相关 ≠ 因果

趋势能制造"假相关"

1. Pearson 相关系数

定义为:
ρ X , Y = C o v ( X , Y ) σ X σ Y \rho_{X,Y} = \frac{\mathrm{Cov}(X,Y)}{\sigma_X \sigma_Y} ρX,Y=σXσYCov(X,Y)

样本形式是:
r = ∑ i = 1 n ( x i − x ˉ ) ( y i − y ˉ ) ∑ ( x i − x ˉ ) 2 ∑ ( y i − y ˉ ) 2 r = \frac{\sum_{i=1}^n (x_i-\bar x)(y_i-\bar y)} {\sqrt{\sum (x_i-\bar x)^2}\sqrt{\sum (y_i-\bar y)^2}} r=∑(xi−xˉ)2 ∑(yi−yˉ)2 ∑i=1n(xi−xˉ)(yi−yˉ)

-> Pearson 衡量的是:两个变量之间的"线性关系强弱"

典型情况:

  • y = a x + b y = ax + b y=ax+b → Pearson ≈ ±1
  • y = x 2 y = x^2 y=x2 → Pearson ≈ 0(但明明有关系)

Pearson 隐含假设

  • 关系近似线性
  • 无明显极端异常值
  • 连续数值型变量
  • 对异常值 极度敏感
2. Spearman 相关系数

Spearman 的核心思想:不看原始数值,只看"排名"

  1. 把 x i , y i x_i, y_i xi,yi 分别转成排名
  2. 对排名计算 Pearson 相关

经典公式:
ρ s = 1 − 6 ∑ d i 2 n ( n 2 − 1 ) \rho_s = 1 - \frac{6\sum d_i^2}{n(n^2-1)} ρs=1−n(n2−1)6∑di2

其中 d i d_i di 是两变量排名差

-> Spearman 衡量的是:两个变量是否"单调相关"

只要顺序不乱,Spearman 就能抓住

Spearman 的优点 -> 建模友好

  • ✔ 不要求线性
  • ✔ 对异常值不敏感
  • ✔ 可用于等级变量
  • ✔ 分布要求低
3. Pearson vs Spearman
场景 Pearson(线性) Spearman(单调)
直线关系 y = a x + b y=a x+b y=ax+b ✅ 很强 ✅ 也强
非线性但单调 y = x 2 ( x > 0 ) y=x^2 (x>0) y=x2(x>0) / y = log ⁡ x y=\log x y=logx ❌ 可能不强 ✅ 很强
有异常点(outlier) ❌ 容易被带偏 ✅ 更稳
解释意义 线性变化强弱 单调变化强弱(排名一致性)

结论:

  • Pearson:适合"线性模型"的前置分析
  • Spearman:适合"关系单调但可能弯"的现实数据
4. 多重共线性

法一: 计算自变量之间的 Pearson 相关系数矩阵

相关系数 风险
< 0.6 基本安全
0.6 -- 0.8 需注意
> 0.8 高风险

法二: 方差膨胀因子VIF (最常用、最标准)
V I F j = 1 1 − R j 2 \mathrm{VIF}_j = \frac{1}{1 - R_j^2} VIFj=1−Rj21

R j 2 R_j^2 Rj2:用 其余所有自变量 回归 x j x_j xj 得到的 R 2 R^2 R2

VIF 结论
≈ 1 无共线性
1 -- 5 可接受
5 -- 10 中度共线性
> 10 严重共线性

法三: 条件数(略)

5. 趋势会制造伪相关

两个变量即使彼此没有任何真实关系,只要它们都随时间一起上升/下降,用相关系数一算也会显得很相关

  • 看起来相关很强(甚至显著)
  • 但放到预测/解释里会翻车(换个时间段就不成立)
  • 很容易做出错误结论(把"共同上涨"误当作"相互影响")

怎么识别:

  • 去趋势/差分后再算相关
    -> 一阶差分(看变化量而不是水平值)

自相关 ACF

给你一个序列 x 1 , x 2 , ... , x T x_1,x_2,\dots,x_T x1,x2,...,xT,

自相关: 现在的 x t x_t xt 跟过去的 x t − k x_{t-k} xt−k 有没有关系

(也就是"有没有记忆""记忆有多长")

滞后 k k k 的自相关系数:
ρ ( k ) = C o r r ( x t , x t − k ) \rho(k)=\mathrm{Corr}(x_t,\ x_{t-k}) ρ(k)=Corr(xt, xt−k)

样本估计(记住思想即可):
ρ ^ ( k ) = ∑ t = k + 1 T ( x t − x ˉ ) ( x t − k − x ˉ ) ∑ t = 1 T ( x t − x ˉ ) 2 \hat\rho(k)= \frac{\sum_{t=k+1}^{T}(x_t-\bar x)(x_{t-k}-\bar x)} {\sum_{t=1}^{T}(x_t-\bar x)^2} ρ^(k)=∑t=1T(xt−xˉ)2∑t=k+1T(xt−xˉ)(xt−k−xˉ)

  • k = 1 k=1 k=1:看"跟上一时刻"的关系
  • k = 24 k=24 k=24:比如小时数据看"跟前一天同一小时"的关系
  • k = 7 k=7 k=7:日数据看"周周期"

偏自相关 PACF

ACF 有个"误导"点:即使 x t x_t xt 只和 x t − 1 x_{t-1} xt−1 相关, 它也可能看起来和 x t − 2 , x t − 3 x_{t-2},x_{t-3} xt−2,xt−3​ 都相关, 因为信息是"传递的"

若 x t x_t xt 与 x t − 1 x_{t-1} xt−1 强相关,那么一般 x t x_t xt 和 x t − 2 x_{t-2} xt−2 也会被间接带相关

-> PACF(k) = 在控制了 x t − 1 , ... , x t − k + 1 x_{t-1},\dots,x_{t-k+1} xt−1,...,xt−k+1 后, x t x_t xt 与 x t − k x_{t-k} xt−k 的"纯粹相关"

偏自相关可以理解为回归系数 -> 用线性模型回归:
x t = ϕ 1 x t − 1 + ⋯ + ϕ k x t − k + ϵ t x_t = \phi_1 x_{t-1}+\cdots+\phi_k x_{t-k}+ \epsilon_t xt=ϕ1xt−1+⋯+ϕkxt−k+ϵt

那么:
P A C F ( k ) = ϕ k \mathrm{PACF}(k)=\phi_k PACF(k)=ϕk

也就是:第 k k k 阶滞后的"直接贡献"

相关推荐
byzh_rc5 小时前
[数学建模从入门到入土] matplotlib例图
数学建模·matplotlib
小章UPUP5 小时前
数学建模中的机器学习方法
人工智能·机器学习·数学建模
byzh_rc5 小时前
[数学建模从入门到入土] seaborn例图
数学建模
田里的水稻1 天前
FA_拟合和插值(FI)-逼近样条03(准均匀B样条的计算)
人工智能·数学建模·机器人·自动驾驶
holeer1 天前
CS.Math 之《离散数学》| 知识点笔记
数据结构·数据库·数学建模·操作系统·抽象代数·计算机组成
极客数模2 天前
【2026美赛赛题初步翻译F题】2026_ICM_Problem_F
大数据·c语言·python·数学建模·matlab
热心网友俣先生2 天前
2026年美赛ABC DEF各赛题评分细则发布+细则解读
数学建模
田里的水稻2 天前
FA_拟合和插值(FI,fitting_and_interpolation)-逼近样条02(多阶贝塞尔曲线)
数学建模·自动驾驶·几何学
田里的水稻2 天前
FA_拟合和插值(FI,fitting_and_interpolation)-逼近样条01(贝塞尔、B样条和NURBS曲线)
数学建模·几何学