SlideShare una empresa de Scribd logo
1 de 76
Descargar para leer sin conexión
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
Roteiro

   Introdução
   IGMN
   TDIGMN
   ESIGMN
   MIGMN
   RecIGMN
   Experimentos e Resultados
   Conclusão
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
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
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
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
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
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 Cj 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 vmin para
                  demonstrarem utilidade
                  (ativações acumuladas
                  spmin)
                 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
    ✔   Online
    ✔   Incremental
    ✔   One-Shot
    ✗   Estático → Temporal
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
             curta
            Multiplica a
             dimensionalidade de
             entrada (e a IGMN tem
             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: TDNN X ESIGMN




   TDNN não aprendeu o momento correto de subir
   Memória da ESIGMN conseguiu capturar isso
Manchas Solares Anuais

    Longo Prazo: ESN X MIGMN




   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: ESN X ESIGMN




   ESIGMN foi mal em um pico mas foi mais robusta
    às oscilações de alta frequência
Manchas Solares Mensais

    Longo Prazo: ESN X MIGMN




   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: TDNN X TDIGMN




   Linhas de atraso selecionadas favorecem os ”TD”
   Mas faltou precisão na TDIGMN
Mackey-Glass (tau=17)

    Longo Prazo: ESN X MIGMN




   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: TDNN X TDIGMN




   Idem tau=17
Mackey-Glass (tau=30)

    Longo Prazo: ESN X ESIGMN




   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: ESN X TDIGMN




   ESN ficou próxima da solução trivial
   TDIGMN teve excelente desempenho
Passageiros

    Longo Prazo: ESN X TDIGMN




   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: TDNN X TDIGMN




   TDNN passou a funcionar bem
   Faltou resolução para a TDIGMN nos 2 primeiros
    picos de cada ciclo
Passageiros log-dif

    Longo Prazo: TDNN X TDIGMN




   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: Elman X RecIGMN




   Aprenderam a solução trivial, como esperado
Google Stock

    Longo Prazo: Elman X RecIGMN




   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: ESN X RecIGMN




   RecIGMN melhor na subida
   ESN melhor na última descida
Taxa de Juros

    Longo Prazo: ESN X MIGMN




   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

Más contenido relacionado

Destacado

Exposision cromatografia de gases
Exposision cromatografia de gasesExposision cromatografia de gases
Exposision cromatografia de gasesdannatrance
 
La falacia del Kerosene en el Perú o Muerto el perro no se acabó la rabia
La falacia del Kerosene en el Perú o Muerto el perro no se acabó la rabiaLa falacia del Kerosene en el Perú o Muerto el perro no se acabó la rabia
La falacia del Kerosene en el Perú o Muerto el perro no se acabó la rabiaCésar Augusto Bedón Rocha
 
L'hydrogène dans tous ses états - 1er décembre 2016
L'hydrogène dans tous ses états - 1er décembre 2016L'hydrogène dans tous ses états - 1er décembre 2016
L'hydrogène dans tous ses états - 1er décembre 2016Cluster TWEED
 
Hse alert2014 05 liquid nitrogen release results in 4 deaths
Hse alert2014 05 liquid nitrogen release results in 4 deathsHse alert2014 05 liquid nitrogen release results in 4 deaths
Hse alert2014 05 liquid nitrogen release results in 4 deathsAlan Bassett
 
Grupo 7 a eng amb
Grupo 7 a eng ambGrupo 7 a eng amb
Grupo 7 a eng ambYuri José
 
141014 projet power to gas aful chantrerie emn
141014 projet power to gas aful chantrerie emn141014 projet power to gas aful chantrerie emn
141014 projet power to gas aful chantrerie emnInterconsulaire 909
 
Risco de incêndio e explosão
Risco de incêndio e explosãoRisco de incêndio e explosão
Risco de incêndio e explosãoisabelourenco
 

Destacado (15)

Exposision cromatografia de gases
Exposision cromatografia de gasesExposision cromatografia de gases
Exposision cromatografia de gases
 
La falacia del Kerosene en el Perú o Muerto el perro no se acabó la rabia
La falacia del Kerosene en el Perú o Muerto el perro no se acabó la rabiaLa falacia del Kerosene en el Perú o Muerto el perro no se acabó la rabia
La falacia del Kerosene en el Perú o Muerto el perro no se acabó la rabia
 
L'hydrogène dans tous ses états - 1er décembre 2016
L'hydrogène dans tous ses états - 1er décembre 2016L'hydrogène dans tous ses états - 1er décembre 2016
L'hydrogène dans tous ses états - 1er décembre 2016
 
LNG
LNGLNG
LNG
 
Energie
EnergieEnergie
Energie
 
Hse alert2014 05 liquid nitrogen release results in 4 deaths
Hse alert2014 05 liquid nitrogen release results in 4 deathsHse alert2014 05 liquid nitrogen release results in 4 deaths
Hse alert2014 05 liquid nitrogen release results in 4 deaths
 
Ingeniería de yacimientos i
Ingeniería de yacimientos iIngeniería de yacimientos i
Ingeniería de yacimientos i
 
Solda tig aula
Solda tig aulaSolda tig aula
Solda tig aula
 
Usinagem a laser
Usinagem a laserUsinagem a laser
Usinagem a laser
 
Grupo 7 a eng amb
Grupo 7 a eng ambGrupo 7 a eng amb
Grupo 7 a eng amb
 
141014 projet power to gas aful chantrerie emn
141014 projet power to gas aful chantrerie emn141014 projet power to gas aful chantrerie emn
141014 projet power to gas aful chantrerie emn
 
Présentation DADA - FCP
Présentation DADA - FCPPrésentation DADA - FCP
Présentation DADA - FCP
 
Risco de incêndio e explosão
Risco de incêndio e explosãoRisco de incêndio e explosão
Risco de incêndio e explosão
 
Tp qimica sansalone murrone
Tp qimica sansalone murroneTp qimica sansalone murrone
Tp qimica sansalone murrone
 
Sanclarpps
SanclarppsSanclarpps
Sanclarpps
 

Más de Rafael Pinto

Inteligência Artificial - Aula15 - Algoritmos Genéticos
Inteligência Artificial - Aula15 - Algoritmos GenéticosInteligência Artificial - Aula15 - Algoritmos Genéticos
Inteligência Artificial - Aula15 - Algoritmos GenéticosRafael Pinto
 
Inteligência Artificial - Aula5 - PageRank
Inteligência Artificial - Aula5  - PageRankInteligência Artificial - Aula5  - PageRank
Inteligência Artificial - Aula5 - PageRankRafael Pinto
 
Inteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em GrafosInteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em GrafosRafael Pinto
 
Inteligência Artificial - Aula1 intro
Inteligência Artificial - Aula1 introInteligência Artificial - Aula1 intro
Inteligência Artificial - Aula1 introRafael Pinto
 
Slow Feature Analysis
Slow Feature AnalysisSlow Feature Analysis
Slow Feature AnalysisRafael Pinto
 
Neuroevolução com o algoritmo NEAT e suas Extensões
Neuroevolução com o algoritmo NEAT e suas ExtensõesNeuroevolução com o algoritmo NEAT e suas Extensões
Neuroevolução com o algoritmo NEAT e suas ExtensõesRafael Pinto
 
Um Reconhecedor de Padrões Espaço-Temporais Inspirado no Neocórtex
Um Reconhecedor de Padrões Espaço-Temporais Inspirado no NeocórtexUm Reconhecedor de Padrões Espaço-Temporais Inspirado no Neocórtex
Um Reconhecedor de Padrões Espaço-Temporais Inspirado no NeocórtexRafael Pinto
 

Más de Rafael Pinto (10)

Deep Learning
Deep LearningDeep Learning
Deep Learning
 
Inteligência Artificial - Aula15 - Algoritmos Genéticos
Inteligência Artificial - Aula15 - Algoritmos GenéticosInteligência Artificial - Aula15 - Algoritmos Genéticos
Inteligência Artificial - Aula15 - Algoritmos Genéticos
 
Inteligência Artificial - Aula5 - PageRank
Inteligência Artificial - Aula5  - PageRankInteligência Artificial - Aula5  - PageRank
Inteligência Artificial - Aula5 - PageRank
 
Inteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em GrafosInteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em Grafos
 
Inteligência Artificial - Aula1 intro
Inteligência Artificial - Aula1 introInteligência Artificial - Aula1 intro
Inteligência Artificial - Aula1 intro
 
Slow Feature Analysis
Slow Feature AnalysisSlow Feature Analysis
Slow Feature Analysis
 
Ratslam
RatslamRatslam
Ratslam
 
Neuroevolução com o algoritmo NEAT e suas Extensões
Neuroevolução com o algoritmo NEAT e suas ExtensõesNeuroevolução com o algoritmo NEAT e suas Extensões
Neuroevolução com o algoritmo NEAT e suas Extensões
 
LoopSOM
LoopSOMLoopSOM
LoopSOM
 
Um Reconhecedor de Padrões Espaço-Temporais Inspirado no Neocórtex
Um Reconhecedor de Padrões Espaço-Temporais Inspirado no NeocórtexUm Reconhecedor de Padrões Espaço-Temporais Inspirado no Neocórtex
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
  • 2. Roteiro  Introdução  IGMN  TDIGMN  ESIGMN  MIGMN  RecIGMN  Experimentos e Resultados  Conclusã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
  • 25. ESIGMN  Echo-State IGMN  IGMN + reservoir
  • 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
  • 42. Manchas Solares Mensais  Versão mais difícil das manchas solares  2987 valores  2000 primeiros usados como treino
  • 43. Manchas Solares Mensais 1 Passo: ESN X ESIGMN  ESIGMN foi mal em um pico mas foi mais robusta às oscilações de alta frequência
  • 44. Manchas Solares Mensais Longo Prazo: ESN X MIGMN  Todos algoritmos se sairam mal, mas a MIGMN conseguiu ir um pouco melhor nos valores iniciais
  • 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
  • 50. Mackey-Glass (tau=30)  Versão mais difícil da Mackey-Glass  1500 valores  1000 primeiros usados como treino
  • 51. Mackey-Glass (tau=30) 1 Passo: TDNN X TDIGMN  Idem tau=17
  • 52. Mackey-Glass (tau=30) Longo Prazo: ESN X ESIGMN  Idem tau=17
  • 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
  • 60. Passageiros log-dif Longo Prazo: TDNN X TDIGMN  Idem ao caso de 1 passo
  • 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
  • 66. Taxa de Juros  Série temporal financeira, mas com alguma previsibilidade  102 valores  80 primeiros usados como treino
  • 67. Taxa de Juros 1 Passo: ESN X RecIGMN  RecIGMN melhor na subida  ESN melhor na última descida
  • 68. Taxa de Juros Longo Prazo: ESN X MIGMN  ESN capturou a tendência
  • 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