Adaline ta distância entre saída e resposta desejada

Slides:



Advertisements
Apresentações semelhantes
REDES AUTO-ORGANIZAVEIS (MAPAS AUTO-ORGANIZÁVEIS)
Advertisements

Redes Neurais Artificiais (RNA): Introdução
Redes Neurais Artificiais (RNA): Perceptron
Redes Neurais Artificiais (RNA): Aprendizado
Aspectos de Implementação do Algoritmo Backpropagation
Mineração de Dados Avaliação de Classificadores
REDES NEURONAIS ARTIFICIAIS (RNAs) Universidade do Minho.
PERCEPTRON (CONTINUAÇÃO)
AULA06-exercícios MLP.
Adaptive Resonance Theory Carpenter & Grossberg
Backpropagation Through Time
AULA 03 PERCEPTRON SIMPLES.
AULA04 PERCEPTRON MULTI-CAMADAS MULTI-LAYER PERCEPTRON (MLP)
Neurônio .3.
Prof. Júlio Cesar Nievola PPGIA - PUCPR
Redes Neurais Artificiais
Prof. Júlio Cesar Nievola
Perceptrons e Multilayer Perceptrons
Redes de Hopfield Redes Neurais COPIN
Redes Neurais Artificial
Curso Introdução às Redes Neuronais Parte 2 Prof. Dr. rer.nat. Aldo von Wangenheim.
Aspectos da Implementação de Redes Neurais
Introdução à Inteligência Artificial Redes Neurais Artificiais Prof
Reconhecimento de Padrões Classificadores Lineares
Redes Neurais (Conceitos Fundamentais)
Inteligência Artificial
Inteligência Artificial
Redes Neurais prof. Luis Otavio Alvares
Rejane Sobrino Pinheiro Tania Guillén de Torres
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
Inteligência Artificial Redes Neurias
Previsão de consumos a curto prazo
Daniela Justiniano de Sousa
Introdução O que é computação?.
Otimização Prof. Benedito C. Silva IRN UNIFEI
Aprendizado Baseado em Instâncias – Algoritmo k-NN
A Hybrid Method for Robust Car Plate Character Recognition.
Redes Neurais Prof. Alex F. V. Machado.
Aprendizado de Máquina
Redes neurais artificiais
Introdução e Busca Cega
Redes Neuronais/Neurais/ Conexionistas Introdução
Redes Neurais Artificiais
Inteligência Artificial: Uma Abordagem de Aprendizado de Máquina
Extração de Regras de RNA Wilian Soares Lacerda Fevereiro de 2003.
RNA – Radial Basis Function
(OU) Hardware da Rede Implementacao da rede
Interpolação e Ajuste de Curvas
Redes Neurais Artificiais. Introdução RNA são modelos matemáticos que se assemelham às estruturas neurais biológicas Capacidade computacional adquirida.
José Reinaldo Lemes Júnior Orientador: Prof. Wilian Soares Lacerda.
Uma Introdução a SVM Support Vector Machines
Prof. Anne Magály de Paula Canuto
Implementação de uma arquitetura de Redes Neurais MLP utilizando FPGA
Regressão e Previsão Numérica.
Márcio Leal de Melo Dahia1 Aprendizado baseado em instâncias.
Redes Neurais Artificial
Luana Bezerra Batista Redes Neurais Luana Bezerra Batista
Revisão de Sistemas Inteligentes
Redes Neurais Artificiais
O Que São as Redes Neurais Artificiais
DAS MSPO Eduardo Camponogara
Inteligência Artificial
Detecção de tráfego Skype na Web através de Redes Neurais Artigo Original: Freire, P. E., Ziviani, A., and Salles, R. M. (2008). Detecting skype flows.
Objetivo Este projeto destina-se ao estudo e à elaboração de modelos neurais artificiais, com o auxílio do programa Matlab. O objetivo principal deste.
1 Projeto Híbrido de Redes Neurais Ricardo Bastos C. Prudêncio Orientação: Teresa B. Ludermir CIn - UFPE Jan
Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 12 Aprendizado não Supervisionado Mapas auto-organizáveis Max Pereira.
Transcrição da apresentação:

Adaline ta distância entre saída e resposta desejada  Perceptron: ajuste de pesos não leva em con- ta distância entre saída e resposta desejada  Rede Adaline (ADAptive LINEar)  Proposta pôr Widrow e Hoff em 1960  Função de ativação é linear  Mais usada em problemas de regressão 21/11/11 Redes Neurais - André Ponce de Leon F. de 61

