You are on page 1of 164

Redes Neurais

Artificiais
Inteligncia Artificial

Prof. Cedric Luiz de Carvalho


Instituto de Informtica
UFG 2006
2/164

Tpicos
Introduo
Redes Neurais Humanas
O que so Redes Neurais Artificiais
Caractersticas das Redes Neurais Artificiais
Perceptrons
Perceptrons Multi Camadas
Modelo de Hopfield
3/164

Motivao
Criar mquinas capazes de operar
independentemente do homem
aprender sozinhas
interagir com ambientes desconhecidos
possa ser chamada de autnoma, inteligente ou
cognitiva
capacidade de lidar com eventos inesperados

Obs.: cognio aquisio de um conhecimento


4/164

Utilidade
Teriam maior capacidade de aprender tarefas
de alto nvel cognitivo que no so facilmente
manipuladas por mquinas atuais
Seriam teis onde a presena humana
perigosa, tediosa ou impossvel, como em:
reatoresnucleares
combate ao fogo
operaes militares
explorao ao espao...
5/164

Redes Neurais Artificiais (RNA)

Investigam aspectos naturais e


adaptativos do sistema cognitivo

Aprendem a reconhecer padres


de informaes estabelecidos no
meio ambiente

Abordagem bottom-up: a partir de


elementos bsicos busca o
entendimento de conceitos gerais
6/164

Cincias Cognitivas
Epistemologia

Psicologia Lingstica

Cincia da
Computao Cincias Sociais

Neurobiologia
7/164

Crebro humano
Mais fascinante processador baseado em carbono

O neurnio um clula no crebro cuja principal


funo colecionar, processar e disseminar sinais
eltricos

10 bilhes de neurnios
todos movimentos do organismo
so conectados atravs de sinapses
processam e armazenam informaes
8/164

Redes neurais naturais


O sistema nervoso formado por um conjunto
extremamente complexo de clulas, os neurnios
O crebro humano possui cerca de 1011 neurnios
e mais de 1014 sinapses, possibilitando a formao
de redes muito complexas
9/164

Redes neurais naturais

Neurnios tm papel essencial na determinao do


funcionamento e comportamento do corpo humano
e do raciocnio
10/164

Neurnios naturais
Neurnios so formados:
pelos dendritos, que so um conjunto de terminais
de entrada
recebem estmulos
pelo corpo central (soma)
coleta, combina e processa informaes
pelos axnios que so longos terminais de sada
transmitem os estmulos

Neurnios se comunicam atravs de


sinapses
11/164

Neurnios naturais
12/164

Neurnios naturais: Sinapse


o contato entre dois neurnios atravs
da qual os impulsos nervosos so
transmitidos entre eles

Os impulsos recebidos por um neurnio


so processados e, atingindo um limiar
de ao, dispara, produzindo uma
substncia neurotransmissora que flui
para o axnio, que pode estar
conectado a um dendrito de outro
neurnio
13/164

Neurnios naturais: Sinapse

O neurotransmissor pode diminuir ou

aumentar a polaridade da membrana


ps-sinptica, inibindo ou excitando a
gerao dos pulsos no outro neurnio

Este processo depende de fatores


como geometria da sinapse e o tipo
de neurotransmissor
14/164

Neurnios naturais
Constatao que o crebro processa informaes
de forma diferente dos computadores convencionais
Crebro
velocidade 1 milho de vezes mais lenta
processamento altamente paralelo
1011 neurnios com 104 conexes cada

Computador
processamento extremamente rpido e preciso na
execuo de sequncia de instrues
15/164

Problema dos 100 Passos


Neurnio: 2ms
Processador: 2ns

Processador 106 mais rpido que o neurnio

Crebro reage a um estmulo entre 0,2 e 1 segundo

Crebro responde em 100 passos


16/164

Neurnios naturais
O crebro tem 10 bilhes de neurnios
Cada neurnio tem 1.000 a 10.000 conexes
60 trilhes de conexes
1014 sinapses

Cada pessoa pode dedicar 100.000 conexes para


armazenar cada segundo de experincia
65 anos 2.000.000.000 de segundos

Durante os 2 primeiros anos de vida, 1.000.000 de


sinapses so formadas por segundo
17/164

Crebro X Computador

Parmetro Crebro Computador

Material Orgnico Metal e plstico

Velocidade Milisegundos Nanosegundos

Tipo de Processamento Paralelo Seqencial

Armazenamento Adaptativo Esttico

Controle de Processos Distribudo Centralizado

Nmero de elementos processados 10 e 11 10 e 14 10 e 5 10 e 6

Ligaes entre elementos processados 10.000 <10


18/164

Computador X RNAs

Computadores Neurocomputadores

Executa programas Aprende

Executa operaes lgicas Executa operaes no lgicas, transformaes, comparaes

Depende do modelo ou do programador Descobre as relaes ou regras dos dados e exemplos

Testa uma hiptese por vez Testa todas as possibilidades em paralelo


19/164

Redes Neurais Artificiais (RNAs)

RNAs so tcnicas computacionais que


apresentam um modelo matemtico inspirado na
estrutura neural de organismos inteligentes e que
adquirem conhecimento atravs da experincia

Mtodo de solucionar problemas de IA, que utiliza


um sistema que possui circuitos que simulam o
crebro humano, inclusive seu comportamento, ou
seja, aprendendo, errando e fazendo descobertas

Uma grande RNA pode ter centenas ou milhares


de unidades de processamento
20/164

Redes Neurais Artificiais (RNAs)

Redes Neurais Artificiais so sistemas


inspirados nos neurnios biolgicos e na
estrutura massivamente paralela do crebro,
com capacidade de adquirir, armazenar e utilizar
conhecimento experimental

Devido similaridade com a estrutura do


crebro, as Redes Neurais exibem
caractersticas similares ao do comportamento
humano, tais como:
21/164

Redes Neurais Artificiais (RNAs)


Procura Paralela e Endereamento pelo
Contedo
o crebro no possui endereo de memria e
no procura a informao seqencialmente

Aprendizado
a rede aprende por experincia, no
necessitando explicitar os algoritmos para
executar uma determinada tarefa
22/164

Redes Neurais Artificiais (RNAs)


Associao
a rede capaz de fazer associaes entre
padres diferentes. Ex.
Pessoa Nome
Perfume Pessoa

Generalizao
so capazes de generalizar o seu
conhecimento a partir de exemplos anteriores
23/164

Redes Neurais Artificiais (RNAs)


Abstrao
capacidade de abstrair a essncia de um
conjunto de entradas, isto , a partir de
padres ruidosos, extrair a informao do
padro sem rudo

