Clusterização de padrões de candlesticks utilizando Mapas de Kohonen
Classificação de séries temporais via divergente entre densidades de probabilidade no espaço de fases
1. Classifica¸c˜ao de s´eries temporais via divergente
entre densidades de probabilidade no espa¸co de
fases
Andr´e Santos Teixeira de Carvalho
Universidade Federal do Rio de Janeiro
UFRJ/COPPE/PESC
29 de Novembro, 2016
1 / 52
3. Introdu¸c˜ao
S´eries temporais
Cole¸c˜ao de observa¸c˜oes realizadas em intervalos de tempo fixos
Presentes nas mais diversas ´areas
Eletrocardiogramas
Mercado de a¸c˜oes
Reconhecimento de fala
E muitos outros
BosaFinanceira: https://goo.gl/fCH2Wk
3 / 52
5. Introdu¸c˜ao
Minera¸c˜ao de Dados de s´eries temporais
Diversas tarefas poss´ıveis
Previs˜ao
Segmenta¸c˜ao
Intech: https://goo.gl/rAvaed
4 / 52
6. Introdu¸c˜ao
Minera¸c˜ao de Dados de s´eries temporais
Diversas tarefas poss´ıveis
Previs˜ao
Segmenta¸c˜ao
Detec¸c˜ao de eventos
Data Science Central: https://goo.gl/FfDy2B
4 / 52
7. Introdu¸c˜ao
Minera¸c˜ao de Dados de s´eries temporais
Diversas tarefas poss´ıveis
Previs˜ao
Segmenta¸c˜ao
Detec¸c˜ao de eventos
Classifica¸c˜ao
0 50 100
−2
0
2
Classe A
0 50 100
Classe B
0 50 100
Classe ?
4 / 52
8. Introdu¸c˜ao
Classifica¸c˜ao de s´eries temporais
Classificar uma s´erie temporal t em uma de duas ou mais
classes predefinidas
N˜ao ´e uma tarefa simples
Tamanho da s´erie
Desalinhamento
Ru´ıdo
Alta correla¸c˜ao entre as features
Requer m´etricas ”el´asticas” e capazes de detectar padr˜oes
locais e globais
5 / 52
9. Introdu¸c˜ao
Classifica¸c˜ao de s´eries temporais
Baseada em Modelos
Hidden Markov Models, ARMA, ...
Em sua maioria, modelos param´etricos
Baseada na Distˆancia
Euclidiana, Dynamic Time Warping, ...
Distˆancia entre vetores que representam as s´eries
Features
Espec´ıficas do dom´ınio, transformadas, ...
Extra´ıdas a partir das s´eries
6 / 52
10. Introdu¸c˜ao - Contribui¸c˜oes
Proposta e implementa¸c˜ao de um novo m´etodo de
classifica¸c˜ao de s´eries temporais
Baseado na ”distˆancia” entre modelos n˜ao param´etricos
An´alise qualitativa e quantitativa do m´etodo
Compara¸c˜ao do m´etodo proposto com outros m´etodos
7 / 52
12. Proposta geral
M´etodo de classifica¸c˜ao de s´eries temporais
Classificador baseado em distˆancia entre s´eries temporais
Utilizar uma representa¸c˜ao funcional das s´eries
Detectar padr˜oes locais e globais
Modelar caracter´ısticas n˜ao lineares
Premissa:
Cada s´erie ´e uma amostra de uma popula¸c˜ao desconhecida
9 / 52
13. Proposta geral
Sejam Xδn = x1, . . . , xn e Yδm = y1, . . . , ym dois conjuntos de
dados observados ao longo de n e m instantes discretos de
tempo.
10 / 52
14. Proposta geral
Sejam Xδn = x1, . . . , xn e Yδm = y1, . . . , ym dois conjuntos de
dados observados ao longo de n e m instantes discretos de
tempo.
Sejam pdfX e pdfY as fun¸c˜oes de densidade de probabilidade
das distribui¸c˜oes das amostras Xδn e Yδm , respectivamente
10 / 52
15. Proposta geral
Sejam Xδn = x1, . . . , xn e Yδm = y1, . . . , ym dois conjuntos de
dados observados ao longo de n e m instantes discretos de
tempo.
Sejam pdfX e pdfY as fun¸c˜oes de densidade de probabilidade
das distribui¸c˜oes das amostras Xδn e Yδm , respectivamente
Seja D(pdfX , pdfY ) um divergente entre fun¸c˜oes de
densidade de probabilidade
Proposta:
Utilizar D(pdfX , pdfY ) como medida de distˆancia entre Xδn
e
Yδm
10 / 52
16. Proposta geral
0 20 40 60
−1
0
1
t
y
0 20 40 60
−1
0
1
t
yS´eries temporais constru´ıdas como permuta¸c˜ao de um mesmo conjunto
de dados
11 / 52
17. Proposta geral
−1 0 1
0
0.2
0.4
0.6
0.8
x
y
a
b
Estimativa das densidades das s´eries
12 / 52
18. Proposta geral
Problema:
Estimar as fun¸c˜oes de densidade de probabilidade das s´eries
temporais diretamente
Desconsidera a ordem temporal
Proposta
Utilizar uma representa¸c˜ao alternativa
Reconstructed Phase Space (RPS)
13 / 52
19. Proposta geral
Reconstructed Phase Space
Seja x = xn, n = 1 . . . N uma s´erie temporal discreta
A matriz RPS com dimens˜ao d e atraso τ ´e:
X =
x1+(d−1)τ
x2+(d−1)τ
...
xN
=
x1+(d−1)τ . . . x1+τ x1
x2+(d−1)τ . . . x2+τ x2
...
...
...
...
xN . . . xN−(d−2)τ xN−(d−1)τ
(1)
14 / 52
21. Proposta geral
0 20 40 60
−1
0
1
t
y
0 20 40 60
−1
0
1
t
yS´eries temporais constru´ıdas como permuta¸c˜ao de um mesmo conjunto
de dados
16 / 52
22. Proposta geral
−1 0 1
−1
0
1
x
y
−1 0 1
−1
0
1
x
y
Representa¸c˜ao das estimativas das densidades das s´eries de exemplo no
RPS
17 / 52
23. Proposta geral
Proposta final
Sejam Xδn
= x1, . . . , xn e Yδm
= y1, . . . , ym dois conjuntos de
dados observados ao longo de n e m instantes discretos de
tempo.
18 / 52
24. Proposta geral
Proposta final
Sejam Xδn
= x1, . . . , xn e Yδm
= y1, . . . , ym dois conjuntos de
dados observados ao longo de n e m instantes discretos de
tempo.
Sejam RPSX e RPSY as representa¸c˜oes de Xδn
e Yδm
,
respectivamente, no espa¸co de fases reconstru´ıdo
18 / 52
25. Proposta geral
Proposta final
Sejam Xδn
= x1, . . . , xn e Yδm
= y1, . . . , ym dois conjuntos de
dados observados ao longo de n e m instantes discretos de
tempo.
Sejam RPSX e RPSY as representa¸c˜oes de Xδn
e Yδm
,
respectivamente, no espa¸co de fases reconstru´ıdo
Sejam pdfX e pdfY as fun¸c˜oes de densidade de probabilidade
das distribui¸c˜oes das amostras RPSX e RPSY , respectivamente
18 / 52
26. Proposta geral
Proposta final
Sejam Xδn
= x1, . . . , xn e Yδm
= y1, . . . , ym dois conjuntos de
dados observados ao longo de n e m instantes discretos de
tempo.
Sejam RPSX e RPSY as representa¸c˜oes de Xδn
e Yδm
,
respectivamente, no espa¸co de fases reconstru´ıdo
Sejam pdfX e pdfY as fun¸c˜oes de densidade de probabilidade
das distribui¸c˜oes das amostras RPSX e RPSY , respectivamente
Seja D(pdfX , pdfY ) um divergente entre fun¸c˜oes de densidade
de probabilidade
Proposta:
Utilizar D(pdfX , pdfY ) como medida de distˆancia entre Xδn e
Yδm
18 / 52
27. M´etodo proposto
Treinamento Classifica¸c˜ao
S´eries
Escolha dos parˆametros
Reconstru¸c˜ao do espa¸co de fases
Estimativa das densidades
S´erie
Reconstru¸c˜ao do espa¸co de fases
Estimativa da densidade
Classifica¸c˜ao
Classe
Etapas do m´etodo proposto 19 / 52
28. Treinamento - Escolha dos parˆametros
Treinamento Classifica¸c˜ao
S´eries
Escolha dos parˆametros
Reconstru¸c˜ao do espa¸co de fases
Estimativa das densidades
S´erie
Reconstru¸c˜ao do espa¸co de fases
Estimativa da densidade
Classifica¸c˜ao
Classe
Etapas do m´etodo proposto 20 / 52
29. Treinamento - Escolha dos parˆametros
Escolha dos parˆametros de reconstru¸c˜ao do espa¸co de fases
Heur´ısticas dispon´ıveis na literatura
Dimens˜ao: M´etodo dos falsos vizinhos
Falsos vizinhos s˜ao pontos pr´oximos em d dimens˜oes, mas que
n˜ao est˜ao pr´oximos em d + 1 dimens˜oes
Escolher d cuja fra¸c˜ao de falsos vizinhos ´e menor que um
limiar
Atraso: Primeiro m´ınimo da fun¸c˜ao de informa¸c˜ao m´utua
M(Xt , Xt−τ ) = i,j pij (τ) ln
pij (τ)
pi pj
Indica o τ onde o acr´escimo de informa¸c˜ao ´e m´aximo
21 / 52
30. Treinamento - Reconstru¸c˜ao do espa¸co de fases
Treinamento Classifica¸c˜ao
S´eries
Escolha dos parˆametros
Reconstru¸c˜ao do espa¸co de fases
Estimativa das densidades
S´erie
Reconstru¸c˜ao do espa¸co de fases
Estimativa da densidade
Classifica¸c˜ao
Classe
Etapas do m´etodo proposto 22 / 52
31. Treinamento - Reconstru¸c˜ao do espa¸co de fases
M´etodo time delay embedding
Parˆametros determinados na etapa anterior
Cada s´erie de tamanho t ´e transformada em uma matriz
(t − ((d − 1) ∗ τ) × d
23 / 52
32. Treinamento - Estimativa das densidades
Treinamento Classifica¸c˜ao
S´eries
Escolha dos parˆametros
Reconstru¸c˜ao do espa¸co de fases
Estimativa das densidades
S´erie
Reconstru¸c˜ao do espa¸co de fases
Estimativa da densidade
Classifica¸c˜ao
Classe
Etapas do m´etodo proposto 24 / 52
33. Treinamento - Estimativa das densidades
Kernel Density Estimation (KDE) ou Janela de Parzen
Um dos m´etodos n˜ao-param´etricos mais populares
ˆf (x) =
1
N
N
t=1
Kh(x, xt) (3)
x1, x2, ..., xN s˜ao observa¸c˜oes
Kh ´e chamada fun¸c˜ao de Kernel, ou apenas Kernel
h ´e chamada largura de banda
Um dos Kernels mais comuns ´e o Gaussiano
K(x, xt) = e−
||x−xt ||2
2σ2 , (4)
25 / 52
34. Treinamento - Estimativa das densidades
1 2 3 4
0
0.5
1
1.5
2
x
P(x)
(a) Histograma
0 2 4 6
0
1
2
x
P(x)
(b) KDE
Compara¸c˜ao entre histogramas e Janela de Parzen
26 / 52
35. Classifica¸c˜ao - Reconstru¸c˜ao do espa¸co de fases
Treinamento Classifica¸c˜ao
S´eries
Escolha dos parˆametros
Reconstru¸c˜ao do espa¸co de fases
Estimativa das densidades
S´erie
Reconstru¸c˜ao do espa¸co de fases
Estimativa da densidade
Classifica¸c˜ao
Classe
Etapas do m´etodo proposto 27 / 52
36. Classifica¸c˜ao - Reconstru¸c˜ao do espa¸co de fases
M´etodo time delay embedding
Parˆametros determinados na fase de treinamento
S´erie de tamanho t ´e transformada em uma matriz
(t − ((d − 1) ∗ τ) × d
28 / 52
37. Classifica¸c˜ao - Reconstru¸c˜ao do espa¸co de fases
0 20 40 60
−1
0
1
t
y
(a) S´erie original
−1 0 1
−1
0
1
x
y
(b) RPS d = 2, τ = 5
Reconstru¸c˜ao do espa¸co de fases para classifica¸c˜ao
29 / 52
38. Classifica¸c˜ao - Estimativa da densidade
Treinamento Classifica¸c˜ao
S´eries
Escolha dos parˆametros
Reconstru¸c˜ao do espa¸co de fases
Estimativa das densidades
S´erie
Reconstru¸c˜ao do espa¸co de fases
Estimativa da densidade
Classifica¸c˜ao
Classe
Etapas do m´etodo proposto 30 / 52
39. Classifica¸c˜ao - Estimativa da densidade
−1 0 1
−1
0
1
x
y
(a) RPS d = 2, τ = 5
−1 0 1
−1
0
1
x
y
(b) RPS com densidade estimada
Estimativa da fun¸c˜ao de densidade de probabilidade para classifica¸c˜ao
31 / 52
40. Classifica¸c˜ao
Treinamento Classifica¸c˜ao
S´eries
Escolha dos parˆametros
Reconstru¸c˜ao do espa¸co de fases
Estimativa das densidades
S´erie
Reconstru¸c˜ao do espa¸co de fases
Estimativa da densidade
Classifica¸c˜ao
Classe
Etapas do m´etodo proposto 32 / 52
41. Classifica¸c˜ao
M´etodo k-vizinhos mais pr´oximos
Algoritmo 1 Classifica¸c˜ao por K-vizinhos mais pr´oximos
fun¸c˜ao KNN(x, Y , k)
calcular a distˆancia de x a cada um dos itens em Y
vizinhos ← k itens em Y mais pr´oximos de x
retorna classe majorit´aria dos vizinhos
fim fun¸c˜ao
33 / 52
42. Classifica¸c˜ao
0.44 0.45 0.46 0.47 0.48
0.42
0.43
0.44
0.45
0.46
(0)
(1)
(7)
(6)
(4)
(2)
(3)
(5)
A
B
x
Exemplo de classifica¸c˜ao com KNN
34 / 52
43. Classifica¸c˜ao
M´etodo k-vizinhos mais pr´oximos
Distˆancia utilizada: Integrated Squared Error
Integrated Squared Error (ISE)
Divergente entre duas fun¸c˜oes de densidade de probabilidade
´Area total abaixo da fun¸c˜ao que representa a diferen¸ca
quadr´atica entre elas
ISE(p, q) =
∞
−∞
[p(x) − q(x)]2
dx
Express˜ao anal´ıtica fechada com o KDE
35 / 52
45. Experimentos
Dois conjuntos de experimentos realizados
An´alise dos parˆametros
Avalia¸c˜ao da classifica¸c˜ao
Conjuntos de dados
UCR Time Series Archive
11 conjuntos utilizados
37 / 52
46. Conjuntos de dados
Nome Classes Treinamento Teste Tamanho
Synthetic Control 6 300 300 60
Gun-Point 2 50 150 150
CBF 3 30 900 128
Trace 4 100 100 275
Face (four) 4 24 88 350
Lightning-2 2 60 61 637
Lightning-7 7 70 73 319
ECG 2 100 100 96
Beef 5 30 30 470
Coffee 2 28 28 286
Olive Oil 4 30 30 570
Conjuntos de dados selecionados para os experimentos
38 / 52
47. An´alise dos parˆametros
0 5 10 15 20 25 30
10−3
10−2
10−1
100
Dimens˜ao
log(Distˆancia)
d(c1, c1)
d(c1, c2)
d(c2, c2)
d(c2, c1)
Efeito da escolha da dimens˜ao no ISE entre classes do ECG
39 / 52
48. An´alise dos parˆametros
0 10 20 30 40 50
0.7
0.75
0.8
0.85
Dimens˜ao
Acur´acia
Efeito da escolha da dimens˜ao na acur´acia
40 / 52
49. An´alise dos parˆametros
0 10 20 30 40 50
0
1
2
3
·10−2
Atraso
Distˆancia
d(c1, c1)
d(c1, c2)
d(c2, c2)
d(c2, c1)
Efeito da escolha do atraso no ISE entre classes do ECG
41 / 52
50. An´alise dos parˆametros
0 10 20 30 40 50
0.76
0.78
0.8
0.82
0.84
0.86
τ
Acur´acia
Efeito da escolha da τ na acur´acia
42 / 52
52. M´etodos Comparados
Integrated Squared Error no RPS
M´etodo proposto neste trabalho
Misturas de Gaussianas no RPS
Modelo param´etrico
Classificador Bayesiano
43 / 52
53. M´etodos Comparados
Integrated Squared Error no RPS
M´etodo proposto neste trabalho
Misturas de Gaussianas no RPS
Modelo param´etrico
Classificador Bayesiano
Vizinho mais pr´oximo com distˆancia euclidiana
Simples, por´em bastante eficaz
43 / 52
54. M´etodos Comparados
Integrated Squared Error no RPS
M´etodo proposto neste trabalho
Misturas de Gaussianas no RPS
Modelo param´etrico
Classificador Bayesiano
Vizinho mais pr´oximo com distˆancia euclidiana
Simples, por´em bastante eficaz
Dynamic Time Warping
Utiliza programa¸c˜ao dinˆamica
Alinha duas s´eries temporais a fim de minimizar sua distˆancia
43 / 52
55. M´etodos Comparados
Integrated Squared Error no RPS
M´etodo proposto neste trabalho
Misturas de Gaussianas no RPS
Modelo param´etrico
Classificador Bayesiano
Vizinho mais pr´oximo com distˆancia euclidiana
Simples, por´em bastante eficaz
Dynamic Time Warping
Utiliza programa¸c˜ao dinˆamica
Alinha duas s´eries temporais a fim de minimizar sua distˆancia
Dynamic Time Warping com Warping Window
Imp˜oe uma restri¸c˜ao adicional ao DTW
Diminui o tempo de processamento e o risco de overfitting
43 / 52
56. Avalia¸c˜ao da classifica¸c˜ao
Dois experimentos
1. M´etodos baseados no RPS
Sele¸c˜ao dos parˆametros do RPS pelas mesmas heur´ısticas
h entre 0.1 e 3 e n´umero de gaussinas entre 1 e 32
2. Outros m´etodos
2.1 Sele¸c˜ao por meio das heur´ısticas
2.2 d = {2, 4, . . . , 20}, τ = {1, 3, 5} e h = {0.1, 0.5, 1, 2}
Acur´acia dos m´etodos comparados
44 / 52
57. Avalia¸c˜ao da classifica¸c˜ao
Nome ISE RPS GMM RPS
Synthetic Control 0.9667 0.9533
Gun-Point 0.9867 1
CBF 0.8722 0.96
Trace 0.9600 1
Face (four) 0.9432 0.9545
Lightning-2 0.7869 0.8196
Lightning-7 0.7534 0.7260
ECG 0.8400 0.83
Beef 0.5667 0.633
Coffee 0.9643 1
Olive Oil 0.8667 0.80
Acur´acia dos m´etodos RPS utilizando d e τ escolhido por heur´ısticas
45 / 52
58. Avalia¸c˜ao da classifica¸c˜ao
0 1 2 3 4 5
0
100
200
300
largura
tempo(ms)
(a) ISE
0 5 10 15 20 25 30 35
0
20
40
60
misturas
tempo(ms)
SyntheticControl
GunPoint
CBF
Trace
Face(four)
Lightning − 2
Lightning − 7
ECG
Beef
Coffee
OliveOil
(b) GMM
Tempo de execu¸c˜ao dos m´etodos baseados em RPS
46 / 52
61. Conclus˜oes
Um novo m´etodo de classifica¸c˜ao de s´eries temporais foi
proposto
Alternativa aos m´etodos cl´assicos e aos baseados em modelos
param´etricos
Fundamenta¸c˜ao te´orica distinta
49 / 52
63. Conclus˜oes
Dois conjuntos de experimentos foram efetuados
An´alise dos parˆametros
Destacando a importˆancia da sele¸c˜ao dos parˆametros
50 / 52
64. Conclus˜oes
Dois conjuntos de experimentos foram efetuados
An´alise dos parˆametros
Destacando a importˆancia da sele¸c˜ao dos parˆametros
Performance de classifica¸c˜ao
Contra m´etodos cl´assicos
Resultados promissores e competitivos
Resultados superiores com sele¸c˜ao de parˆametros emp´ırica
50 / 52
65. Conclus˜oes
Dois conjuntos de experimentos foram efetuados
An´alise dos parˆametros
Destacando a importˆancia da sele¸c˜ao dos parˆametros
Performance de classifica¸c˜ao
Contra m´etodos cl´assicos
Resultados promissores e competitivos
Resultados superiores com sele¸c˜ao de parˆametros emp´ırica
Contra m´etodo baseado em RPS
Resultados compar´aveis na maioria das bases
Performance computacional inferior
50 / 52
66. Conclus˜oes - Trabalhos futuros
Escolha dos parˆametros do RPS
Buscar aumentar a separabilidade entre as classes
Melhorar a performance computacional do m´etodo
Remover instˆancias redundantes
Utilizar estruturas auxiliares para aproximar o c´alculo dos
vizinhos mais pr´oximos
51 / 52
67. Classifica¸c˜ao de s´eries temporais via divergente
entre densidades de probabilidade no espa¸co de
fases
Andr´e Santos Teixeira de Carvalho
Universidade Federal do Rio de Janeiro
UFRJ/COPPE/PESC
29 de Novembro, 2016
52 / 52