Statistique de normalité asymptotique de l'ordre des distributions à queue lourde

9

Contexte: J'ai un échantillon que je veux modéliser avec une distribution à queue lourde. J'ai des valeurs extrêmes, telles que la diffusion des observations est relativement importante. Mon idée était de modéliser cela avec une distribution Pareto généralisée, et c'est ce que j'ai fait. Maintenant, le quantile 0,975 de mes données empiriques (environ 100 points de données) est inférieur au quantile 0,975 de la distribution de Pareto généralisée que j'ai ajusté à mes données. Maintenant, je pensais, est-il possible de vérifier si cette différence est quelque chose à craindre?

Nous savons que la distribution asymptotique des quantiles est donnée par:

normalité asymptotique des quantiles

J'ai donc pensé que ce serait une bonne idée de divertir ma curiosité en essayant de tracer les bandes de confiance à 95% autour du quantile de 0,975 d'une distribution de Pareto généralisée avec les mêmes paramètres que ceux obtenus par l'ajustement de mes données.

GPD

Comme vous le voyez, nous travaillons ici avec des valeurs extrêmes. Et comme la propagation est si énorme, la fonction de densité a des valeurs extrêmement faibles, ce qui fait passer les bandes de confiance à l'ordre de utilisant la variance de la formule de normalité asymptotique ci-dessus:±1012

±1.960.9750.025n(fGPD(q0.975))2

Donc, cela n'a aucun sens. J'ai une distribution avec uniquement des résultats positifs et les intervalles de confiance incluent des valeurs négatives. Il se passe donc quelque chose ici. Si je calcule les bandes autour du 0,5 quantile, les bandes ne sont pas si énormes, mais quand même énormes.

Je vais voir comment cela se passe avec une autre distribution, à savoir la distribution . Simulez observations à partir d'une distribution et vérifiez si les quantiles se trouvent dans les bandes de confiance. Je fais cela 10000 fois pour voir les proportions des quantiles 0,975 / 0,5 des observations simulées qui se trouvent dans les bandes de confiance.N(1,1)n=100N(1,1)

    ################################################
# Test at the 0.975 quantile
################################################

#normal(1,1)

#find 0.975 quantile
q_norm<-qnorm(0.975, mean=1, sd=1)
#find density value at 97.5 quantile:
f_norm<-dnorm(q_norm, mean=1, sd=1)
#confidence bands absolute value:
band=1.96*sqrt((0.975*0.025)/(100*(f_norm)^2))
u=q_norm+band
l=q_norm-band

hit<-1:10000
for(i in 1:10000){
  d<-rnorm(n=100, mean=1, sd=1)
  dq<-quantile(d, probs=0.975)

  if(dq[[1]]>=l & dq[[1]]<=u) {hit[i]=1} else {hit[i]=0} 

}
sum(hit)/10000

#################################################################3
# Test at the 0.5 quantile  
#################################################################
#using lower quantile:

#normal(1,1)

#find 0.7 quantile
q_norm<-qnorm(0.7, mean=1, sd=1)
#find density value at 0.7 quantile:
f_norm<-dnorm(q_norm, mean=1, sd=1)
#confidence bands absolute value:
band=1.96*sqrt((0.7*0.3)/(100*(f_norm)^2))
u=q_norm+band
l=q_norm-band

hit<-1:10000
for(i in 1:10000){
  d<-rnorm(n=100, mean=1, sd=1)
  dq<-quantile(d, probs=0.7)

  if(dq[[1]]>=l & dq[[1]]<=u) {hit[i]=1} else {hit[i]=0} 

} 
sum(hit)/10000

EDIT : J'ai corrigé le code, et les deux quantiles donnent environ 95% de hits avec n = 100 et avec . Si je monte l'écart-type à , alors très peu de hits sont dans les bandes. La question est donc toujours en suspens.σ=1σ=2