Robustez e Degradao Gradual


a perda de um conjunto de elementos
processadores no causa o mal funcionamento
da rede neural
24/164

O que as RNAs no so
RNN no so circuitos digitais
o modelo MCP usava sinais binrios, o
neurnio biolgico expressa sua ativao pela
freqncia que emite pulsos e esta freqncia
tem uma variao contnua entre dois valores
positivos

RNN no podem ter excitao negativa


alguns modelos usam valores de excitao
negativa
25/164

O que as RNAs no so
RNN no so homogneas
as RNN no possuem todos os seus
neurnios de mesmo tipo como nas RNA,
apenas em algumas regies existe uma certa
uniformidade no tipo de neurnios

RNN no so circuitos sncronos ou


assncronos
as RNN so sistemas de tempo contnuo, logo
no cabe a classificao de sncrono ou
assncrono
26/164

O que as RNAs no so
Nem neurnios nem sinapses tem dois valores
Circuitos cerebrais no so capazes de
clculos recursivos
isto conseqncia dos neurnios no serem
sistemas discretos, levando a rede a no ser
um autmato
logo, equivalncia com problemas solveis por
funes recursivas no tem sentido biolgico
entretanto, os neurnios das RNAs so
capazes de resolver funes recursivas
27/164

Fases da histria da IA
poca pr-histrica
nesta poca nada se conhecia sobre os
mecanismos da mente, nem sob o prisma
fisiolgico nem psicolgico e por esta razo vai
at 1875 quando Camillo Golgi visualizou o
neurnio

poca Antiga (1875-1943)


poca em que a Lgica formal apareceu
(Russel, etc)
28/164

Fases da histria da IA
poca Romntica (1943-1956)
o otimismo desordenado, tal um jovem rapaz
romntico, cr que tudo possvel
acaba com a reunio no Darthmouth College

poca Barroca (1956-1969)


tudo fcil e ser conseguido
fracasso do projeto de traduo automtica de
lnguas pelo MIT devido a dimensionalidade
ingls-russo
o livro Perceptrons mostra que nem tudo
possvel
29/164

Fases da histria da IA
poca das Trevas (1969-1981)
paralisao de quase todas as pesquisas em IA por falta
de verbas
Renascimento (1981-1987)
comeou a corrida para IA
os resultados obtidos nas pocas anteriores atingiram o
pblico em geral
sistemas especialistas se popularizaram

poca Contempornea (1987 - atual)


logo no incio do perodo Gallant publica seu clebre artigo
sobre sistemas especialistas conexionistas
foi o ponto de partida para a unio das duas abordagens
de IA
30/164

Acontecimentos
1943 Primeiras informaes da neuro
computao (McCulloch e Pitts)
Psychon
Exitao / Inibio - Sem aprendizado

1949 - Regra de Hebb - D. O. Hebb


Aprendizado / Adaptao

1951 Snark, por Mavin Minsky


operava com sucesso
mas, no executava funes de processamento
interessantes, porm serviu de inspirao
31/164

Acontecimentos
1956 Darthmouth College surgiram os
paradigmas da Inteligncia Artificial:
simblica: simular o comportamento
humano desconsiderando os mecanismos
responsveis

conexionista: simular a estrutura cerebral,


acreditando-se que seria capaz de
apresentar inteligncia
32/164

Acontecimentos
1957 Mark I Perceptron, por Frank Rosenblatt,
Charles Wightman e outros
interesse: reconhecimento de padres
Bernard Widrow desenvolveu um novo tipo de
processamento de redes neurais: ADALINE
grande capacidade de aprendizado
valores discretos / binrios / Regra Delta

1962 - Perceptron - Frank Rosenblatt


valores contnuos
1962 - Madaline - Bernard Widrow
combinando Adalines / Combinao manual
33/164

Acontecimentos
1969 - Problema do XOR - Minsky & Papert
(Livro Perceptrons)

1970 - 1980 Dcada perdida...

1980 Campo de pesquisas explodiu:


Palallel Distributede Processing

1982 - Modelo de Hopfield


Redes recorrentes - Memrias Auto-Associativas
34/164

Acontecimentos
1986 - MLP Back-Propagation - Rumelhart, Hinton & Willians
(Multi-nvel)
1987 Primeira conferncia de redes neurais
1980-1990 dcada das aplicaes
Jogos, Robtica, Viso, Reconhecimento de Imagens e
Padres (OCR, Digitais, Assinaturas), Reconhecimento de
Voz (Comandos e Fonemas), Previso de sries
temporais (Aes, tempo, consumo, etc)
1990-2005 revendo conceitos e limitaes
propondo novos modelos
35/164

O Modelo MCP (McCulloch e Pitts)


Uma RNA composta por vrias unidades de
processamento (ns), cujo funcionamento bastante
simples
Essas unidades geralmente so ligadas por conexes
(links) que esto associados a um determinado peso
As unidades fazem operaes apenas sobre seus
dados locais, que so entradas recebidas pelas suas
conexes
O comportamento inteligente de uma RNA vem das
interaes entre as unidades de processamento da
rede
36/164

O Modelo MCP

Uma ligao de uma unidade j para unidade i serve


para propagar a ativao aj de j para i

Cada ligao possui um peso wj,i associado, que


determinar a fora e o sinal da conexo
Cada unidade i primeiro computa a soma dos pesos
de suas entradas:
n
in i = W j,i a j
j= 0
37/164

O Modelo MCP
Funo de ativao
Ento se aplica uma funo de ativao g nesta
soma para derivar a sada:
n
a i =g ini =g
W j,i a j
j=0

Se este nvel de atividade exceder um certo limite ou
limiar (threshold) a unidade produz uma determinada
resposta de sada

a i
38/164
O Modelo MCP
Operao de uma unidade de
processamento

y = 1, se s > t
s = wiXi y = 0, se s t

Sinais de entrada pesos


39/164

O Modelo MCP
Funo de ativao
Este modelo foi simplificado
os ns em cada camada da rede disparam
sincronicamente
as entradas em um instante t produzem a sua sada
no tempo t+1
diferente do biolgico, onde no existe sincronismo e
nem ativao em tempo discreto

Alm disso, possuem outras limitaes


com apenas uma camada s conseguem implementar
funes linearmente separveis
pesos fixos, no ajustveis, no h aprendizado
40/164

Caractersticas das RNAs


x1 x2 xn Entradas (Dentritos)

...
w1 w2 ... wn
Pesos Sinpticos (Efeito
de inibio ou de excitao
sobre a ativao dos sinais
S= w i x i +bias de entrada)

