Online Incremental One-Shot Learning of Temporal Sequences (Portuguese)
-
Upload
rafael-pinto -
Category
Technology
-
view
562 -
download
0
description
Transcript of Online Incremental One-Shot Learning of Temporal Sequences (Portuguese)
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 SulInstituto de Informática
Programa de Pós-Graduação em Computação
Roteiro
Introdução IGMN TDIGMN ESIGMN MIGMN RecIGMN Experimentos e Resultados Conclusão
Introdução
Online: O algoritmo aprende enquanto está em Online: O algoritmo aprende enquanto está em operaçãooperação
Offline: O algoritmo necessita de uma fase de Offline: O algoritmo necessita de uma fase de aprendizagem separada da fase de operaçãoaprendizagem 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
Introdução
Incremental: O algoritmo consegue aprender a Incremental: O algoritmo consegue aprender a cada ponto de dados que recebecada ponto de dados que recebe
Em Lote (batch): É necessário o lote completo Em Lote (batch): É necessário o lote completo de dados do problema para que o algoritmo de dados do problema para que o algoritmo efetue o aprendizadoefetue o aprendizado
Exemplo: o algoritmo EM trabalha apenas com lotes completos de dados
Introdução
One-Shot (agressivo): O algoritmo consegue One-Shot (agressivo): O algoritmo consegue aprender após observar cada ponto apenas aprender após observar cada ponto apenas uma vezuma vez
Iterativo: São necessárias várias observações Iterativo: São necessárias várias observações sobre o conjunto de dados até que o algoritmo sobre o conjunto de dados até que o algoritmo consiga efetuar o aprendizado corretamenteconsiga efetuar o aprendizado corretamente
Exemplo: o algoritmo Backpropagation necessita de várias ”épocas” de aprendizado
Introdução
Temporal: O algoritmo lida com dados Temporal: O algoritmo lida com dados temporalmente correlacionados (tem memória)temporalmente correlacionados (tem memória)
Estático: O algoritmo lida com dados sem Estático: O algoritmo lida com dados sem correlação temporal (sem memória)correlação temporal (sem memória)
Exemplo: Redes neurais recorrentes lidam com dados temporais
IGMN
Incremental Gaussian Mixture Network Aproximação incremental do algoritmo EM
(Expectation Maximization) + regressões lineares locais em cada cluster
✔ OnlineOnline✔ IncrementalIncremental✔ One-ShotOne-Shot✗ EstáticoEstático
O foco do trabalho está em transformá-lo em um algoritmo temporaltemporal
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
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 C
j e uma
probabilidade a priori p(j)
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
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
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
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
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
IGMN - Poda
Componentes têm um limite de tempo v
min para
demonstrarem utilidade (ativações acumuladas sp
min)
Caso contrário, são podadas (ruído)
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
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
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
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
IGMN + Memória
Incremental Gaussian Mixture Network Aproximação incremental do algoritmo EM
(Expectation Maximization) + regressões lineares locais em cada cluster
✔ OnlineOnline✔ IncrementalIncremental✔ One-ShotOne-Shot✗ EstáticoEstático →→ TemporalTemporal
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
TDIGMN
É online, incremental, agressiva e temporal...
...então para que outras extensões?
Memória relativamente Memória relativamente curtacurta
Multiplica a Multiplica a dimensionalidade de dimensionalidade de entrada (e a IGMN tem entrada (e a IGMN tem operações O(n³))operações O(n³))
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
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
ESIGMN
Echo-State IGMN IGMN + reservoir
ESIGMN
Dimensionalidade resultante = entradas + tamanho do reservoir (escolhido manualmente)
Maior reservoir = maior memória Maior reservoir = maior chance de extrair algo útil
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
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
MIGMN
Memórias se misturam (resolução cai conforme profundidade da memória)
Dimensionalidade resultante = dobro da original
RecIGMN
Recursive IGMN Inspirada no RecSOM
(Recursive Self-Organizing Map)
Ativações da região cortical são realimentadas na entrada
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
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
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))
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)
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
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
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
Manchas Solares Anuais
Série temporal estocástica usada amplamente na área de estatística
289 valores 200 primeiros
usados como treino
Manchas Solares Anuais
1 Passo: TDNNTDNN X ESIGMNESIGMN
TDNN não aprendeu o momento correto de subir Memória da ESIGMN conseguiu capturar isso
Manchas Solares Anuais
Longo Prazo: ESNESN X MIGMNMIGMN
MIGMN conseguiu aprender a sazonalidade da série
Manchas Solares Anuais
Manchas Solares Mensais
Versão mais difícil das manchas solares
2987 valores 2000 primeiros
usados como treino
Manchas Solares Mensais
1 Passo: ESNESN X ESIGMNESIGMN
ESIGMN foi mal em um pico mas foi mais robusta às oscilações de alta frequência
Manchas Solares Mensais
Longo Prazo: ESNESN X MIGMNMIGMN
Todos algoritmos se sairam mal, mas a MIGMN conseguiu ir um pouco melhor nos valores iniciais
Manchas Solares Mensais
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
Mackey-Glass (tau=17)
1 Passo: TDNNTDNN X TDIGMNTDIGMN
Linhas de atraso selecionadas favorecem os ”TD” Mas faltou precisão na TDIGMN
Mackey-Glass (tau=17)
Longo Prazo: ESNESN X MIGMNMIGMN
Previsões de longo prazo ruins como esperado para uma série caótica
Mackey-Glass (tau=17)
Mackey-Glass (tau=30)
Versão mais difícil da Mackey-Glass
1500 valores 1000 primeiros
usados como treino
Mackey-Glass (tau=30)
1 Passo: TDNNTDNN X TDIGMNTDIGMN
Idem tau=17
Mackey-Glass (tau=30)
Longo Prazo: ESNESN X ESIGMNESIGMN
Idem tau=17
Mackey-Glass (tau=30)
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
Passageiros
1 Passo: ESNESN X TDIGMNTDIGMN
ESN ficou próxima da solução trivial TDIGMN teve excelente desempenho
Passageiros
Longo Prazo: ESNESN X TDIGMNTDIGMN
TDIGMN conseguiu generalizar a série para longo prazo
Passageiros
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
Passageiros log-dif
1 Passo: TDNNTDNN X TDIGMNTDIGMN
TDNN passou a funcionar bem Faltou resolução para a TDIGMN nos 2 primeiros
picos de cada ciclo
Passageiros log-dif
Longo Prazo: TDNNTDNN X TDIGMNTDIGMN
Idem ao caso de 1 passo
Passageiros log-dif
Google Stock
Série temporal financeira
Teoricamente segue um modelo ”random-walk” (não tem autocorrelação)
1800 valores 1500 primeiros
usados como treino
Google Stock
1 Passo: ElmanElman X RecIGMNRecIGMN
Aprenderam a solução trivial, como esperado
Google Stock
Longo Prazo: ElmanElman X RecIGMNRecIGMN
RecIGMN capturou a tendência vagamente
Google Stock
Taxa de Juros
Série temporal financeira, mas com alguma previsibilidade
102 valores 80 primeiros usados
como treino
Taxa de Juros
1 Passo: ESNESN X RecIGMNRecIGMN
RecIGMN melhor na subida ESN melhor na última descida
Taxa de Juros
Longo Prazo: ESNESN X MIGMNMIGMN
ESN capturou a tendência
Taxa de Juros
Sumário TDIGMN é a
melhor no curto prazo...
...mas foi favorecida por atrasos selecionados (todas ”TD”)
MIGMN melhor no longo prazo
ESIGMN melhor compromisso
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
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
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
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
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
PERGUNTAS