Análise espectral de séries temporais através de ondaletas

Post on 23-Jan-2018

139 views 5 download

Transcript of Análise espectral de séries temporais através de ondaletas

Analise espectral de series temporais

atraves de ondaletas

Sebastian Krieger

sebastian@nublia.com

Grupy / SciPy–SP Meetup

29 de julho de 2017

IntroducaoSeries temporais

1952

1962

1972

1982

1992

2002

2012

Date

0

500

1000

1500

2000

2500

Close

• O que sao series temporais?

• Que serie temporal e essa?

• Que propriedades series temporais possuem?

Analise espectral de series temporais atraves de ondaletas 2 / 26

IntroducaoO que voces sentem?

f (t) =1

+∞∫

−∞

f (ω) eiωtdω

f (ω) =

+∞∫

−∞

f (t) e−iωtdt

Analise espectral de series temporais atraves de ondaletas 3 / 26

IntroducaoO que e ciencia de dados

Conjunto de habilidades de cientistas de dados, design por Natalia Bilenko. Fonte: The Berkeley Science Review.

Analise espectral de series temporais atraves de ondaletas 4 / 26

IntroducaoContexto

big data

analytics

ciencia de dados

aprendizagem de maquina

inteligencia artificial

(Adaptado de Mason, H.)

Analise espectral de series temporais atraves de ondaletas 5 / 26

Sumario

1 Introducao

2 Modulo PyCWT

3 Exemplos

4 Conclusoes

Analise espectral de series temporais atraves de ondaletas 6 / 26

Series temporaisExemplo: S&P 500

1952

1962

1972

1982

1992

2002

2012

Date

0

500

1000

1500

2000

2500

Close

Fonte dos dados: Yahoo Finance 〈https://finance.yahoo.com/quote/%5EGSPC/history〉

• Indice composto por quinhentos ativos (acoes) cotados nas

bolsas de Nova York (NYSE ou NASDAQ)

• Reflete a valorizacao de aproximadamente 80 % do mercado

de capitais norte-americano

• Esta serie e diaria e abrange o perıodo entre 01 de marco de

1950 e 26 de julho de 2017

Analise espectral de series temporais atraves de ondaletas 7 / 26

Series temporaisExemplo passo-a-passo

• Acompanhe os resultados no bloco de notas Jupyter

� github.com/nublia/data-science-playground

Analise espectral de series temporais atraves de ondaletas 8 / 26

Series temporaisExemplo: S&P 500 transformada, sem tendencia, desvio padrao, suavizada

19521962

19721982

19922002

2012

Date

0.6

0.4

0.2

0.0

0.2

0.4

0.6

0.8

ln(C

lose

) - T

rend

Analise espectral de series temporais atraves de ondaletas 9 / 26

Transformada de Fourier

(FOURIER, 1808)

Analise espectral de series temporais atraves de ondaletas 10 / 26

Transformada de Fourier

• A analise de Fourier aproxima uma funcao periodica em uma

soma de funcoes harmonicas com frequencias distintas.

f (t) =1

+∞∫

−∞

f (ω) eiωtdω (1)

• A integral de Fourier da a intensidade (amplitude) das

oscilacoes na funcao analisada.

f (ω) =

+∞∫

−∞

f (t) e−iωtdt (2)

• Importante ferramenta para o processamento de sinais.

Analise espectral de series temporais atraves de ondaletas 11 / 26

Transformada de FourierExemplos de espectros de funcoes distintas

0 1 2 3 4 5 6 7 8

Tempo [anos]

−2

−1

0

1

2a)

0 1 2 3 4 5 6 7 8

Tempo [anos]

b)

0 80 160 240 320 400 480 560 640

Perıodo [dias]

10−5

10−3

10−1

101 c)

0 80 160 240 320 400 480 560 640

Perıodo [dias]

d)

Comparacao entre o espectro de dois sinais periodicos com mesmas frequencias. O sinal em (a) e composto pela soma

de dois sinais harmonicos representando um fenomeno com um ciclo anual e um ciclo semi-anual, e em (b) pelos