Adaline  Termo θ é considerado também (w0 = θ )  Estado de ativação  1 = ativo  0 = inativo (ou -1)  Função de ativação linear  f (u) = u = ∑ i=0:d xiwi  Termo θ é considerado também (w0 = θ ) a 21/11/11 Redes Neurais - André Ponce de Leon F. de 62

Adaline à origem do sistema de coordenadas f(x) = ∑ i=0:n xiwi = w .x  corresponde a um grau de liberdade a mais  Deslocamento da função de ativação em relação à origem do sistema de coordenadas  Em Perceptron era limiar de ativação do neurônio f(x) = ∑ i=0:n xiwi = w .x Para uma Adaline de d entradas a saída f(x) é: f(x) = w0 + w1x1 + w2x2 + ... + wdxd

Adaline linear das entradas xi x w1 y x2 w2 xd wd treinamento  Logo, saída corresponde a uma combinação linear das entradas xi  Pesos da combinação obtidos por meio de treinamento y = w0 + w1x1 + w2x2 + ... + wdxd x0 = +1 w0 =θ x w1 y x2 w2 . xd wd 1 .

 Correção de erro (regra Delta) Adaline  Treinamento  Supervisionado  Correção de erro (regra Delta)  Δwi = η xi(yd - y) (yd ≠y)  Δwi = 0 (yd = y)  Reajuste gradual do peso  Leva em conta distância entre saída e resposta desejada 21/11/11 Redes Neurais - André Ponce de Leon F. de 65

 Seja um par de treinamento (x, yd) Aprendizado  Seja um par de treinamento (x, yd)  Erro quadrático: e2 = (yd – w.x)2  e2 = (yd)2 –2ydw.x + (w.x)2  Encontrar o w que leve a menor e2  Superfície de erro  Na realidade deseja-se encontrar o mínimo da superfície correspondente à soma das superfícies de erro de todos os dados de treinamento

Aprendizado J = ½ ∑ i=1:n(ydi – w.xi)2  Para o conjunto de treinamento com n dados  Função de erro (custo): J = ½ ∑ i=1:n(ydi – w.xi)2 Algoritmo de treinamento deve atualizar os pesos visando atingir o mínimo de J

Aprendizado  Dada uma condição inicial w(0), qual a direção do ajuste a ser aplicado para que w se aproxime do mínimo de J?  Pelo gradiente da função de custo no ponto  Gradiente possui a mesma direção da maior variação de erro ajuste deve ser na direção contrária Δw(t)α-J

Aprendizado  Gradiente

Aprendizado modificado w(t+1) = w(t) + η e x(t)  η = taxa de aprendizado  Define velocidade com que o vetor de pesos é modificado  Equação de ajuste: w(t+1) = w(t) + η e x(t)

Algoritmo de treinamento Algoritmo de treinamento de RNA Adaline Entrada: Conjunto de treinamento D = {(x ,y ), i = 1,...n} i i Saída: Rede Perceptron com pesos ajustados Iniciar pesos da rede com valores baixos repita para cada x faça i Calcular valor da saída produzida pela rede f(x ) i erro e = y - f(x ) i i se e > então Ajustar pesos do neurônio w(t+1) = w(t) + ex(t) até que erro < 21/11/11 Redes Neurais - André Ponce de Leon F. de 71

Algoritmo de teste Uso da RNA treinada  Algoritmo de teste de RNA Adaline Entrada: Exemplo de teste x e RNA dos Saída: previsão para x Adaline com pesos ajusta- Apresentar x à entrada da RNA Calcular a saída f(x) Retorne f(x) 21/11/11 Redes Neurais - André Ponce de Leon F. de 72

Problemas com redes de uma única camada  Redes de uma camada geram apenas fronteiras lineares  Grande número de aplicações importantes são não lineares  Exemplo: XOR

Problemas com Perceptron Ex. XOR 0, 0 0 0, 1 1 1, 0 1 1, 1 0 1

Problemas com Perceptron  Solução: utilizar mais de uma camada  Camada 1: uma rede Perceptron para cada grupo de entradas linearmente separáveis  Camada 2: uma rede combina as saídas das redes da primeira camada, produzindo a classificação final  Como treinar?

Problemas com Perceptron 1 3 2