Ativao (Considera o conjunto


total das entradas e dos seus
S pesos associados)

Funo de Ativao
(Regulagem da sada da rede)

Sada (Axnio: Conexes com as


Sinapses de outras unidades)
41/164

Funo de ativao

A funo de ativao projetada com dois desejos


a unidade deve ser ativa (perto de 1+) quando a
entrada correta for dada e inativa (perto de 0) quando
uma sada errada dada
a ativao necessita ser no linear, caso contrrio a
rede neural completa desmoronaria em uma simples
funo linear

Escolha para a funo de ativao g so mostradas a


seguir:
42/164

Funo de ativao
Funo linear
g(ini)

ini

g(ini) = ini
43/164

Funo de ativao
Funo limiar (threshold)
g(ini)

+1
ini

1, se ini
g(ini) =

0, se ini <
44/164

Funo de ativao
Funo sigmoidal logstica (bipolar)

g(ini)

g(ini) = 1/(1 + e- u(t)


)

ini
Funo de limiar diferencivel
45/164

Exemplo de funcionamento
46/164

Caractersticas das RNAs


O comportamento inteligente vem das interaes
entre as unidade de processamento da rede

Elas aprendem atravs de exemplos

Processo de treinamento a partir dos casos reais

Capaz de extrair regras bsicas a partir de dados


reais, diferindo da computao programada
47/164

Aprendizagem
Ajustes de seus pesos

Aprendizado ocorre quando atinge uma


soluo generalizada para uma classe de
problemas

50 a 90% do total de dados so escolhidos


aleatoriamente afim que a rede aprenda
o restante s apresentado na fase de testes
48/164

Processamento Neural

O processamento de uma Rede Neural pode ser


dividido em duas fases:
processo de clculo da sada da rede, dado um
certo padro de entrada
Recuperao da Informao

processo de atualizao dos pesos sinpticos para


a aquisio do conhecimento
Aquisio da Informao
49/164

Aprendizagem das RNAs

A maioria dos modelos de redes neurais possui


alguma regra de treinamento
onde os pesos de suas conexes so ajustados
de acordo com os padres apresentados

elas aprendem atravs de exemplos


50/164

Formas de aprendizado: RNAs


Aprendizagem supervisionada
a sada desejada conhecida e informada para
que a rede compare com a sada processada
se houver erro, a rede tenta corrigir este erro at
que a mesma fornea uma sada igual a sada
desejada
51/164

Formas de aprendizado: RNAs

Aprendizagem no supervisionada
a sada desejada obtida atravs de entradas
repetitivas at a rede reter o conhecimento
no existe sada informada para comparao
deve existir redundncias nos dados para a rede
encontrar padres ou caractersticas dos dados
52/164
Exemplo: Aprendizagem
Implementao da porta lgica AND
Certificar-se de que todas as
respostas esto corretas para
cada conjunto de entradas Tabela Verdade - AND
pela tabela-verdade Entrada 1 Entrada 2 Sada
1 1 1
1 0 0
A RNA possui um nico 0 1 0
neurnio de duas entradas e 0 0 0
uma sada

0 0 0 1 1
0 T 1 T
0
T
0
T
1
0 1
53/164

Exemplo: Aprendizagem
Implementao da porta lgica AND
Para treinar a rede vamos seguir alguns
passos:

para as entradas [1, 1] 1


0.0
0
1 T
0.0
pesos iniciais [0, 0]

= 0,5 y = 1, se s >
y = 0, se s
Funo Soma
n
x i w i
i 1 limiar
54/164

Exemplo: Aprendizagem
Implementao da porta lgica AND
Para treinar a rede vamos seguir alguns
passos: = 0,5
Passo 1: Aplicar a funo Soma Funo Soma
n
n
x i w i x i w i
i 1 i 1
Soma = 1*0 + 1*0 = 0
Passo 2: Aplicar a funo de 1
0.0
0
Transferncia 1 0.0
T
Soma 0,5 y = 0
Soma > 0,5 y = 1 y = 1, se s >
Transferido y = 0, se s
0 para a sada.
Erro!!!!!
limiar
55/164

Exemplo: Aprendizagem
Implementao da porta lgica AND
Passo 3: Ajuste do peso
Equao do erro:
E = Sd - So
onde
Sd a sada desejada
So a sada obtida

Fator de correo:
F = c*x*E
onde
c = 0,5 (constante)
x a entrada
E o erro

Equao do ajuste:
wnovo = w + F
56/164

Exemplo: Aprendizagem
Implementao da porta lgica AND
Passo 3: Ajuste do peso Equao do erro:
E = Sd - So
Calcular o erro: E = 1 - 0 = 1 onde
Sd a sada desejada
Calcular o fator de correo: So a sada obtida

F1 = c*E*x1 F2 = c*E*x2
Fator de correo:
F1 = 0,5*1*1 F2 = 0,5*1*1 F = c*x*E
onde
F1 = 0,5 F2 = 0,5 c = 0,5 (constante)
x a entrada
Calcular o novo peso: E o erro

w1novo = w1 + F1 w2novo = w1 + F2
w1novo = 0 + 0,5 w2novo = 0 + 0,5 Equao do ajuste:
wnovo = w + F
w1novo = 0,5 w2novo = 0,5
57/164

Exemplo: Aprendizagem
Implementao da porta lgica AND
Para treinar a rede vamos seguir alguns passos:
para as entradas [1, 1] ...
pesos iniciais [0,5, 0,5] 1
0.5
1
Passo 1: Aplicar a funo Soma 1 0.5 T

Soma = 1*0,5 + 1*0,5 = 1


Passo 2: Aplicar a funo de Transferncia

Soma 0,5 y = 0
Soma > 0,5 y = 1

Transferido 1 para a sada. Correto!!!!!


58/164

EXERCCIO: Aprendizagem
Implementao da porta lgica AND

EXERCCIO

Continuar treinando a rede


para as entradas [0, 0] e pesos [0,5, 0,5]

Testar a rede
Para as entradas [0, 1] e [1, 0]
59/164

EXERCCIO: Aprendizagem
Implementao da porta lgica AND
Para treinar a rede vamos seguir alguns passos:
para as entradas [0, 0] e
pesos [0,5, 0,5] 0 0
Passo 1: Aplicar a funo Soma 0 T

Soma = 0*0,5 + 0*0,5 = 0


Passo 2: Aplicar a funo de Transferncia

Soma 0,5 y = 0
Soma > 0,5 y = 1

Transferido 0 para a sada. Correto!!!!!