mesmos sinais harmonicos mas com ocorrencia em intervalos distintos e o dobro da amplitude. Em (c) e (d) os

respectivos espectros de potencia normalizados. Adaptado de Kumar e Foufoula-Georgiou (1997).

Analise espectral de series temporais atraves de ondaletas 12 / 26

Transformada de ondaletas

• A transformada de Fourier projeta determinado sinal no

espaco de funcoes harmonicas;

f(t) ⇔ f(ω)

• Existem outros tipos de funcao que podemos utilizar? Sim.

• Qualquer funcao ψ pode ser utilizada? Nao. Elas devemsatisfazer algumas caracterısticas:

• Media zero;

• Norma um;

• . . .zzzZZZ

Analise espectral de series temporais atraves de ondaletas 13 / 26

Transformada de ondaletasExemplos de ondaletas

−3.0 −1.5 0.0 1.5 3.0

t/s

−0.8

0.0

0.8ψ

a) Morlet, ψMo

−3.0 −1.5 0.0 1.5 3.0

t/s

b) Chapeu mexicano, ψMe

−1.6 −0.8 0.0 0.8 1.6

sω/(2π)

0.0

0.3

0.6

ψ

c) ψMo

−1.6 −0.8 0.0 0.8 1.6

sω/(2π)

d) ψMe

(a) Parte real (linha contınua) e imaginaria (linha tracejada) da ondaleta de Morlet ψMo com ω0 = 6, e (b) ondaleta

chapeu mexicano ψMe com σ = 1. Nos paineis (c) e (d) as respectivas transformadas de Fourier ψMo e ψMe .

Analise espectral de series temporais atraves de ondaletas 14 / 26

Transformada de ondaletasVoces ainda estao aı?

• A transformada de ondaletas projeta um sinal em uma

combinacao linear de funcoes localizadas e em diferentes

escalas.

• Transformada de ondaletas contınua (continuous wavelet

transform) em funcao da escala s e do tempo u e

Wf (u, s) = 〈f, ψu,s〉 =+∞∫

−∞

f (t)ψ∗

u,s (t) dt , (3)

• Versoes transladadas e escalonadas da ondaleta-mae

ψu,s (t) =1√sψ

(

t− u

s

)

s > 0 . (4)

Analise espectral de series temporais atraves de ondaletas 15 / 26

Transformada de ondaletasExemplos de ondaletas-mae escalonadas

−4 −3 −2 −1 0 1 2 3

t

−0.5

0.0

0.5

ψM

o(s,t)

−2.0 −1.5 −1.0 −0.5 0.0 0.5 1.0 1.5 2.0

ω/(2π)

0.00

0.25

0.50

0.75

ψM

o(s, ω

)

s = 0.75

s = 1

s = 1.25

Parte real da ondaleta de Morlet (ω0 = 6) e sua transformada de Fourier em diferentes escalas: s < 1 (linha tracejada),

s = 1 (linha contınua), s > 1 (linha traco-ponto). Note o efeito da dilatacao e contracao da ondaleta sob seu espectro

de Fourier e a relacao entre frequencia e escala.

Analise espectral de series temporais atraves de ondaletas 16 / 26

Transformada de ondaletasExemplos de espectro de ondaletas

200

400

600

Per

ıod

o[d

ias]

a) b)

10−3.0

10−2.0

10−1.0

100.0

200

400

600

Per

ıod

o[d

ias]

c) d)

−π

−π

2

0

2

0.0 2.5 5.0 7.5

Tempo [anos]0.0 2.5 5.0 7.5

Tempo [anos]

Escalogramas normalizados 1

s|Wf (u, s)|2 dos sinais periodicos – (a) e (b) – adotando a ondaleta Morlet (ω0 = 6).

Em (a) as frequencias dominantes ocorrem durante todo o intervalo e em (b) as frequencias ocorrem em intervalos

distintos. Em (c) e (d) os respectivos diagramas de fase. Note em (d) como, na metade do intervalo observa-se um ponto

