UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Redes Neurais Artificiais Prof. Dr. Hugo Valadares Siqueira Semana de Eletrônica e Automação 2014 UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Redes Neurais Artificiais • “Uma rede neural artificial é um circuito composto por uma grande quantidade de unidades simples de processamento inspiradas no sistema neural.” (Nigrin, 1993) • “Uma RNA é um sistema massivamente paralelo e distribuído, composto por unidades de processamento simples que possuem uma capacidade natural de armazenar e utilizar conhecimento.” (Haykin, 1999) UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Redes Neurais Artificiais • Sistemas de processamento da informação paralelos e distribuídos; • Compostas por neurônios artificiais; • Estes são unidades funcionais de processamento simples e com elevado grau de interconexão; • Geram comportamentos complexos que não pode ser previstos observando-se cada neurônio individualmente. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Inspiração Biológica • A inspiração: proveniente do funcionamento do sistema nervoso e do cérebro; • característica marcante: a capacidade de aprendizagem; • A aprendizagem se dá pelo histórico experimental ao qual a rede é exposta. • Ex: tocar um objeto quente, virar na rua certa, resolver uma integral, ser craque no video-game, etc. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Inspiração Biológica O que é o cérebro? Emaranhado de células interconectadas – os neurônios – que comunicam-se através das sinapses; O que faz o cérebro? • o cérebro não “roda programas”; • o cérebro controla o comportamento visando garantir a sobrevivência; Funcionalidade do cérebro: • adaptabilidade por intermédio de aprendizado • comportamento sensível ao contexto • tolerância a erro • capacidade de operar com conhecimento parcial • grande capacidade de memória • capacidade de processamento paralelo e em tempo real UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Introdução e Motivação Funcionalidade do cérebro: O cérebro é capaz de perceber regularidades no meio e gerar abstrações que capturam a estrutura destas regularidades, possibilitando a predição de observações futuras e o planejamento de ações visando o atendimento de múltiplos objetivos. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Estrutura Básica do Sistema Nervoso (Visão da Engenharia): UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Áreas de aplicação • • • • • • • • • • • Engenharia Estatística teoria de informação álgebra linear sistemas dinâmicos lineares e não-lineares teoria da computação aproximação de funções processamento de sinais controle de processos otimização de sistemas Etc. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa RNAs - Fatos Históricos Marcantes • • • • MCCULLOCH & PITTS (1943) WIENER (1948): cibernética ROSEMBLATT (1958): perceptrons MINSKY & PAPPERT (1969): a disputa entre as portas lógicas e os neurônios artificiais para determinar a unidade básica de processamento. “Idade das Trevas”: entre 1969 e 1984 • WERBOS (1974): backpropagation • HOPFIELD (1982) • KOHONEN (1982) Renascimento: • RUMELHART & MCCLELLAND (1986) UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Neurônio - Célula especializada em transmitir PULSOS ELÉTRICOS; - Na aprendizagem, a eficiência da propagação do sinal de um neurônio para outro pode ser MODULADA!!! UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Neurônios Artificiais • A plasticidade sináptica, ou seja, a capacidade das sinapses sofrerem modificações, é o ingrediente chave para o aprendizado da maioria das RNAs. • Os neurônios podem receber e enviar sinais de/para vários outros neurônios. Um neurônio pode ser visto como um dispositivo capaz de receber estímulos (de entrada) de diversos outros neurônios e propagar sua única saída, função dos estímulos recebidos e do estado interno, a vários outros neurônios. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Modelos de Neurônios Artificiais • Matematicamente, a saída do neurônio k pode ser descrita por: m yk f (uk ) f wkj x j b k j 1 • Existem vários tipos de função de ativação como, por exemplo, a função linear, a função degrau, as funções sigmoidais, e as funções de base radial. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Projeto de RNAs • A informação (sinais) é transmitida entre neurônios através de conexões ou sinapses; • A eficiência de uma sinapse, representada por um peso associado, corresponde à informação armazenada pelo neurônio e, portanto, pela rede neural • O conhecimento é adquirido do ambiente através de um processo de aprendizagem que é, basicamente, responsável por adaptar os pesos das conexões aos estímulos recebidos do ambiente. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Projeto de RNAs • A representação de conhecimento é feita de forma que o conhecimento necessariamente influencie a forma de processamento da rede, ou seja, o seu comportamento de entrada-saída. Se o conhecimento está armazenado nos pesos das conexões, então o processo de aprendizagem corresponde a identificar um conjunto apropriado de pesos de forma que a rede se comporte como desejado. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Projeto de RNAs ETAPAS DO PROJETO: 1. Uma definição ou escolha de um conjunto de neurônios artificiais; 2. A definição ou escolha de um padrão de conectividade entre os neurônios, ou seja, de uma arquitetura para a rede; 3. A definição de um método de determinação dos parâmetros livres da rede, denominado de algoritmo de aprendizagem ou treinamento. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Arquiteturas de Redes • Existem basicamente três camadas em uma rede neural artificial: 1. Uma camada de entrada, 2. uma ou mais camada intermediária, 3. uma camada de saída. Entretanto, nem todas as RNA’s possuem camadas intermediárias. • Existem, basicamente, três tipos principais de arquitetura em RNA’s: - redes feedforward de uma única camada; - redes feedforward de múltiplas camadas; - redes recorrentes. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Rede Feedforward com Uma Camada UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Rede Feedforward de Múltiplas Camadas UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Redes Recorrentes Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Paradigmas de Aprendizagem Existem basicamente três paradigmas de aprendizado: 1- Aprendizado supervisionado: é baseado em um conjunto de exemplos de estímulo/resposta (ou entrada-saída); 2- Aprendizado por reforço: o comportamento da rede é avaliado apenas com base em alguma critério numérico, fornecido em instantes espaçados de tempo; 3- Aprendizado não-supervisionado: é baseado apenas nos estímulos recebidos pela rede neural. Basicamente, a rede deve aprender a “categorizar” os estímulos. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Aprendizagem Supervisionada • O critério mais utilizado é o de erro quadrático médio 1 m 2 J E e j (t ) m j 1 Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Separação das amostras • Treinamento: ajustar os valores dos pesos sinápticos • Validação: garantir a melhor generalização • Teste: validar o resultado de saída obtido por meio de métricas de erro. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Exemplo Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Exemplo Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Perceptron de Múltiplas Camadas (MLP) • Uma rede MLP típica possui como características principais: 1. Os neurônios das camadas intermediárias possuem uma função de ativação não-linear do tipo sigmoidal; 2. A rede possui uma ou mais camadas intermediárias; 3. A rede possui um alto grau de conectividade; 4. Ferramenta prática geral para fazer um mapeamento não-linear de entrada-saída; 5. Aproximadores universais; 6. Capacidade de generalização. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Perceptron de Múltiplas Camadas (MLP) UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Treinamento da MLP • Ajuste do valor dos pesos w; • Método mais usado: backpropagation; • Este algoritmo consiste basicamente de dois passos: 1- Propagação positiva do sinal funcional: durante este processo todos os pesos da rede são mantidos fixos; 2- Retropropagação do erro: durante este processo os pesos da rede são ajustados tendo por base uma medida de erro por base. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Aspectos Práticos do Treinamento de Redes MLP UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Técnicas de Otimização Aplicadas ao Treinamento de RNAs Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Validação Cruzada • Geralmente desejamos obter uma rede com a melhor capacidade de generalização possível; • Maior capacidade de responder corretamente a dados que não foram utilizados no processo de treinamento. • As arquiteturas convencionais (totalmente interconectadas) como a MLP estão sujeitas a sofrerem sobre-treinamento (overtraining). • Validação cruzada: utilizada para detectar quando a rede está sendo muito treinada maneira excessiva (overtraining); UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Validação Cruzada Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Máquinas Desorganizadas • Arquiteturas de Redes Neurais nas quais não há ajuste nos pesos da camada intermediária; • Processo de treinamento com solução analítica – cálculo dos coeficientes de um combinador linear; • Ajuste apenas da camada de saída; • Convergência rápida; • Máquinas de Aprendizado extremo – ELM (feedforward); • Redes de Estado de Eco - ESN (recursiva); • Desempenho computacional superior à MLP em aplicações com previsão de séries temporais e equalização de canais de comunicação. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Máquinas Desorganizadas • Nomenclatura recentemente cunhada por Boccato et al. (2012); • Remete aos trabalhos pioneiros de Alan Turin em 1968; • Inclui as Liquid State Machines; • A desorganização faz menção ao fato da camada intermediária não ser ajustada e mesmo assim ser possível atingir bons resultados de saída. Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Máquinas de Aprendizado Extremo (ELM) • Propostas por Huang et al. em 2004; • Capacidade de aproximação universal: erro pode ser sempre reduzido com a inserção de um novo neurônio na camada escondida; • Parâmetros fixos na camada intermediária; • A camada de saída é um combinador linear; • Processo de treinamento com solução determinística, com base num sinal de referência (supervisionado): W X h Ts N k out -1 T Xh Xh X Th d é a matriz de saídas da camada oculta UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Máquinas de Aprendizado Extremo (ELM) x ht f h ( W h u t b) y t W out x ht UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Redes Neurais de Estado de Eco (ESN) • • • • Propostas por H. Jaeger em 2001; Arquitetura de RNA recorrente – formação de memória; Viabiliza as RNNs com uma solução de compromisso; Reservatório de dinâmicas (camada intermediária) com parâmetros fixos; • Camada de saída treinada por um combinador linear; • Convergência rápida => eficiência computacional; Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Redes Neurais de Estado de Eco (ESN) x t 1 f ( W in u t 1 Wx t ) y t 1 W out x t 1 UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Câmpus Ponta Grossa Redes de Hopfield Recuperação de padrões armazenados na superfície de energia da rede UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Redes RBF • Funções de ativação de base radial; • Ajuste de centros e dispersões. Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Redes de Kohonen • Clusterização de dados; • Noção de vizinhança; • Mapas auto-organizáveis. Câmpus Ponta Grossa Câmpus Ponta Grossa UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Bibliografia Pagina da WEB: http//www.dca.fee.unicamp.br/~vonzuben; Von Zuben, F., Attux, R. R. F. (2007): “Curso de Redes Neurais Artificiais”, Faculdade de Engenharia Elétrica e de Computação, UNICAMP; Haykin, S. (1999): “Neural Networks: Foundation”, 2nd edition, Prentice Hall; A Comprehensive Boccato, L. (2013): Novas Propostas e Aplicações de Redes Neurais com Estados de Eco, Tese de Doutorado – UNICAMP Brasil. Siqueira, H. V. (2013): “Máquinas Desorganizadas para Previsão de Séries de Vazões”, Tese de Doutorado – UNICAMP - Brasil. Disponível em: pessoal.utfpr.edu.br/hugosiqueira