O documento é uma dissertação de mestrado sobre aprendizado online incremental de sequências temporais. O trabalho propõe várias extensões do algoritmo IGMN (Incremental Gaussian Mixture Network) para capacidades temporais, como TDIGMN, ESIGMN, MIGMN e RecIGMN. Os algoritmos são testados em tarefas de previsão de séries temporais e comparados com redes neurais temporais, demonstrando capacidade de aprendizado online, incremental e one-shot de sequências temporais.
Um Reconhecedor de Padrões Espaço-Temporais Inspirado no Neocórtex
Online Incremental Learning of Temporal Sequences
1. Online Incremental One-Shot Learning
of Temporal Sequences
Dissertação de Mestrado
Rafael C. Pinto.
Orientador: Prof. Dr. Paulo Martins Engel
Universidade Federal do Rio Grande do Sul
Instituto de Informática
Programa de Pós-Graduação em Computação
3. Introdução
Online: O algoritmo aprende enquanto está em
operação
Offline: O algoritmo necessita de uma fase de
aprendizagem separada da fase de operação
Exemplo: os mapas auto-organizáveis (SOM)
necessitam de uma fase de aprendizagem
separada devido aos seus parâmetros
4. Introdução
Incremental: O algoritmo consegue aprender a
cada ponto de dados que recebe
Em Lote (batch): É necessário o lote completo
de dados do problema para que o algoritmo
efetue o aprendizado
Exemplo: o algoritmo EM trabalha apenas com
lotes completos de dados
5. Introdução
One-Shot (agressivo): O algoritmo consegue
aprender após observar cada ponto apenas
uma vez
Iterativo: São necessárias várias observações
sobre o conjunto de dados até que o algoritmo
consiga efetuar o aprendizado corretamente
Exemplo: o algoritmo Backpropagation
necessita de várias ”épocas” de aprendizado
6. Introdução
Temporal: O algoritmo lida com dados
temporalmente correlacionados (tem memória)
Estático: O algoritmo lida com dados sem
correlação temporal (sem memória)
Exemplo: Redes neurais recorrentes lidam com
dados temporais
7. IGMN
Incremental Gaussian Mixture Network
Aproximação incremental do algoritmo EM
(Expectation Maximization) + regressões lineares
locais em cada cluster
✔ Online
✔ Incremental
✔ One-Shot
✗ Estático
O foco do trabalho está em transformá-lo em um
algoritmo temporal
8. IGMN
Composta por uma
camada de entrada...
...e uma ”camada oculta”
(chamada de região
cortical)
Qualquer entrada pode
ser usada para prever
qualquer outra entrada...
...portanto uma ”entrada”
pode ser tratada como
saída para aprendizado
supervisionado
9. IGMN
Cada neurônio da região
cortical corresponde a
uma componente
gaussiana
Cada componente j
possui uma média μj,
uma matriz de
covariâncias Cj e uma
probabilidade a priori p(j)
10. IGMN - Criação de Componentes
A rede inicia sem
nenhuma componente
As componentes são
adicionadas conforme
necessário (limiar de erro
εmax)
Média inicial no ponto x
onde ocorreu o erro
Matriz de covariâncias
inicial diagonal (esférica)
com um desvio δini
11. IGMN - Estimação
Probabilidade a posteriori
de cada componente é
computada a cada
entrada x (somente
porção de entrada)
Regra de Bayes
Verossimilhança dada
pela função densidade
de probabilidade da
distribuição normal
12. IGMN - Estimação
Regressão linear feita em
cada cluster utilizando os
próprios eixos dos
hiperelipsóides como
hiperplanos de regressão
Resultados ponderados
conforme ativação
(probabilidade a
posteriori) de cada
componente
13. IGMN - Margens de Erro
Também pode-se
estimar a
variância do
resultado a partir
da ponderação
das matrizes de
covariância
Intervalos de
confiança
14. IGMN - Aprendizagem
Agora com x completo
Médias, matrizes de
covariância e priors são
atualizadas de forma
incremental...
...Ponderadas pelas
ativações das
respectivas componentes
Não requer parâmetro
taxa de aprendizagem
15. IGMN - Poda
Componentes têm um
limite de tempo vmin para
demonstrarem utilidade
(ativações acumuladas
spmin)
Caso contrário, são
podadas (ruído)
16. IGMN - Criação de Compon. 2.0
Regra aperfeiçoada
✔ Contribuição deste
trabalho
Parâmetro εmax
eliminado
Margem de erro é
utilizada
Quando x cai fora das
margens, uma
componente é criada
17. IGMN - Criação de Compon. 2.0
Critério variável ao longo
dos dados
Regiões com diferentes
resoluções e densidades
são tratadas de acordo
Regiões com pontos
mais esparsos toleram
mais erro
Regiões com maior
precisão toleram menos
erro
18. IGMN - Criação de Compon. 2.0
Margens tracejadas →
limiar com εmax = 0.1 e δini
= 0.1...
...não detectam a
mudança até o fim da
função (x = 100)
Margens pontilhadas →
novo limiar com δini =
0.1...
...detectam mudança em
x = 94
19. IGMN - Criação de Compon. 2.0
Agora com εmax = 0.01 e
δini = 0.01...
...cria clusters
desnecessários no
trecho horizontal
Novo limiar com mesmo
δini é mais econômico
20. IGMN + Memória
Incremental Gaussian Mixture Network
Aproximação incremental do algoritmo EM
(Expectation Maximization) + regressões lineares
locais em cada cluster
✔ Online
✔ Incremental
✔ One-Shot
✗ Estático → Temporal
21. TDIGMN
Time-Delay IGMN
Inclusão de linhas de
atraso nas entradas
Deve-se definir o número
de atrasos
Memória exata...
...porém limitada
Inviável para altas
dimensionalidades
Abordagem usada na
TDNN
22. TDIGMN
É online, incremental,
agressiva e temporal...
...então para que outras
extensões?
Memória relativamente
curta
Multiplica a
dimensionalidade de
entrada (e a IGMN tem
operações O(n³))
23. Computação por Reservoir
Abordagem utilizada
na Echo-State
Network
Camada oculta
recorrente chamada
de ”reservoir”
Conexões da entrada
para o reservoir são
fixas
Conexões
recorrentes do
reservoir fixas
24. Computação por Reservoir
Idéia: mesmo com
conexões aleatórias
e fixas, o reservoir
pode extrair
informação temporal
da entrada
Algoritmo estático e
linear + reservoir =
algoritmo temporal e
não-linear
Propriedade echo-
state
26. ESIGMN
Dimensionalidade resultante = entradas +
tamanho do reservoir (escolhido manualmente)
Maior reservoir = maior memória
Maior reservoir = maior chance de extrair algo útil
27. MIGMN
Merge IGMN
Inspirada no MSOM
(Merge Self-Organizing
Map)
Média móvel
exponencial das
entradas reconstruídas
(estimativas)
Parâmetro α para
decaimento / mistura
28. MIGMN
Maior α (< 1) = Mais
memória, menos
resolução
α = 1 → IGMN estática
(não sai do contexto
zerado)
α = 0 → Armazena
última reconstrução das
entradas
29. MIGMN
Memórias se misturam
(resolução cai conforme
profundidade da
memória)
Dimensionalidade
resultante = dobro da
original
30. RecIGMN
Recursive IGMN
Inspirada no RecSOM
(Recursive Self-
Organizing Map)
Ativações da região
cortical são
realimentadas na
entrada
31. RecIGMN
Nenhum parâmetro
extra...
...má idéia. A versão
do artigo (CBIC)
regula a contribuição
do passado e
presente para as
ativações e funciona
melhor
Potencial para
memória ilimitada
32. RecIGMN
Difícil implementação:
a cada nova
componente criada,
médias e matrizes de
covariância devem ser
aumentadas de
acordo (e reduzidas
na poda)
Em outras palavras, a
entrada passa a ter
tamanho variável
33. Previsão de Séries Temporais
Os algoritmos propostos foram testados em 8
tarefas de previsão de séries temporais
univariadas
1 Passo: prever o valor seguinte em uma série
de valores (dado x(t), prever x(t+1))
Longo Prazo: prever n valores seguintes em
uma série de valores (dado x(t), prever
x(t+1)...x(t+k))
34. Previsão de Séries Temporais
Comparados com redes neurais temporais:
TDNN, Elman e o estado-da-arte ESN
IGMN estática também foi comparada para
avaliar o surgimento das capacidades
temporais
Além das versões multivariadas (matrizes de
covariância completas), as versões ”naïve”
(matrizes diagonais) também foram
comparadas
A inclusão de linhas de atraso foi testada em
adição às redes propostas (sempre o mesmo
número de atrasos para todas as redes)
35. Previsão de Séries Temporais
α = 0.5 para MIGMN (e variantes)
Reservoir de tamanho 10 para ESN e ESIGMN
(e variantes)
Camada oculta com 10 neurônios para Elman e
TDNN
Criação de componentes baseada em outliers
para todos algoritmos baseados em IGMN
Poda ativada para todos os algoritmos
baseados em IGMN
36. Métricas
Para comparação dos algoritmos em previsão
de 1 passo, foi usado o erro normalizado em
relação à solução trivial
Solução trivial: usar x(t) como previsão para x(t+1)
Erro > 1 = Pior que a solução trivial
Erro < 1 = Melhor que a solução trivial
Na previsão de longo prazo, foi usado o erro
normalizado pela variância do conjunto de
treino
Erro > 1 = Pior que prever a média
Erro < 1 = Melhor que prever a média
37. Métricas
Medidas de estatística robusta foram usadas
para descrição dos resultados
Mediana no lugar da média
MAD (Median Absolute Deviations from the
Median) no lugar do desvio padrão
MAD-Score (subtração da mediana e divisão pela
MAD) no lugar do Z-Score (subtração da média e
divisão pelo desvio padrão)
Mais resistentes a outliers
38. Manchas Solares Anuais
Série temporal
estocástica usada
amplamente na área
de estatística
289 valores
200 primeiros
usados como treino
39. Manchas Solares Anuais
1 Passo: TDNN X ESIGMN
TDNN não aprendeu o momento correto de subir
Memória da ESIGMN conseguiu capturar isso
40. Manchas Solares Anuais
Longo Prazo: ESN X MIGMN
MIGMN conseguiu aprender a sazonalidade da
série
46. Mackey-Glass (tau=17)
Série temporal
caótica amplamente
utilizada em previsão
de séries temporais
na computação
1200 valores
1000 primeiros
usados como treino
47. Mackey-Glass (tau=17)
1 Passo: TDNN X TDIGMN
Linhas de atraso selecionadas favorecem os ”TD”
Mas faltou precisão na TDIGMN
48. Mackey-Glass (tau=17)
Longo Prazo: ESN X MIGMN
Previsões de longo prazo ruins como esperado
para uma série caótica
54. Passageiros
Série temporal
estocástica
amplamente utilizada
na estatística
Também já foi alvo
de uma competição
com redes neurais
Não-estacionária
143 valores
100 primeiros
usados como treino
55. Passageiros
1 Passo: ESN X TDIGMN
ESN ficou próxima da solução trivial
TDIGMN teve excelente desempenho
56. Passageiros
Longo Prazo: ESN X TDIGMN
TDIGMN conseguiu generalizar a série para longo
prazo
58. Passageiros log-dif
Versão estacionária
da série dos
passageiros
Verificar quais
algoritmos são
sensíveis a séries
não-estacionárias
142 valores
100 primeiros
usados como treino
59. Passageiros log-dif
1 Passo: TDNN X TDIGMN
TDNN passou a funcionar bem
Faltou resolução para a TDIGMN nos 2 primeiros
picos de cada ciclo
62. Google Stock
Série temporal
financeira
Teoricamente segue
um modelo ”random-
walk” (não tem
autocorrelação)
1800 valores
1500 primeiros
usados como treino
63. Google Stock
1 Passo: Elman X RecIGMN
Aprenderam a solução trivial, como esperado
64. Google Stock
Longo Prazo: Elman X RecIGMN
RecIGMN capturou a tendência vagamente
70. Sumário
TDIGMN é a
melhor no curto
prazo...
...mas foi
favorecida por
atrasos
selecionados
(todas ”TD”)
MIGMN melhor
no longo prazo
ESIGMN melhor
compromisso
71. Variantes
Em geral, os algoritmos propostos foram
beneficiados pelo uso de linhas de atraso
adicionais para previsão de 1 passo, indicando
um papel complementar entre as diferentes
memórias
As versões naïve tiveram péssimo
desempenho, indicando a necessidade de
considerar as covariâncias das entradas no tipo
de problema considerado
72. Ajuste de Parâmetros
Tamanho do reservoir:
ESIGMN obtém menor erro com reservoir maior
para séries determinísticas (Mackey-Glass)...
...porém sofre com overfitting nas séries
estocásticas
Parâmetro de mistura (α):
Não tem um padrão definido, necessita de ajuste
para cada problema
73. Conclusões
As extensões propostas dão capacidades
temporais para a IGMN
A ESIGMN e a MIGMN são competitivas
mesmo com apenas uma passada sobre os
dados
RecIGMN precisa de ajustes
Os algoritmos propostos são capazes de fazer
processamento temporal agressivo, online e
incremental (e não necessitam de pré-
processamento para séries não-estacionárias)
Linhas de atraso adicionais são úteis para
previsões de curto prazo
74. Trabalhos Futuros
Inclusão de feedback das saídas da ESIGMN para o
reservoir, bem como utilização de técnicas de
otimização de reservoir
Reimplementação da RecIGMN e da MIGMN com
parâmetro para ponderação passado-presente e
novos experimentos
Experimentos em tarefas de mais alta
dimensionalidade, como robótica (experimento com o
”road sign problem” em um t-maze em andamento)
Aplicação em aprendizado por reforço POMDP
Pesquisa de memórias de mais longo prazo
75. Publicações Relacionadas
PINTO, R.; ENGEL, P.; HEINEN, M. Echo State
Incremental Gaussian Mixture Network for Spatio-
Temporal Pattern Processing. In: CSBC 2011 - ENIA,
2011, Natal (RN). Proceedings. . . [S.l.: s.n.], 2011.
PINTO, R.; ENGEL, P.; HEINEN, M. Recursive
Incremental Gaussian Mixture Network for Spatio-
Temporal Pattern Processing. In: CBIC 2011, 2011,
Fortaleza (CE). Proceedings. . . [S.l.: s.n.], 2011.
HEINEN, M.; ENGEL, P.; PINTO, R.; IGMN: A
Connectionist Approach for Incremental Function
Approximation. In: IEEE Transactions on Neural
Networks (submitted). → seção sobre previsão de
séries temporais