uma rede neural para o reconhecimento de números binários

16
Uma Rede Neural para o Reconheci- mento de Números Binários Alander Pereira dos Santos Objetivo Problema Projeto Exemplo da Aplicação Conclusões Referências Agradecimentos Uma Rede Neural para o Reconhecimento de Números Binários CCM102 - Inteligência Artificial Alander Pereira dos Santos Universidade Federal do ABC Centro de Matemática, Computação e Cognição

Upload: alander-pereira-dos-santos

Post on 19-Jul-2015

392 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Uma Rede Neural para oReconhecimento de Números Binários

CCM102 - Inteligência Artificial

Alander Pereira dos Santos

Universidade Federal do ABCCentro de Matemática, Computação e Cognição

Page 2: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Objetivo

Projetar e implementar um sistema de IA que:Seja completo e útilAbordagem inerente às técnicas estudadas em sala deaula

Análise teórica do modelo escolhido

Page 3: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Definição e exemplos

Dado um nibble como padrão de entrada, treinar umarede neural para que reconheça este padrão e ourecupere a informação que estiver corrompida.

Figura : 1 entrada: padrão para o treinamento; processamento: padrão para associação; saída: padrãoassociado

Algumas aplicações:Armazenamento e recuperação de imagensCódigos de Correção de Erros

Hamming e Reed-Solomon

Page 4: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Arquitetura, projeto e ténicas I

Uso da linguagem Java para o desenvolvimento daaplicação

Configurada nos padrões de uma Applet Java

Hopfield [Heaton, 2008] como arquitetura de redeneural

Rede com realimentação e comportamento dinâmicoRede não supervisionada

Neunônio segue o modelo McCulloch-PittsMemória Associativa

Capacidade de recuperar informações memorizadas,mesmo com informação inicial incompleta ou corrompida

Page 5: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Arquitetura, projeto e ténicas II

Modelo de classes representando o projeto da aplicação:

Figura : 2 Diagrama de classes

Page 6: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Arquitetura, projeto e ténicas III

Características da rede:

Figura : 3 Neurônio de McCulloch-Pitts

O limiar da rede é calculádo através da função deHeaveside

função de escala: Θ(x) = 1 se x ≥ 0 e Θ(x) = 0 casocontráriosaída em binário

Normalização da rede segue uma função sigmoidalonde sng(x) = 1 se z > 0 e sng(x) = −1 se z ≤ 0.

Page 7: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Arquitetura, projeto e ténicas IV

Regra de aprendizagem para o peso wij para umpadrão : wij = xixj

caso para um único padrão de aprendizadopara mais de um padrão é utilizada a Regra de HebbGeneralizada

Função de Relaxação ou minimização de energiapesos entre neurônios são simétricos: wij = wji

define-se um peso nulo da realimentação de cadaneurônio i.e. wii = 0

A função de relaxação sempre garante que a rederelaxa para um estado estávelA rede tem a capacidade de generalizar para novospadrões

o valor inverso do padrão de treinamento

Page 8: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Arquitetura, projeto e ténicas V

Execução da rede:

A rede recebe como parâmetro de entrada as linhasda matriz de pesos

Cada linha é atribuída a um dos quatro neurônios

A função de ativação da rede recebe comoparâmetro o valor do padrão a ser encontrado

A saída é um sequência de um nibble representando opadrão encontrado ou um valor desconhecido.

Page 9: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Aplicação em java que implementa redeneural de Hopfield I

Treinamento da rede

Figura : 4Treinamento da rede

Page 10: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Aplicação em java que implementa redeneural de Hopfield II

Testando com o padrão 1001

Figura : 5Executando a rede com o padrão 1001

Page 11: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Aplicação em java que implementa redeneural de Hopfield III

Testando com o padrão 1000

Figura : 6Executando a rede com o padrão 1000

Page 12: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Aplicação em java que implementa redeneural de Hopfield IV

Testando com o padrão 0101

Figura : 7Executando a rede com o padrão 0101

Page 13: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Aplicação em java que implementa redeneural de Hopfield V

Testando com o padrão 0110

Figura : 8Executando a rede com o padrão 0110. Padrão encontrado generalizado

Page 14: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Modelo relativamente fácil de implementação, tantoem software quanto em hardwareO modelo reconhece padrões previamente treinadosO modelo consegue generalizar para novos problemas

Page 15: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Introduction to Neural Networks for Java, 2ed, HeatonResearch, Inc. Outubro, 2008

Page 16: Uma Rede Neural para o Reconhecimento de Números Binários

Uma RedeNeural para oReconheci-mento deNúmerosBinários

Alander Pereirados Santos

Objetivo

Problema

Projeto

Exemplo daAplicação

Conclusões

Referências

Agradecimentos

Obrigado! Voltar