Rede multicamadas Perceptron simples e Adaline  Modelo de rede mais popular  Resolvem problemas mais complexos do que o Perceptron simples e Adaline  Possuem uma ou mais camadas intermediárias  Funções de ativação não-lineares em pelo menos uma das camadas intermediárias  Sempre vai existir uma rede com uma camada equivalen- te a uma multicamadas com funções de ativação lineares  Transformações não-lineares sucessivas

 Grande Funcionalidade Rede multicamadas  Grande Funcionalidade  Uma camada intermediária aproxima:  Qualquer função contínua ou Booleana  Duas camadas intermediárias aproximam:  Qualquer função  Qualidade da aproximação depende da complexidade da rede  Usar muitas camadas e/ou neurônios  Risco de overfitting!

 Função de ativação Sigmoide ou Tangente Hiperbólica Perceptron multicamadas  MLP – Multilayer Perceptron  Uma ou mais camadas intermediárias de neurônios  Função de ativação Sigmoide ou Tangente Hiperbólica  Arquitetura mais comum: completamente conectada  Cada neurônio realiza uma função específica  Função implementada é uma combinação das funções realiza- das pelos neurônios da camada anterior conectados a ele Termo θ usado para desvio da função em relação à origem Todos neurônios vão ter um w0 = θ (ou - θ ) com entrada fixa -1 (ou +1)

Perceptron multicamadas

MLPs  Função implementada por cada neurônio mais complexas  Formada pela combinação das funções implementadas por neurônios da camada anterior  Camada 1: hiperplanos no espaço de entradas  Camada 2: regiões convexas  Número de lados = número de unidades na camada anterior  Camada 3: Combinações de figuras convexas, produzindo formatos abstratos  Número de figuras convexas = número de unidades da camada anterior mais complexas Funções cada vez

MLPs Combinação das funções desempenha das por cada neurônio define a função associada à RNA

MLPs dos rótulos presentes tangente hiperbólica  Camada de saída: um neurônio para cada um dos rótulos presentes  Classificação: função de ativação Sigmoide ou tangente hiperbólica  Regressão: função de ativação linear Saída para um objeto x: y = [y , y , ..., y ]t, k = número de rótulos Classificação: vetor y para cada objeto de entrada tem valor 1 na posição associada à classe do objeto e 0 nas demais posições 1 2 k

MLPs dos neurônios e vetor de valores desejados  Treinamento por correção de erros  Camada de saída: comparação entre vetor de saída dos neurônios e vetor de valores desejados  Classificação: rede classifica objeto corretamente quando a saída mais elevada é a do neurônio correspondente à classe correta do exemplo  Se valores são baixos ou mais de um neurônio dá valor de saída alto, a rede não tem condições de prever  Camadas intermediárias: Qual a saída desejada de uma camada itermediária?  Algoritmo Backpropagation (retropropagação de erros)

MLPs que elas causam no erro da camada de saída intermediárias  Algoritmo Backpropagation  Estimar o erro das camadas intermediárias por efeito que elas causam no erro da camada de saída  Erro da saída é retroalimentado para as camadas intermediárias  Requer funções de ativação contínuas e diferenciáveis  Regra Delta generalizada

Backpropagation  Treinamento: iteração de duas fases Sinal (forward)  Cada fase percorre a rede em dois sentidos Sinal (forward) Erro (backward)

 Treinamento: iteração de duas fases Backpropagation  Treinamento: iteração de duas fases Fase Forward Fase backward “Para frente” “Para trás” Cada objeto de entrada é Erro de cada neurônio da Neurônios são percorridos usados para ajustar seus intermediária até a saída Ajuste prossegue até a comparados aos intermediária desejados camada de saída é apresentado à rede pesos de entrada da primeira camada primeira camada Valores de saída são

Rede MLP camadas intermediárias camada de entrada conexões camada de saída 21/11/11 Sistemas Inteligentes - André Ponce de Leon 88

Back-propagation André Ponce de Leon de Carvalho 100

Back-propagation contribuição de cada peso no erro da rede  Treinamento  Derivada parcial define ajuste dos pesos: mede contribuição de cada peso no erro da rede  Derivada positiva peso está provocando aumento na diferença entre a saída produzida e a desejada  Sua magnitude deve ser reduzida para baixar o erro  Derivada negativa peso está contribuindo para que saída produzida seja mais próxima da desejada  Seu valor deve ser aumentado André Ponce de Leon de Carvalho 101

para cada par de treinamento (x, y) Algoritmo Back-propagation Iniciar todas as conexões com valores aleatórios Repita para cada par de treinamento (x, y) para cada camada i := 1 a N para cada neurônio j := 1 a Mi Calcular a saída f (x) erro = y - f (x) para cada camada i := N a 1 para cada neurônio j:= 1 a Mi Atualizar pesos até que erro < (ou número máximo de ciclos) ij ij André Ponce de Leon de Carvalho 102

