正確な結果を得るために必要な数学は厄介ですが、予想される2乗相関係数の正確な値を比較的簡単に導き出すことができます。それは近い値理由を説明するのに役立ちます現れて、なぜ長増加し続けるnはランダムウォークのは、物事を変更しません。1/2n
標準用語について混乱する可能性があります。質問で言及されている絶対相関と、それを構成する統計(分散および共分散)は、ランダムウォークの実現の任意のペアに適用できる式です。この質問は、多くの独立した実現を見たときに何が起こるかに関するものです。そのためには、ランダムウォークプロセスに期待する必要があります。
(編集)
先に進む前に、グラフィカルな洞察を皆さんと共有したいと思います。 一対の独立したランダムウォークは、2次元のランダムウォークです。我々は、それぞれの手順では、そのパスをプロットすることができる(XはT、YのT)するX T + 1、Y T Yの値は標準偏差を等しく、最小二乗の適合重畳Y(X,Y)(Xt,Yt)。このパスが下に向かう場合(通常のXY軸にプロットされた左から右)、相関の絶対値を調べるために、すべてのY値を否定しましょう。軸上のプロット散歩を与えるように寸法Xをし、Xt+1,Yt+1YXYYとます。これらの線の勾配は相関係数の絶対値であり、常に0と1の間にあります。X01
この図は、それぞれ長さ960のそのような歩行を示しています(標準の標準の違いを使用)。小さな白丸が出発点を示します。暗い円は最終的な場所を示します。15960
これらの斜面はかなり大きくなる傾向があります。この多くの点の完全にランダムな散布図は、常にゼロに非常に近い勾配を持ちます。ここで出現するパターンを説明する必要がある場合、ほとんどの2Dランダムウォークは、ある場所から別の場所に徐々に移行すると言えます。 (ただし、これらは必ずしも開始位置と終了位置ではありません!)約半分の時間で、その移行は対角線方向に発生し、それに応じて勾配が大きくなります。
この投稿の残りの部分では、この状況の分析をスケッチします。
ランダムウォークは、(W 1、W 2、… 、W n)の部分和のシーケンスです。ここで、W i(Xi)(W1,W2,…,Wn)Wiは、独立に分布するゼロ平均変数です。彼らの共通の分散が可能ましょう。σ2
実現ような歩行の、x n)では、「分散」は、これがデータセットであるかのように計算されます。x=(x1,…,xn)
V(x)=1n∑(xi−x¯)2.
この値を計算する良い方法は、すべての平方差の平均の半分を取ることです。
V(x)=1n(n−1)∑j>i(xj−xi)2.
がランダムウォークXの結果として表示される場合xXのステップ、この期待はn
E(V(X))=1n(n−1)∑j>iE(Xj−Xi)2.
違いはiid変数の合計です。
Xj−Xi=Wi+1+Wi+2+⋯+Wj.
広場を展開し、期待をかけます。ので、独立しており、ゼロ手段を有する、すべての交差項の期待値はゼロです。W kのような用語のみが残り、その期待値はWkWk。かくしてσ2
E((Wi+1+Wi+2+⋯+W2j))=(j−i)σ2.
それは簡単に続きます
E(V(X))=1n(n−1)∑j>i(j−i)σ2=n+16σ2.
2つの独立した実現とyの間の共分散xy再びランダム変数ではなくデータセットの意味で-は同じ手法で計算できます(ただし、より多くの代数的作業が必要です; 4倍の合計が含まれます)。その結果、予想される共分散の二乗は
E(C(X,Y)2)=3n6−2n5−3n2+2n480n2(n−1)2σ4.
その結果、XステップとYの間の2乗相関係数の期待値は、nステップで取り出されます。XYn
ρ2(n)=E(C(X,Y)2)E(V(X))2=3403n3−2n2+3n−2n3−n.
これは一定ではありませんが、制限値に急速に近づきます。したがって、その平方根は約0.47であり、予想されるρの絶対値に近似します(9/400.47(そして過小評価します)。ρ(n)
計算エラーを犯したと確信していますが、シミュレーションは漸近精度を裏付けています。ヒストグラムを示す以下の結果でのための1000の破線の青い線は、式の値を表示しながら、シミュレーション毎に、垂直赤い線は、手段を示します。明らかに間違っていますが、漸近的には正しいです。明らかに全体の分布ρ 2(nが)のような限界に近づいている、Nが増加します。同様に、|の分布 ρ (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)
}