60/164

EXERCCIO: Aprendizagem
Implementao da porta lgica AND
Testar a rede: para as entradas [0, 1] e
pesos [0,5, 0,5]
Passo 1: Aplicar a funo Soma 0
0
Soma = 0*0,5 + 1*0,5 = 0,5 1 T

Passo 2: Aplicar a funo de Transferncia


Soma 0,5 y = 0
Soma > 0,5 y = 1

Transferido 0 para a sada. Correto!!!!!


61/164

EXERCCIO: Aprendizagem
Implementao da porta lgica AND
Testar a rede: para as entradas [1, 0] e
pesos [0,5, 0,5]
Passo 1: Aplicar a funo Soma 1 0
T
Soma = 1*0,5 + 0*0,5 = 0,5 0

Passo 2: Aplicar a funo de Transferncia


Soma 0,5 y = 0
Soma > 0,5 y = 1

Transferido 0 para a sada. Correto!!!!!


62/164

Arquiteturas de RNA
Arquiteturas neurais so tipicamente
organizadas em camadas, com unidades que
podem estar conectadas s unidades da
camada posterior
63/164

Arquiteturas de RNA
Usualmente as camadas so classificadas em
trs grupos:
Camada de Entrada: onde os padres so
apresentados rede
Camadas Intermedirias ou Escondidas: onde
feita a maior parte do processamento, atravs
das conexes ponderadas
podem ser consideradas como extratoras de
caractersticas
Camada de Sada: onde o resultado final
concludo e apresentado
64/164

Arquiteturas de RNA

Nmero de camadas
redes de camada nica
s existe um n entre qualquer entrada e qualquer
sada da rede

X1
X1

X2

X2
X3
65/164

Arquiteturas de RNA
Nmero de camadas
redes de mltiplas camadas
existe mais de um neurnio entre alguma entrada e
alguma sada da rede
X1
X2
X1 X3
X2 X4
X6
X5
X3
X6
X4
X7
X1
X2
X5
X4
X5
66/164

Arquiteturas de RNA
Tipos de conexes dos ns
feedforward ou acclica
a sada do neurnio na i-sima camada da rede no
pode ser usada como entrada de nodos em camadas
de ndice menor ou igual a i
X1

X1 X2

X1 X3

X2 X2 X4
X6
X3 X5

X3 X4 X6
X7

X5
67/164

Arquiteturas de RNA
Tipos de conexes dos ns
feedback ou cclica ou recorrente
a sada do neurnio na i-sima camada da
rede usada como entrada de nodos em
camadas de ndice menor ou igual a i

X1

X2 X1

X4
X2
X5
68/164

Arquiteturas de RNA
feedback ou cclica ou recorrente
o nvel de ativao da rede forma um sistema
dinmico que pode alcanar um estado estvel
ou exibir oscilaes ou comportamento catico
alm disso, a resposta da rede para uma dada
entrada depende de seu estado inicial, que
pode depender das entradas anteriores
por isso, elas podem suportar memria (em
partes)
elas so mais parecidas com o crebro humano
(diferente das acclicas), mas so mais complicadas
69/164

Arquiteturas de RNA
Conectividade
fracamente (ou parcialmente) conectada

X1
X1
X2
X2 X3
X6
X4
X3
X5
X4 X6
X7

X1
X5 X2
X4
X5
70/164

Arquiteturas de RNA

Conectividade
completamente conectada

X1

X2
71/164

Arquiteturas de RNA
Uma rede neural caracterizada, principalmente
pela sua topologia
feedforward, feedback

pelas caractersticas dos ns


booleano, fuzzy, hbrido

pelas regras de treinamento


Hebb, backpropagation, ...
72/164

Modelos de RNA
Perceptrons (acclica)
Perceptrons de Mltiplas Camadas (acclica)
Rede Hopfield (cclica)
...
73/164

Aprendizagem em
Redes Neurais Artificiais

No aprendizado cognitivo, no se procura


obter regras como na abordagem simblica
da IA
mas sim determinar a intensidade de
conexes entre neurnios

Em outras palavras, aprendizagem em RNA


o processo de modificar os valores de
pesos e do limiar
74/164

Aprendizagem em
Redes Neurais Artificiais
Definio
Aprendizagem o processo pelo qual os
parmetros de uma RNA so ajustados
atravs de uma forma continuada de
estmulo pelo ambiente no qual a rede est
operando, sendo o tipo especfico de
aprendizagem realizada definido pela
maneira particular como ocorrem os
ajustes realizados nos parmetros
75/164

Aprendizagem em
Redes Neurais Artificiais

Regras de aprendizagem em RNA


estabelecer um conjunto de pesos para suas
conexes

ativar um conjunto de unidades que


correspondam a um padro de entrada

observar o padro para o qual a rede converge


e em que se estabiliza
76/164

Aprendizagem em
Redes Neurais Artificiais

Regras de aprendizagem em RNA


se o padro final no corresponder ao que se
deseja associar como resposta ao de entrada,
preciso fazer ajustes nos pesos e ativar
novamente o padro de entrada

por causa de sua semelhana com o


aprendizado humano, esse processo de ajustes
sucessivos das RNA chamado de
aprendizagem
77/164

Aprendizagem em
Redes Neurais Artificiais
Regra de Hebb
Desenvolvida por Donald Hebb em 1949
Princpio:
a fora da conexo entre dois neurnios
aumentada se os neurnios esto simultaneamente
excitados
wij = .yi.xj
= taxa de aprendizado
yi e xj = ativaes das unidades yi e xj
78/164

Aprendizagem em
Redes Neurais Artificiais
Lei de aprendizagem de Hebb
Se um neurnio A repetidamente estimulado por
um outro neurnio B, ao mesmo tempo em que ele
est ativo, ele ficar mais sensvel ao estmulo de B,
e a conexo sinptica de B para A ser mais forte.
Deste modo, B achar mais fcil estimular A para
produzir uma sada.

O conhecimento fica retido nos neurnios


Para reter conhecimento, toda RNA passa por
um processo de aprendizagem
79/164

Aprendizagem em
Redes Neurais Artificiais

Regra Delta (Widrow-Hoff)


A regra Delta uma variao da regra de Hebb

Foidesenvolvida por Bernard Widrow e Ted Hoff


(1982), conhecida tambm como least mean square
(LMS), por minimizar o erro mdio quadrtico
80/164

Gradiente Descendente e a Regra Delta

Uso do gradiente descendente para reduzir o


erro

Uso do gradiente descendente para buscar o