Treinamento André Ponce de Leon de Carvalho 103

Treinamento André Ponce de Leon de Carvalho 104

Treinamento André Ponce de Leon de Carvalho 105

Treinamento André Ponce de Leon de Carvalho 106

Treinamento André Ponce de Leon de Carvalho 107

Teste Algoritmo de teste de RNA MLP Apresentar dado x a ser reconhecido para cada camada i := 1 a N para cada neurônio j := 1 a Mi Calcular a saída f (x) Se classificação: discretizar a saída (verifica o maior valor produzido; se valores forem baixos ou muito próximos, rejeitar) ij

Termo momentum atualização dos pesos ao atual  Para reduzir influência da escolha do valor de η  Adiciona uma fração α do valor anterior de atualização dos pesos ao atual  Quantifica grau de importância da variação do ciclo anterior  Quando o gradiente se mantém apontando na mesma direção, o tamanho dos passos na direção do mínimo crescerá  Atenção: se ambos η e α forem muito grandes, há o risco de passar pelo mínimo

Termo momentum Caminho seguido utilizando momento Solução original de convergência (lenta convergência (lenta)

Variações objeto individualmente única vez para cada ciclo  Versão padrão: ajuste de pesos para cada objeto individualmente  Variação batch: pesos são ajustados uma única vez para cada ciclo

Variações solução complexas Utilizando termo de momentum  Mínimos locais: solução estável que não é a melhor solução  Incidência pode ser reduzida  Empregando taxa de aprendizado decrescente  Adicionando nós intermediários Utilizando termo de momentum  Backpropagation é muito lento em superfícies complexas  Utilizar métodos de segunda ordem  Outros algoritmos  Ex.: RPROP, Newton, etc.

Critérios de parada validação cada l ciclos começa a aumentar  Diferentes critérios podem ser usados:  Número máximo de ciclos  Taxa máxima de erro  Early stop: estratégia para evitar overfitting  Separa parte dos dados de treinamento para validação  Dados de validação são apresentados à rede a cada l ciclos  Treinamento é finalizado quando erro em validação começa a aumentar

Critérios de parada  Early stop

Convergência do algoritmo  Superfície de erro apresenta mínimos locais e global para problemas complexos  Objetivo é atingir mínimo global  Não há teorema de convergência  Rede pode convergir para mínimo local ou demorar muito para encontrar solução adequada

Projeto da arquitetura de RNA  Escolhas de função de ativação e topologia da rede  Número de camadas e neurônios, padrão das conexões  Geralmente empíricas (tentativa e erro)  Problema de busca

Projeto da arquitetura de RNA Empírica Meta-heurística  Abordagens: Empírica Meta-heurística Busca cega, tentativa e erro Gera conjunto de variações testadas e comparadas que apresentam melhores Mais utilizada, mas com Geralmente usa Algoritmos Algumas heurísticas: testar variações intermediária, pois já tem bastante poder expressivo de RNAs e combina as Diversas arquiteturas são resultados elevado custo de tempo Genéticos na busca e apenas uma camada Grande custo computacional

Projeto da arquitetura de RNA  Abordagens: Poda (pruning) Construtiva Começa com uma RNA com Gradualmente insere novos neurônios uma RNA inicialmente neurônios redundantes ou rios irrelevantes neurônios e conexões a um grande número de sem neurônios intermediá- Poda remove conexões ou

Observações dos valores de peso Atributos devem ser numéricos  Categóricos devem ser pré-processados É necessário normalizar os dados Similar a k-NN  Relacionado também a ter crescimento muito grande dos valores de peso

Vantagens RNAs práticos (principalmente percepção e controle)  Várias soluções de sucesso em problemas práticos (principalmente percepção e controle)  Tolerância a falhas e ruídos

Desvantagens RNAs cérebro (caixas-pretas)  Capacidade preditiva ainda está aquém à do cérebro  Dificuldade de interpretação do modelo gerado (caixas-pretas)  Escolha de melhor conjunto de parâmetros

Referências  Slides de:  Prof Dr André C. P. L. F. de Carvalho  Prof Dr Ricardo Campello  Prof Dr Marcilio Carlos Pereira de Souto  Livro: A. P. Braga, A. C. P. L. F. Carvalho, T. B. Ludermir, Redes Neurais Artificiais: teoria e aplicações, 2007, Ed LTC A