Jaka jest dobra wartość autokorelacji?

Nov 27 2020

Mam zbiór danych obejmujący 400 szeregów czasowych. Chcę ocenić, czy istnieje związek między kolejnymi punktami danych. W ten sposób obliczyłem autokorelację (AC) szeregów czasowych z różnymi opóźnieniami. Aby uzyskać najlepszą wartość opóźnienia, otrzymuję autokorelację średnio około 0,59.

Teraz mój problem polega na tym, jak mogę sprawdzić, czy to dobra wartość AC? Czy istnieje sposób na ocenę, czy wartość autokorelacji, taka jak 0,59, jest dobra?

Wypróbowałem następujące podejścia, aby ocenić, czy jest to dobra wartość.

  1. Obliczyłem AC losowych sekwencji, aby porównać je z AC moich szeregów czasowych. Odkryłem, że AC losowych sekwencji jest zawsze bliskie 0. Jest to interesujące, ponieważ 0,59 jest dalekie od 0, ale nadal nie mówi mi jasno, czy 0,59 jest dobrą wartością.

  2. Dlatego zdecydowałem się przeprowadzić kolejny eksperyment, aby porównać AC mojego szeregu czasowego z autokorelacją rosnącego szeregu czasowego (funkcja, która rośnie liniowo) i losowego szeregu czasowego. W tym eksperymencie losowo manipuluję każdą sekwencją zgodnie ze współczynnikiem manipulacji, który waha się od 0 do 100%. Wynik jest taki:

Można zauważyć, że AC moich szeregów czasowych jest zbliżone do AC rosnących szeregów czasowych i szybko spada, gdy współczynnik manipulacji jest zwiększany. Wydaje się to wskazywać, że w moich szeregach czasowych jest dobry AC. Jednak tak naprawdę nie mówi mi, jaka jest dobra wartość dla klimatyzacji.

Zatem czy istnieją inne sposoby określenia dobrej wartości AC? A może masz jakieś inne sugestie, jak określić, jaka jest dobra wartość AC?

Odpowiedzi

1 BruceET Nov 27 2020 at 10:34

Komentarz: Według danych zebranych w późnych latach siedemdziesiątych XX wieku na temat erupcji gejzeru Old Faithful w Parku Narodowym Yellowstone, długość erupcji wahała się między krótkimi$0$ (mniej niż 2 min.) i długi $1$ (więcej niż 2 min.) w przybliżeniu zgodnie z 2-stanowym łańcuchem Markowa, w którym nigdy nie występują dwie następujące po sobie krótkie erupcje, a krótkie erupcje następują po długich z prawdopodobieństwem $0.44.$ W konsekwencji można wykazać, że w dłuższej perspektywie około 70% erupcji jest długich.

Jednak krótkie i długie erupcje nie są niezależnymi próbami Bernoulliego, jak w przypadku monety z prawdopodobieństwem reszki 0,7, ale tworzą autokorelowaną serię zgodnie z 2-stanowym Łańcuchem Markowa.

Dwa tysiące kolejnych kroków takiego łańcucha można zasymulować w R, jak pokazano poniżej.

set.seed(2020)
n = 2000; x = numeric(n); x[1]=0
for (i in 2:n) {
 if (x[i-1]==0) x[i] = 1
 else x[i] = rbinom(1, 1, .56) }
mean(x)
[1] 0.7005

W R można wykonać wykres autokorelacji dla kilku opóźnień. Oczywiście autokorelacja dla opóźnienia$0$ jest $1.000.$ Uważa się, że autokorelacje wykraczające poza poziome niebieskie linie przerywane znacznie różnią się od $0.$ Tak więc wydaje się, że dla 2000 obserwacji z procesu Old Faithful autokorelacje są większe w wartości bezwzględnej niż około $0.035$ lub $0.04$ są uważane za znacząco różne od $0.$

acf(x)

Określone opóźnienia można uzyskać, używając acfz parametrem plot=F.

acf(x, plot=F)

Autocorrelations of series ‘x’, by lag

     0      1      2      3      4      5      6      7 
 1.000 -0.426  0.203 -0.085  0.018 -0.009  0.016 -0.025 
     8      9     10     11     12     13     14     15 
 0.002 -0.030 -0.004  0.004 -0.025  0.033 -0.043  0.032 
    16     17     18     19     20     21     22     23 
-0.006  0.006  0.009 -0.001  0.005  0.014 -0.028  0.002 
    24     25     26     27     28     29     30     31 
-0.002  0.008 -0.018 -0.020  0.039 -0.009  0.013  0.010 
    32     33 
 0.005 -0.037 

W ergodycznym (zbieżnym) łańcuchu Markowa zależność Markowa „zanika” po kilku opóźnieniach, tak że obserwacje wykonane daleko od siebie wzdłuż sekwencji są prawie niezależne.

W swojej aplikacji, aby stwierdzić, czy autokorelacja jest „dobra”, należy określić odpowiednie opóźnienie i mieć określone kryterium testowe dla „znaczącej” autokorelacji. Z Twojego pytania nie wiem wystarczająco dużo o Twoim procesie lub aplikacji, aby udzielić konkretnej odpowiedzi.