EDIT2 : Je retire ce que j'ai réclamé dans le premier EDIT ci-dessus, comme indiqué dans les commentaires d'un gentleman serviable. Il semble que ces CI soient bons pour la distribution normale.

Cette normalité asymptotique de la statistique d'ordre n'est-elle qu'une très mauvaise mesure à utiliser, si l'on veut vérifier si un quantile observé est probable compte tenu d'une certaine distribution candidate?

Intuitivement, il me semble qu'il y a une relation entre la variance de la distribution (que l'on pense avoir créé les données, ou dans mon exemple R, que nous savons avoir créé les données) et le nombre d'observations. Si vous avez 1000 observations et une énorme variance, ces bandes sont mauvaises. Si l'on a 1000 observations et une petite variance, ces bandes auraient peut-être du sens.

Quelqu'un veut clarifier ça pour moi?

Erosennin
la source
2
Votre bande est basée sur la variance de la distribution normale asymptotique, mais devrait être basée sur l'écart type de la distribution normale asymptotique (bande = 1,96 * sqrt ((0,975 * 0,025) / (100 * (f_norm) ^ 2)), et de même pour la dist'n généralisée de Pareto.) Essayez plutôt et voyez ce qui se passe.
jbowman
@jbowman merci de l'avoir signalé! Je le réparerai !
Erosennin
@jbowman qui rend le groupe plus petit et dans l'exemple avec mon code R qui donne en fait quelques coups de moins. C'était aussi une autre erreur, qui a rendu le calcul erroné, mais je l'ai corrigé maintenant. Vous m'y avez conduit, donc j'apprécie beaucoup! De plus petites bandes dans le cas du PIB sont de très bonnes nouvelles, mais je crains qu'elles soient toujours si énormes qu'elles soient impossibles à utiliser. Je ne vois toujours pas d'autre point à retenir que la taille de l'échantillon et la variance de la relation est ce qui devrait être grand, pas la taille de l'échantillon seule.
Erosennin
Pas de soucis! Je note que vous avez correctement un devant votre première formule; si vous divisez les deux côtés par cela, comme dans , cela peut aider. Désolé d'avoir raté ça la première fois. (Peut-être que vous avez corrigé cela aussi mais n'avez pas mis à jour les parties pertinentes de la question.)(n)band = 1.96*sqrt((0.975*0.025)/(100*n*(f_norm)^2))
jbowman
1
Oui, je n'y ai pas fait attention. OTOH, lorsque j'exécute votre code, en changeant sd = 1 en sd = 2 partout, j'obtiens presque exactement la même fraction de hits les deux fois au quantile de 0,975: 0,9683 et 0,9662 respectivement. Je me demande si vous avez manqué un sd = 1 quelque part dans la course ? σ=2
jbowman

Réponses:

3

Je suppose que votre dérivation vient de quelque chose comme celle de cette page .

J'ai une distribution avec uniquement des résultats positifs et les intervalles de confiance incluent des valeurs négatives.

Eh bien, étant donné l'approximation normale qui a du sens. Rien n'empêche une approximation normale de vous donner des valeurs négatives, c'est pourquoi il s'agit d'une mauvaise approximation pour une valeur limitée lorsque la taille de l'échantillon est petite et / ou que la variance est grande. Si vous augmentez la taille de l'échantillon, les intervalles diminuent, car la taille de l'échantillon est au dénominateur de l'expression pour la largeur de l'intervalle. La variance entre dans le problème par la densité: pour la même moyenne, une variance plus élevée aura une densité différente, plus élevée aux marges et plus basse près du centre. Une densité plus faible signifie un intervalle de confiance plus large car la densité est au dénominateur de l'expression.

