Vous êtes sur la page 1sur 23

HP UFCG Analytics Abril-Maio 2012

Um curso sobre

Reconhecimento de Padres e Redes Neurais


Por

Herman Martins Gomes hmg@dsc.ufcg.edu.br

Programa

Viso Geral (2H)

Reconhecimento Estatstico de Padres (3H)

Redes Neurais (15H)

Introduo ao Reconhecimento de Padres com foco em Redes Neurais

Programa
Processo de Aprendizagem Anlise de Componentes Principais Perceptrons de Simples e Mltiplas Camadas Mapas Auto Organizveis Redes Neurais Recorrentes Previso e Anlise de Sries Temporais
PCA visto no mdulo anterior

Redes Neurais (15H)

Redes Neurais Recorrentes


Classe de redes neurais em que h ciclos dirigidos (ou caminhos fechados) na arquitetura A realimentao de conexes permite a criao de estados internos Diferentemente de redes feedforward, redes recorrentes exibem comportamento temporal dinmico as sadas variam com o tempo

Redes Neurais Recorrentes


Alguns Modelos Histricos
Rede de Hopfield: proposta por John Hopfield em 1982 Rede de Jordan: proposta por Michael I. Jordan em 1986 Rede de Elman: proposta por Jeffrey L. Elman em 1990

Rede de Hopfield
nica camada de neurnios totalmente e simetricamente interconectados a partir de operadores de atraso unitrio, no havendo conexes de um neurnio para ele mesmo Memria autoassociativa sem camada wij = wji escondida wii = 0 A aprendizagem realizada em Operadores de atraso de tempo um nico passo unitrio Na fase de uso, a propagao de uma entrada requer mltiplos passos at que um estado estvel seja atingido (sada da rede)

Rede de Hopfield
Modos de operao
Contnuo: funo de ativao no linear diferencivel (e.g. sigmide ou tangente hiperblica) Discreto: neurnios de McCulloch-Pitts (funo de ativao com limiar e sadas discretas) Exemplo da dinmica de estados de sada para uma rede de Hopfieldcom 2 neurnios e 2 estados estveis
sada do neurnio 2

Neurodinmica

sada do neurnio 1

Rede de Hopfield
Rede operando em modo discreto (neurnio de McCullochPitts)

net = soma ponderada de pesos por entradas Todas as entradas e sadas so bipolares (-1,1)

Rede de Hopfield
Pode ser vista como uma memria enderevel por contedo
Objetivo: recuperar padres armazenados em memria em resposta apresentao de uma verso imcompleta ou ruidosa daquele padro

Os estados estveis da rede correspondem aos padres a serem armazenados Pode ser vista como um corretor de erros na medida em que pode sobrescrever informao inconsistente luz das evidncias apresentadas rede

Rede de Hopfield
A essncia de uma memria enderevel por contedo mapear uma memria fundamental em um ponto fixo estvel (estado prottipo) de um sistema dinmico
codificao

decodificao espao de memrias fundamentais

espao de vetores armazenados

Rede de Hopfield
Considere que a rede recebe como entrada um padro contendo informao parcial, porm suficiente, sobre uma das memrias fundamentais Tal padro considerado um estado inicial no espao de estados A dinmica de operao da rede, mediada pelas conexes recorrentes, far com que haja uma transio de estados na direo da memria estvel

Rede de Hopfield
Treinamento
Como nos Perceptrons, o algoritmo de treinamento derivado a partir da minimizao de uma funo de energia para um padro particular Minimizar a funo de energia de Lyapunov

1 E = wi , j xi x j + xi i 2 i j i i
Como resultado chega-se regra de treinamento de uma rede de Hopfield operando em modo discreto (aprendizagem do tipo Hebbiana)

Rede de Hopfield
Treinamento (fase de armazenamento)
Seja 1,2,..., um conjunto N-dimensional de memrias fundamentais conhecidas (1) Computar os pesos sinpticos como sendo:

Rede de Hopfield
Inicializao (da fase de recuperao)
Seja probe um vetor de entrada (teste) N-dimensional apresentado rede. O algoritmo de uso inicializado da seguinte forma:

Rede de Hopfield
Iterao (da fase de recuperao) at convergncia (estabilidade)
Atualizar os elementos do vetor de estado x(n) assincronamente (i.e. randomicamente e um por vez), conforme a regra:

Repetir a iterao at que o vetor de estado x permanea inalterado: x(n) = x(n-1)

Rede de Hopfield
Gerao da sada (da fase de recuperao)
O vetor de sada y resultante da rede de Hopfield definido como: y = xfixo Em que xfixo denota o estado estvel computado ao final da etapa anterior (iterao)

Rede de Hopfield
Capacidade definida pela teoria da informao como: 2 log
em que M denota o nmero de padres de treinamento (memrias estveis) e N, o nmero de neurnios da rede

Estados esprios (mnimos locais de energia): quando M muito grande, passam a existir estados esprios (estados que no foram treinados, mas que podem atrair as entradas durante o processo de convergncia) Demo: http://www.cbu.edu/~pong/ai/hopfield/hopfieldapplet.html

Redes Recorrentes Derivadas do MLP


Incorporam em sua estrutura uma rede esttica do tipo Perceptron de mltiplas camadas Exploram as capacidades de mapeamentos no lineares dos Perceptrons de mltiplas camadas Alguns exemplos:
NARX Perceptrons Recorrentes por Camada Jordan Elman

Redes Recorrentes Derivadas do MLP


NARX: Nonlinear autoregressive with exogenous inputs
Valores passados e presentes da entrada que representam as entradas externas da rede: un, un-1,...,un-q+2,un-q+1 Valores de atraso da sada, representados por: yn, yn-1,...,yn O comportamento dinmico denotado por uma funo no linear:
q+1

yn+1 = F(yn, yn-1,...,yn-q+1;un, un-1,...,un-q+2,un-q+1)

Redes Recorrentes Derivadas do MLP


NARX: Arquitetura
entrada

retroalimentao

Perceptron de Mltiplas Camadas

Sada

Redes Recorrentes Derivadas do MLP


Redes Recorrentes Simples
Elman: trs camadas (entrada, escondida e de sada) mais uma camada de contexto realimentando a camada escondida Jordan: a camada de contexto realimenta apenas a camada de sada
Unidades de Contexto Operadores de atraso de tempo unitrio

Vetor de Entrada

Camada Escondida

Camada de Sada

Vetor de Sada

Percentron de Mltiplas camadas com apenas uma camada escondida

Redes Recorrentes Derivadas do MLP


Perceptron Multicamada Recorrente (Layer Recurrent Network):
caso mais geral para redes de Jordan e Elman
Unidades de Contexto Operadores de atraso de tempo unitrio

1 Camada Vetor de Entrada Escondida

2 Camada Escondida

Camada de Sada

Vetor de Sada

Percentron com mltiplas camadas escondidas

Ver exemplos no Matlab http://www.kxcad.net/cae_matlab/toolbox/nnet/newlrn.html http://www.mathworks.com/help/toolbox/nnet/ug/bss36ea-1.html

Dvidas

Vous aimerez peut-être aussi