为什么随机行走相互关联?


27

我已经观察到,平均而言,皮尔逊相关系数的绝对值是一个常数,接近于任何一对独立的随机游动,而与游动长度无关。0.560.42

有人可以解释这种现象吗?

我希望相关性会随着步长的增加而减小,就像任何随机序列一样。

在我的实验中,我使用步长均值为0且步长标准偏差为1的随机高斯步态。

更新:

我忘了以数据为中心,这就是为什么它0.56不是的原因0.42

这是计算相关性的Python脚本:

import numpy as np
from itertools import combinations, accumulate
import random

def compute(length, count, seed, center=True):
    random.seed(seed)
    basis = []
    for _i in range(count):
        walk = np.array(list(accumulate( random.gauss(0, 1) for _j in range(length) )))
        if center:
            walk -= np.mean(walk)
        basis.append(walk / np.sqrt(np.dot(walk, walk)))
    return np.mean([ abs(np.dot(x, y)) for x, y in combinations(basis, 2) ])

print(compute(10000, 1000, 123))

我的第一个想法是,随着步行时间的延长,可以获得更大幅度的值,并且相关性正在逐步提高。
约翰·保罗

但这对任何随机序列都适用,如果我理解正确的话,但只有随机游动具有这种恒定的相关性。
亚当

4
这不仅是任何“随机序列”:相关性非常高,因为每个术语都离前一个仅一步之遥。同样要注意的是,您正在计算的相关系数也不是所涉及的随机变量的相关系数:它是序列的相关系数(被简单地视为配对数据),这涉及到一个大公式,涉及各种平方和所有序列中的术语。
ub

10
您是否在谈论随机游走之间的相关性(跨系列而不是一个系列)?如果是这样,那是因为您的独立随机游走是集成的,而不是协整的,这是一个众所周知的情况,其中会出现虚假相关。
克里斯·豪格

8
如果您采取第一个差异,您将找不到任何关联。缺乏平稳性是这里的关键。
Paul

Answers:


24

您的独立流程没有关联!如果Y t是独立的随机游动:XtYt

  • 不存在无条件的相关系数。(不要谈论。)Corr(X,Y)
  • 对于任何时间Corr X tY t确实为0。tCorr(Xt,Yt)
  • 但是基于时间序列平均值的样本统计信息不会收敛到任何东西!根据随时间推移对多个观测值求平均值而计算出的样本相关系数毫无意义。

凭直觉,您可能(错误地)猜测:

  1. 两个过程{ Y t }之间的独立性意味着它们具有零相关性。(对于两次随机游走,Corr X Y 不存在。){Xt}{Yt}Corr(X,Y)
  2. 时间序列,样本相关性ρ X ý(即,使用时间序列,样本统计如计算出的相关系数^ μ X = 1ρ^XY)将汇聚在人口相关系数ρXý作为Ť→交通μX^=1Tτ=1TXτρXYT

问题是,无论这些说法是正确的随机漫步!(对于行为更好的过程,它们是正确的。)

对于非平稳过程:

  • 您可以讨论在任何两个特定时间点上流程{ Y t }之间的相关性(例如,Corr X 2Y 3是一个非常明智的陈述。){Xt}{Yt}Corr(X2,Y3)
  • 但是,无条件地谈论两个系列之间的相关性是没有意义的!没有明确定义。Corr(X,Y)