Un peu de recherche a trouvé cette page , entre autres, qui utilise l'approximation normale de la distribution binomiale pour construire les limites de confiance. L'idée de base est que chaque observation tombe en dessous du quantile avec la probabilité q , de sorte que la distribution est binomiale. Lorsque la taille de l'échantillon est suffisamment grande (c'est important), la distribution binomiale est bien approximée par une distribution normale avec moyen et variance . Ainsi, la limite de confiance inférieure aura l'index , et la limite de confiance supérieure aura l'index . Il est possible que ounqnq(1q) k=nq-1,96j=nq1.96nq(1q) k>nj<1k=nq1.96nq(1q)k>nj<1 lorsque je travaille avec des quantiles près du bord, et la référence que j'ai trouvée est silencieuse à ce sujet. J'ai choisi de ne traiter que le maximum ou le minimum comme valeur pertinente.

Dans la réécriture suivante de votre code, j'ai construit la limite de confiance sur les données empiriques et testé pour voir si le quantile théorique se situe à l'intérieur de cela. Cela a plus de sens pour moi, car le quantile de l'ensemble de données observé est la variable aléatoire. La couverture pour n> 1000 est ~ 0,95. Pour n = 100, il est pire à 0,85, mais c'est normal pour les quantiles près des queues avec de petits échantillons.

#find 0.975 quantile
q <- 0.975
q_norm <- qnorm(q, mean=1, sd=1)

#confidence bands absolute value (note depends on sample size)
n <- 10000
band <- 1.96 * sqrt(n * q * (1 - q))

hit<-1:10000
for(i in 1:10000){
  d<-sort(rnorm(n, mean=1, sd=1))
  dq<-quantile(d, probs=q)
  u <- ceiling(n * q + band)
  l <- ceiling(n * q - band)
  if (u > n) u = n
  if (l < 1) l = 1
  if(q_norm>=d[l] & q_norm<=d[u]) {hit[i]=1} else {hit[i]=0} 

}
sum(hit)/10000

Pour ce qui est de déterminer quelle taille d'échantillon est "assez grande", eh bien, plus c'est gros, mieux c'est. La question de savoir si un échantillon particulier est «suffisamment grand» dépend fortement du problème en question et de votre degré de difficulté à propos de choses comme la couverture de vos limites de confiance.

atiretoo - réintégrer monica
la source
Merci d'avoir contribué! J'ai souligné que je ne vois pas comment il existe un "grand" échantillon absolu, et il faut tenir compte de la variance. Je suis curieux de savoir comment cela se rapporte à ma façon de construire les CI, mais aussi en général. En ce qui concerne la dérivation, vous pouvez par exemple voir ici: math.mcgill.ca/~dstephens/OldCourses/556-2006/… Les CI que j'ai construits découlent de l'exemple de ce lien. Vous écrivez que "j'ai construit la limite de confiance sur les données empiriques ..." et cela a plus de sens pour vous. Pouvez-vous nous en dire un peu plus à ce sujet?
Erosennin
Ah, oui, vous aviez le bon lien de dérivation. Désolé mon mauvais.
Erosennin
OK, je l'ai à nouveau édité pour décrire correctement comment la variance de la distribution affecte l'approximation que vous utilisez, et un peu plus de discussion sur ce que signifie un "grand" échantillon. Votre CI est centré sur la valeur théorique, tandis que le mien est centré sur la valeur empirique. Je pense que pour comparer un quantile empirique avec un quantile théorique, les intervalles doivent être construits sur le quantile empirique. De plus, l'approximation que j'ai utilisée fait une approximation de moins "normale" car il n'y a pas d'appel au théorème de la limite centrale pour commencer.
atiretoo - réintègre monica
J'apprécie l'effort, peut-être que ma question pourrait être plus claire. J'ai déjà réalisé comment la densité et la taille de l'échantillon affectent la variance, c'était mon point de départ. Mais, encore une fois, ma mauvaise, j'aurais pu être plus clair. C'est «l'asymptotique» qui, selon moi, devrait être remplacé par quelque chose qui tient compte de la variance. Eh bien, vous avez également centré vos CI sur les valeurs théoriques. n * q est exactement votre valeur théorique. En construisant vos groupes, vous avez essentiellement fait la même chose que moi, mais avec une méthode différente.
Erosennin