Test per varianza finita?


29

È possibile verificare la finezza (o l'esistenza) della varianza di una variabile casuale dato un campione? Come null, {la varianza esiste ed è finita} o {la varianza non esiste / è infinita} sarebbe accettabile. Filosoficamente (e computazionalmente), questo sembra molto strano perché non ci dovrebbero essere differenze tra una popolazione senza varianza finita e una con una varianza molto grande (diciamo> 10400 ), quindi non spero che questo problema possa essere risolto.

Un approccio che mi era stato suggerito era tramite il Teorema del limite centrale: supponendo che i campioni fossero iid e che la popolazione avesse una media finita, si potrebbe verificare, in qualche modo, se la media del campione presenta l'errore standard corretto all'aumentare della dimensione del campione. Non sono sicuro di credere che questo metodo funzionerebbe, comunque. (In particolare, non vedo come trasformarlo in un test adeguato.)


1
Rilevante: stats.stackexchange.com/questions/94402/… Se esiste la minima possibilità che la varianza non esista, è meglio utilizzare un modello che non presupponga una varianza finita. Non pensare nemmeno a testarlo.
kjetil b halvorsen,

Risposte:


13

No, questo non è possibile, poiché un campione finito di dimensione n non può distinguere in modo affidabile, per esempio, una popolazione normale e una popolazione normale contaminata da una quantità 1/N di una distribuzione di Cauchy dove N >> n . (Naturalmente il primo ha una varianza finita e il secondo ha una varianza infinita.) Pertanto, qualsiasi test completamente non parametrico avrà una potenza arbitrariamente bassa rispetto a tali alternative.


4
questo è un ottimo punto tuttavia, la maggior parte dei test di ipotesi non ha una potenza arbitrariamente bassa rispetto ad alcune alternative? ad esempio, un test per media zero avrà una potenza molto bassa quando viene dato un campione da una popolazione con media ϵ per 0<|ϵ|piccolo. Mi chiedo ancora se un simile test possa essere costruito in modo sano, tanto meno se in alcuni casi ha una bassa potenza.
Shabbychef,

2
inoltre, le distribuzioni "inquinate" come quella che citi mi sono sempre sembrate in contrasto con l'idea di essere "identicamente distribuito". Forse saresti d'accordo. Sembra che dire che i campioni vengono estratti da una certa distribuzione senza affermare che la distribuzione non ha senso (beh, la parte "indipendente" di IID è significativa).
Shabbychef,

2
(1) Hai ragione riguardo alla bassa potenza, ma il problema qui (mi sembra) è che non c'è un graduale passaggio da "finito" a "infinito": il problema sembra non avere una scala naturale da dirci ciò che costituisce una "piccola" partenza dal nulla rispetto a una "grande" partenza. (2) La forma distributiva è indipendente dalle considerazioni di iid. Non voglio dire che, per esempio, l'1% dei dati provenga da un Cauchy e il 99% da un normale. Voglio dire che il 100% dei dati proviene da una distribuzione quasi normale ma con code di Cauchy. In questo senso, i dati possono essere raccolti per una distribuzione contaminata.
whuber


3
@shabbychef se ogni osservazione deriva dallo stesso identico processo di miscelazione, sono identicamente distribuiti, ciascuno come un sorteggio dalla corrispondente distribuzione della miscela. Se alcune osservazioni provengono necessariamente da un processo e altre necessariamente da un processo diverso (le osservazioni da 1 a 990 sono normali e le osservazioni da 991 a 1000 sono Cauchy, diciamo), allora non sono distribuite in modo identico (anche se il campione combinato può essere indistinguibile da una miscela al 99% -1%). Questo in sostanza dipende dal modello del processo che stai utilizzando.
Glen_b

16

Non puoi esserne certo senza conoscere la distribuzione. Ma ci sono alcune cose che puoi fare, come guardare quella che potrebbe essere chiamata la "varianza parziale", cioè se hai un campione di dimensione , disegni la varianza stimata dai primi n termini, con n che va da 2 a N .NnnN

Con una varianza della popolazione finita, speri che la varianza parziale si stabilizzi presto vicino alla varianza della popolazione.

Con una varianza infinita della popolazione, si osservano salti nella varianza parziale seguiti da una declinazione lenta fino a quando il valore molto grande successivo appare nel campione.

Questa è un'illustrazione con variabili casuali Normal e Cauchy (e una scala di log) Varianza parziale

Ciò potrebbe non essere utile se la forma della tua distribuzione è tale che è necessaria una dimensione del campione molto più grande di quella che hai per identificarla con sufficiente sicurezza, cioè dove valori molto grandi sono abbastanza (ma non estremamente) rari per una distribuzione con varianza finita, o sono estremamente rari per una distribuzione con varianza infinita. Per una data distribuzione ci saranno dimensioni del campione che hanno maggiori probabilità di non rivelarne la natura; viceversa, per una determinata dimensione del campione, ci sono distribuzioni che hanno maggiori probabilità di non mascherare la loro natura per quella dimensione del campione.


4
+1 Mi piace perché (a) un grafico di solito rivela molto più di un test e (b) è pratico. Sono un po 'preoccupato che abbia un aspetto arbitrario: il suo aspetto dipenderà (fortemente, forse) dall'ordine in cui i dati vengono forniti. Quando la "varianza parziale" è dovuta a uno o due valori estremi e si avvicinano all'inizio, questo grafico potrebbe essere ingannevole. Mi chiedo se ci sia una buona soluzione a questo problema.
whuber

1
+1 per un'ottima grafica. Solidifica davvero il concetto di "nessuna varianza" nella distribuzione di Cauchy. @whuber: ordinare i dati in tutte le possibili permutazioni, eseguire il test per ciascuno e prendere una sorta di media? Non molto efficiente dal punto di vista computazionale, ti garantirò :) ma forse potresti semplicemente scegliere una manciata di permutazioni casuali?
naught101

2
@ naught101 La media di tutte le permutazioni non ti dirà nulla, perché otterrai una linea perfettamente orizzontale. Forse fraintendo cosa intendi?
whuber

1
@whuber: In realtà intendevo prendere la media di un qualche tipo di test per la convergenza, non il grafico stesso. Ma concederò che è un'idea piuttosto vaga, e questo è in gran parte perché non ho idea di cosa sto parlando :)
naught101

7

Ecco un'altra risposta. Supponiamo che tu possa parametrizzare il problema, qualcosa del genere:

H0: Xt(df=3) versus H1: Xt(df=1).

Then you could do an ordinary Neyman-Pearson likelihood ratio test of H0 versus H1. Note that H1 is Cauchy (infinite variance) and H0 is the usual Student's t with 3 degrees of freedom (finite variance) which has PDF:

f(x|ν)=Γ(ν+12)νπΓ(ν2)(1+x2ν)ν+12,

<x<. Given simple random sample data x1,x2,,xn, the likelihood ratio test rejects H0 when

Λ(x)=i=1nf(xi|ν=1)i=1nf(xi|ν=3)>k,
where k0 is chosen such that
P(Λ(X)>k|ν=3)=α.

It's a little bit of algebra to simplify

Λ(x)=(32)ni=1n(1+xi2/3)21+xi2.

So, again, we get a simple random sample, calculate Λ(x), and reject H0 if Λ(x) is too big. How big? That's the fun part! It's going to be hard (impossible?) to get a closed form for the critical value, but we could approximate it as close as we like, for sure. Here's one way to do it, with R. Suppose α=0.05, and for laughs, let's say n=13.

We generate a bunch of samples under H0, calculate Λ for each sample, and then find the 95th quantile.

set.seed(1)
x <- matrix(rt(1000000*13, df = 3), ncol = 13)
y <- apply(x, 1, function(z) prod((1 + z^2/3)^2)/prod(1 + z^2))
quantile(y, probs = 0.95)

This turns out to be (after some seconds) on my machine to be 12.8842, which after multiplied by (3/2)13 is k1.9859. Surely there are other, better, ways to approximate this, but we're just playing around.

In summary, when the problem is parametrizable you can set up a hypothesis test just like you would in other problems, and it's pretty straightforward, except in this case for some tap dancing near the end. Note that we know from our theory the test above is a most powerful test of H0 versus H1 (at level α), so it doesn't get any better than this (as measured by power).

Disclaimers: this is a toy example. I do not have any real-world situation in which I was curious to know whether my data came from Cauchy as opposed to Student's t with 3 df. And the original question didn't say anything about parametrized problems, it seemed to be looking for more of a nonparametric approach, which I think was addressed well by the others. The purpose of this answer is for future readers who stumble across the title of the question and are looking for the classical dusty textbook approach.

P.S. it might be fun to play a little more with the test for testing H1:ν1, or something else, but I haven't done that. My guess is that it'd get pretty ugly pretty fast. I also thought about testing different types of stable distributions, but again, it was just a thought.


2
estimating the α in stable distributions is notoriously difficult.
shabbychef

1
You could test also that H1:ν2, because T-dist has finite variance only for ν>2.
probabilityislogic

2
Re: α, I didn't know it was notoriously difficult, but it sounds right, thanks. @probability, you are right, and the only reason I picked 3 versus 1 was because it meant less fractions. And BTW, I liked probability's answer better than mine (+1).

1
maybe I misremembered the result: something about tail index estimation when α is near 2; the paper is by Weron, I think. That aside, testing α=2 against a sum-stable alternative is a kind of normality test! Such tests usually reject given sufficient (real) data: see e.g. stats.stackexchange.com/questions/2492/…
shabbychef

6

In order to test such a vague hypothesis, you need to average out over all densities with finite variance, and all densities with infinite variance. This is likely to be impossible, you basically need to be more specific. One more specific version of this and have two hypothesis for a sample DY1,Y2,,YN:

  1. H0:YiNormal(μ,σ)
  2. HA:YiCauchy(ν,τ)

One hypothesis has finite variance, one has infinite variance. Just calculate the odds:

P(H0|D,I)P(HA|D,I)=P(H0|I)P(HA|I)P(D,μ,σ|H0,I)dμdσP(D,ν,τ|HA,I)dνdτ

Where P(H0|I)P(HA|I) is the prior odds (usually 1)

P(D,μ,σ|H0,I)=P(μ,σ|H0,I)P(D|μ,σ,H0,I)
And
P(D,ν,τ|HA,I)=P(ν,τ|HA,I)P(D|ν,τ,HA,I)

Now you normally wouldn't be able to use improper priors here, but because both densities are of the "location-scale" type, if you specify the standard non-informative prior with the same range L1<μ,τ<U1 and L2<σ,τ<U2, then we get for the numerator integral:

(2π)N2(U1L1)log(U2L2)L2U2σ(N+1)L1U1exp(N[s2(Y¯μ)2]2σ2)dμdσ

Where s2=N1i=1N(YiY¯)2 and Y¯=N1i=1NYi. And for the denominator integral:

πN(U1L1)log(U2L2)L2U2τ(N+1)L1U1i=1N(1+[Yiντ]2)1dνdτ

And now taking the ratio we find that the important parts of the normalising constants cancel and we get:

P(D|H0,I)P(D|HA,I)=(π2)N2L2U2σ(N+1)L1U1exp(N[s2(Y¯μ)2]2σ2)dμdσL2U2τ(N+1)L1U1i=1N(1+[Yiντ]2)1dνdτ

And all integrals are still proper in the limit so we can get:

P(D|H0,I)P(D|HA,I)=(2π)N20σ(N+1)exp(N[s2(Y¯μ)2]2σ2)dμdσ0τ(N+1)i=1N(1+[Yiντ]2)1dνdτ

The denominator integral cannot be analytically computed, but the numerator can, and we get for the numerator:

0σ(N+1)exp(N[s2(Y¯μ)2]2σ2)dμdσ=2Nπ0σNexp(Ns22σ2)dσ

Now make change of variables λ=σ2dσ=12λ32dλ and you get a gamma integral:

2Nπ0λN121exp(λNs22)dλ=2Nπ(2Ns2)N12Γ(N12)

And we get as a final analytic form for the odds for numerical work:

P(H0|D,I)P(HA|D,I)=P(H0|I)P(HA|I)×πN+12NN2s(N1)Γ(N12)0τ(N+1)i=1N(1+[Yiντ]2)1dνdτ

So this can be thought of as a specific test of finite versus infinite variance. We could also do a T distribution into this framework to get another test (test the hypothesis that the degrees of freedom is greater than 2).


1
When you started to integrate, you introduced a term s2. It persists through the final answer. What is it?
whuber

2
@whuber - s is the standard deviation MLE, s2=N1i=1N(YiY¯)2. I thought it was the usual notation for standard deviation, just as Y¯ is usual for average - which I have incorrectly written as x¯, will edit accordingly
probabilityislogic

5

The counterexample is not relevant to the question asked. You want to test the null hypothesis that a sample of i.i.d. random variables is drawn from a distribution having finite variance, at a given significance level. I recommend a good reference text like "Statistical Inference" by Casella to understand the use and the limit of hypothesis testing. Regarding h.t. on finite variance, I don't have a reference handy, but the following paper addresses a similar, but stronger, version of the problem, i.e., if the distribution tails follow a power law.

POWER-LAW DISTRIBUTIONS IN EMPIRICAL DATA SIAM Review 51 (2009): 661--703.


1

One approach that had been suggested to me was via the Central Limit Theorem.

This is a old question, but I want to propose a way to use the CLT to test for large tails.

Let X={X1,,Xn} be our sample. If the sample is a i.i.d. realization from a light tail distribution, then the CLT theorem holds. It follows that if Y={Y1,,Yn} is a bootstrap resample from X then the distribution of:

Z=n×mean(Y)mean(X)sd(Y),

is also close to the N(0,1) distribution function.

Now all we have to do is perform a large number of bootstraps and compare the empirical distribution function of the observed Z's with the e.d.f. of a N(0,1). A natural way to make this comparison is the Kolmogorov–Smirnov test.

The following pictures illustrate the main idea. In both pictures each colored line is constructed from a i.i.d. realization of 1000 observations from the particular distribution, followed by a 200 bootstrap resamples of size 500 for the approximation of the Z ecdf. The black continuous line is the N(0,1) cdf.

enter image description here enter image description here


2
No amount of bootstrapping will get you anywhere against the problem I raised in my answer. That's because the vast majority of samples will not supply any evidence of a heavy tail--and bootstrapping, by definition, uses only the data from the sample itself.
whuber

1
@whuber If the X values are taken from a symmetrical power law, then the generalized CLT applies and KS test will detect the difference. I believe that your observation do not correctly characterize what you say is a "gradual step from "finite" to "infinite""
Mur1lo

1
The CLT never "applies" to any finite sample. It's a theorem about a limit.
whuber

1
When I say that it "applies" I'm only saying that it provides a good approximation if we have a large sample.
Mur1lo

1
The vagueness of "good approximation" and "large" unfortunately fail to capture the logic of hypothesis tests. Implicit in your statement is the possibility of collecting an ever larger sample until you are able to detect the heavy-tailedness: but that's not how hypotheses tests usually work. In the standard setting you have a given sample and your task is to test whether it is from a distribution in the null hypothesis. In this case, bootstrapping won't do that any better than any more straightforward test.
whuber
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.