스펙트럼 밀도에서 피크의 중요성 테스트


20

때때로 시계열의 주기성을 분석하기 위해 스펙트럼 밀도 플롯을 사용합니다. 일반적으로 육안 검사로 플롯을 분석 한 다음 주기성에 대한 결론을 도출하려고합니다. 그러나 통계학자는 플롯의 스파이크가 백색 잡음과 통계적으로 다른지 여부를 확인하기위한 테스트를 개발 했습니까? R- 전문가는 스펙트럼 밀도 분석 및 이러한 종류의 테스트를위한 패키지를 개발 했습니까? 누군가 도울 수 있다면 좋습니다.

감사합니다.
P.


1
@Wesley에 의해 눌러 진 자기 상관 함수와 주기도에 대한 나의 빠른 생각을 삭제했습니다. 두 번째 제안은 bootspecdens도움이 될 수 있습니다.
Dmitrij Celov 2016 년

나는 '자기 상관이란 무엇인가'에 대한 사람들의 반응에 대한 나의 가정을 근거로하고 있습니다. 자기 상관이 사용되는 거의 모든 경우가 표준, 시간 영역 계산 된 Barlett 자기 상관 인 문헌 출현에 관한 것이다. 불행히도 이것은 나쁘다! :) bootspecdensDmitrij 의 제안에 감사합니다 . 확인을 기대합니다.
웨슬리 버

답변:


9

주기도를 사용하여 전력 스펙트럼을 추정하는 것은 권장 되지 않으며 실제로 ~ 1896 년 이래로 나쁜 습관이었습니다. 이는 수백만 개의 데이터 샘플 (그리고 그 이후에도 ...) 미만의 데이터에 대해 일관성이없는 추정기이며 일반적으로 치우친. 자동 상관의 표준 추정값 (예 : Bartlett)을 사용하는 경우에도 푸리에 변환 쌍이 적용됩니다. 일관된 견적 도구를 사용하는 경우 몇 가지 옵션을 사용할 수 있습니다.

이들 중 가장 좋은 것은 전력 스펙트럼의 다중 창 (또는 테이퍼) 추정입니다. 이 경우 관심 주파수에서 각 창의 계수를 사용하여 화이트 노이즈의 귀무 가설에 대해 고조파 F 통계량을 계산할 수 있습니다 . 노이즈의 라인 구성 요소를 감지하는 데 유용한 도구이므로 적극 권장됩니다. 정상 성을 가정하여 잡음의주기를 감지하기위한 신호 처리 커뮤니티의 기본 선택입니다.

multitaperR 의 패키지 (CRAN을 통해 사용 가능)를 통해 멀티 테이퍼 스펙트럼 추정 방법과 관련 F- 테스트에 모두 액세스 할 수 있습니다 . 패키지와 함께 제공되는 설명서는 충분합니다. F- 검정은에 대한 함수 호출에서 간단한 옵션입니다 spec.mtm.

이 두 기술을 모두 정의하고 알고리즘을 제공하는 최초의 기준은 Spectrum Estimation and Harmonic Analysis , DJ Thomson, Proceedings of the IEEE, vol. 70 권 1982 년 1055-1096.

다음은 multitaper패키지에 포함 된 데이터 세트를 사용하는 예 입니다.

require(multitaper);
data(willamette);
resSpec <- spec.mtm(willamette, k=10, nw=5.0, nFFT = "default",
                    centreWithSlepians = TRUE, Ftest = TRUE,
                    jackknife = FALSE, maxAdaptiveIterations = 100,
                    plot = TRUE, na.action = na.fail) 

알아야 할 매개 변수는 knw입니다 . 이들은 창의 수 (위 10으로 설정)와 시간 대역폭 곱 (5.0 이상)입니다. 대부분의 응용 프로그램에서 이러한 준 기본값으로 쉽게 유지할 수 있습니다. centreWithSlepians 낮은 주파수에서 많은 전력을 생산 평균에 비우는 등이 또한 권장 - 명령은 Slepian 창에 프로젝션을 사용하여 시계열의 평균의 강력한 추정을 제거합니다.