vetor de pesos que melhor se ajuste ao conjunto
de treinamento
independentemente do conjunto de
treinamento ser linearmente separvel
81/164

Funo de Custo

Especifique uma medida de erro (funo de


custo) para o treinamento

E(w) = 1/2 dD (td - od)2 , em que


D o conjunto de treinamento
td a sada desejada para o exemplo d
od a sada para o exemplo d
82/164

Minimizao do custo

A funo E uma medida objetiva do erro preditivo


para uma escolha especifca de vetor de pesos

Objetivo: encontrar um vetor w que minimize E

Soluo: usar tcnicas de gradiente descendente


83/164

Minimizao do custo

1. Escolha valores iniciais arbitrrios para os pesos


2. Calcule o gradiente da funo de custo com
respeito a cada peso
3. Mude os pesos tal que haja um deslocamento
pequeno na direo de G
-G => Maior taxa de diminuio do erro
5. Repita passos 2 e 3 at que erro se aproxime de
zero

Como este algoritmo funciona?


84/164

Algoritmo de Widrow e Hoff


Inicializar e o vetor de pesos w
Repetir
Inicializar wi com zero
Para cada par do conjunto de treinamento (x, t)
calculea sada o
para cada peso wi

calcule wi wi + (t - o)xi
Para cada peso wi
w
i wi + wi
At que uma condio de trmino seja satisfeita
85/164

Perceptrons
Desenvolvido por Rosenblat (1958)

Utiliza modelo de McCulloch-Pitts

Todas as entradas conectadas diretamente nas


sadas
Rede neural camada simples
Perceptron
86/164

Perceptrons

Estrutura mais simples de RNAs


87/164

Perceptrons
Rede mais simples que pode ser utilizada para
classificao de padres linearmente
separveis

H muitas funes booleanas que o limiar


(threshold) perceptron no pode representar
88/164

Portas de limiar (threshold)


Linearmente separveis I1 AND I2

(0,1) (1,1)

(0,0) (1,0)
89/164

Portas de limiar (threshold)


Linearmente separveis I1 OR I2

(1,1)
(0,1)

(0,0) (1,0)
90/164

Portas de limiar (threshold)


Linearmente separveis I1 XOR I2

(1,1)
(0,1)

???
(0,0) (1,0)
91/164

Perceptrons
H um algoritmo de aprendizado simples que
ajustar (encontrar) um limiar para qualquer
conjunto de treinamento linearmente separvel

A idia deste algoritmo, e da maioria dos algoritmos


de aprendizado de redes neurais, ajustar os pesos
da rede para minimizar a medida de erro em um
conjunto de treinamento
92/164

Perceptrons
O aprendizado formulado como uma busca
otimizada em um espao de busca

O algoritmo de aprendizagem do perceptron utiliza o


algoritmo de correes de erros como base
93/164

Perceptrons
Treinamento Supervisionado
Correo de erro:
W ij =e x i
= taxa de aprendizagem
xi = valor de entrada
e = (dj yi) = erro (valor calculado valor desejado)

Teorema da convergncia:
Se possvel classificar um conjunto de entradas,
uma rede Perceptron far a classificao
94/164

Perceptrons
Treinamento: Algoritmo

Iniciar todas as conexes com wi = 0 (ou


aleatrios)
Repita
Para cada padro de treinamento (X, d)
faa
Calcular a sada y
Se (d y)
ento atualizar pesos
wi t+ 1 =w i +ex i
at o erro ser aceitvel
95/164

Algoritmo de aprendizado do
Perceptron
Teorema da convergncia (Minsky e Papert, 1969)

O algoritmo converge dentro de um nmero


finito de passos para um vetor de pesos que
classifica corretamente todo o conjunto de
treinamento
dado que o conjunto de treinamento
linearmente separvel
96/164

Perceptrons
Treinamento
Algoritmo:
97/164

Perceptrons

Algoritmo de teste:

Para cada padro de 1 a p


faa
Apresentar Xp entrada da rede
Calcular a sada y
Se y
ento Xp Classe 1
seno Xp Classe 2
98/164

Perceptrons
Apesar de causar grande euforia na comunidade
cientfica, no teve vida longa
sofreu duras crticas de Minsky e Papert sobre sua
capacidade computacional
causando grande desinteresse na rea na dcada de
70 e incio dos anos 80

Esta viso pessimista sobre a capacidade do


perceptron e das RNAs mudo devido s descries
de Hopfield em 1982 e do algoritmo back-propagation
(retropropagao)
a rea ganhou novo impulso
99/164

Perceptrons
Funo linearmente separvel com 11 entradas
booleanas
1
0,95
0,9
0,85
0,8
0,75
0,7
0,65
0,6
Proporo correta no conj. de teste

0,55
0,5
0,45
Coluna B
0,4 Coluna C
0,35
0,3
0,25
0,2
0,15
0,1
0,05
0

Linha 1 Linha 2 Linha 3 Linha 4 Linha 5 Linha 6 Linha 7 Linha 8 Linha 9 Linha Linha Linha Linha Linha Linha Linha
10 11 12 13 14 15 16

Tamanho do conjunto de treinamento (0 - 100)


100/164

Perceptrons
Exemplo do restaurante, no linearmente
separvel
0,95
0,9
0,85
0,8
0,75
0,7
0,65
Proporo correta do conjunto de teste

0,6
0,55
0,5
0,45
Coluna A
0,4
Coluna B
0,35
0,3
0,25
0,2
0,15
0,1
0,05
0

Linha Linha Linha Linha Linha Linha Linha Linha Linha Linha Linha Linha Linha Linha Linha Linha
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
101/164
Aprendizagem em RNAs
Algoritmo de retropropagao
Desenvolvido por Paul Werbos (1974) e redescoberto
independentemente por Parker (1982) e Rumelhart
(1986)

Aplicado para RNA cclica (feedforward) com uma ou


mais camadas intermedirias

Utiliza um mtodo do gradiente descendente por


correo de erro: o algoritmo de codificao executa
um mapeamento entrada-sada atravs da
minimizao de uma funo de custo qualquer
102/164
Aprendizagem em RNAs
Algoritmo de retropropagao
A funo de custo minimizada realizando-se
iterativamente ajustes nos pesos sinpticos de acordo
com o erro quadrtico acumulado para todos os
padres do conjunto de treinamento

Outras funes de custo podem ser utilizadas, mas


independentemente disto, o procedimento de ajuste
de pesos realizado atravs do clculo da mudana
da funo de custo com respeito mudana em cada
peso (mtodo do delta)
103/164