在随机行走的情况下有问题吗?

  1. 对于随机游走,不存在诸如E [ X ]的无条件人口矩(即,不依赖于时间)。(在一些松散意义上,它们是无限的。)相似地,无条件的相关系数ρ X ý两个独立的随机游动之间不为零; 它实际上不存在!tE[X]ρXY
  2. 遍历定理的假设不适用于各种时间序列平均值(例如向任何作为收敛牛逼→交通1TτXτT
    • 对于平稳序列,时间序列平均值最终将收敛于无条件的均值。但是对于非平稳序列,这并不意味着按时无条件!

如果您对一段时间内的两个独立随机游走有各种观察结果(例如X 2等...和Y 1Y 2等等),并计算出样本相关系数,则将得到一个数字之间- 11。但这不会是人口相关系数的近似值(不存在)。X1X2Y1Y211

取而代之的是(使用时间序列平均数计算= 1= Ť将会基本上是随机变量)(取值[ - 1 1 ]),其反映了两个特定路径随机游走是偶然的(即,由样本空间Ω绘制的绘制ω定义的路径。)说得非常宽松(和不精确):ρ^XY(T)t=1t=T[1,1]ωΩ

  • 如果Y t碰巧都朝着同一方向漂移,则您将检测到虚假的正向关系。XtYt
  • 如果Y t朝不同的方向漂移,您将检测到虚假的负关系。XtYt
  • 如果Y t恰好彼此漂移,您将检测到接近零的关系。XtYt

您可以通过条款在Google上进行更多了解spurious regression random walk

随机游动不是固定的,在时间取平均值不会收敛于通过在样本空间Ω中进行iid绘制ω得到的结果。作为评价上面提到的,可以采取第一差异Δ X = X - X - 1和用于随机游动,该进程{ Δ X }是静止的。tωΩΔxt=xtxt1{Δxt}

大图思路:

随着时间的推移,多次观察与从样本空间多次抽奖不同!

回想一下,离散时间随机过程 是时间(一个函数Ñ)和样本空间Ω{Xt}tNΩ

为了使时间上的平均值收敛到样本空间Ω上的期望值,您需要平稳遍历性。这是许多时间序列分析中的核心问题。而且,随机游走并不是一个固定的过程。tΩ

与WHuber的答案有关:

如果您可以对多个模拟取平均值(即从进行多次绘制),而不是被迫对时间t取平均值,那么您的许多问题就会消失。Ωt

可以当然限定ρ X ý作为计算在样品相关系数X 1 ... X ÿ 1 ... ÿ ,这也将是一个随机过程。ρ^XY(t)X1XtY1Yt

您可以将一些随机变量定义为:Zt

Zt=|ρ^XY(t)|

用于开始在两个随机游动Ñ0 1 的增量,这是很容易找到È [ Ž 10000 ]通过模拟(即服用多种从绘制Ω)。0N(0,1)E[Z10000]Ω

下面,我对样本Pearson相关系数的10,000个计算进行了仿真。每次我:

  • 模拟2万个长度随机游动(具有正态分布的增量从绘制)。N(0,1)
  • 计算它们之间的样本相关系数。

下面的直方图显示了在10000个相关系数上的经验分布。

在此处输入图片说明

可以清楚地观察到,随机变量ρ X ý10000 可遍布在时间间隔内的位置[ - 1 1 ]。对于XY的两个固定路径,随着时间序列长度的增加,样本相关系数不会收敛到任何东西。ρ^XY(10000)[1,1]XY

在另一方面,对于特定的时间(例如,),该样品的相关系数是用一个随机变量的有限平均等等...如果余取绝对值,并计算平均值在所有模拟中,我计算出约0.42。我不确定您为什么要这样做或为什么这完全有意义??,但是您当然可以。t=10,000

码:

for i=1:10000 
  X = randn(10000,2); 
  Y = cumsum(X); 
  z(i) = corr(Y(:,1), Y(:,2));
end;
histogram(z,20);
mean(abs(z))

由于样本数量显然不是有限的,因此您对不存在的各种数量的主张令人困惑。很难看到您的符号如何适用于OP所描述的情况。
ub

您的样本量永远不会达到无限大!只要您使用计算机绘制样本,就可以(仅在纯数学中可以做出这样的假设)。这是什么意思:因为您拥有无限多个点,所以它不会收敛?你在哪里读的?
Mayou17年

@whuber希望该版本更加清晰。我认为OP在问,即使对于长度很大的时间序列,两个随机游动的有限段之间的样本相关系数(基于时间序列平均值)也不为零。一个基本问题是,对于随机行走,不存在各种人口矩,并且时间序列平均值不收敛于任何东西。
马修·冈恩

然而,对于固定的一切都是有限的。此外,随着n的增加,绝对样本相关系数的期望值确实会收敛!还要注意,问题与该系数的绝对值有关。期望值(显然)为零。nn
whuber

1
@whuber您的意思是对于固定的时间序列长度,一切都是有限的吗?(是的,我同意。)样本相关性的期望为零(是的,我同意)。但是,随着t的增加,样本相关性不会收敛在单个点上。对于任意长度的两个随机游走片段,样本相关系数与[0,1]上均匀分布的随机抽取相差不远(请参见直方图)。tt
马修·冈恩

15

获得精确结果所需的数学比较混乱,但是我们可以相对轻松地得出期望平方相关系数的精确值。这有助于解释为什么靠近值不断显示出来,为什么增加长度ñ随机游走不会改变的东西。1/2n

关于标准术语可能会产生混淆。问题中提到的绝对相关性以及组成该变量的统计量(方差和协方差)是一种公式,可以应用于任意一对随机游走的实现。问题是当我们看许多独立的实现时会发生什么。为此,我们需要对随机游走过程抱有期望


(编辑)

在继续之前,我想与您分享一些图形化见解。 一对独立的随机游动是二维的随机游动。我们可以绘制的路径从每个步骤X ÿ X + 1ÿ + 1。如果此路径趋于向下(从左到右,绘制在通常的XY轴上),则为了研究相关的绝对值,我们将所有Y值取反。在大小为X(X,Y)(Xt,Yt)Xt+1,Yt+1YX值等于标准偏差,并将 Y的最小二乘拟合与 X叠加。这些线的斜率将是相关系数的绝对值,始终位于 0 1之间。YYX01

该图显示了这样的走道,每个走道的长度为960(标准差为标准差)。小空心圆圈标记了它们的起点。黑眼圈标记了它们的最终位置。15960

数字

这些斜率往往很大。这么多点的完全随机散点图将始终具有非常接近零的斜率。如果我们必须描述这里出现的模式,我们可以说大多数2D随机游走逐渐从一个位置迁移到另一个位置。 (但是,这些不一定是它们的起始位置和终点位置!)然后,大约一半的时间,迁移发生在对角线方向上-因此斜率很高。

本文的其余部分将对此情况进行分析。


(Xi)(W1,W2,,Wn)Wiσ2

x=(x1,,xn)

V(x)=1n(xix¯)2.

计算该值的一种好方法是取所有平方差的平均值的一半:

V(x)=1n(n1)j>i(xjxi)2.

xXn

E(V(X))=1n(n1)j>iE(XjXi)2.

差异是iid变量的总和,

XjXi=Wi+1+Wi+2++Wj.

WkWkσ2

E((Wi+1+Wi+2++Wj2))=(ji)σ2.

很容易得出结论

E(V(X))=1n(n1)j>i(ji)σ2=n+16σ2.

xy

E(C(X,Y)2)=3n62n53n2+2n480n2(n1)2σ4.

XYn

ρ2(n)=E(C(X,Y)2)E(V(X))2=3403n32n2+3n2n3n.

9/400.47ρ(n)


ρ2(n)1000ρ2(n)n|ρ(n)|

数字

这是R产生图形的代码。

f <- function(n){
  m <- (2 - 3* n + 2* n^2 -3 * n^3)/(n - n^3) * 3/40 
}
n.sim <- 1e4
par(mfrow=c(1,4))
for (n in c(3, 10, 30, 100)) {
  u <- matrix(rnorm(n*n.sim), nrow=n)
  v <- matrix(rnorm(n*n.sim), nrow=n)
  x <- apply(u, 2, cumsum)
  y <- apply(v, 2, cumsum)
  sim <- rep(NA_real_, n.sim)
  for (i in 1:n.sim)
    sim[i] <- cor(x[,i], y[,i])^2
  z <- signif(sqrt(n.sim)*(mean(sim) - f(n)) / sd(sim), 3)
  hist(sim,xlab="rho(n)^2", main=paste("n =", n), sub=paste("Z =", z))
  abline(v=mean(sim), lwd=2, col="Red")
  abline(v=f(n), col="Blue", lwd=2, lty=3)
}

E[ρ2]T=100

ΩXt

1
9/40n

9/40XtYt(Xt,Yt)

2
菲利普斯(1986),定理1e中可以找到本文所讨论问题的渐近分析。
Christoph Hanck
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.