Universidade Federal do Rio de Janeiro PÓS-GRADUAÇÃO / 2008-2 Redes Neurais Fundamentos Antonio G. Thomé [email protected] www.labic.nce.ufrj.br RN érebro RN xx C Cérebro Inspiradas na estrutura do cérebro, são radicalmente diferentes dos demais sistemas computacionais s modelo biológico axônio corpo celular 2 __ >_ to dri n e d w f (.) y modelo artificial Jul-08 1 C érebro Cérebro 3 Jul-08 Neurônio Neurônio 4 Jul-08 2 Capacidade érebro Capacidade do do C Cérebro 100 bilhões de neurônios Homem (1014,1016) interconexões / seg 1018 1015 1012 109 106 103 Sanguessuga 103 106 109 1012 número de interconexões 5 Jul-08 Neurônio Neurônio Artificial Artificial x1 w1 x2 resposta do neurônio função de ativação w2 entradas . . ou saídas de outros. neurônios função de transferência wn função de propagação b xn pesos sinápticos 6 +1 y y = f(X,W) = P(A(X,W)) y=PoA entrada de polarização Jul-08 3 Fun ção de ção Função de Ativa Ativação m net = ∑ wi xi / wi , xi ∈ R i =0 1 - representa o somatório dos estímulos recebidos pelo neurônio, ponderados pelos seus respectivos pesos sinápticos. 2 - não precisa, necessariamente, ser uma função soma. 3 - estabelece o estado corrente de ativação do neurônio. net – representa o estado de ativação do Neurônio 7 Jul-08 Fun ção de ção Função de Propaga Propagação z onda quadrada binária (degrau) y 1 1 se net > 0 y= 0 se net ≤ 0 z 0 degrau bipolar 1 se net > 0 y= - 1 se net ≤ 0 8 net y 1 net -1 Jul-08 4 Fun ção de ção Função de Propaga Propagação z linear y y = a × net 0 z net rampa a se net ≥ a y = net se - a < net < a - a se net ≤ - a y a 0 net -a 9 Jul-08 Hiperplano – Saída Linear com duas Entradas 10 Jul-08 5 Fun ção de ção Função de Propaga Propagação z logística y= z 1 1 + e(-a×net +b) tangente hiperbólica y= 2 (1 + e(-2a×net + b) ) −1 11 Jul-08 Hipersigmoid – Saída Sigmoidal com duas Entradas Y1 = 1 / (1 + exp(- X1 – X2)) 12 Jul-08 6 Hipersigmoid – Saída Sigmoidal com duas Entradas Y2 = 1 / (1 + exp(- X1 – X2 + 4)) 13 Jul-08 Hipersigmoid – Saída Sigmoidal com duas Entradas Z = Y1 + Y2 14 Demo: nnd2n1 Simple neuron and transfer functions Jul-08 7 O O Modelo Modelo Neural Neural Yd Descritores Numéricos µµ σσ ... ... ^ Y X Mecanismo Aprendizado yMecanismo de Aprendizado ySupervisionado yNão Supervisionado yPor Reforço 15 yMapeamento yNão Linear yAproximado yGeneralização Jul-08 Configura ção Configuração número. número. de de camadas camadas 16 Número Número de de neurônios/camada neurônios/camada Jul-08 8 Treinamento Treinamento Conjunto de Treinamento Dados Históricos Conjunto de Validação Conjunto de Teste 17 Jul-08 Parâmetros Parâmetros de de Treinamento Treinamento Taxa de Aprendizado Momento 18 Freqüência de Ajuste Critério de Parada Jul-08 9 Arquiteturas Arquiteturas Classificam-se quanto ao: z z número número de de camadas camadas z z tipo tipo de de conexão conexão z z tipo tipo de de conectividade conectividade 19 Jul-08 Arquiteturas Arquiteturas z quanto ao número de camadas – redes de camada única x1 x2 x3 – redes de múltiplas camadas x1 x2 x3 20 Jul-08 10 Arquiteturas Arquiteturas z quanto ao tipo de conexão x1 – feedforward (acíclica) x2 x3 x1 – feedback (cíclica) (recorrente) x2 x3 21 Jul-08 Arquiteturas Arquiteturas z quanto ao tipo de conectividade – parcialmente conectada x1 x2 x3 – completamente conectada x1 x2 x3 22 Jul-08 11 Representa ção do Representação do Conhecimento Conhecimento “Conhecimento se refere à informação armazenada ou a modelos utilizados por uma pessoa ou máquina para interpretar, prever e responder apropriadamente a estímulos do mundo exterior”. zz desafios desafios ––Como Comorepresentar representar ––O Oquê quêarmazenar armazenar ––Como Comoarmazenar armazenar ––Como Comorecuperar recuperar ––Como Comoatualizar atualizar ––Como Comogeneralizar generalizar 23 Jul-08 Conhecimento Conhecimento em em uma uma RN RN x1 x2 W W x3 “O conhecimento em uma RN é aprendido e armazenado de maneira distribuída, sob a forma dos pesos das conexões. O número e a topologia dos pesos depende do número de camadas, do tipo de conexão e de conectividade entre os neurônios” Demo: nnd2n2 Neuron with vector input 24 Jul-08 12 Aprendizagem Aprendizagem “Aprendizagem de uma RN se constitui de um processo pelo qual alguns parâmetros livres da rede são adaptados em função das respostas que ela apresenta a estímulos que recebe do meio externo.” z passos do processo de aprendizagem – A rede: – recebe estímulos do meio externo – responde aos estímulos recebidos – recebe um retorno a respeito da sua resposta – adapta seus parâmetros com vistas a aprender – responde de uma maneira nova ao ambiente 25 Jul-08 Formas Formas de de Aprendizagem Aprendizagem • Supervisionada – requer um instrutor • Não Supervisionada – aprende por tentativa e erro • Por Reforço – aprende por auto estímulo 26 Jul-08 13 Aprendizagem Aprendizagem Supervisionada Supervisionada z o facilitador tem conhecimento sobre o ambiente. O conhecimento é representado por um conjunto de exemplos históricos. ambiente representação do ambiente saídas esperadas facilitador estímulos entradas sinal de ajuste respostas + - x1 x2 x3 Σ sistema de aprendizagem sinal de erro (*) métrica de aprendizagem - erro 27 Jul-08 Aprendizagem Aprendizagem Não Não Supervisionada Supervisionada z não há um facilitador para supervisionar o processo de aprendizagem, ou seja, não há exemplos rotulados da função a ser aprendida pela rede ambiente representação do x1 ambiente x2 x3 sistema de sinal de ajuste aprendizagem métrica estatística de desempenho (*) métrica de aprendizagem – algum parâmetro estatístico 28 Jul-08 14 Aprendizagem Aprendizagem –– Regra Regra de de Hebb Hebb • Características • o postulado de aprendizagem de Hebb é a mais antiga e mais famosa de todas as regras de aprendizado • as funções de propagação dos neurônios podem ser tanto binárias quanto contínuas • Aprendizado • não supervisionado 29 Jul-08 Aprendizagem Aprendizagem –– Regra Regra de de Hebb Hebb • O postulado de aprendizagem de Hebb • se dois neurônios em ambos os lados de uma sinapse são ativados simultaneamente, então a força daquela sinapse é seletivamente aumentada • se dois neurônios em ambos os lados de uma sinapse são ativados de forma assíncrona, então aquela sinapse é seletivamente enfraquecida ou eliminada 30 Jul-08 15 Aprendizagem Aprendizagem –– Regra Regra de de Hebb Hebb • Atualização dos Pesos • os pesos iniciais são iguais a 0 ∆wi = α ⋅ f (neti ) ⋅ x onde: x wi : vetor de entrada : vetor de pesos do neurônio i α > 0 : taxa de aprendizado • se a correlação f(neti).xj é positiva, o peso wij é incrementado, caso contrário o peso wij é decrementado 31 Jul-08 Aprendizagem Aprendizagem –– Winner Winner Takes Takes All All • Características • aplicável a um conjunto de neurônios dispostos em uma camada • usada para treinamento de redes não-supervisionadas • Aprendizado • competitivo • o neurônio que apresenta o maior valor de saída para uma determinada entrada tem o seu vetor de pesos atualizado 32 Jul-08 16 Aprendizagem Aprendizagem –– Winner Winner Takes Takes All All vetor de pesos do neurônio vencedor a ser atualizado wm = [wm1 wm 2 L wmn ] T x1 o1 . . . wmj xj . . . wm1 . . . neurônio vencedor om . wmn . . op xn 33 Jul-08 Aprendizagem Aprendizagem –– Winner Winner Takes Takes All All • Atualização dos Pesos • os pesos são inicializados com valores aleatórios e são normalizados durante o aprendizado ∆wm = α ( x − wm ) onde: x : vetor de entrada wm : vetor de pesos do neurônio vencedor m α > 0 : taxa de aprendizado (decresce com o progresso do treinamento) 34 Jul-08 17 Aprendizagem Aprendizagem –– Winner Winner Takes Takes All All • Seleção do Neurônio Vencedor • critério de máxima ativação entre todos os p neurônios participantes da competição ( wmT x = max wiT x i =1 ,2 ,..., p ) 35 Jul-08 Aprendizagem ço Aprendizagem –– Por Por Refor Reforço z não há um facilitador. z dado um padrão de entrada, as unidades competem entre si para decidir qual delas será a vencedora z a unidade vencedora tem a sua saída ativada e seus pesos são atualizados os pesos da unidade vencedora são reforçados 36 Jul-08 18