Aprendizagem em RNAs
Algoritmo de retropropagao
O processo de reduo gradativa de erro que
acompanha a minimizao se denomina
convergncia
A medida que a rede aprende, o valor do erro
converge para um valor estvel, normalmente
irredutvel
O processo de aprendizagem prossegue at que
algum critrio seja estabelecido, como por exemplo,
uma diferena sucessiva mnima entre erros
calculados para cada iterao
104/164

Aprendizagem em RNAs
Algoritmo de retropropagao
Regra Delta generalizada
Clculo do erro na sada
LMS

1 2
E= d i y i
2 i
RMS

2
E= d i y i
i
105/164

Perceptrons com mltiplas camadas


Redes neurais acclicas multicamadas
redes com unidades intermedirias ou escondidas
106/164

Perceptrons com mltiplas camadas


Apresentam um poder computacional muito maior do
que aquele apresentado pelas redes sem camadas
intermedirias
Tratam com dados que no so linearmente
separveis
Teoricamente, redes com mais de uma camada
intermediria podem
implementar qualquer
funo, seja ela
linearmente
separvel ou no
107/164

Perceptrons com mltiplas camadas

A vantagem de adicionar camadas escondidas


que elas aumentam o espao de hipteses
que a rede pode representar
exemplificando
cada unidade escondida vista como um perceptron
que representa uma funo limiar no espao de
entradas
ento, uma unidade de sada vista como uma
combinao de vrias funes
108/164

Perceptrons com mltiplas camadas

Problema: Perceptron
redes com uma camada resolvem apenas
problemas linearmente separveis

1, 1 0
0, 1 1
1, 0 1
0, 0 0
109/164

Perceptrons com mltiplas camadas


Soluo: Utilizar mais de uma camada
Camada 1:
uma rede Perceptron para cada grupo de entradas
linearmente separveis
110/164

Perceptrons com mltiplas camadas


Soluo: Utilizar mais de uma camada
Camada 2:
uma rede combinando as sadas das redes da 1
camada, produzindo a classificao final
111/164

Perceptrons com mltiplas camadas


Problema
nem sempre se conhece a sada desejada dos ns da
camada intermediria
Suponha que queremos construir uma rede com
camada escondida para o problema do restaurante
10 atributos no exemplo, ento 10 entradas na rede
Quantas unidades escondidas?

foi usada 4
o problema de escolher o nmero correto de unidades
escondidas ainda no bem entendido
112/164

Perceptrons com mltiplas camadas

Algoritmo de aprendizado: retropropagao


Nmero de neurnios da camada intermediria
NH = Nmero de neurnios da camada intermediria
NS = Nmero de neurnios da camada de sada
NE = Nmero de neurnios da camada de entrada

NH=NS+ NE
NH=1 10=4
Outros:

NH=NSNE
NH= 110=10
113/164

Perceptrons com mltiplas camadas


Algoritmo de aprendizado: retropropagao
antes de se iniciar o processo de aprendizado
por retropropagao, necessrio que se
tenha:
o conjunto de padres de treinamento, entrada e
sada desejada

um valor para a taxa de aprendizado

um critrio que finalize o algoritmo (por n de ciclos -


ou pocas - ou por erro)
114/164

Perceptrons com mltiplas camadas


Algoritmo de aprendizado: retropropagao
antes de se iniciar o processo de aprendizado
por retropropagao, necessrio que se
tenha:
uma metodologia para atualizar os pesos (w)

a funo de transferncia no-linear

valores de pesos iniciais


115/164

Perceptrons com mltiplas camadas

Algoritmo de aprendizado: retropropagao


basicamente a rede aprende um conjunto pr-
definido de pares de exemplos de entrada/sada
em ciclos de propagao/adaptao

depois que um padro de entrada foi aplicado


como um estmulo aos elementos da primeira
camada da rede, ele propagado por cada uma
das outras camadas at que a sada seja gerada
116/164

Perceptrons com mltiplas camadas


Algoritmo de aprendizado: retropropagao
este padro de sada ento comparado com a
sada desejada e um sinal de erro calculado para
cada elemento de sada
o sinal de erro ento retro-propagado da camada
de sada para cada elemento da camada
intermediria anterior que contribui diretamente para
a formao da sada
entretanto, cada elemento da camada intermediria
recebe apenas uma poro do sinal de erro total,
proporcional apenas contribuio relativa de cada
elemento na formao da sada original
117/164

Perceptrons com mltiplas camadas


Algoritmo de aprendizado: retropropagao
este processo se repete, camada por camada,
at que cada elemento da rede receba um sinal
de erro que descreva sua contribuio relativa
para o erro total

baseado no sinal de erro recebido, os pesos das


conexes so, ento, atualizados para cada
elemento de modo a fazer a rede convergir
para um estado que permita a codificao de
todos os padres do conjunto de treinamento
118/164

Perceptrons com mltiplas camadas


Algoritmo de aprendizado: retropropagao
Inicializao do treinamento (N = 1)

Inicializao dos pesos aleatoriamente

Apresentao dos vetores de entrada e Clculo das sadas

Clculo do erro das sadas

S
E < Ed Pare Rede treinada
N N+1
N
S
N > NMax Pare Nmero mximo de pocas
N
Reclculo dos pesos da camada de sada
Utilizao do Mtodo do
Gradiente Descendente
Reclculo dos pesos da camada intermediria

Atualizao dos pesos


119/164

Perceptrons com mltiplas camadas

Algoritmo de aprendizado: retropropagao


Critrios de parada
finalizar o treinamento aps n ciclos
finalizar o treinamento aps o erro quadrtico mdio
ficar abaixo de uma constante
finalizar o treinamento quando a porcentagem de
classificaes corretas estiver acima de uma constante
(mais indicado para sadas binrias)
combinao dos mtodos acima
120/164

Rede de Hopfield

Rede cclica ou recorrente


alimenta a sua sada nas suas prprias entradas
As unidades assumem um estado binrio
ativo ou inativo
estas unidades esto conectadas entre si por
arestas simtricas com pesos
arestas com pesos positivos indicam que as
duas unidades tendem a ativar uma a outra
arestas com pesos negativos indica que uma
unidade ativa pode desativar outra unidade
121/164

Rede de Hopfield
122/164

Rede de Hopfield

Dado um padro que procuramos, podemos


encontrar um que se aproxime, sem precisar ser
exato
O que um elefante?
um mamfero grande e cinza

O aprendizado no supervisionado e baseado no


conceito de energia da rede
123/164