또한 'spec.mtm'의 스펙트럼 출력을 로그 스케일로 플로팅하여 크게 정리하는 것이 좋습니다. 더 자세한 정보가 필요하면 게시 만하면됩니다.


Burr, Silva 및 Celov에게-흥미로운 답변과 제안에 감사드립니다. 이 견적자를 테스트하기를 기대합니다. 안부
Pantera

(+1) 오늘 밤 나는 당신의 제안에 대해 신중하게 생각했으며, 시간 영역이 실제로 사이클 동작을 찾기 위해 마지막으로 (작은 샘플의 지연 및 지연 특성으로 인해) 결정되었습니다. 내가 개인적으로 걱정하는 것은 F 통계에 대한 가정과 제안 된 계획의 작은 표본 크기 속성입니다. 실제로 많은 창이 있기 때문에 최적의 창 선택에 관한 별도의 질문을 시작하는 것이 좋습니다.
Dmitrij Celov 2016 년

가장 일반적인 두 가지 선택은 Discrete Prolate Spheroidal Sequences (또는 Slepians )와 사인 테이퍼 이지만 실제로는 많은 창 선택이 있습니다 . 로컬 대역폭에서 최대 에너지 집중을 찾고 있다면 Slepians가 최적의 것으로 입증되었으며 실제로 스펙트럼 밀도의 적분 방정식 형태의 출력입니다 (자세한 내용은 언급 한 논문 참조). F 통계에 관한 한, 자유도에 관한 몇 가지 문제가 있지만, 전체적으로 ~ 2k-2 dof를 사용할 수 있습니다.
웨슬리 버

부드러운 주기도는 테이퍼를 사용하고 FFT를 허용하며 David Stoffer의 책은 신뢰 구간을 계산하는 방법도 알려줍니다. 이 multitaper패키지는 신뢰 구간 테이퍼링 및 계산을 위해보다 고급 기술을 사용한 것으로 보입니다. 그러나 데이비드 스토퍼 (David Stoffer)에 따르면 아이디어는 동일하다고 생각합니다. 이것이 바닐라 페리도 고람의 가르침이 오늘날에도 여전히 합리적이라고 생각할 수있는 유일한 것입니다.
stucash

좋아, 그래서 당신은이 패키지의 저자 중 하나이고 당신은 주기도에 대해 매우 강한 단어를 사용했습니다. 언젠가 더 많은 증거로 돌아올 수 있기를 바랍니다. Periodogram의 일반적인 장단점은 폭발적인 분산과 같이 잘 알려져 있습니다. 그래서 스펙트럼에 대한 일관된 추정기가 좋지 않지만 평활화 된 주기도는 내가 생각한 것만 큼 나쁘지 않습니다.
stucash

3

최근이 논문 에서 스펙트럼 기반 테스트의 웨이블릿 변환으로이 문제를 해결하려고 시도했습니다 . 본질적으로, 이전 답변에서 언급 한 Fisher 기사와 유사하게 주기도 좌표 분포를 고려해야합니다. Koen의 또 다른 논문은 이것 입니다. 우리는 최근에 R 패키지 hwwntest를 발표했습니다 .


Savchev, 귀하의 의견과 참조에 감사드립니다. R 패키지를 테스트하기를 기대합니다.
Pantera

2

에프(ω케이)

MB Priestley, 스펙트럼 분석 및 시계열 , Academic Press, London, 1981, 406 페이지 에서 테스트에 대한 자세한 내용을 확인할 수 있습니다 .

R에서 GeneCycle 패키지 는 다음 함수를 포함합니다 fisher.g.test().

library(GeneCycle)
?fisher.g.test

이것이 도움이되기를 바랍니다.


이것은 훌륭하지만 패키지의 g 테스트는 파워 스펙트럼 계산을위한 옵션이 매우 제한적인 자체 주기도 기능에 의존합니다.
stucash
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.