Mineração de Séries Temporais
Carlos Andres Ferrero
Orientadora: Profa. Vania Bogorny
Conteúdo
Motivação
Visualizando de Séries Temporais no R
Introdução à Mineração
Representação
Outras Aplicações
Tarefas de Pré-processamento
Conclusões
Motivação
Crescente interesse na análise de dados de
observações realizadas ao longo do tempo:
– Indústria;
– Economia;
– Medicina;
– Segurança.
Motivação
Crescente interesse na análise de dados de
observações realizadas ao longo do tempo:
– Indústria;
– Economia;
– Medicina;
– Segurança.
4
“O
tempo
é o fator que possibilita que
os fatos da natureza não ocorram
Motivação
5
Clustering Classificação
Recuperação por Conteúdo Extração de
Regras
s = 0.5
c = 0.3
Identificação de
Motifs
Motivação
Definição: é uma coleção de observações
realizadas sequencialmente ao longo do tempo e
pode ser denotada como:
Motivação
Por exemplo, uma série de dados apresentado em
referente à mortalidade vascular semanal na cidade
de Los Angeles
—
CA, USA, no período de 10 anos
compreendido entre os anos 1970 e 1979.
Motivação
Por exemplo, uma série de dados apresentado em
referente à mortalidade vascular semanal na cidade
de Los Angeles
—
CA, USA, no período de 10 anos
compreendido entre os anos 1970 e 1979.
8 [1] 98
[2] 105 [3] 94 [4] 98 [5] 96 [6] 96 [7] 89 [8] 91 [9] 92 [10] 89 [11] 95 [12] 93 [13] 98 [14] 88 [15] 97
[16] 83 [17] 87 [18] 91 [19] 83 [20] 99 [21] 81 [22] 93 [23] 87 [24] 89 [25] 87 [26] 88 [27] 85 [28] 84 [29] 85 [30] 87
[31] 85 [32] 95 [33] 91 [34] 88
…. ….
Visualizando Séries Temporais no R
Entrar em Jupyter:
https://try.jupyter.org/
Visualizando Séries Temporais no R
1. Entrar no site:
https://sites.google.com/site/anfer86/disciplinas/mineracaost
2. Baixar os arquivos: ECG200_TRAIN e ECG200_TEST 3. Fazer Upload de ambos os arquivos no ambiente Jupyter 4. Ler os dados no R
Visualizando Séries Temporais no R
Introdução à Mineração
12
Construindo um modelo simples no Weka
1. Salvar dados do R:
2. Procurar o arquivo no ambiente do Jupyter
3. Clicar no arquivo para visualizar o conteúdo
4. Clicar em File / Download
Representação
13
Como representar a informação contida nas séries:
– Domínio da frequência:
Transformar os dados do domínio do tempo para o domínio da frequência (análise de Fourier e análise via wavelets)
– Ajustar modelo: e usar os parâmetros do modelo de cada série
– Extração de características:
• Estatísticas
• Complexidade
• Atributos próprios da área de domínio, entre outras
– Padrões Morfológicos:
Representação
14
Domínio da frequência:
0 20 40 60 80 100 120 140
0 1 2 3 X Y' 4 5 6 Jean Fourier 1768-1830
Idéia Básica: Representar séries temporais por uma combinação de
Representação
Domínio do tempo Vs. domínio da freqüência:
Representação
Ajuste de Modelos:
– Tendência;
– Sazonalidade;
– Resíduos.
Representação
Tendência:
– A tendência corresponde à trajetória geral dos valores observados em uma série temporal;
– A característica principal dessa componente é o quase
constante e suave movimento ao longo da série, que pode ser influenciado por vários fatores;
– Tipos:
• Linear;
• Quadrática;
• Cúbica;
• Entre outras.
Representação
Tendência Linear:
Representação
Tendência Quadrática:
Representação
Tendência Cúbica:
Representação
Tendência:
– Qual das tendências observadas é mais adequada para ser ajustada a esses dados: linear, quadrática ou cúbica?
Representação
Tendência:
– Qual das tendências observadas é mais adequada para ser ajustada a esses dados: linear, quadrática ou cúbica?
Representação
Sazonalidade:
– A componente de sazonalidade de uma série temporal representa as flutuações de acordo com alguma
característica ao longo da linha de tendência;
– Relações:
• Observações entre meses sucessivos de um ano particular:
Por exemplo, temperatura em Florianópolis.
• Observações em um mesmo mês durante anos sucessivos:
Por exemplo, fluxo de carros perto da praia durante o verão.
Representação
Sazonalidade:
– Qual a sazonalidade observada nos dados?
Representação
Sazonalidade:
– Qual a sazonalidade observada nos dados?
– Como modelar essa sazonalidade?
Componentes de ST
Sazonalidade:
– Qual a sazonalidade observada nos dados?
– Como modelar essa sazonalidade?
Representação
Resíduos:
– Muitas vezes, é considerado como o ruído da série temporal;
– Tem grande importância, pois a sua presença pode influenciar na identificação da tendência e da
sazonalidade;
27
Representação
Resíduos:
– Por exemplo, para a série temporal de mortalidade cardiovascular:
Representação
Resíduos:
– Por exemplo, para a série temporal de mortalidade cardiovascular:
Representação
Resíduos:
– Como analisar os resíduos?
Representação
Resíduos:
– Como analisar os resíduos?
Representação
32
Extração de Características:
– Estatísticas:
• Média
• Desvio padrão
• Mínimo
• Máximo
• Coeficiente de variação
Representação
33
Colocar essa estratégia em prática
Após, abrir “featuresTrain.csv” no Weka, tornar a
Representação
34
Complexidade:
– Dimensão Fractal:
• Katz
• Boxcounting
– Complexity Estimate
– Shannon Entropy
Representação
35
Representação
36
Katz
Salvar e abrir “features2Train.csv” no Weka, tornar a
Representação
37
0 1 2 3 4 5 6 7 8 x 10 5 0
Azul: “God” – Bíblia em inglês
Vermelho: “Dios” – Bíblia em espanhol
Cinza: “El Senor” – Bíblia em espanhol
Freqüência local das palavras na Bíblia
Outras Aplicações
George Washington Manuscript
George Washington 1732-1799
0 50 100 150 200 250 300 350 400 450
0 0.5 1
Outras Aplicações
Outras Aplicações
40
41
Outras Aplicações
Eletrocardiograma Imagens
42
Tarefas de Pré-processamento
Importante:
– Os dados brutos podem conter distorções, as quais devem ser tratadas antes de realizar tarefas de
mineração;
– Obviamente que algumas vezes essas distorções podem ser interessantes, portanto não deve-se considerar isso como uma regra geral;
43
Tarefas de Pré-processamento
0 50 100 150 200 250 300
0 0.5 1 1.5 2 2.5 3
0 50 100 150 200 250 300
0 0.5 1 1.5 2 2.5 3
0 50 100 150 200 250 300
0 50 100 150 200 250 300
Q = Q - média(Q)
C = C - média(C) D(Q,C)
D(Q,C)
44
Tarefas de Pré-processamento
Invariância de Amplitude:
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Q = (Q - média(Q)) / desvP(Q)
C = (C – média(C)) / desvP(C)
45
Tarefas de Pré-processamento
Análise e Remoção de Tendência:
0 20 40 60 80 100 120 140 160 180 200 -4 -2 0 2 4 6 8 10 12
0 20 40 60 80 100 120 140 160 180 200 -3 -2 -1 0 1 2 3 4 5
2. Translação removida;
3. Mudança de escala realizada.
1. Tendência Linear removida; A lógica para remover a tendência
linear é:
46
Tarefas de Pré-processamento
Remoção de Ruído:
0 20 40 60 80 100 120 140 -4 -2 0 2 4 6 8
0 20 40 60 80 100 120 140 -4 -2 0 2 4 6 8
1. Q = suavização(Q) 2. C = suavização(C) 3. D(Q,C)
A lógica por trás da remoção de ruído é a seguinte:
Calcular a média para cada unidade de informação com sue
Conclusões
•
Pesquisadores tem optado por trabalhar com
múltiplas visões de extração de características e
padrões morfológicos:
Conclusões
•
Como contornar a dificuldade dos algoritmos
tradicionais de não considerarem o fator temporal;
•
O problema da alta dimensionalidade dos dados:
discretização;
•
Os mais novos trabalhos tem focado na extração de
padrões morfológicos;
•
Procurar sempre ser coerente com a representação
que se usa, não apenas em ST mas em outros tipos
de dados não-convencionais.
49
EHLERS, R.S. Análise de Séries Temporais. Departamento de Estatística,UFPR. Disponível em http://leg.est.ufpr.br/~ehlers/notas. Acesso em: 21 nov.2005.
KEOGH E.; KASETTY S. On the Need for Time Series Data Mining Benchmarks: A Survey and Empirical Demonstration. In Data Min. Knowl. Discov, volume 7, pages 349 – 371, 2003.
KEOGH E. A Decade of Progress in Indexing and Mining Time Series Data. In VLDB 2006.
MORETTIN, P. A.; TOLOI, C. M. C. Análise de séries temporais. 2 ed. São Paulo, Brasil: Edgard Blücher, 2006.
LAST M.; KLEIN Y.; KANDEL A. Knowledge Discovery in Time Series Databases. In IEEE Transactions on Systems, 2001.
LAVRAC, N.; FLACH, P.; ZUPAN, B. Rule evaluation measures: a unifying view. In Proc. of the Ninth International Workshop on Inductive Logic Programming, volume 1634, pages 74–185.
LIN J.; KEOGH E.; LONARDI S. CHIU B. A symbolic representation of time series, with implications for streaming algorithms. In Proceedings of the 8th ACM SIGMOD workshop on Research issues in data mining and knowledge discovery. 2003.
LIN J.; KEOGH E.; LONARDI S. CHIU B. A symbolic representation of time series, with implications for streaming algorithms. In Proceedings of the 8th ACM SIGMOD workshop on Research issues in data mining and knowledge discovery. 2003.
WANG X.; SMITH K.; HYNDMAN R. Characteristic-Based Clustering for Time Series Data. In: Data Mining Knowledge Discovery, volume 13, pg. 335 – 364, 2006.