Redes Neurais Artificiais Profa Teresa Ludermir Sistemas Inteligentes















































































- Slides: 79
Redes Neurais Artificiais Profa. Teresa Ludermir Sistemas Inteligentes
Por que Redes Neurais? Utilizar máquinas efetivamente para resolver problemas simples (humanos) l Exemplo 1: distinguir padrões visuais l utilizando exemplos e feedback n Maior experiência permite melhorar a performance n Redes Neurais - Teresa Ludermir Cin - UFPE
Por que Redes Neurais? l Exemplo 2: otimizar tempo de trabalho (maximizar recurso) Pode-se derivar regras, mas elas não refletem o processo de pensamento utilizado Redes Neurais - Teresa Ludermir Cin - UFPE
O que são Redes Neurais Artificiais l Redes Neurais Artificiais (RNA) são modelos de computação com propriedades particulares Capacidade de se adaptar ou aprender n Generalizar n Agrupar ou organizar dados n Redes Neurais - Teresa Ludermir Cin - UFPE
O que são Redes Neurais Artificiais RNA: estruturas distribuídas formadas por grande número de unidades de processamento conectadas entre si l Multi-disciplinaridade : Ciência da Computação, Matemática, Física, Engenharias, Psicologia, Biologia, Lingüística, Filosofia, etc l Redes Neurais - Teresa Ludermir Cin - UFPE
O que são Redes Neurais Artificiais l Modelos inspirados no cérebro humano Compostas por várias unidades de processamento (“neurônios”) n Interligadas por um grande número de conexões (“sinapses”) n l Eficientes onde métodos tradicionais têm se mostrado inadequados Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais Artificiais camadas intermediárias camada de entrada conexões Redes Neurais - Teresa Ludermir Cin - UFPE camada de saída
Características das RNAs l Aprendem através de exemplos n Inferência estatística não paramétrica l Adaptabilidade l Capacidade de generalização l Tolerância a falhas l Implementação rápida Redes Neurais - Teresa Ludermir Cin - UFPE
Von Neumann X Sistema neural Redes Neurais - Teresa Ludermir Cin - UFPE
Potenciais áreas de aplicação das RNAs Classificação de padrões l Clustering/categorização l Aproximação de funções l Previsão l Otimização l Memória endereçável pelo conteúdo l Controle l etc. . . Redes Neurais - Teresa Ludermir Cin - UFPE l
História das RNA l Inter-relação entre Investigação do comportamento e estrutura do sistema nervoso através de experimentação e modelagem biológica n Desenvolvimento de modelos matemáticos e suas aplicações para a solução de vários problemas práticos n l Simulação e implementação destes modelos Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais l Histórico n 1940 -1950: início das Redes neurais com Mc. Culloch e Pitts. E as redes de auto-organização. n 1950 -1960: Perceptron de aprendizado supervisionado. n 1960 -1970: Pouco avanço n 1980 -2000: Redes simétricas e o Backpropagation Redes Neurais - Teresa Ludermir Cin - UFPE
Década de 40 : O começo l (1943) Mc. Culloch & Pitts, 1 o modelo artificial de um neurônio biologico n l Provam, teoricamente, que qualquer função lógica pode ser implementada utilizando unidades de soma ponderada e threshold (1949) Hebb desenvolve algoritmo para treinar RNA (aprendizado Hebbiano) n Se dois neurônios estão simultaneamente ativos, a conexão entre eles deve ser reforçada Redes Neurais - Teresa Ludermir Cin - UFPE
1950 -1960: Anos de euforia l (1958) Von Neumann mostra interesse em modelagem do cérebro (RNA) n l The Computer and the Brain, Yale University Press (1959) Rosenblatt implementa primeira RNA, a rede Perceptron Ajuste iterativo de pesos n Prova teorema da convergência n Redes Neurais - Teresa Ludermir Cin - UFPE
Década de 70: Pouca atividade l 1960 - Windrow e Hoff n l Regra Delta: Utiliza o método do gradiente para minimização do erro na saída de um neurônio com resposta linear (1969) Minsky & Papert analisam Perceptron e mostram suas limitações n n Não poderiam aprender a resolver problemas simples como o OU-exclusivo Causou grande repercussão Embora o perceptron garantia a convergência para modelos de uma camada, omesmo não ocorria para redes com mais de uma camada Conseqüência: Desânimo nas pesquisas de redes neurais na década de 70 Redes Neurais - Teresa Ludermir Cin - UFPE
Década de 70: Pouca atividade (1971) Aleksander propõe redes Booleanas l (1972) Kohonen e Anderson trabalham com RNA associativas l (1975) Grossberg desenvolve a Teoria da Ressonância Adaptiva (redes ART) l Redes Neurais - Teresa Ludermir Cin - UFPE
Década de 80: A segunda onda l (1982) Hopfield mostra que Redes Neurais podem ser tratadas como sistemas dinâmicos n n n Mostrou que a visão de Minsky e Papert sobre o perceptron era bastante pessimista RNAs com mais de uma camada era aplicáveis a problemas de difícil aprendizagem Conseqüência: Ressurgimento de interesse e pesquisa na área de RNAs Redes Neurais - Teresa Ludermir Cin - UFPE
Década de 80: A segunda onda l (1986) Hinton, Rumelhart e Williams, propõem algoritmo de aprendizagem para redes multicamadas n n Principal responsável pelo ressurgimento do interesse em RNA Algoritmo supervisionado que utiliza pares(entrada, saída desejada) para ajustar os pesos da rede Parallel Distributed Processing Werbos (1974) Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais l Cérebro Humano – l Redes Neural – Computador complexo, paralelo e não-linear. Processador maciçamente paralelo e distribuído constituído de unidades de processamento simples, que têm a propensão natural para amarzenar conhecimento experimental e torná-lo disponível para o uso. n Semelhança entre redes neurais artificiais e o cérebro humano. Ÿ Conhecimento é adquirido pela rede a partir de seu ambiente através de um processo de aprendizagem Ÿ Forças de conexão entre neurônios, conhecidos como pesos sinápticos, são utilizados para amarzenar o conhecimento adquirido Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais l Benefícios das Redes Neurais n n n Paralelismo Generalização Não-linearidade Mapeamento de Entrada-Saída Adaptabilidade Resposta a Evidências Informação Contextual Tolerância a Falhas Implementação em VLSI Uniformidade de Análise e Projetos Analogia Neurobioógica l Usado para solucionar problemas n n l Reconhecimento de Padrões Predição Otimização Controle Tipos de aprendizagem n n Supervisionados Não-Superivsionados Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais l Cérebro Humano Estímulo Receptores Rede Atuadores Resposta Neural n Neurônios são de cinco a seis ordens de grandeza mais lentos que as portas lógicas em silício. Ÿ Circuito de silício 10 -9 s nanosegundos Ÿ Circuito de neurais 10 -3 s milisegundos n Cerébro compensa a taxa de operação lenta pelo número espantoso de neurônios, com conexões maciças entre si. Aproximatamente 10 bilhões de neurônios no córtex humano e 60 trilhões de sinapses ou conexões. Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais l Cérebro é extremamente eficiente: n n Eficiência energética do cérebro é de aproximadamente 10 -16 joules por operação por segundo. Os melhores computatores é cerca de 10 -6 joules por operação por segundo. Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais - Teresa Ludermir Cin - UFPE
Conceitos básicos l Estrutura geral das RNA n Unidades de processamento ni (nós) ŸEstado de ativação ai ŸFunção de ativação Fi ŸFunção de saída ƒi Conexões wij n Topologia n Redes Neurais - Teresa Ludermir Cin - UFPE
Unidades de processamento Função: receber entradas de conjunto de unidades A, computar função sobre entradas e enviar resultado para conjunto de unidades B w 1 x 1 l Entrada total w 2 f f(åx (åxw) iw i) y x 2 l w. N x. N Redes Neurais - Teresa Ludermir Cin - UFPE
Modelo Geral Redes Neurais - Teresa Ludermir Cin - UFPE
Unidades de processamento l Estado de ativação n n Representa o estado dos neurônios da rede Pode assumir valores ŸBinários (0 e 1) ŸBipolares (-1 e +1) ŸReais n Definido através de funções de ativação Redes Neurais - Teresa Ludermir Cin - UFPE
Funções de ativação Processa conjunto de entradas recebidas e o transforma em estado de ativação l Funções de ativação típicas envolvem: l Adições n Comparações n Transformações matemáticas n Redes Neurais - Teresa Ludermir Cin - UFPE
Funções de ativação l Função de ativação n Atualiza estado de ativação Ÿ a(t + 1) = F [a(t), u(t)] Ÿ a(t + 1) = F [a(t)] Ÿ a(t + 1) = F [u(t)] n Atualização Ÿ Síncrona (mais comum) Ÿ Assíncrona Redes Neurais - Teresa Ludermir Cin - UFPE
Funções de ativação l Funções de ativação mais comuns n a(t + 1) = u(t) n a(t + 1) = n n (linear) 1 , se u(t) ³ q 0, se u(t) < q í a(t + 1) = 1/(1 + e - lu(t) -lu(t) a(t + 1) = (1 - e ) -lu(t) (1 +e ) ) (threshold ou limiar) (sigmoid logística) (tangente hiperbólica) Redes Neurais - Teresa Ludermir Cin - UFPE
Tipos de Função de Ativação 1. Função de limiar Redes Neurais - Teresa Ludermir Cin - UFPE
Tipos de Função de Ativação 2. Função Linear por Partes Redes Neurais - Teresa Ludermir Cin - UFPE
Tipos de Função de Ativação 3. Função Sigmóide a é o parâmetro da inclinação Redes Neurais - Teresa Ludermir Cin - UFPE
Tipos de Função de Ativação 4. Função Sinal 5. Função Tangente Hiperbólica Redes Neurais - Teresa Ludermir Cin - UFPE
Funções de saída l Função de saída n Transforma estado de ativação de uma unidade em seu sinal de saída yi (t) = ƒi (ai (t)) n Geralmente é uma função identidade Redes Neurais - Teresa Ludermir Cin - UFPE
Valores de entrada e saída l Sinais de entrada e saída de uma RNA geralmente são números reais n Números devem estar dentro de um intervalo ŸTipicamente entre -1 e +1 ou 0 e 1 ŸCodificação realizada pelo projetista da rede l Técnica de codificação mais simples é a binária n Número restrito de aplicações Redes Neurais - Teresa Ludermir Cin - UFPE
Conexões l Definem como neurônios estão interligados n l Nós são conectados entre si através de conexões específicas Codificam conhecimento da rede n Uma conexão geralmente tem um valor de ponderamento ou peso associada a ela Redes Neurais - Teresa Ludermir Cin - UFPE
Conexões l Tipos de conexões (wik(t)) n n n l Excitatória: (wik(t) > 0) Inibitória: (wik(t) < 0) Conexão inexistente: (wik(t) = 0) Número de conexões de um nó Fan-in: número de conexões de entrada n Fan-out: número de conexões de saída n Redes Neurais - Teresa Ludermir Cin - UFPE
Topologia l Número de camadas Uma camada (Ex Perceptron, Adaline) n Multi-camadas (Ex MLP) n Ÿ Completamente conectada Ÿ Parcialmente conectada Ÿ Localmente conectada Redes Neurais - Teresa Ludermir Cin - UFPE
Completamente conectada Camada i +1 Redes Neurais - Teresa Ludermir Cin - UFPE
Parcialmente conectada Camada i +1 Redes Neurais - Teresa Ludermir Cin - UFPE
Parcialmente conectada Camada i +1 Redes Neurais - Teresa Ludermir Cin - UFPE
Topologia l Arranjo das conexões n Redes feedforward Ÿ Não existem loops de conexões n Redes recorrentes Ÿ Conexões apresentam loops Ÿ Mais utilizadas em sistemas dinâmicos n Lattices Ÿ Matriz n-dimensional de neurônios Redes Neurais - Teresa Ludermir Cin - UFPE
Redes feedforward l Sinais seguem em uma única direção OU Sinal l Tipo mais comum Redes Neurais - Teresa Ludermir Cin - UFPE RN
Redes recorrentes l Possuem conexões ligando saída da rede a sua entrada RN l Podem lembrar entradas passadas e, conseqüentemente, processar seqüência de informações (no tempo ou espaço) Redes Neurais - Teresa Ludermir Cin - UFPE
Representação por Grafos Orientados Redes Neurais - Teresa Ludermir Cin - UFPE
Representação por Grafos Orientados Redes Neurais - Teresa Ludermir Cin - UFPE
Arquiteturas de Redes Alimentadas Adiante com Camada Única A maneira pela qual os neurônios de uma rede estão estruturadas está intimamente ligada com o algoritmo de aprendizagem. - Forma mais simples de uma rede em camadas Rede é estritamente do tipo alimentado adiante ou acíclica Redes Neurais - Teresa Ludermir Cin - UFPE
Arquiteturas de Redes Alimentadas Adiante com Múltiplas Única - - Presença de uma ou mais camadas ocultas Função dos neurônios ocultos é intervir entre a entrada externa e a saída da rede de uma maneira útil. Adicionandose uma ou mais camadas ocultas, tornamos a rede capaz de extrair estatístacas de ordem elevada Podem ser totalmente conectada ou parcialmente conectada. Redes Neurais - Teresa Ludermir Cin - UFPE
Arquiteturas de Redes Recorrentes - Redes neurais recorrentes possui pelo menos um laço de realimentação Redes Recorrentes sem Laços de Auto. Realimentação e sem Neurônio Ocultos Redes Neurais - Teresa Ludermir Cin - UFPE
Arquiteturas de Redes Recorrentes com Neurônio Ocultos Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais - Teresa Ludermir Cin - UFPE
Projeto de Redes Neurais l Projeto de sistemas convencionais n n n l Formular modelo matemático a partir de observações do ambiente Validar o modelo com dados reais Construir o sistema utilizando o modelo Projeto de Redes Neurais n n Baseado apenas nos dados Exemplos para treinar uma rede devem ter padrões positivos e negativos Redes Neurais - Teresa Ludermir Cin - UFPE
Conjunto de dados l Tamanho depende da complexidade dos dados Quanto maior a complexidade, maior a quantidade necessária n Pré-processamento dos dados n ŸDados numéricos ŸPresença de valores em todos os campos ŸBalanceamento entre classes Redes Neurais - Teresa Ludermir Cin - UFPE
Pré-processamento dos dados l Conversão de valores simbólicos para valores numéricos n Quando os valores não apresentam ordenação Ÿ Vetores de valores binários, cada um com um elemento igual a 1 e os demais iguais a 0 Ÿ Tamanho do vetor igual ao número de valores diferentes n Quando os valores apresentam ordenação Ÿ Codificar cada valor por um número real Ÿ Codificar cada valor por um vetor binário, utilizando código cinza Redes Neurais - Teresa Ludermir Cin - UFPE
Pré-processamento dos dados l Estimativa de valores ausentes n n n l Média de todos os valores do mesmo campo Média entre anterior e posterior Criação de um novo valor Normalização de valores numéricos n n Normalizar cada campo individualmente Assegurar que todos os valores de um dado campo estejam dentro de um intervalo (Ex. [0. 0, . . . , 1. 0]) Redes Neurais - Teresa Ludermir Cin - UFPE
Criação de conjuntos de dados l Dividir o conjunto de dados em: n Subconjunto de treinamento (50% dos dados) Ÿ Necessidade de manter uniformidade pode reduzir proporção n n n l Subconjunto de validação (25% dos dados) Subconjunto de teste (25% dos dados) Dividir dados aleatoriamente entre os conjuntos ŸConjuntos devem ser disjuntos Repetir o processo acima três vezes n Criando três conjuntos, cada um com subconjuntos de treinamento, validação e teste Redes Neurais - Teresa Ludermir Cin - UFPE
Projeto da rede l l Escolha do modelo Selecionar arquitetura adequada para a rede n n Número de camadas Número de nós da camada de entrada igual ao de pixels (campos) do vetor de entrada Ÿ Pré-processamento pode aumentar ou diminuir número de campos Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado l l Capacidade de aprender a partir de seu ambiente e melhorar sua performance com o tempo Parâmetros livres de uma RNA são adaptados através de estímulos fornecidos pelo ambiente n n Processo iterativo de ajustes aplicado a sinapses e thresholds Idealmente, a RNA sabe mais sobre seu ambiente após cada iteração Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado l RNA deve produzir para cada conjunto de entradas apresentado o conjunto de saídas desejado n wik(t+ 1) = wik(t) + Dwik(t) Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado l Mecanismos de aprendizado Modificação de pesos (Dwij(t)) associados às conexões n Armazenamento de novos valores em conteúdos de memória n Acréscimo e/ou eliminação de conexões/neurônios n Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado l Algoritmos de aprendizado Conjunto de regras bem definidas para a solução de um problema de aprendizado n Grande variedade n ŸCada um com suas vantagens ŸDiferem na maneira como ajuste Dwik(t) é realizado l Paradigmas de aprendizado n Diferem na maneira como RNA se relaciona com seu ambiente Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado Processos de Aprendizado Algoritmos de Aprendizado por correção de erro Aprendizado competitivo Aprendizado Hebbiano Aprendizado de Boltzmann Paradigmas de Aprendizado supervisionado Aprendizado de reforço Aprendizado não supervisionado Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado por correção de erro l l Regra Delta (Widrow e Hoff 1960) Erro: ek(t) = dk(t) - yk(t) Minimizar função de custo baseada em ek(t) Função de custo n c(t) = -1/2åe 2 k(t) n n Minimização de c(t) utiliza método de gradiente descendente Aprendizado atinge solução estável quando os pesos não precisam mudar muito Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado por correção de erro l Após seleção da função de custo, aprendizado se torna um problema de otimização n l RNA é otimizada pela minimização de c(t) com respeito aos pesos da rede Modelo matemático: n Dwik(t) = hek(t)xi(t) Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado por correção de erro l Taxa de aprendizado (h) 0<h <1 n Taxas pequenas n n n Taxas grandes Taxas variáveis Média das entradas anteriores Estimativas estáves de peso Aprendizado lento Aprendizado rápido Captação de mudanças no processo Instabilidade Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado competitivo Von der Marlsburg (1973) l Neurônios competem entre si para ser ativado l n l Apenas um neurônio se torna ativo Adequado para descobrir características estatisticamente salientes n Podem classificar conjuntos de entradas Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado competitivo l Elementos básicos n n n l Conjunto de neurônios iguais (exceto por alguns pesos randomicamente distribuídos Limite no poder de cada neurônio Mecanismo que permita neurônios competirem pelo direito de responder a um dado subconjunto de entradas (Winner-takes-all) Neurônios individuais se especializam em conjuntos de padrões semelhantes Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado competitivo l Aprendizado competitivo mais simples Uma camada de neurônios completamente conectados a entrada (excitatória) n Conexões laterais entre neurônios (inibitórias) n åw 2 ik (t) = 1 (para cada neurônio) n l Modelo matemático: n Dwik(t) = h (xi(t) - wik(t)) Redes Neurais - Teresa Ludermir Cin - UFPE (vencedor)
Aprendizado supervisionado l Professor externo n Possui conhecimento sobre ambiente ŸRepresentado por conjunto de pares (x, d) ŸGeralmente, a rede não possui informações prévias sobre ambiente Parâmetros da rede são ajustados por (x, d) n Rede procura emular professor n Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado por reforço l Crítico externo Processo de tentativa e erro n Procura maximizar sinal de reforço n l Se ação tomada por sistema é seguida por estado satisfatório, sistema é fortalecido, caso contrário, sistema é enfraquecido (lei de Thorndike) Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado por reforço l Tipos de reforço Positivo = recompensa n Negativo = punição n Nulo n Redes Neurais - Teresa Ludermir Cin - UFPE
Supervisionado X Reforço Redes Neurais - Teresa Ludermir Cin - UFPE
Aprendizado não supervisionado l l Não tem crítico ou professor externo Extração de características estatisticamente relevantes n l Cria classes automaticamente Aprendizado não supervisionado X supervisionado n n Problema de escala Rede modular Redes Neurais - Teresa Ludermir Cin - UFPE
Tarefas de aprendizado Escolha do procedimento de aprendizado é influenciada pela tarefa a ser realizada pela rede Redes Neurais - Teresa Ludermir Cin - UFPE
Principais tarefas de aprendizado Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais - Teresa Ludermir Cin - UFPE
Redes Neurais - Teresa Ludermir Cin - UFPE