Inteligência Computacional
Renato Dourado MaiaFaculdade de Ciência e Tecnologia de Montes Claros
Fundação Educacional Montes Claros
INTRODUÇÃO ÀS REDES NEURAIS ARTIFICIAIS
24/08/15 Inteligência Computacional – Renato Dourado Maia 2/24
Na Aula Passada...
O que é uma Rede Neural
Artificial?
24/08/15 Inteligência Computacional – Renato Dourado Maia 3/24
Na Aula Passada...
Sinapse
Cérebro
Rede Neural
Neurônio
Redes Neurais – Panorama Geral.
24/08/15 Inteligência Computacional – Renato Dourado Maia 4/24
O que é uma Rede Neural Artificial?
• Uma Rede Neural Artificial (RNA) é um circuito com-posto por uma grande quantidade de unidades sim-ples de processamento inspiradas no sistema neu-ral.
• Uma RNA é um sistema massivamente paralelo e distribuído, composto por unidades de processa-mento simples que possuem uma capacidade natural de armazenar e utilizar conhecimento.
24/08/15 Inteligência Computacional – Renato Dourado Maia 5/24
O que é uma Rede Neural Artificial?
• Uma RNA pode ser definida como sendo uma estru-tura de processamento, ou rede, passível de imple-mentação em dispositivos eletrônicos, composta por um número de unidades interconectadas, os neurô-nios artificiais, sendo que cada unidade apresenta um comportamento específico de entrada/saída – ou computação local, determinado pela sua função de transferência, pelas interconexões com outras u-nidades, dentro de um raio de vizinhança, e, possi-velmente, pelas entradas externas.
24/08/15 Inteligência Computacional – Renato Dourado Maia 6/24
O que é uma Rede Neural Artificial?
• As RNA apresentam diversas características em co-mum com o sistema nervoso:– O processamento básico de informação ocorre em diver-
sas unidades simples – os neurônios (artificiais).– Os neurônios são interconectados gerando redes de neu-
rônios, ou redes neurais.– A informação é transmitida entre neurônios por intermé-
dio de conexões ou sinapses.
24/08/15 Inteligência Computacional – Renato Dourado Maia 7/24
O que é uma Rede Neural Artificial?
• As RNA apresentam diversas características em co-mum com o sistema nervoso:– A eficiência de uma sinapse, representada por um peso,
corresponde à informação armazenada pelo neurônio e, portanto, pela rede neural.
– O conhecimento é adquirido do ambiente por meio de um processo de aprendizagem que é responsável por, basica-mente, adaptar os pesos das conexões em função dos es-tímulos recebidos do ambiente.
24/08/15 Inteligência Computacional – Renato Dourado Maia 8/24
O que é uma Rede Neural Artificial?
• Uma característica importante das RNAs é o local no qual o conhecimento está armazenado: – Nos casos mais simples, esse conhecimento é armazenado
nos pesos das conexões entre neurônios. – Essa característica tem grandes implicações para a capaci-
dade de processamento e aprendizagem da rede: ✔ A representação de conhecimento é feita de forma que o conheci-
mento necessariamente influencie a forma de processamento da rede, ou seja, o seu comportamento de entrada-saída.
24/08/15 Inteligência Computacional – Renato Dourado Maia 9/24
O que é uma Rede Neural Artificial?
• Se o conhecimento está armazenado nos pesos das conexões, então o processo de aprendizagem corres-ponde a identificar um conjunto apropriado de pe-sos de forma que o comportamento da rede seja i-gual (próximo) daquele desejado.
• Essa característica possui duas implicações impor-tantes para as RNA: – A possibilidade de desenvolvimento de técnicas de apren-
dizagem; e – A representação distribuída de conhecimento.
24/08/15 Inteligência Computacional – Renato Dourado Maia 10/24
O que é uma Rede Neural Artificial?
• Há tipos de RNA cujo treinamento é mais complica-do do que a simples determinação de pesos sinápti-cos apropriados, podendo envolver:– Uma definição ou escolha de um conjunto de neurônios
artificiais.– A definição ou escolha de um padrão de conectividade
entre os neurônios, ou seja, de uma arquitetura para a re-de.
– A definição de um método de determinação dos parâme-tros livres da rede, denominado algoritmo de aprendiza-gem ou treinamento.
24/08/15 Inteligência Computacional – Renato Dourado Maia 11/24
O Neurônio de McCulloch e Pitts
• O modelo mais clássico de neurônio em RNAs foi proposto por McCulloch e Pitts em 1943: eles assu-miram que o neurônio estaria executando uma fun-ção lógica (saídas valendo 0 ou 1).
• Esse trabalho, intitulado "Um cálculo lógico das i-deias intrínsecas da atividade neural“, é bastante fa-moso e exerceu grande influência na comunidade ci-entífica da época, representando a primeira tentati-va de entender a atividade neural tendo como base unidades elementares de computação.
24/08/15 Inteligência Computacional – Renato Dourado Maia 12/24
O Neurônio de McCulloch e Pitts
• McCulloch e Pitts consideraram a resposta neural co-mo sendo equivalente a uma proposição (se A então B) adequada para estimular o neurônio.
• Sendo assim, eles estudaram o comportamento de diversas redes neurais utilizando a notação simbólica da lógica das proposições: – A característica binária dos neurônios era suficiente para
garantir que a atividade de qualquer neurônio poderia ser expressa sob a ótica da lógica das proposições.
24/08/15 Inteligência Computacional – Renato Dourado Maia 13/24
O Neurônio de McCulloch e Pitts
• Embora com os conhecimentos atuais sobre os me-canismos físicos e químicos envolvidos na transmis-são de sinais no cérebro seja possível afirmar que ne-nhum tipo de lógica das proposições é realizada no cérebro, o neurônio de McCulloch e Pitts pode ser visto como um caso particular do neurônio genérico utilizado em RNA.
24/08/15 Inteligência Computacional – Renato Dourado Maia 14/24
Função deAtivação
JunçãoSomadora
SaídaΣ f (u)yux1
x2
u
f (u)
θO Neurônio de McCulloch e Pitts.A cada iteração, o neurônio responde às suas entradas sinápticas, que refletem o estado do neurô-nio pré-sináptico. Se nenhuma sinapse inibitória está ativa, o neurônio soma as suas entradas, ge-rando a entrada líquida u do neurônio. Se u é maior do que o limiar θ, o neurônio responde com um sinal de saída de valor 1; se não, o neurônio responde com um sinal de saída 0. Funções lógicas co-mo OR (OU) e AND (E) podem assim ser realizadas.
Será que a função lógica XOR (Ou-Exclusivo) pode ser realizada por esse neurônio?
24/08/15 Inteligência Computacional – Renato Dourado Maia 15/24
Função deAtivação
JunçãoSomadora
SaídaΣ f (uk )ykuk
x1
.
.
.
bk
w k1
w k2
w km
x2
xm
Limiar (Bias)
Neurônio Artificial Genérico.
yk= f (uk )= f (∑ j=1m w kj x j+ bk ) ou f (∑ j=0
m wkj x j) , com x0=1 e w k0=bk
Pesos dasConexões
24/08/15 Inteligência Computacional – Renato Dourado Maia 16/24
Arquiteturas de Rede
• Como os padrões de conexão entre os neurônios bi-ológicos são pouco conhecidos, a maioria das RNA utiliza arquiteturas padronizadas, projetadas especi-almente para resolver algumas classes de proble-mas.
• O processo de conexão entre neurônios artificiais le-va à geração de sinapses e à construção de redes neurais artificiais.
24/08/15 Inteligência Computacional – Renato Dourado Maia 17/24
Arquiteturas de Rede
• Existem basicamente três camadas em uma RNA: u-ma camada de entrada, uma camada intermediária, e uma camada de saída, sendo que nem todas as RNAs possuem camadas intermediárias.
• A forma pela qual os neurônios estão interconecta-dos está intimamente relacionada ao algoritmo a ser utilizado no seu treinamento.
24/08/15 Inteligência Computacional – Renato Dourado Maia 18/24
Arquiteturas de Rede
• Há três tipos principais de arquitetura em RNAs:– Redes feedforward de uma única camada.– Redes feedforward de múltiplas camadas.– Redes recorrentes.
• O termo feedforward quer dizer que os sinais se pro-pagam apenas da entrada para a saída.
• O termo recorrente quer dizer que há pelo menos um laço de realimentação.
24/08/15 Inteligência Computacional – Renato Dourado Maia 19/24
Rede Feedforward de uma Camada.
Camada deEntrada
Camada deSaída
NeurônioSensorial
Neurônio deProcessamento
wom
x0
x1
x2
xm
y1
y2
y3
yo
w10
24/08/15 Inteligência Computacional – Renato Dourado Maia 20/24
Rede Feedforward de Múltiplas Camadas.
Camada deEntrada
Primeira Camada Escondida
Segunda Camada Escondida
Camada deSaída
y1
y2
y3
+ 1
x1
x2
x3
xm
+ 1 + 1
24/08/15 Inteligência Computacional – Renato Dourado Maia 21/24
Rede Recorrente.
y1
y2
z−1
y0
z−1
z−1
24/08/15 Inteligência Computacional – Renato Dourado Maia 22/24
Lembrando do Slide 9
• Se o conhecimento está armazenado nos pesos das conexões, então o processo de aprendizagem corres-ponde a identificar um conjunto apropriado de pe-sos de forma que o comportamento da rede seja i-gual (próximo) daquele desejado.
• Essa característica possui duas implicações impor-tantes para as RNA: – A possibilidade de desenvolvimento de técnicas de apren-
dizagem; e – A representação distribuída de conhecimento.
24/08/15 Inteligência Computacional – Renato Dourado Maia 23/24
Fica a Pergunta...
Como realizar o processo de
aprendizagem?
24/08/15 Inteligência Computacional – Renato Dourado Maia 24/24
• Esta apresentação foi baseada no material disponível no site do Laboratório Virtual em Computação Na-tural (acesso em 14/06/2011):– http://www.natcomp.com.br/lvcon
• Visitem o LVCoN! É muito interessante: – Além dos conteúdos, há diversas simulações e muitas ou-
tras coisas... – O LVCoN é uma ferramenta para o ensino e aprendizagem on-line de Computação Natural.
Acabando...