랜덤 워크는 왜 서로 관련이 있습니까?


27

평균적으로 Pearson 상관 계수의 절대 값은 보행 길이에 관계없이 독립적 인 임의의 보행 쌍에 대해 일정한 상수라는 것을 관찰했습니다 .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))

첫 번째 생각은 보행이 길어질수록 더 큰 크기의 값을 얻을 수 있으며 상관 관계가 그에 따라 달라진다는 것입니다.
John Paul

그러나 이것은 내가 당신을 올바르게 이해한다면 임의의 시퀀스와 함께 작동 할 것입니다. 그러나 임의의 보행에만 일정한 상관 관계가 있습니다.
Adam

4
이것은 "임의의 순서"가 아닙니다. 각 항이 앞의 항에서 한 발짝 떨어져 있기 때문에 상관 관계가 매우 높습니다. 또한 계산하는 상관 계수는 관련된 임의 변수의 상관 계수가 아닙니다. 시퀀스에 대한 상관 계수 (간단히 쌍을 이루는 데이터로 생각됨)는 다양한 제곱과 모든 순서의 용어.
whuber

10
상관 관계에 대해 이야기하고 있습니까 임의의 보행 간의 (한 시리즈가 아닌 시리즈 간)? 그렇다면 독립 랜덤 워크가 통합되었지만 통합되지 않았기 때문입니다. 이는 가짜 상관 관계가 나타나는 잘 알려진 상황입니다.
Chris Haug

8
첫 번째 차이를 취하면 상관 관계가 없습니다. 문구의 부족이 여기의 핵심입니다.
Paul

답변:


24

