Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Introdução às Redes Neurais Artificiais DCA0121 – Inteligência Artificial Aplicada Heitor Medeiros 1 Tópicos da aula Introdução às Redes Neurais Artificiais Modelo do Neurônio Artificial de McCulloch&Pitts Arquiteturas de RNA 2 Redes Neurais Artificiais 3 Motivação • Máquinas que possam imitar o cérebro. • O cérebro é responsável por processar informações sensoriais e controlar o comportamento do corpo. – Processar imagens (visão) – Processar sons (audição e fala) – Processar sinais de contato (tato) ... 4 Motivação Máquina do Cérebro Processamento de Imagens (Visão) Algoritmo de Aprendizagem: Visão Processamento de Sons (Audição) Algoritmo de Aprendizagem: Audição Processamento de Sons (Fala) Algoritmo de Aprendizagem: Fala ??? ... 5 Motivação Máquina do Cérebro Máquina do Cérebro Algoritmo de Aprendizagem: Visão Algoritmo de Aprendizagem: Audição Visão Audição Um Único Algoritmo de Aprendizagem ... Algoritmo de Aprendizagem: Fala ... 6 Motivação • O cérebro é formado por bilhões de neurônios interconectados. • A interconexão aprendizagem. garante o processo de 7 O Neurônio • Estrutura do Neurônio: Corpo celular Dendritos (conexões de entrada) Axônio (conexão de saída) Terminais sinápticos Neurônio: Unidade computacional recebe entradas, realiza um cálculo e processa uma saída. 8 O Neurônio Artificial • O neurônio artificial é modelado como uma unidade computacional conforme mostrado abaixo. E1 E2 Unidade de Processamento Saída E3 ... 9 Rede de Neurônios Artificiais • Uma Rede Neural Artificial é um conjunto de neurônios artificiais interconectados para gerar uma ou mais saídas a partir de uma ou mais entradas. 10 Aplicações com Redes Neurais Artificiais (RNA) 11 Reconhecimento de Objetos: Carro 12 Reconhecimento de Caracteres: Placas de Automóveis 13 Reconhecimento de Faces 14 Reconhecimento de Caracteres: Formulários 15 Classificação do Sexo do Caranguejo • Classificação do sexo do caranguejo a partir de seis dados de características físicas do caranguejo. Características físicas do caranguejo Sexo do caranguejo 16 Outros exemplos de Classificação de Padrões • Diagnóstico de Câncer de Próstata: Uma corporação de Ciências criou uma rede a qual pode predizer o câncer de próstata. As redes foram treinadas para predizer resultados baseados em teste de PSA ("Prostate Specific Antigen") e para predizer a recorrência de câncer depois do tratamento. • Predição de permanência de paciente na UTI: Um grupo da Escola de Medicina da Universidade Johns Hopkins desenvolveu uma rede neural para prever quais pacientes na Unidade de Tratamento Intensivo (UTI) cirúrgico do Hospital iriam permanecer sete ou mais dias. As entradas da rede incluíam idade, o uso de droga ou outras terapias, e sinais fisiológicos tais como taxa cardíaca e pressão sanguínea, e resultados de laboratório tais como contagens de células brancas. 17 Outros exemplos de Classificação de Padrões • Determinando significância de drogas: O grupo de pesquisa da "Zeneca Pharmaceuticals" em Wilmington desenvolveu uma aplicação de rede neural para examinar dados de experimentos com drogas os quais reduzem o tempo de análise em até 68%. A rede neural foi treinada para detectar "bons" picos de pressão da bexiga de centenas de picos em arquivos de dados. Estes picos são críticos para determinar a significância da droga em experimentos desenhados como "screening" de mais compostos de droga. Os pesquisadores previamente usaram o método do papel e o lápis para analisar estes picos, um método que levou 40 horas por mês. Usando redes neurais, reduziu o tempo de análise para 13 horas por mês. 18 Controle de Processos Utilizando Redes Neurais 19 Por que escolher as Redes Neurais? • Uma ferramenta eficiente para classificação de padrões NÃO LINEARES. • A maioria dos fenômenos do mundo real são de natureza não linear. 20 Por que escolher as Redes Neurais? • As redes neurais artificiais, conhecidas também como processadores maciçamente paralelamente distribuídos, se assemelham ao cérebro pela capacidade de adquirir o conhecimento através de um processo de aprendizagem e de armazenamento do conhecimento através de forças de conexão entre neurônios, também chamadas de pesos sinápticos [Haykin 2001]. 21 Por que escolher as Redes Neurais? • Generalização das informações. • Não linearidade. • Mapeamento entrada/saída. • Adaptabilidade. • Tolerância a falhas. 22 Por que escolher as Redes Neurais? • Não linearidade: Se existir pelo menos um neurônio não linear, a rede pode mapear uma função não linear. • Mapeamento entrada/saída. A rede pode funcionar como um gerador de função genérica. 23 Por que escolher as Redes Neurais? • Adaptabilidade: Aprendizado pode ser alterado através de um novo treinamento. A rede é adaptável a novas situações. • Tolerância a falhas: Um dano em um neurônio não causa uma falha da rede. 24 Modelo Computacional do Neurônio Artificial 25 Modelo do Neurônio Artificial • A simulação do comportamento de um neurônio biológico só foi possível a partir da criação do modelo computacional de um neurônio apresentado por Warren McCulloch e Walter Pitts em 1943. 26 Modelo do Neurônio Artificial: McCulloch&Pitts • Modelo de Neurônio Artificial de McCulloch&Pitts: 27 Modelo do Neurônio Artificial: McCulloch&Pitts X1 W1 X2 W2 Xn ... 𝑋∗𝑊 u f(.) y = f(u) Wn 28 Modelo do Neurônio Artificial: McCulloch&Pitts • Potencial de ativação (𝑢), função de ativação [𝑓(𝑢)] e saída do neurônio (𝑦). 𝑛 𝑢= 𝑤𝑖 ∗ 𝑥𝑖 𝑖=1 𝑦 = 𝑔(𝑢) • Funcionamento do neurônio: 1. 2. Coleta dos valores de entrada (estímulos). Multiplicação dos estímulos pelos pesos sinápticos das ligações. Obs.: Os pesos sinápticos precisam de um estímulo para ativar o neurônio. 3. 4. Obtenção do potencial de ativação a partir do somatório de todas as entradas do neurônio. Geração da saído do neurônio a partir da aplicação de uma função de ativação. 29 Funções de Ativação • Como o objetivo da função de ativação é ativar ou não uma saída, a função degrau é um boa opção. Degrau unipolar 𝑔 𝑢 = 0, 𝑢 < 0 1, 𝑢 ≥ 0 Degrau bipolar 𝑔 𝑢 = −1, 𝑢 < 0 1, 𝑢 ≥ 0 30 Funções de Ativação: Degrau • Analisando a derivada da função degrau: • Devido ao uso de algoritmos de treinamento da rede (próximas aulas!) baseados em correção por erro, funções descontínuas podem gerar resultados ineficientes. 31 Funções de Ativação: Funções totalmente diferenciáveis • Utilização de funções totalmente diferenciáveis nas funções de ativação. • Função Sigmoide: 𝑔 𝑢 = 𝒈 𝒖 1 1+exp −𝑢 𝒅 𝒈 𝒖 𝒅𝒖 32 Funções de Ativação: Funções totalmente diferenciáveis • Função tangente hiperbólica: 𝒈 𝒖 𝑔 𝑢 = 1−exp(−𝑢) 1+exp −𝑢 𝒅 𝒈 𝒖 𝒅𝒖 33 Funções de Ativação: Funções totalmente diferenciáveis • Função linear: 𝑔 𝑢 =𝑢 𝒈 𝒖 • Não apresenta a curva suave como as funções sigmoide e tangente hiperbólica. 34 Arquiteturas de Redes Neurais Distribuição dos Neurônios Artificiais 35 Arquiteturas de RNA • Os neurônios são distribuídos de forma paralela e separados por camadas. 36 Arquiteturas de RNA Arquiteturas de RNA Redes diretas (feedforward) de camada simples Redes feedforward de camadas múltiplas Redes recorrente ou realimentada 37 Arquiteturas de RNA Arquiteturas de RNA Redes feedforward de camada simples Redes feedforward de camadas múltiplas Redes recorrente ou realimentada Principais redes: Principais redes: • Perceptron • Adaline • Perceptron de multicamadas (MLP) • RBF Obs.: primeiras redes. 38 Revisando • Características das Redes Neurais Artificiais. – Não linearidade, generalização, mapeamento entrada/saída, adaptabilidade e tolerância a falhas. • Modelo de Neurônio Artificial [McCulloch&Pitts]. – Combinação linear: sinais de entrada (estímulos) e pesos sinápticos. – Função de ativação. • Tipos de funções de ativação. • Arquiteturas de Redes Neurais. 39 Referências 1. Haykin, Simon S. Redes neurais artificiais: princípio e prática. 2ª ed. São Paulo: Bookman, 2000. 2. Da Silva, Ivan Nunes; Spatti, Danilo Hernane; Flauzino, Rogério Andrade. Redes Neurais Artificiais para engenharia e ciências aplicadas curso prático. São Paulo: Artliber, 2010. 40 Dúvidas? Dúvidas por email: [email protected] 41