Rede de Hopfield
Algoritmo
Uma unidade aleatria escolhida
Se qualquer um dos vizinhos estiver ativo, a
unidade computar a soma dos pesos das
conexes com os neurnios vizinhos ativos
se a soma for positiva, a unidade ficar ativa
se a soma for negativa, a unidade ficar inativa

Uma outra unidade aleatria escolhida e o


processo se repete
at que toda rede atinja um estado estvel
relaxamento paralelo
124/164

Rede de Hopfield

Conexes -1
simtrica e
ponderadas unidade
-1 ativa
+1 +3

unidade -1
inativa

+2 +3
+1 -2

+1 -1
125/164

Rede de Hopfield

-1
unidade
escolhida
aleatoriamente -1
+1 +3
-1
+4 -1= +3 ?

+2 +3
+1 -2

+1 -1
126/164

Rede de Hopfield

-1

-1
+1 +3
-1

+2 +3
+1 -2
+1 -1
?
escolhida +2 -3 = -1
127/164

Rede de Hopfield
escolhida
-1
? +3 -2 = +1
-1
+1 +3
-1

+2 +3
+1 -2

+1 -1
128/164

Rede de Hopfield

escolhida -1
?
+1 -2 = -1 -1
+1 +3
-1

+2 +3
+1 -2

+1 -1
129/164

Rede de Hopfield

-1

-1
+1 +3
-1

+2 +3
+1 -2

?
+1 -1
escolhida +3 -0 = +3
130/164

Rede de Hopfield

-1

-1
+1 +3
+6 -4 = +2
-1
? escolhida

+2 +3
+1 -2

+1 -1
131/164

Rede de Hopfield

-1

-1
+1 +3
-1

+2 +3
+1 -2 +3 -1 = +2

? escolhida
+1 -1
132/164

Rede de Hopfield

-1

-1
+1 +3
-1

+2 +3
+1 -2

+1 -1
133/164
Rede de Hopfield
Caracteristicas interessantes

Controle distribudo e assncrono


cada elemento de processamento toma
decises baseadas apenas em sua
prpria situao local

Memria accessvel pelo contedo


vrios
padres podem ser armazenados
em uma mesma rede
134/164
Rede de Hopfield
Caracteristicas interessantes
Tolerncias a falhas
se algum dos elementos de processamento
se comportarem mal ou falharem totalmente,
a rede ainda funcionar bem

Fator de aproximao
por exemplo:
peixe, grande, cinza e come placton???
Baleia
Baleia no peixe e sim mamfero
135/164

Desenvolvimento de aplicaes

1. 2. Coleta de dados e separao em


conjuntos
esta tarefa requer uma anlise cuidadosa sobre
o problema para minimizar ambigidades e erros
nos dados

os dados coletados devem ser significativos e


cobrir amplamente o domnio do problema
no devem cobrir apenas as operaes normais ou
rotineiras, mas tambm as excees e as condies
nos limites do domnio do problema
136/164

Desenvolvimento de aplicaes

1. 2. Coleta de dados e separao em


conjuntos
os dados coletados so separados em duas
categorias:
dados de treinamento
dados de teste
137/164

Desenvolvimento de aplicaes

3. Configurao da rede: pode ser dividido em trs


etapas:
3.1 Seleo do paradigma neural apropriado aplicao
acclica ou recorrente (cclica)

3.2 Determinao da topologia da rede a ser utilizada


nmero de camadas, nmero de unidades em cada camada, etc.

3.3 Determinao de parmetros do algoritmo de


treinamento e funes de ativao
este passo tem um grande impacto na performance do sistema
resultante
138/164

Desenvolvimento de aplicaes

4. Treinamento
seguindo o algoritmo de treinamento escolhido,
sero ajustados os pesos das conexes
importante considerar, nesta fase, alguns
aspectos
a inicializao da rede
o modo de treinamento
o tempo de treinamento
o treinamento deve ser interrompido quando
a rede apresentar uma boa capacidade de
generalizao
quando a taxa de erro for suficientemente pequena
139/164

Desenvolvimento de aplicaes

5. Teste
durante esta fase o conjunto de teste utilizado
para determinar a performance da rede com
dados que no foram previamente utilizados
a performance da rede, medida nesta fase,
uma boa indicao de sua performance real

6. Implantao
140/164

Aplicaes
Sistemas de auxlio ao Diagnstico: Mdico,
Falhas de Sistemas etc.

Previso de Sries Temporais: Cotaes da


Bolsa de Valores, Dados Econmicos,
Consumo de Energia Eltrica, Metereologia etc.

Processamento de Linguagem Natural - PLN


(Textos e Web)
141/164

Aplicaes
Data Mining & KDD (Knowledge Data Discovery)

Robtica Inteligente

Sistemas de Controle e Automao

Reconhecimento e Sntese de Voz

Processamento de Sinais e Imagens: Radar,


Sensores, Imagens de satlite etc.
142/164

Aplicaes
Prognsticos de mercados financeiros
Reconhecimento tico de caracteres (OCR)
Controle de processos industriais
Anlise de jogadores e times (NBA)
Reconhecimento da fala
Piloto automtico
Reproduo da fala
SE
143/164

Educao
Em software educacionais:
identificar deficincias
auxiliando
avaliar desempenhos
prevendo problemas
aprendendo
144/164

Consideraes finais
Vantagens das RNAs
Aplicaes de Machine Learning e Sistemas
Adaptativos
Aplicadas em tarefas onde temos bases de
exemplos disponveis sobre um determinado
problema, realizando a aquisio automtica de
conhecimentos
Associao de padres de entradas e sada
Classificao de padres de forma
supervisionada ou no
145/164

Consideraes finais
Vantagens das RNAs
Aproximao de funes desconhecidas atravs
de amostras destas funes
Trabalhar com dados aproximados, incompletos
e inexatos
Paralelismo, generalizao, robustez
Tarefas complexas realizadas por seres
humanos
146/164

Consideraes finais
Limitaes das RNAs

Composio e construo de conhecimentos


estruturados
Dificuldade de explicitao dos conhecimentos
adquiridos
Dificuldade para definir a estrutura da rede,
seus parmetros e a base de dados
Falta de garantia de uma convergncia do
algoritmo para uma soluo tima
147/164

Consideraes finais
Apesar da neurocomputao ter nascido
praticamente junto com a computao
programada (dcadas de 40 dcada de
50), era invivel que se desenvolvesse

E o seu futuro???
comparvel inveno do avio
148/164
Perceptrons
EXERCCIO
Treinamento

Ensinar uma rede Perceptron a classificar os seguintes


padres:

-1 -1 -1 +1 +1 +1
Utilizar a rede treinada para classificar os padres