독립적 인 프로세스는 서로 관련이 없습니다! X t 인 경우Xt 독립적 인 무작위 행보은 다음과 같습니다 :Yt

  • 무조건 상관 계수가 존재하지 않습니다. ( 코르 에 대해 이야기하지 마십시오.)Corr(X,Y)
  • 언제든지 , Corr ( X tt 는 실제로 0이다.Corr(Xt,Yt)
  • 그러나 시계열 평균을 기반으로 한 샘플 통계 는 아무 것도 수렴되지 않습니다! 시간에 따른 여러 관측치의 평균을 기반으로 계산 한 샘플 상관 계수 는 의미가 없습니다.

직관적으로 다음과 같이 추측 할 수 있습니다.

  1. 두 프로세스 { Y t } 사이의 독립성은 상관 관계가 없음을 의미합니다. (두 번의 무작위 보행의 경우 Corr ( X{Xt}{Yt} 는 존재하지 않습니다.)Corr(X,Y)
  2. 시계열 샘플 상관 관계 ρ X Y 즉 시계열 같은 샘플 통계 계산 상관 계수 ( ^ μ X = 1ρ^XY)는 모집단 상관 계수ρXYT로수렴합니다.μX^=1Tτ=1TXτρ엑스와이

문제는 이 문장들 중 어느 것도 무작위 보행에 맞지 않다는 것 입니다! (더 나은 동작 프로세스에 해당됩니다.)

고정식 프로세스의 경우 :

  • 두 가지 특정 시점에서 프로세스 { Y t } 의 상관 관계에 대해 이야기 할 수 있습니다 (예 : Corr ( X 2 , Y 3 ) 는 완벽하게 합리적인 진술입니다.){엑스}{와이}Corr(X2,Y3)
  • 그러나 무조건 두 시리즈 간의 상관 관계에 대해 이야기하는 것은 이치에 맞지 않습니다! 에는 잘 정의 된 의미가 없습니다.Corr(X,Y)

무작위 보행의 문제?

  1. 무작위 보행의 경우, E [ X ] 와 같은 무조건 집단 모멘트 (즉 , 시간 의존 하지 않음)는 존재하지 않습니다. (어느 정도 느슨한 의미에서는 무한대입니다.) 마찬가지로, 무조건 상관 계수 ρ X YtE[X]ρXY 2 개의 독립적 인 랜덤 워크 사이 는 0이 아니다; 실제로 존재하지 않습니다!
  2. 인체 공학적 이론 의 가정은 적용되지 않으며 다양한 시계열 평균 (예 : )T와 같은 것으로 수렴하지 않습니다1TτXτ. T
    • 고정 시퀀스의 경우 시계열 평균은 결국 시간에 무조건적인 평균에 수렴됩니다. 그러나 고정되지 않은 시퀀스의 경우 시간에 무조건적이라는 의미는 없습니다!

당신은 시간이 지남에 두 개의 독립적 인 무작위 행보의 다양한 관찰이있는 경우 (예. , X 2 , 등 ... 그리고 Y 1 , Y 2 , ...) 및 샘플 상관 계수를 계산, 당신은 수를 얻을 것이다 사이 - 11 . 그러나 그것은 존재하지 않는 인구 상관 계수의 근사치가 아닙니다.X1X2Y1Y211

ρ X Y ( T ) (에서 시계열의 평균을 이용하여 계산 t = 1t = T 기본적 랜덤 변수 될 것이다 () 값을 가지고 [ - 1 , 1 ] )되는 두 개의 특정 경로를 반영 임의의 보행은 우연히 발생했습니다 (즉, 샘플 공간 Ω 에서 그린 드로우 ω에 의해 정의 된 경로 ).ρ^XY(T)t=1t=T[1,1]ωΩ

  • 두 경우 Y의 t가 같은 방향으로 방황하는 일이, 당신은 가짜 양 (+)의 상관 관계를 감지 할 수 있습니다.XtYt
  • 경우 Y의 t가 서로 다른 방향으로 떨어져 방황, 당신은 가짜 부정적인 관계를 감지 할 수 있습니다.XtY
  • 경우 Y의 t가 서로 충분히에 걸쳐 방황하는 일이, 당신은 제로에 가까운 관계를 감지 할 수 있습니다.XY

용어를 사용하여 이에 대해 Google에 더 자세히 알 수 있습니다 spurious regression random walk.

임의의 보행은 고정적이지 않으며 시간이 지남에 따라 평균 를 취하는 것은 샘플 공간 Ω 에서 iid draws ω 를 가져와 얻을 수있는 결과에 수렴하지 않습니다 . 위의 의견에서 언급했듯이 첫 번째 차이 Δ x t = x tx t - 1을 취할 수 있으며 무작위 보행의 경우 그 과정 { Δ x t }ωΩΔxt=xtxt1{Δxt} 는 정지 상태입니다.

큰 그림 아이디어 :

시간에 따른 다중 관측치는 표본 공간에서 여러 번 추출한 것과 다릅니다!

불연속 시간 확률 적 프로세스 는 시간 ( t N )과 샘플 공간 Ω 의 함수입니다 .{Xt}tNΩ

샘플 공간 Ω에 대한 기대치에 대해 시간 에 따른 평균 t의 수렴을 위해서는 정상 성과 회전 성 이 필요합니다 . 이것은 많은 시계열 분석에서 핵심적인 문제입니다. 그리고 랜덤 워크는 정지 된 과정이 아닙니다.tΩ

WHuber의 답변에 연결 :

시간 t에 걸쳐 평균을 취하지 않고 여러 시뮬레이션에서 평균을 취할 수 있다면 (즉, 에서 여러 번 가져 오기) 여러 가지 문제가 사라집니다.Ωt

사용자는 물론 정의 할 ρ X Y ( t ) 에서 산출 된 샘플의 상관 계수로서 X 1 ... X tY 1 ... Y의 tρ^XY(t)X1XtY1Yt 이 또한 확률 과정 것이다.

임의의 변수 를 다음과 같이 정의 할 수 있습니다 .Zt

Zt=|ρ^XY(t)|

에서 시작하는 두 개의 무작위 행보를 들어 N ( 0 , 1 ) 단위, 그것은 쉽게 찾을 E [ Z가 10000 ] 시뮬레이션 (즉, 여러부터 그립니다 복용 Ω을0N(0,1)E[Z10000]Ω .)

아래에서 샘플 Pearson 상관 계수의 10,000 계산 시뮬레이션을 실행했습니다. 매번 나는 :

  • 정규 분포 증분 시뮬레이션 10,000 개의 길이가 무작위 행보 (그릴에서 N(0,1) ).
  • 그들 사이의 샘플 상관 계수를 계산했습니다.

아래는 10000 개의 계산 된 상관 계수에 대한 경험적 분포를 보여주는 막대 그래프입니다.

여기에 이미지 설명을 입력하십시오

당신은 분명히 확률 변수 것을 관찰 할 수있다 ρ X Y ( 10000 ) 간격의 여기 저기를 할 수 있습니다 [ - 1 , 1 ] . XY 의 두 고정 경로에 대해, 샘플 상관 계수는 시계열 길이가 증가함에 따라 어떤 것에도 수렴되지 않습니다.ρ^XY(10000)[1,1]XY

반면, 특정 시간 (예 : ) 동안 샘플 상관 계수는 유한 평균 등을 갖는 랜덤 변수입니다. 절대 값을 취하고 모든 시뮬레이션에서 평균을 계산하면, 대략 .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에 설명 된 상황에 기호가 어떻게 적용되는지 확인하기는 어렵습니다.
whuber

샘플 크기는 절대 무한대가 아닙니다! 컴퓨터로 샘플을 그리는 한은 아닙니다 ( 순수한 수학에서만 그러한 가정을 할 수 있습니다 ). 그리고 그것은 무엇을 의미합니까? 당신은 무한히 많은 점을 가지고 있기 때문에 수렴하지 않습니까? 어디서 읽었습니까?
Mayou36

@whuber이 버전이 조금 더 명확하기를 바랍니다. 나는 OP가 임의의 보행의 두 유한 세그먼트 사이의 샘플 상관 계수가 (시간 시리즈 평균을 기반으로) 왜 거대한 길이의 시계열에 대해서도 제로가 아닌지 묻습니다. 근본적인 문제는 무작위 보행의 경우 다양한 인구 모멘트가 존재하지 않으며 시계열 평균이 어떤 것도 수렴하지 않는다는 것입니다.
Matthew Gunn

Nevertheless, for fixed n everything is finite. Moreover, the expectation of the absolute sample correlation coefficient does converge as n increases! Note, too, that the question concerns the absolute value of that coefficient. Its expectation (obviously) is zero.
whuber

1
@whuber Do you mean for fixed time-series length t, everything is finite? (yes I agree with that.) The expectation of the sample correlation is zero (yes, I agree with that). As t increases though, the sample correlation though does not converge on a single point. For two random walk-segments of arbitrary length, the sample correlation coefficient isn't that far from a random draw from the uniform distribution on [0, 1] (see histogram).
Matthew Gunn

15

The math needed to obtain an exact result is messy, but we can derive an exact value for the expected squared correlation coefficient relatively painlessly. It helps explain why a value near 1/2 keeps showing up and why increasing the length n of the random walk won't change things.

There is potential for confusion about standard terms. The absolute correlation referred to in the question, along with the statistics that make it up--variances and covariances--are formulas that one can apply to any pair of realizations of random walks. The question concern what happens when we look at many independent realizations. For that, we need to take expectations over the random walk process.


(Edit)

(X,Y)(Xt,Yt)Xt+1,Yt+1. If this path tends downwards (from left to right, plotted on the usual X-Y axes) then in order to study the absolute value of the correlation, let's negate all the Y values. Plot the walks on axes sized to give the X and Y values equal standard deviations and superimpose the least-squares fit of Y to X. The slopes of these lines will be the absolute values of the correlation coefficients, lying always between 0 and 1.

This figure shows 15 such walks, each of length 960 (with standard Normal differences). Little open circles mark their starting points. Dark circles mark their final locations.

Figure

These slopes tend to be pretty large. Perfectly random scatterplots of this many points would always have slopes very close to zero. If we had to describe the patterns emerging here, we might say that most 2D random walks gradually migrate from one location to another. (These aren't necessarily their starting and endpoint locations, however!) About half the time, then, that migration occurs in a diagonal direction--and the slope is accordingly high.

The rest of this post sketches an analysis of this situation.


A random walk (Xi) is a sequence of partial sums of (W1,W2,,Wn) where the Wi are independent identically distributed zero-mean variables. Let their common variance be σ2.

In a realization x=(x1,,xn) of such a walk, the "variance" would be computed as if this were any dataset:

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

A nice way to compute this value is to take half the average of all the squared differences:

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

When x is viewed as the outcome of a random walk X of n steps, the expectation of this is

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

The differences are sums of iid variables,

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

Expand the square and take expectations. Because the Wk are independent and have zero means, the expectations of all cross terms are zero. That leaves only terms like Wk, whose expectation is σ2. Thus

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

It easily follows that

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

The covariance between two independent realizations x and y--again in the sense of datasets, not random variables--can be computed with the same technique (but it requires more algebraic work; a quadruple sum is involved). The result is that the expected square of the covariance is

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

Consequently the expectation of the squared correlation coefficient between X and Y, taken out to n steps, is

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

Although this is not constant, it rapidly approaches a limiting value of 9/40. Its square root, approximately 0.47, therefore approximates the expected absolute value of ρ(n) (and underestimates it).


I am sure I have made computational errors, but simulations bear out the asymptotic accuracy. In the following results showing the histograms of ρ2(n) for 1000 simulations each, the vertical red lines show the means while the dashed blue lines show the formula's value. Clearly it's incorrect, but asymptotically it is right. Evidently the entire distribution of ρ2(n) is approaching a limit as n increases. Similarly, the distribution of |ρ(n)| (which is the quantity of interest) will approach a limit.

Figure

This is the R code to produce the figure.

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)
}

My Monte-Carlo simulation based estimate of E[ρ2] for T=100 is about .24 (which appears to agree with your results). I agree with your analysis here. You might be getting at how the OP come to his number (though I calculate about .42, not .56).
Matthew Gunn

If you can take repeated draws from Ω, there's nothing particularly special about time-series analysis. Issues (eg. ergodicity, stationarity etc...) develop when you can only observe new values of X by advancing time t which I assumed was what the OP was trying to get at... (but maybe not).
Matthew Gunn

1
+1이지만이 긍정적 인 점근 적 가치가있는 이유에 대한 직관은 무엇입니까 9/40그러나 순진한 사람은 두 개의 매우 긴 임의의 보행을 취하면 거의 0의 상관 관계를 가져야합니다. 즉, 순진한 상관 관계는 자 랍니까?
amoeba는

@amoeba First, I don't fully believe the value of 9/40, but I know it's close to correct. For the intuition, consider that two independent walks Xt and Yt are a random walk (Xt,Yt) in two dimensions. Take any random scatterplot in 2D and measure its eccentricity somehow. It will be rare for it to be perfectly circular. Thus, we expect the mean eccentricity to be positive. That there is a limiting distribution for random walks merely reflects the self-similar "fractal" nature of this 2D walk.
whuber

2
An asymptotic analysis of the issues discussed here may be found in Phillips (1986), Theorem 1e.
Christoph Hanck
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.