de descontinuidade – as fases convergem. Adaptado de Kumar e Foufoula-Georgiou (1997).

Analise espectral de series temporais atraves de ondaletas 17 / 26

Transformada de ondaletasExemplos do espectro de ondaletas

200

400

600

Per

ıod

o[d

ias]

e) f)

−5.0

−2.5

0.0

2.5

5.0

0.0 2.5 5.0 7.5

Tempo [anos]

200

400

600

Per

ıod

o[d

ias]

g)

0.0 2.5 5.0 7.5

Tempo [anos]

h)

−5.0

−2.5

0.0

2.5

5.0

Em (e) e (f) a parte real ℜ (Wf (u, s)) e em (g) e (h) a parte imaginaria ℑ (Wf (u, s)) das transformadas de

ondaleta dos sinais. Adaptado de Kumar e Foufoula-Georgiou (1997).

Analise espectral de series temporais atraves de ondaletas 18 / 26

Transformada de ondaletasTestes de significancia

A Practical Guide toWavelet Analysis

Christopher Torrence and Gilbert P. CompoProgram in Atmospheric and Oceanic Sciences, University of Colorado, Boulder, Colorado

ABSTRACT

A practical step-by-step guide to wavelet analysis is given, with examples taken from time series of the El Niño–

Southern Oscillation (ENSO). The guide includes a comparison to the windowed Fourier transform, the choice of an

appropriate wavelet basis function, edge effects due to finite-length time series, and the relationship between wavelet

scale and Fourier frequency. New statistical significance tests for wavelet power spectra are developed by deriving theo-

retical wavelet spectra for white and red noise processes and using these to establish significance levels and confidence

(TORRENCE; COMPO, 1998)

• O espectro de ondaletas e mais que apenas uma figura

hipnotizante

Analise espectral de series temporais atraves de ondaletas 19 / 26

Modulo PyCWT

• Existe uma biblioteca Python que implementa as sugestoes de

Torrence e Compo (1998).

• Instale

$ pip install pycwt

• Contribua com o codigo fonte

� github.com/regeirk/pycwt

Analise espectral de series temporais atraves de ondaletas 20 / 26

Analise de ondaletasExemplo passo-a-passo

Espectros de ondaleta e de Fourier da serie temporal S&P 500 transformada e detradada.

Analise espectral de series temporais atraves de ondaletas 21 / 26

Analise de ondaletasOutro exemplo

Analise espectral de series temporais atraves de ondaletas 22 / 26

Conclusoes

• A transformada de ondaletas projeta um sinal no espaco

quase-ortogonal de funcoes localizadas e em diferentes

escalas:

f(t) ⇔Wf (u, s)

• Permite identificar eventos periodicos ao longo do tempo;

• Pode ser utilizado em analises multi-dimensionais;

• Possui aplicacoes em processamento de sinais, tratamento de

imagens, compressao de dados;

• Complementa a analise de Fourier;

Analise espectral de series temporais atraves de ondaletas 23 / 26

Sugestao de leitura

(MALLAT, 2008)

Analise espectral de series temporais atraves de ondaletas 24 / 26

Referencias

FOURIER, J.-B.-J. Sur la propagation de la chaleur dans les

corps solides. Nouveau Boulletin des Sciences, v. 1, n. 6, p.

112–116, 1808.

KUMAR, P.; FOUFOULA-GEORGIOU, E. Wavelet analysis for

geophysical applications. Reviews of Geophysics, v. 35, n. 4, p.

385–412, 1997.

MALLAT, S. A wavelet tour of signal processing: The sparse

way. 3. ed. Burlington, MA: Academic Press, 2008. 805 p. ISBN

978-0-12-374370-1.

TORRENCE, C.; COMPO, G. P. A practical guide to wavelet

analysis. Bulletin of the American Meteorological Society, v. 79,

n. 1, p. 61–78, 1998.

Analise espectral de series temporais atraves de ondaletas 25 / 26

Voce tem algum problema de negocio que quer

solucionar com ciencia de dados?

Vamos conversar.

Sebastian Krieger

sebastian@nublia.com