スプリアス相関の期待値


12

我々は、描画N大きさの各サンプル、n独立して正常から、(μ,σ2)分布。

次に、Nサンプルから、相互に最も高い(絶対)ピアソン相関を持つ2つのサンプルを選択します。

この相関の期待値は何ですか?

ありがとう[PSこれは宿題ではない]


2
(+1)かなり難しい宿題の質問になります:-)。一般的な回答が必要ですか、それとも(おそらく)またはnの特定の値に注意を向けることができますか?たとえば、nNよりはるかに大きい場合、適切な近似値を作成できる可能性があります。他の場合には異なる近似が必要になります。NnnN
whuber

1
私は一般的な答えを期待していますが、仮定が1た OKでしょう!Nおよびnの特定の値の場合n>>NNnは、それほど興味深いものではありません。シミュレーションでそのような特定のケースを見ることができるので(現時点で私がやっていることです)、それでも興味があるかもしれません。
Pセラーズ

1
誤解される可能性はありますが、実際のユーティリティの一般的な解決策はおそらくありそうもないと思います。これは、幾何学と線形代数のインターフェースにおける未解決の問題とかなり密接に関連しています。アプリケーションでは、そのような量に関する情報の必要性が、たとえば圧縮センシングで発生します。
枢機

1
FWIW、これは私がちょうど実行しているシミュレーションの結果です:Normal(0,1)を使用して、平均相関、(1000を超えるシミュレーション)、およびサンプル数Nρ = 0.025によってほぼ関係していることがわかりました+ 0.113 ln N 0.008 ln N 2ρN
ρ=0.025+0.113ln(N)0.008ln(N)2
及び 4 N Nn=1004Nn線形回帰モデルを使用します。モデルの適合と通常の診断は非常に良好でした。また、平均相関がほぼ正規分布していることもわかりました(わずかに右斜めですが)。
Pセラーズ

回答:


9

この問題に対処する次の記事を見つけました:Jiang、Tiefeng(2004)。サンプル相関行列の最大エントリの漸近分布。応用確率の年報、 14(2)、865-880

江は、統計量の漸近分布を示すここで、ρ I jはの間の相関であり、I番目とjの長さのランダムベクトル番目N(とLn=max1i<jN|ρij|ρijijn)でありますij

ここで = LIM N N / Nは、紙内に存在すると仮定して

limnPr[nLn24logn+log(log(n))y]=exp(1a28πexp(y/2)),
a=limnn/Nの関数である NNn

どうやら、この結果は、十分な数の有限モーメントを持つ分布分布に当てはまります(編集:以下の@cardinalのコメントを参照)。Jiangは、これがタイプIの極値分布であることを指摘しています。場所と規模は

σ=2,μ=2log(1a28π).

I型EVの分布の期待値はところ、γはオイラーの定数です。ただし、コメントで指摘されているように、分布の収束は、それ自体では、平均値の制限分布への収束を保証するものではありません。μ+σγγ

この場合にそのような結果を表示できれば n L 2 n4 log n + log log n の漸近的期待値であろうnLn24logn+log(log(n))

limnE[nLn24logn+log(log(n))]=2log(a28π)+2γ.

これにより、最大二乗相関の漸近的期待値が得られますが、質問では最大絶対相関の期待値が求められます。そこで100%ではなく、近い。

1)シミュレーションに問題がある(可能性が高い)、2)筆記/代数に問題がある(可能性が高い)、または3)近似が妥当でない使用したおよびNの値。おそらく、この近似を使用して、OPがいくつかのシミュレーション結果を考慮に入れることができますか?nN


2
余談ですが、私はこの質問が本当に好きでした。以前、この質問について疑問に思っていました。Type-Iディストリビューションへの接続に驚きました-それはかなりクールだとわかりました。それに至るまでの数学を理解したいのですが
...-jmtroos

1
(+1)素敵な発見!! このの正の平方根は最大絶対相関の期待値に等しいと仮定できると思いますか?期待する式では、nを含むすべての部分を取り出して、次の結果を得ることができません。E [ L 2 n ] = 1Lnn ?とにかく、私はこれを私のシミュレーションと比較しました、そして、それは非常に近く見えます!私は...後で今日か明日、それを整理しようとし、それを投稿しますので、私のRコードは、本当にずさんである
E[Ln2]=1n{2log(N2n28π)+2γ+4lognlog(log(n))}
P Sellaz

ところで、紙はここから直接入手可能ですprojecteuclid.org/DPubS/Repository/1.0/...
P Sellaz

3
(+1)これは非常に素晴らしい論文であり、私はそれをざっと読みましたがここでは少し注意する必要があります。いくつかの備考:(1)の結果は、制度のためのものであるので、ベクターの寸法は、保持するために、これらの結果を考慮下のベクトルの数にほぼ比例して成長しなければなりません。(2)この場合でも、結果は「任意の」分布には当てはまりません。実際、この論文の条件では、30番目のモーメントが有限であることを本質的に必要とするという意味で、ランダム変数は「ほぼ指数関数的に制限された」ものである必要があります。(続き)n/pγ(0,)
枢機

3
{Ln}χ12

2

Further to the answer provided by @jmtroos, below are the details of my simulation, and a comparison with @jmtroos's derivation of the expectation from Jiang (2004), that is:

E[Ln2]=1n{2ログN2n28π+2γ+4ログnログログn}

この期待値は、小規模のシミュレーション値を上回るようです N 以下の大規模な N そして、彼らは次のようにわずかに分岐するように見えます N増加します。ただし、増加は差が小さくなるn、論文が分布が漸近的であると主張しているように、いろいろ試してみましたn[100500]。以下のシミュレーションでは、n=200。私はRが初めてなので、コードを改善するためのヒントや提案は大歓迎です。

set.seed(1)

ns <- 500
# number of simulations for each N

n <- 200
# length of each vector

mu <- 0
sigma <- 1
# parameters for the distribution we simulate from

par(mfrow=c(5,5))
x<-trunc(seq(from=5,to=n, length=20))
#vector of Ns

y<-vector(mode = "numeric")
#vector to store the mean correlations

k<- 1
#index for y

for (N in x) {
# loop over a range of N

    dt <- matrix(nrow=n,ncol=N)

    J <- vector(mode = "numeric")
    # vector to store the simulated largest absolute 
    # correlations for each N

    for (j in 1:ns) {
    # for each N, simulated ns times    

      for (i in 1:N) {
        dt[,i] <- rnorm(n,mu,sigma)
      }
      # perform the simulation

      M<-matrix(cor(dt),nrow=N,ncol=N)
      m <- M
      diag(m) <- NA
      J[j] <- max(abs(m), na.rm=TRUE)   
      # obtain the largest absolute correlation
      # these 3 lines came from stackoverflow
  }

    hist(J,main=paste("N=",N, " n=",n, " N(0,1)", "\nmean=",round(J[j],4))) 
    y[k]<-mean(J)
    k=k+1
}

lm1 <- lm(y~log(x))
summary(lm1)

logx_sq=log(x)^2
lm2<-lm(y~log(x)+logx_sq)
summary(lm2)
# linear models for these simulations

# Jiang 2004 paper, computation:

gamma = 0.5772
yy <- vector(mode = "numeric")
yy <- sqrt((2*log((x^2)/(sqrt(8*pi)*n^2)) + 2*gamma-(-4*log(n)+log(log(n))))/n)


plot(x,yy)
# plot the simulated correlations
points(x,y,col='red')
# add the points using the expectation

他の回答に対する私のコメントを参照してください。これは、注意する矛盾の一部の説明に役立つ場合があります(またはそうでない場合もあります)。
枢機
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.