Znalazłem w literaturze dwie definicje czasu autokorelacji słabo stacjonarnych szeregów czasowych:
gdzie to autokorelacja z opóźnieniem . k
Jednym z zastosowań czasu autokorelacji jest znalezienie „efektywnej wielkości próby”: jeśli masz obserwacji szeregu czasowego i znasz jego czas autokorelacji , możesz udawać, że maszτ
niezależne próbki zamiast skorelowanych próbek w celu znalezienia średniej. Oszacowanie podstawie danych nie jest trywialne, ale można to zrobić na kilka sposobów (patrz Thompson 2010 ).τ
Definicja bez wartości bezwzględnych, , wydaje się bardziej powszechna w literaturze; ale dopuszcza możliwość . Używając R i pakietu „coda”:τ a < 1
require(coda)
ts.uncorr <- arima.sim(model=list(),n=10000) # white noise
ts.corr <- arima.sim(model=list(ar=-0.5),n=10000) # AR(1)
effectiveSize(ts.uncorr) # Sanity check
# result should be close to 10000
effectiveSize(ts.corr)
# result is in the neighborhood of 30000... ???
Funkcja „efektywna wielkość” w „kodzie” wykorzystuje definicję czasu autokorelacji równoważną powyżej. Istnieje kilka innych pakietów R, które obliczają efektywną wielkość próbki lub czas autokorelacji, a wszystkie te, które próbowałem, dają wyniki zgodne z tym: proces AR (1) z ujemnym współczynnikiem AR ma próbki bardziej skuteczne niż skorelowane szereg czasowy. To wydaje się dziwne.
Oczywiście nie może się to zdarzyć w definicji czasu autokorelacji.
Jaka jest prawidłowa definicja czasu autokorelacji? Czy coś jest nie tak z moim rozumieniem efektywnych wielkości próbek? Powyższy wynik wydaje się, że musi być nieprawidłowy ... co się dzieje?