-1 +1 -1 +1 -1 +1 +1 -1 -1
149/164

Perceptrons
EXERCCIO n

Codificar as entradas
i 1
x i w i
Sada desejada Entrada S = 1
S<=1
=1 = 111

= -1 = -1-1-1 Equao do erro:


Supor = 0.2, = 0, onde
E = Sd - So
Sd a sada desejada
w0 = 0.4, w1 = -0.8, w0 = 0.3 So a sada obtida

Fator de correo:
w0 F = *x*E
onde
w1 N = taxa de aprendizagem
xjwj x a entrada
d E o erro
w2 j=1

Equao do ajuste:
wnovo = w + F
150/164

Perceptrons
EXERCCIO
Treinar a rede
para o padro -1-1-1 (d = -1)

Passo 1: definir a sada da rede


Supor = 0.2, = 0, w0 = 0.4, w1 = -0.8, w0 = 0.3

n
x i w i
i 1

S = (-1)(0.4) + (-1)(-0,8) + (-1)(0.3) = 0.1


y = +1 (uma vez que 0,1 0)
como (d y), atualizar pesos
151/164

Perceptrons
EXERCCIO
Treinar a rede
para o padro -1-1-1 (d = -1)

Passo 2: atualizar pesos


Supor = 0.2, = 0, w0 = 0.4, w1 = -0.8, w0 = 0.3

wi t+ 1 =w i +ex i
w0 = 0.4 + 0,2(-1)(-1 (+1)) = 0.8
w1 = -0.8 + 0,2(-1)(-1 (+1)) = -0.4
w2 = 0.3 + 0,2(-1)(-1 (+1)) = 0.7
152/164

Perceptrons
EXERCCIO
Treinar a rede
para o padro -1-1-1 (d = -1)

Passo 1: definir a sada da rede


Supor = 0.2, = 0, w0 = 0.8, w1 = -0.4, w0 = 0.7

n
x i w i
i 1

S = (-1)(0.8) + (-1)(-0,4) + (-1)(0.7) = -1


y = +1 (uma vez que +1 0)
como (d = y), no necessita atualizar pesos
153/164

Perceptrons
EXERCCIO
treinar a rede
para o padro 111 (d = 1)

Passo 1: definir a sada da rede


S = (1)(0.8) + (1)(-0,4) + (1)(0.7) = 1.1
y = +1 (uma vez que 1,1 0)
como (d = y), no precisa atualizar
pesos

Agora fazer os testes


154/164

Perceptrons
EXERCCIO
Validao:
testar a rede
Para o padro -11-1

Para o padro 1-11

Para o padro 1-11


155/164

Perceptrons
EXERCCIO
Validao: testar a rede
Para o padro -11-1
s = (-1)(0.8) + (1)(-0,4) + (-1)(0.7) = -1.9 (classe 1)

Para o padro 1-11


s = (1)(0.8) + (-1)(-0,4) + (1)(0.7) = 1.9(classe 2)

Para o padro 1-11


s = (1)(0.8) + (-1)(-0,4) + (-1)(0.7) = 0,5 (classe 2)
Perceptrons
EXERCCIO
Treinamento

Ensinar uma rede Perceptron a classificar os seguintes


padres:

-1 -1 -1 +1 +1 +1
Utilizar a rede treinada para classificar os padres

-1 +1 -1 +1 -1 +1 +1 -1 -1
157/164

Perceptrons
EXERCCIO
Codificar as entradas n
x i w i

Sada desejada Entrada i 1
=1 = 111 S = 1
S<=1
= -1 = -1-1-1
Supor = 0.2, = 0, Equao do erro:
E = Sd - So
w0 = 0.4, w1 = -0.8, w2 = 0.3 onde
Sd a sada desejada
So a sada obtida

Fator de correo:
w0 F = *x*E
onde
w1 N = taxa de aprendizagem
xjwj x a entrada
d E o erro
w2 j=1

Equao do ajuste:
wnovo = w + F
158/164

Perceptrons
EXERCCIO
Treinar a rede
para o padro -1-1-1 (d = -1)

Passo 1: definir a sada da rede


Supor = 0.2, = 0, w0 = 0.4, w1 = -0.8, w2 = 0.3

n
x i w i
i 1

S = (-1)(0.4) + (-1)(-0,8) + (-1)(0.3) = 0.1


y = +1 (uma vez que 0,1 0)
como (d y), atualizar pesos
159/164

Perceptrons
EXERCCIO
Treinar a rede
para o padro -1-1-1 (d = -1)

Passo 2: atualizar pesos


Supor = 0.2, = 0, w0 = 0.4, w1 = -0.8, w2 = 0.3

wi t+ 1 =w i +ex i
w0 = 0.4 + 0,2(-1)(-1 (+1)) = 0.8
w =
1 -0.8 + 0,2(-1)(-1 (+1)) = -0.4
w =
2 0.3 + 0,2(-1)(-1 (+1)) = 0.7
160/164

Perceptrons
EXERCCIO
Treinar a rede
para o padro -1-1-1 (d = -1)

Passo 1: definir a sada da rede


Supor = 0.2, = 0, w0 = 0.8, w1 = -0.4, w2 = 0.7

n
x i w i
i 1

S = (-1)(0.8) + (-1)(-0,4) + (-1)(0.7) = -1


y = +1 (uma vez que +1 0)
como (d = y), no necessita atualizar pesos
161/164

Perceptrons
EXERCCIO
treinar a rede
para o padro 111 (d = 1)

Passo 1: definir a sada da rede


S = (1)(0.8) + (1)(-0,4) + (1)(0.7) = 1.1
y = +1 (uma vez que 1,1 0)
como (d = y), no precisa atualizar
pesos

Agora fazer os testes


162/164

Perceptrons
EXERCCIO

Validao: testar a rede


Para o padro -11-1

Para o padro 1-11

Para o padro 1-11


163/164

Perceptrons
EXERCCIO

Validao: testar a rede


Para o padro -11-1 (classe 1)
s = (-1)(0.8) + (1)(-0,4) + (-1)(0.7) = -1.9

Para o padro 1-11 (classe


2)
s = (1)(0.8) + (-1)(-0,4) + (1)(0.7) = 1.9

Para o padro 1-11 (classe


2)
s = (1)(0.8) + (-1)(-0,4) + (-1)(0.7) = 0,5
164/164

Referncias
Russel, S, & Norvig, P. (1995). Artificial
Intelligence: a Modern Approach Prentice-
Hall. Cap.20.
Pearl, J. (1988) Probabilistic Reasoning in
Inteligent Systems