You are on page 1of 142

TreinamentoCOELCECEFETUFC

MDULOI2008.1

RedesNeuraisArtificiais:
UmaIntroduoPrtica
Prof.Dr.GuilhermedeAlencarBarreto
Depto.EngenhariadeTeleinformtica(DETI/UFC)
URL:www.deti.ufc.br/~guilherme
Email:guilherme@deti.ufc.br
Janeiro/2008

Ementa
1.Funcionalidadesdoneurniobiolgico
2.NeurnioartificialdeMcCullochPitts(MP)
3.AnlisegeomtricadoneurnioMP
4.PortaslgicasAND,OReNOT
5.RedePerceptronSimples(PS)eaplicaes
6.ProblemasnolinearmenteseparveiseaportalgicaXOR
7.ImplementaodaportalgicaXORviaredesmulticamadas
8.RedePerceptronMulticamadas(MLP)
9.Algoritmoderetropropagaodoerro(errorbackpropagation)
10.Dicasdetreinamento,testeevalidaodaredeMLP

MaterialDidtico
1.NotasdeaulaemPDF.
2.Principe,J.C.,Euliano,N.R.&Levebvre,W.C.(2000).
NeuralandAdaptiveSystems:Fundamentalsthrough
Simulations,1a.Edio,JohnWileyandSons.
3.ApostiladeRedesNeurais,PPGETIDETIUFC.
4.TutorialdoSoftwareNeuroSolutions.

1.ONeurnioBiolgico
Oneurnioantesdetudoumaclula,masumaclulaespecial.
Partes:(i)dendritos,(ii)sinapses,(iii)corpocelulare(iv)axnio

1.ONeurnioBiolgico
(i)dendritosRamificaescorrespondentesaoscanaisdeentrada
deinformao(sinaiseltricos,escalamVolts).
(ii)sinapsesPontosdecontatoentreneurniosondehpassagemde
neurotransmissoresdoaxniodeumneurnioparaos
dendritosdeoutroneurnio.
(iii)corpocelularLocalondefeitoobalanoenergticodaclula
nervosa(somadascontribuiesdeenergia).
(iv)AxnioCanaldesadadoneurnio,ouseja,caminhode
propagaodosimpulsosnervososemdireoaoutros
neurniosoumsculos.

1.ONeurnioBiolgico
Ofluxodainformaoocorresemprenosentido:
DendritosCorpoCelularsAxnio

1.ONeurnioBiolgico
Oaxnioemiteumimpulsoeltrico(potencialdeao)apenasseobalano
energticorealizadonocorpocelularformaiorqueumcertolimiar.Neste
caso,dizsequeoneurniodisparououestativado.

Potencialderepouso:70mV
Limiardedisparo:55mV

1.ONeurnioBiolgico
Umneurniodevidamenteestimuladoemiteumtremdepotenciaisdeao
aolongodeseuaxnio.
Ainformaoentocodificadana
freqnciadospotenciaisdeao!

1.ONeurnioBiolgico
Achegadadeumtremdepulsonobotosinpticolocalizadonaregio
terminaldoaxnioprovocaaliberaodetransmissoresnafendasinptica.

Sinapsespodemserexcitatrias(facilitamapassagemdopotencialdeao)
ouinibitrias(inibemapassagemdopotencialdeao).

1.ONeurnioBiolgico
Neurniospodemseconectarcomoutrosneurnios...

1.ONeurnioBiolgico
...comosmsculosdiretamente...

1.ONeurnioBiolgico
...oucomorgossensoriais(e.g.viso).

1.ONeurnioBiolgico
FatosCuriosos
Hcercade100bilhesdelesnocrebroenacolunavertebral.
Cadaneurniotemcercade10.000sinapsescomoutrosneurnios.
Amaioriadelesestlocalizadonocrtexcerebral.
Ocrtexexisteapenasnoscrebrosdemamferos.
Ocrtexidentificadopopularmentecomomassacinzenta.
Ocrtexaestruturaresponsvelpelashabilidadescognitivas
superiores, tais como memria, raciocnio lgico, linguagem,
conscincia,dentreoutras.

1.ONeurnioBiolgico
MaisFatosCuriosos
Ocrebroproduzsimnovosneurnios(e.g.hipocampo).
Otempodepropagaodeumimpulsonoaxniodaordemde
milissegundos!

milissegundos????
Logo,afreqnciadedisparodeumneurniodaordemdekHz!
Comopodeumelementotolento,executartarefastorpido???

1.ONeurnioBiolgico
ConsumoEnergticodoCrebroHumano
Opesodocrebroaprox.2%dopesodeumapessoa.
Mesmoemrepouso,ocrebroconsome20%desuaenergia.
Assim,seoconsumomdiodeenergiadeumadultotpico
de100W.Entoocrebroconsomeemmdia20W.
Ocrebroconsome10vezesmaisenergiaqueorestodocorpo
porgramadetecido.

Ementa
1.Funcionalidadesdoneurniobiolgico
2.NeurnioartificialdeMcCullochPitts(MP)
3.AnlisegeomtricadoneurnioMP
4.PortaslgicasAND,OReNOT
5.RedePerceptronSimples(PS)eaplicaes
6.ProblemasnolinearmenteseparveiseaportalgicaXOR
7.ImplementaodaportalgicaXORviaredesmulticamadas
8.RedePerceptronMulticamadas(MLP)
9.Algoritmoderetropropagaodoerro(errorbackpropagation)
10.Dicasdetreinamento,testeevalidaodaredeMLP

2.NeurniodeMcCullochPitts
Modelomatemticodeumneurniobiolgicopropostoem

bomlembrarquetodomodeloapenasumaaproximaodofenmeno
ouobjetorealcujasfuncionalidadessepretendeestudar.
Allmodelsarewrong,butsomeareuseful.
GeorgeE.P.Box

Assim,oneurnioMPumaaproximaotildoneurnioreal,poisserve
athojecomoblococonstrutivobsicodealgoritmosderedesneurais.

2.NeurniodeMcCullochPitts
Na construo do neurnio MP se est interessado em modelar
aspectos ligados ao Processamento da Informao em um
neurniobiolgico.
Entendeseporprocessamentodainformaooscaminhoseetapas
pelasquaispassamospotenciaisdeaoquetrafegamde
(i)umneurnioaoutroneurnio,
(ii)receptoressensoriaisaumneurnio,ou
(iii)deumneurnioaumatuador(e.g.msculo).
Assim,devemosdesenvolvermodelosmatemticosquerepresentem
osdendritos,assinapses,ocorpocelulareoaxnio.

2.NeurniodeMcCullochPitts
Passo1:Cadaramodarvoredendrticamodeladocomoumalinhaou
canaldetransmissoporondefluiainformaodeentrada(xj,j=1,...,p).

2.NeurniodeMcCullochPitts
Passo 2: A fora (ou eficincia)das conexessinpticasde uma certa
rvoredendrticamodeladacomoumfator(pesosinptico),cujopapel
modularofluxodesinaispassandoporumacertarvoredendrtica.

2.NeurniodeMcCullochPitts
Passo 3: A funo do corpo celular de realizar o balano ou
acmulo energtico modelada por uma operao de somatrio
sobreasentradasmoduladaspelospesossinpticos.
u=w1x1+w2x2+....+wpxp

x1,x2:entradas
w1,w2:pesossinpticos
:limiar(bias)
u:ativao

2.NeurniodeMcCullochPitts
Passo4:OaxniomodeladocomoumachaveONOFF,queindicase
oneurniorespondeuaoestmuloatual.Emoutraspalavras,sehouve
ounooenviodeumpotencialdeao.

y=sinal(u)=+1,seu>0
y=sinal(u)=1,casocontrrio.

2.NeurniodeMcCullochPitts
ModeloCompletodoNeurnioArtificialdeMcCullochPitts

Ementa
1.Funcionalidadesdoneurniobiolgico
2.NeurnioartificialdeMcCullochPitts(MP)
3.AnlisegeomtricadoneurnioMP
4.PortaslgicasAND,OReNOT
5.RedePerceptronSimples(PS)eaplicaes
6.ProblemasnolinearmenteseparveiseaportalgicaXOR
7.ImplementaodaportalgicaXORviaredesmulticamadas
8.RedePerceptronMulticamadas(MLP)
9.Algoritmoderetropropagaodoerro(errorbackpropagation)
10.Dicasdetreinamento,testeevalidaodaredeMLP

3.AnliseGeomtrica
Sejaoneurnioartificialmostradonafiguraabaixo.
x1,x2:entradas
w1,w2:pesossinpticos
:limiar(bias)
u:ativao
Aativao(u)doneurniodadapor:

u=w1x1+w2x2(1)

3.AnliseGeomtrica
AEq.(1)defineumplanoem(x1,x2,u).

Obs:Otracejadoindicaondeoplanoestabaixodoplano(x1,x2).

3.AnliseGeomtrica
Parafinsdeclassificaobastatrabalharnoplano(x1,x2).
Istoequivaleafazeru=0naequaodoplano,ouseja:
u=w1x1+w2x2 =0
Assim,aequaodaretanoplano(x1,x2)dadapor:
x2=(w1/w2)x1+/w2(2)

3.AnliseGeomtrica

AEq.(2)defineaseguinteretaem(x1,x2).

3.AnliseGeomtrica
Assim,umneurniopodeserusadoparasepararcomeficincia
duasclassesqueestejambemisoladasumadaoutra.

Ementa
1.Funcionalidadesdoneurniobiolgico
2.NeurnioartificialdeMcCullochPitts(MP)
3.AnlisegeomtricadoneurnioMP
4.PortaslgicasAND,OReNOT
5.RedePerceptronSimples(PS)eaplicaes
6.ProblemasnolinearmenteseparveiseaportalgicaXOR
7.ImplementaodaportalgicaXORviaredesmulticamadas
8.RedePerceptronMulticamadas(MLP)
9.Algoritmoderetropropagaodoerro(errorbackpropagation)
10.Dicasdetreinamento,testeevalidaodaredeMLP

4.PortasLgicasAnd,OreNot
QualarelaoentreportaslgicaseIntelignciaArtificial?
George Boole (1854). An investigation into the Laws of
Thought,onWhichareFoundedtheMathematicalTheoriesof
LogicandProbabilities.

George Boole (02/11/1815 08/12/1864).


Matemtico e filsofo britnico. o criador da
lgebra Booleana, base da atual aritmtica
computacional.

4.PortasLgicasAnd,OreNot
Exemplo1:Implementandofuneslgicas(AND,OR,NOT).
RepresentaodoProblema(FunoOR)

4.PortasLgicasAnd,OreNot
Exemplo1(cont.):possvelencontrarumaretaquesepareos
pontosdaClasse1(y=1)dosdaClasse2(y=0)?

Resposta:SIM!

Obs:Naverdade,possvelencontrarinfinitasretasqueseparamasduasclasses!

4.PortasLgicasAnd,OreNot
Exemplo2:OseguinteneurnioimplementaaportaOR.
w1=w2=1e=0,5
y=1,seu0.
y=0,seu<0.

4.PortasLgicasAnd,OreNot
Exemplo3:OseguinteneurnioimplementaaportaAND.
w1=w2=1e=1,5
y=1,seu0.
y=0,seu<0.

4.PortasLgicasAnd,OreNot
Exemplo4:OseguinteneurnioimplementaaportaNOT.
w1=1e=0,5
y=1,seu0.
y=0,seu<0.

4.PortasLgicasAnd,OreNot
IMPORTANTE1
O neurnio MP pode ser usado para implementar as portas
lgicas AND, OR e NOT porque estas, do ponto de vista
geomtrico, podem ser interpretadas como um problema de
classificaobinria(duascategorias).

4.PortasLgicasAnd,OreNot
IMPORTANTE2
O neurnio MP, do ponto de vista geomtrico, pode ser
intepretado como uma reta (2D), ou um plano (3D) ou ainda
um hiperplano (> 3D), que usado para separar duas
categoriasdedadosdistintas.

4.PortasLgicasAnd,OreNot
IMPORTANTE3
Na implementao das portas lgicas AND, OR e NOT, os
valores dos pesos e do limiar foram determinados pelo
projetistacombasenaanlisegeomtricadoproblema.
Como fazer com que o neurnio MP determine de forma
automticaosvaloresdospesosedolimiarparaumproblema
especfico?

4.PortasLgicasAnd,OreNot
IMPORTANTE4
Para que o neurnio MP seja capaz de aprender sozinho a
resolverumproblemadeclassificaonecessriodotlode
umaregradeaprendizagem.
Umaregradeaprendizagemnadamaisdoqueumaequao
quealteraosvaloresdospesosedolimiaremfunodoserros
cometidosduranteaexecuodatarefadeclassificao.

4.PortasLgicasAnd,OreNot
Memorex1
OneurnioMPummodelosimplificadodoneurnioreal.
OneurnioMPpossuipvariveisdeentrada:x1,x2,...,xp
OneurnioMPpossuippesossinpticos:w1,w2,...,wp
OneurnioMPpossuiumlimiardeativao:
OneurnioMPpossuiumavariveldeativao:u
u=w1x1+w2x2+....+wpxp

OneurnioMPpossuiumavariveldesada:y
y=sinal(u)=+1(seu>0)ou1(seu0)

4.PortasLgicasAnd,OreNot
Memorex2
OneurnioMPnadamaisdoqueumachaveON/OFF.
O neurnio MP pode ser utilizado para implementar portas
lgicasAND,OReNOT.
Ascondiesquedefinemaativao(y=1)ouno(y=0ou1)
doneurniodependedosvaloresdospesosedolimiar.
Assim,podeserutilizadoemproblemasdereconhecimentode
padresqueenvolvamduascategorias(binrios).

Ementa
1.Funcionalidadesdoneurniobiolgico
2.NeurnioartificialdeMcCullochPitts(MP)
3.AnlisegeomtricadoneurnioMP
4.PortaslgicasAND,OReNOT

5.RedePerceptronSimples(PS)eaplicaes

6.ProblemasnolinearmenteseparveiseaportalgicaXOR
7.ImplementaodaportalgicaXORviaredesmulticamadas
8.RedePerceptronMulticamadas(MLP)
9.Algoritmoderetropropagaodoerro(errorbackpropagation)
10.Dicasdetreinamento,testeevalidaodaredeMLP

5.RedePerceptronSimples(PS)
AredePSconsideradaoprimeiroalgoritmoderedesneuraisartificiais.
AredePSfoipropostaporFrankRosenblattem1958.

PerceptronSimples=NeurniodeMP+RegradeAprendizagem
AregradeaprendizagemomecanismoquetornaaredePerceptron
Simplesumdispositivointeligente!

5.RedePerceptronSimples(PS)
Para facilitar a anlise as variveis de entrada e os pesos vo ser
representadoscomovetoresdeagoraemdiante.

x0 1

w0

x=x1 =x1

w=w1 =w1

: :

xp xp

wp wp

5.RedePerceptronSimples(PS)
MtodosGeomtrcos
Umvetorumacoordenada(ponto)emumespaodedimensop.

5.RedePerceptronSimples(PS)
ComprimentodeumVetorem2D

v= x 2 y 2

x=v. cos
y=v. sin

OBS:UsarteoremadePitgoras!

5.RedePerceptronSimples(PS)
ComprimentodeumVetorem3D

v= x 2 y 2 z 2

OBS:UsarteoremadePitgorasduasvezes!

5.RedePerceptronSimples(PS)
ProdutoEscalarentre2Vetores
Definio1:

u=w x=x w
=w 0 x 0 w1 x 1...w p x p

Oprodutoescalardefinidocomooprodutodeumvetorlinhapor
umvetorcoluna,oqueequivaleamultiplicarcadacomponentede
um vetor pelo seu correpondenteno outro vetor e depois somar
cadaproduto.

5.RedePerceptronSimples(PS)
ProdutoEscalarentre2Vetores
Definio2:

u=w.x. cos

Alternativamente, o produto escalar pode ser definido como o


produtodos comprimentosdos vetorescom o cossenodo menor
nguloentreeles.

OBS:Asduasdefiniessoequivalentes!

5.RedePerceptronSimples(PS)
ProdutoEscalarentre2Vetores
Exemplo:Calculeoprodutoescalardos2vetoresabaixousandoas
duasdefiniesanteriores.
w0

w=
= 0
1
w1

[ ][]

Definio 1:
Definio 2:

x=

x0

=1
1
x1

[ ][]

u=w 0 x 0 w 1 x 1 =0111=1

u=w.x. cos=1. 2. cos45=1. 2.

2 =1
2

5.RedePerceptronSimples(PS)
ProdutoEscalarentre2Vetores
Oprodutoescalarumamedidadesimilaridadeentrevetores.
Paravetoresdecomprimentofixo,quantomenoronguloentre
eles,maiorovalorresultantedoprodutoescalar.
Exxemplo:0 90o

5.RedePerceptronSimples(PS)
ProdutoEscalarentre2Vetores
Vimosqueoprodutoescalarumamedidadesimilaridadeentrevetores.
Paravetoresdecomprimentofixo,quantomenoronguloentre
eles,maiorovalorresultantedoprodutoescalar.
Osinaldoprodutoescalartambmumitemimportantena
anlisedaorinetaoentreosdoisvetores.
Osinaldependebasicamentedonguloentreosvetores.

5.RedePerceptronSimples(PS)
ProdutoEscalarentre2Vetores
Caso1:0 < 90o

cos()>0u>0(positivo)

5.RedePerceptronSimples(PS)
ProdutoEscalarentre2Vetores
Caso2:90o< 180o

cos()<0u<0(negativo)

5.RedePerceptronSimples(PS)
AtivaodoNeurnioMPnaFormaVetorial
T

u=w x=x w
=w 0 x 0 w1 x 1...w p x p
=w1 x 1...w p x p
PodemosentenderaequaodaativaodoneurnioMPcomo:
(i)umareta(ouplano)queseparaoespaodeentradaemdois
semiplanos.
(ii)oprodutoescalardovetordeentrada(x)comovetorde
pesos(w).

5.RedePerceptronSimples(PS)
RegradeAprendizagemdoPerceptronSimples
Aformavetorialdaativao(u)nosajudarnoprocessodeobteno
deumaregradeaprendizagemparaoneurnioMP.
Oprocessodeaprendizagemconsistenamodificaodospesosedo
limiardoneurnioMPatqueeleresolvaoproblemadeinteresseou
queoperododeaprendizagemtenhafinalizado.
Aregradeaprendizagemumafunode2fatores:
(i)Erroentreasadadesejada(d)easadageradapelarede(y):
e=dy
(ii)Informaofornecidapelovetordeentrada(x).

5.RedePerceptronSimples(PS)
RegradeAprendizagemdoPerceptronSimples
Oprocessodeaprendizagem,ouseja,demodificaodosparmetros
doneurnioMPguiadopeloerro(e)epelovetordeentrada(x)!

5.RedePerceptronSimples(PS)
Comoprojetarentoumaregradeaprendizagem?
Umaregradeaprendizagempodeserprojetadacombaseem
(i)Argumentosgeomtricosouempricos.
(ii)Critriosdeotimizaodefunocusto.
Emgeral,umaregradeaprendizagemtemaseguinteforma:
w(t+1)=w(t)+w(t)
w(t)=memria(conhecimentoatual).
w(t)=incrementonamemria(informaoadquirida)
w(t+1)=memriamodificadacomacrcimodenovainformao.

5.RedePerceptronSimples(PS)
Doexpostoemslidesanteriores,podemosescreverque:
w(t)=F(e(t),x(t))
ondetindicaoinstantedeapresentaodovetordeentrada.
Vamosutilizarargumentosgeomtricosparaobteraregradeaprendizagem
doneurnioMP.
Paraisso,vamosanalisarospossveisvaloresqueavarivelerro(e)pode
assumir.
Caso1:e=dy=+1(d=+1ey=0)
Caso2:e=dy=1(d=0ey=+1)
Caso3:e=dy=0(d=+1ey=+1)ou(d=0ey=0)

5.RedePerceptronSimples(PS)
Caso1:e=dy=+1(d=+1ey=0)
Situaoocorrida(u<0,y=0):

Situaodesejada(u>0,y=1):

5.RedePerceptronSimples(PS)
Caso1[e(t)=+1]:Ovetorwdevesermodificadoparaseaproximardex.
w(t+1)=w(t)+x(t)

5.RedePerceptronSimples(PS)
Caso2:e=dy=1(d=0ey=+1)
Situaoocorrida(u>0,y=+1):

Situaodesejada(u<0,y=0):

5.RedePerceptronSimples(PS)
Caso2[e(t)=1]:Ovetorwdevesermodificadoparaseafastardex.
w(t+1)=w(t)x(t)

5.RedePerceptronSimples(PS)
Caso3a:e=dy=0(d=+1ey=+1)
Situaoocorrida=Situaodesejada(u>0,y=+1)

Comohouveumacerto,noprecisomodificarovetorw.

5.RedePerceptronSimples(PS)
Caso3b:e=dy=0(d=0ey=0)
Situaoocorrida=Situaodesejada(u<0,y=0)

Comohouveumacerto,noprecisomodificarovetorw.

5.RedePerceptronSimples(PS)
Caso3[e(t)=0]:Ovetorwnodevesermodificado.
w(t+1)=w(t)
Caso3a

Caso3b

5.RedePerceptronSimples(PS)
RegradeAprendizagemdoPerceptron
As trs equaes dos slides anteriores podem ser combinadas em uma
nicaequaoquedependedoerroedovetordeentradax:
w(t+1)=w(t)+e(t)x(t)
A fim de tornar o processo de ajuste do vetor w maisestvel, comum
introduzir na equao anterior um fator , chamado de passo de
aprendizagem:
w(t+1)=w(t)+e(t)x(t)
Emque0< <<1.

5.RedePerceptronSimples(PS)
ResumodoAlgoritmodoPercepronSimples

PerceptronSimples=NeurniodeMP+RegradeAprendizagem

w(t+1)=w(t)+e(t)x(t)

5.RedePerceptronSimples(PS)
ResumodoAlgoritmodoPercepronSimples

1.Incio(t=0)
2.Funcionamento

3.Treinamento

1.1Definirvalordeentre0e1.
1.2Iniciarw(0)comvaloresnulosoualeatrios.
2.1Selecionarvetordeentradax(t).
2.2Calcularativaou(t).
2.3Calcularsaday(t).
3.1Calcularerro:e(t)=d(t)y(t)
3.2Ajustarpesosviaregradeaprendizagem.
3.3Verificarcritriodeparada.
3.3.1Seatendido,finalizartreinamento.
3.3.2Casocontrrio,fazert=t+1eirparaPasso2.

5.RedePerceptronSimples(PS)
ExemploPassoaPasso:AprendendoaPortaLgicaOR.
t=0:Iniciarcomzerosospesoseolimiar.
w 1 0=w 2 0=0=0

Logo:
0
0
w0= w 0 = 0
1
0
w 0

[ ][]
2

1
x t = x t
1

[ ]
x 2 t

Passodeaprendizagemescolhido:=0,5;

5.RedePerceptronSimples(PS)
t=1:Calcularsadaparaw(1)=[000]ex(1)=[100].
u(1)=(0)(1)+(0)(0)+(0)(0)=0=>y(1)=0,e(1)=0.
0
1
0
w2=w 1 e 1x 1= 0 0,50 0 = 0 =w 1
0
0
0

[] [ ][]

t=2:Calcularsadaparaw(2)=[000]ex(2)=[101].
u(2)=(0)(1)+(0)(0)+(0)(1)=0=>y(2)=0,e(2)=1
0
1 0,5
w3=w 2 e2 x 2= 0 0,51 0 = 0
0
1
0,5

[] [ ][ ]

5.RedePerceptronSimples(PS)
t=3:Calcularsadaparaw(3)=[0,500,5]ex(3)=[110].
u(3)=(0,5)(1)+(0)(1)+(0,5)(0)=0,5=>y(3)=1,e(1)=0.
w4=w 3

t=4:Calcularsadaparaw(4)=[0,500,5]ex(4)=[111].
u(4)=(0,5)(1)+(0)(1)+(0,5)(1)=1=>y(4)=1,e(4)=0.
w5=w 4

t=5:Calcularsadaparaw(5)=[0,500,5]ex(5)=[100].
u(5)=(0,5)(1)+(0)(0)+(0,5)(0)=0,5=>y(5)=1,e(5)=1.
0,5
1
0
w6=w5 e5x 5= 0 0,51 0 = 0
0,5
0
0,5

[ ]

[ ][ ]

5.RedePerceptronSimples(PS)
t=6:Calcularsadaparaw(6)=[000,5]ex(6)=[101].
u(6)=(0)(1)+(0)(0)+(0,5)(1)=0,5=>y(6)=1,e(6)=0.
w7=w6

t=7:Calcularsadaparaw(7)=[000,5]ex(7)=[110].
u(7)=(0)(1)+(0)(1)+(0,5)(0)=0=>y(7)=0,e(7)=1.
0
1 0,5
w8=w7 e 7 x 7= 0 0,51 1 = 0,5
0,5
0
0,5

[ ] [ ][ ]

t=8:Calcularsadaparaw(8)=[0,50,50,5]ex(8)=[111].
u(8)=(0,5)(1)+(0,5)(1)+(0,5)(1)=0,5=>y(8)=1,e(8)=0.
w9=w8

5.RedePerceptronSimples(PS)
t=9:Calcularsadaparaw(9)=[0,50,50,5]ex(9)=[100].
u(9)=(0,5)(1)+(0,5)(0)+(0,5)(0)=0,5=>y(9)=1,e(9)=1.
0,5
1
0
w10=w9 e 9 x 9= 0,5 0,51 0 = 0,5
0,5
0
0,5

[ ]

[ ][ ]

t=10:Calcularsadaparaw(10)=[00,50,5]ex(10)=[101].
u(7)=(0)(1)+(0,5)(0)+(0,5)(1)=0,5=>y(10)=1,e(10)=0.
w11=w 10
t=11:Calcularsadaparaw(11)=[00,50,5]ex(11)=[110].
u(11)=(0)(1)+(0,5)(1)+(0,5)(0)=0,5=>y(11)=1,e(11)=0.
w12=w11

5.RedePerceptronSimples(PS)
t=12:Calcularsadaparaw(12)=[00,50,5]ex(12)=[111].
u(12)=(0)(1)+(0,5)(1)+(0,5)(1)=1=>y(12)=1,e(12)=0.
w13=w 12

t=13:Calcularsadaparaw(13)=[00,50,5]ex(13)=[100].
u(13)=(0)(1)+(0,5)(0)+(0,5)(0)=0=>y(13)=0,e(13)=0.
w14=w13

FIMdotreinamento!

5.RedePerceptronSimples(PS)
SoluoEncontrada:

0
w= w = 0,5
1
0,5
w

[ ][ ]
2

5.RedePerceptronSimples(PS)
SoluoEncontrada:

0
w= w = 0,5
1
0,5
w

[ ][ ]
2

Notequeestanoamelhordassolues,porquearetapassabem
em cima do ponto (0,0). Se os pesos tivessem sido iniciados
aleatoriamente,dificilmenteumasituaocomoessaocorreria.

5.RedePerceptronSimples(PS)
UmniconeurnioMPcategorizaapenasduasclassesdedados.
Em problemas com mltiplas classes, devese utilizar vrios
neurniosemparalelo.

5.RedePerceptronSimples(PS)
OisimoneurniodaredePSrepresentadonafiguraabaixo.

5.RedePerceptronSimples(PS)
Ofuncionamentodecadaneurnioindividualmenteomesmo.
Assim,aativaodoisimoneurniodaredePSdadapor:
T

u i =wi x=w i 1 x 1w i 2 x 2 ...wip x p

Asadadoisimoneurniodadapor:
T

y i =sinalu i =sinalwi x

Oerrodoisimoneurniodadopor:

ei =d i y i

ondediasadadesejadadoisimoneurnio.
i=1,...,Q(Q1onmerodeneurniosdesada).

5.RedePerceptronSimples(PS)
Comocadaneurniotemseuprpriovetordepesoswi ,i=1,2,
....,Q,entoteremosagoraQregrasdeaprendizagem!
Ouseja,umaregradeaprendizagemparacadavetorwi.
Assim,aregradeaprendizagemdoisimoneurniodadapor:
wi t1=wi t e i t x t
Emque0< <<1ei=1,2,...,Q.

5.RedePerceptronSimples(PS)
ResumodaRedePercepronSimples(Qneurnios)

1.Incio(t=0)
2.Funcionamento

3.Treinamento

1.1Definirvalordeentre0e1.
1.2Iniciarwi(0)comvaloresaleatrios.
2.1Selecionarovetordeentradax(t).
2.2CalcularasQativaesui(t).
2.3CalcularasQsadasyi(t).
3.1CalcularosQerros:ei(t)=di(t)yi(t)
3.2AjustarosQvetoresdepesoswi(t).
3.3Verificarcritriodeparada.
3.3.1Seatendido,finalizartreinamento.
3.3.2Casocontrrio,fazert=t+1eirparaPasso2.

5.RedePerceptronSimples(PS)
ParaoPS,existembasicamente2mtodosparaespecificarQ.
Mtodo1:Codificaobinriasimples.
SetenhoCclasses,entoQomaiorinteiroigualaou
menorque C .
Exemplo:SeC=6classes,entoQ>2,45=3.
Osvetoresdesadasdesejadassoconstrudosdoseguintemodo:
Classe1:

0
d= 0
1

[]

Classe2:

0
d= 1
0

[]

Classe3:

EassimpordianteataClasse6:d=[110]T.

0
d= 1
1

[]

5.RedePerceptronSimples(PS)
Mtodo2:Codificao1outofQ.
SetenhoCclasses,entoQ=C.
Exemplo:SeC=4classes,entoQ=4.
Neste mtodo apenas uma das componentes do vetor de sadas
desejadastemvaloriguala1,i.e.Osvetoresdsoortogonais.
Classe1:

1
d= 0
0
0

[]

Classe2:

0
d= 1
0
0

[]

Classe3:

EassimpordianteataClasse4:d=[0001]T.

0
d= 0
1
0

[]

5.RedePerceptronSimples(PS)
DicasparaProjetarumaRedePS
(1)Usarumataxadeaprendizagempequena(e.g.=0,1ou0,01).
(2)Usarvaloresdesadayi{1,+1},emvezdeyi{0,+1}.
(3)Mudaraordemdeapresentaodosvetoresdetreinamentoacada
pocadetreinamento,tornandoaaleatria.
(4)Usaromtododoisparadeterminaronmerodeneurnios(Q)ea
representaodosvetoresdesadasdesejadas(d).

5.RedePerceptronSimples(PS)
DicasparaProjetarumaRedePS
(5)Normalizarosvetoresdeentradaseasvariveisapresentaremordens
degrandezamuitodspares.
Recomendasedeixartodavarivelcomvalores
dentrodafaixa[0,+1]:

oudentrodafaixa[1,+1]:

x norm
=
j

x j x min
j
min
x max

x
j
j

x norm
=2 .
j

min

x j x j
x

max
j

min
j

5.RedePerceptronSimples(PS)
ExemploPrtico
(1)Problemadeauxlioaodiagnsticoemdermatologia.
(2)NmerodeclassesigualaC=6.

ClassePatologiaNo.decasos
1psoriasis
112
2seboreicdermatitis61
3lichenplanus72
4pityriasisrosea49
5cronicdermatitis52
6pityriasisrubrapilaris20

5.RedePerceptronSimples(PS)
(3)NmerototaldecasosclnicosN=366.
(4)Porcentagemdecasosusadosparatreinamento=80%.
(5)RepresentaodasadaviaMtodo2,logoQ=6.
(6)DoadoresdosDados
1.NilselIlter,M.D.,Ph.D.,2.H.AltayGuvenir,PhD.,
GaziUniversity,BilkentUniversity,
SchoolofMedicineDept.ComputerEngineering
06510Ankara,Turkey06533Ankara,Turkey

5.RedePerceptronSimples(PS)
(7)No.devariveisdeentrada(p=34)
AtributosClnicos(assumemvalores0,1,2,3,salvoindicaocontrria)
1:erythema
2:scaling
3:definiteborders
4:itching
5:koebnerphenomenon
6:polygonalpapules
7:follicularpapules
8:oralmucosalinvolvement
9:kneeandelbowinvolvement
10:scalpinvolvement
11:familyhistory,(0or1)
34:Age(linear)

5.RedePerceptronSimples(PS)
AtributosHistopatolgicos1(assumemvalores0,1,2,3)

12:melaninincontinence
13:eosinophilsintheinfiltrate
14:PNLinfiltrate
15:fibrosisofthepapillarydermis
16:exocytosis
17:acanthosis
18:hyperkeratosis
19:parakeratosis
20:clubbingofthereteridges
21:elongationofthereteridges

Ementa
1.Funcionalidadesdoneurniobiolgico
2.NeurnioartificialdeMcCullochPitts(MP)
3.AnlisegeomtricadoneurnioMP
4.PortaslgicasAND,OReNOT
5.RedePerceptronSimples(PS)eaplicaes

6.Problemasnolinearmenteseparveis(portaXOR)
7.ImplementaodaportaXORviaredesmulticamadas
8.RedePerceptronMulticamadas(MLP)

9.Algoritmoderetropropagaodoerro(errorbackpropagation)
10.Dicasdetreinamento,testeevalidaodaredeMLP

6.ProblemasNoLinearmente
Separveis(PortaXOR)
Exemplo:possvelimplementaraportaXORcom1neurnio?
RepresentaodoProblema(FunoXOR)

6.ProblemasNoLinearmente
Separveis(PortaXOR)
Exemplo(cont.):No,porqueafunolgicaXOR

nolinearmenteseparvel.

Ouseja,nopossvelsepararasclassesporumanicareta.

6.ProblemasNoLinearmente
Separveis(PortaXOR)
Exemplo(cont.):SonecessriospelomenosTRSneurnios!!

6.ProblemasNoLinearmente
Separveis(PortaXOR)
Exemplo(cont.):Doisneurniossonecessriosparasepararo
espao(x1,x2)em4regies(R1,R2,R3,R4).

6.ProblemasNoLinearmente
Separveis(PortaXOR)
Exemplo(cont.):Notequearetaemvermelhocorrespondeaum
neurnioqueimplementaaportaAND,enquantoaretaemazul
correspondeaumneurnioqueimplementaaportaOR.
Sejamz1ez2,assadasdosneurniosresponsveispelasretasem
vermelhoeazul,respectivamente.Assim,temosque:
EmR1,z1=0ez2=1.EmR2,z1=1ez2=1.
EmR3,z1=1ez2=0.EmR4,z1=0ez2=0.

6.ProblemasNoLinearmente
Separveis(PortaXOR)
Exemplo(cont.):Precisaseaindadeumterceironeurniopara
combinarosvaloresdez1ez2,afimdegerarovalordeycorreto.
Quandoumpontodafunoquecairemqualquerumadasregies
R2,R3eR4,devegerarumasadaigualay=0.
QuandoumpontodafunoquecairemnaregioR1,oterceiro
neurniodevegerarumasadaigualay=1.

6.ProblemasNoLinearmente
Separveis(PortaXOR)
Exemplo(cont.):RepresentaodafunoXORnoespao(z1,z2).

Noespao(z1,z2)afunoXORpassaaserlinearmenteseparvel,
poisoponto(x1,x2)=(1,0)mapeadonoponto(z1,z2)=(0,1)!

6.ProblemasNoLinearmente
Separveis(PortaXOR)
Exemplo(cont.):Assim,devemosprojetarumneurnioque
implementeaseguintefunolgicanoespao(z1,z2).

6.ProblemasNoLinearmente
Separveis(PortaXOR)
Exemplo(cont.):Oneurniodesadatemaseguinteconfigurao.

Equaodareta:

z 2= 2 z 1 0,5

7.ImplementaodaPortaXOR
Exemplo(cont.):Colocandoosdoisprimeirosneurniosemuma
camadaeoterceironeurnionacamadaseguinte(subseqente),
chegaseseguinteredemulticamadasqueimplementaaportaXOR.

7.ImplementaodaPortaXOR
Exemplo(cont.):Umaoutrapossvelredemulticamadasque
tambmimplementaaportalgicaXORdadaabaixo.

Ementa
1.Funcionalidadesdoneurniobiolgico
2.NeurnioartificialdeMcCullochPitts(MP)
3.AnlisegeomtricadoneurnioMP
4.PortaslgicasAND,OReNOT
5.RedePerceptronSimples(PS)eaplicaes
6.Problemasnolinearmenteseparveis(portaXOR)
7.ImplementaodaportaXORviaredesmulticamadas

8.RedePerceptronMulticamadas(MLP)
9.Algoritmoderetropropagaodoerro(errorbackpropagation)
10.Dicasdetreinamento,testeevalidaodaredeMLP

8.RedePerceptronMulticamadas
AredeneuralconhecidacomoPerceptronMulticamadas(Multilayer
PerceptronMLP)contmosseguinteselementos:
(i) Unidades de entrada: responsveis pela simples passagem dos
valoresdeentradaparaosneurniosdascamadasseguintes.
(ii)Camada(s)oculta(s):contmneurniosresponsveispelo
processamentonolineardainformaodeentrada,demodoafacilitara
resoluodoproblemaparaosneurniosdacamadadesada.
(iii)Camadadesada:contmneurniosresponsveispelageraoda
sadadaredeneural,apsasentradasteremsidodevidamenteprocessadas
pelosneurniosocultos.

8.RedePerceptronMulticamadas
UmaRedeMLPcom1camadaocultarepresentadapor:

MLP(p,q1,m)
Onde:ponmerodevariveisdeentrada
q1onmerodeneurniosocultos
monmerodeneurniosdesada.
Logo, o nmero total de parmetros (Z) de uma rede MLP de uma
camadaocultadadopor:

Z=(p+1)q1+(q1+1)m

8.RedePerceptronMulticamadas
UmaRedeMLPcom1camadaocultarepresentadapor:

MLP(p,q1,q2,m)
Onde:ponmerodevariveisdeentrada
q1onmerodeneurniosda1a.camadaoculta
q2onmerodeneurniosda2a.camadaoculta
monmerodeneurniosdesada.
Logo,o nmero total de parmetros (Z) de uma rede MLP de duas
camadasocultasdadopor:

Z=(p+1)q1+(q1+1)q2+(q2+1)m

8.RedePerceptronMulticamadas
Uma rede MLP com 4 variveis de entrada (p=4), 10 neurnios ocultos
(q1=10)e2neurniosdesada(m=2)representadacomoMLP(4,10,2).
Uma rede MLPcom 15 variveisde entrada(p=15), 20 neurniosna 1a.
camada oculta (q1=20), 10 neurnios na 2a. camada oculta (q2=10) e 4
neurniosdesada(m=4)representadacomoMLP(15,20,10,2).
NOTA 1: A especificaode p e m soditadaspelaformacomoo
problemacodificadoparaserresolvidoporumaredeneural.
NOTA2:Asespecificaesdeq1 eq2 dependemdacomplexidadedo
problema, ou seja, preciso realizar vrios testes at encontrar os
valoresmaisadequados.

8.RedePerceptronMulticamadas
Um neurnio qualquer da rede MLP, seja oculto ou de sada,
representadogenericamentecomonafiguraabaixo.

8.RedePerceptronMulticamadas
NotequeafunodeativaodoneurnioMP,quedotipo
Degrau(nolinearidadeduraouhard)
foisubstitudaporumafunodeativaodotipo
Sigmoidal(nolinearidadesuaveousoft).
Assim,asadadeixadeserumavariveldotipo
ONOFF(binria[0,1]oubipolar[1,+1])
epassaaserumavariveldotipo
RealouAnalgica(qqvalorentre[0,1]ou[1,+1]).

8.RedePerceptronMulticamadas
FunodeativaoSigmideLogstica

y i t =

1
1exp ui t

y i t 0,1

8.RedePerceptronMulticamadas
DerivadadaSigmideLogstica

,
i

y t =

d yi t
d u i t

y i, t = yi t[1 yi t ]

8.RedePerceptronMulticamadas
FunodeativaoTangenteHiperblica

y i t =

1exp ui t
1exp ui t

y i t 1,1

8.RedePerceptronMulticamadas
DerivadadaTangenteHiperblica

,
i

y t =

d yi t
d u i t

y i, t =0,5[1yi 2 t ]

8.RedePerceptronMulticamadas
SobreoUsodeFunesdeAtivaoSigmoidais
Vantagens: (1)Derivadasfceisdecalcular.
(2)Nolinearidadefraca(trechocentralquaselinear)
(3) Interpretao da sada como taxa mdia de disparo
(meanfiringrate),emvezdesimplesmenteindicarseo
neurnioestounoativado(ONOFF).

Desvantagens:

(1)Elevadocustocomputacionalparaimplementaoem
sistemasembarcadosdevidopresenadafunoEXP.
2

x x x
exp x =1
1! 2 ! 3!

8.RedePerceptronMulticamadas
FuncionamentodeumaredeMLPcom1camadaoculta
(1)Aativaodoisimoneurniodacamadaocultadadapor:
T

u i =wi x=w i 0 x 0 wi 1 x 1 w i 2 x 2 ...w ip x p ,

i=1,, q 1

(2)Asadadoisimoneurniodacamadaocultadadapor:
z i t =

1
1exp u i t

i=1,, q 1

ou
z i t =

1exp u i t
1exp u i t

i=1,, q 1

8.RedePerceptronMulticamadas
FuncionamentodeumaredeMLPcom1camadaoculta
(1)Aativaodoksimoneurniodesadadadapor:
T

a k =m k z=m k 0 z 0 m k 1 z1 m k 2 z 2 m kq z q ,
1

(2)Asadadoksimoneurniodesadadadapor:
o k t =

1
1expa k t

k =1,, m

ou
o k t =

1expa k t
1expa k t

k =1,, m

k =1,, m

8.RedePerceptronMulticamadas
TreinamentodeumaredeMLP(1camadaoculta)
Oksimoneurniodesadatmacessosadadesejada,dk.
Assim,possvelcalcularoerroassociadoaesseneurnio:

ek=dkok
Este erro pode ento ser utilizado em uma regra de aprendizagem
similarquelausadapeloalgoritmoPerceptronSimples.

m k t1=m k t ek t o,k t z t
Onde:

z(t)ovetordeentradadacamadadesada.

o,k t=o k t [1o k t ]

(p/sigmidelogstica)

o,k t=0,5[1o 2k t ]

(p/tangentehiperblica)

8.RedePerceptronMulticamadas
TreinamentodeumaredeMLP(1camadaoculta)
Contudo,oisimoneurnioocultonotemacessoaumasadadesejada
equivalente,di.
Assim,NOpossvelcalcularoerroassociadoaesseneurnio.
Asadaencontradapelospesquisadoresfoiinventarumaespciede
erroparaosneurniosocultos,semquehouvesseanecessidadedeuma
sadadesejada,di.
O erro dos neurnios ocultos so obtidos a partir dos erros dos
neurniosdesadapormeiodeumaprojeonosentidoinversoao
dofluxodeinformaoconvencional.

8.RedePerceptronMulticamadas
TreinamentodeumaredeMLP(1camadaoculta)
Estaprojeonosentidoinversodos errosdesada maisconhecida
pelonomederetropropagaodoserros(ErrorBackpropagation).

8.RedePerceptronMulticamadas
OalgoritmodebackpropagationomaisusadoparatreinarredesMLP,
tendosidopropostopordiferentesautoresemdiferentespocas.
P. Werbos (1974). Beyond regression: new tools for prediction and analysis in the
behavioralsciences,PhDthesis,HarvardUniversity,Boston,MA.
D.E.Rumelhart,G.E.Hinton,&R.J.Williams(1986).Learningrepresentations
bybackpropagatingerrors.Nature,323:533536,1986.
Y.LeCun,Learningprocessesinanasymmetricthresholdnetwork,In:Disordered
SystemsandBiologicalOrganization(eds.F.Soulie,E.Bienenstock,andG.Weisbuch,
Eds.).LesHouches,France:SpringerVerlag,1986,pp.233340.
Parker,D.(1985).LearningLogic,TechnicalReportTR87.Cambridge,MA:Center
forComputationalResearchinEconomicsandManagementScience,MIT.

8.RedePerceptronMulticamadas
RegrasdeAprendizagemdaRedeMLP(1camadaoculta)
NeurniosOcultos:

wi t1=w i t ei t z ,i t xt
Onde:eioerroretroprojetadodoisimoneurniodesada
m

ei t =k =1 mki o,k t ek t ,

i=1,, q1

x(t)ovetordeentradadarede.

z,i t =z i t [1z i t ]

(p/sigmidelogstica)

z,i t =0,5[1z 2i t]

(p/tangentehiperblica)

8.RedePerceptronMulticamadas
ObtenoTericadaRegradeAprendizagemdaRedeMLP
Para a rede PS, a regra de aprendizagem foi obtida atravs de uma
anlisegeomtricadoproblema.
ParaaredeMLPvamosobterumaregradeaprendizagemsemelhante,a
partirdaminimizaodeumafunocusto(oufunoobjetivo).
Paraisso,considereinicialmentequeoerroquadrticoinstantneopara
todososmneurniosdesadadadopor:

J t =

1
2

2
k

k=1 e t = k=1 d k t o k t
2

8.RedePerceptronMulticamadas
ObtenodaRegradeAprendizagemdaRedeMLP
Umgrficohipotticoqueilustraoefeitodanolinearidade nafuno
J(t)paraumniconeurniodesadacompesowmostradoabaixo:

8.RedePerceptronMulticamadas
ObtenodaRegradeAprendizagemdaRedeMLP
AfunocustodeinteresseoErroQuadrticoMdio(EQM),paraos
Nexemplosdetreinamento:

J W=
=

1
N

t=1 J t =

1
2N

1
2N

t =1 k =1 e2k t

t =1 k =1 d k t ok t

ondeWoconjuntodetodososparmetros(pesoselimiares)darede.
NotequeafunoJ(W)podeserminimizadaaoseminimizarJ(t)!

8.RedePerceptronMulticamadas
ObtenodaRegradeAprendizagemdaRedeMLP
Comoafunocustonolinear,entooprocessodeminimizaodeve
serrealizadodemodoiterativopormeiodaseguinteequaorecursiva:

m k t1=m k t

J t
m k t

ondepassodeaprendizagem(0<<1).

Notequeosegundotermodaequaoacimaoincrementoimpostoao
vetordepesoswknoinstantet,ouseja

m k t1=

J t
m k t

8.RedePerceptronMulticamadas
ObtenodaRegradeAprendizagemdaRedeMLP
Temosentoque calcular a seguintederivada,tambmchamadade
gradientedafunoJ(t)nadireodovetormk(t):

J t
m k t
Paraisso,usaremosaregradacadeiaparafatorarestaderivadaem
vriostermos:

J t
m k t

J t ek t ok t a k t
ek t ok t ak t m k t

8.RedePerceptronMulticamadas
Vamoscalcularcadaderivadaseparadamente:
(1)Se
(2)Se

(3)Se
(4)Se

J t =

1
2

2
k

k=1 e t

ek=dkok
o k t= a k t

T
k

Ento
Ento

a k t=m t z t

Ento
Ento

J t
ek t
ek t
o k t
o k t
a k t

=ek t
=1
=, t =o,k t

ak t
m k t

=zt

8.RedePerceptronMulticamadas
Juntandonovamentecadaderivada,chegaseaoseguinteresultado:

J t
m k t

J t ek t ok t a k t
ek t ok t ak t m k t

=ek t1 o, t zt =ek t o, t zt
Assim,obtemosaregradeaprendizagemparaosneurniosdesada:

m k t1=m k t

J t
m k t

m k t1=m k t ek t o,k t z t

8.RedePerceptronMulticamadas
Paraobteraregradeaprendizagemdosneurniosocultosadotaseum
raciocniosemelhante.
Assim,oprocessodeminimizaodeveserrealizadodemodoiterativo
pormeiodaseguinteequaorecursiva:

wi t1=w i t

J t
w i t

OsegredoestemcalcularogradientedafunofunocustoJ(t)agora
nadireodovetorwi(t),ouseja:

J t
w i t

J t y i t ui t
y i t ui t w i t

(exerccio)

8.RedePerceptronMulticamadas
AvaliaoGrficadoTreinamento
AavaliaodotreinamentofeitaatravsdogrficodeJ(W)versuso
nmerodepocasdetreinamento,chamadodecurvadeaprendizagem.

8.RedePerceptronMulticamadas
ARedeMLPumAproximadorUniversaldeFuno
UmaredeMLP(p,q1,m),ouseja,umaredecomumacamadaoculta,
capaz de aproximar qualquer funo contnua, com grau de preciso
arbitrrio,dadoumnmerosuficientementegrandedeneurniosocultos
comfunodeativaosigmoidal.
Uma rede MLP(p, q1, q2, m), ou seja, uma rede com duas camadas
ocultas,capazdeaproximarqualquerfunodescontnua,comgraude
preciso arbitrrio, dado um nmero suficientemente grande de
neurniosocultoscomfunodeativaosigmoidalemcadacamada.

8.RedePerceptronMulticamadas
ARedeMLPumAproximadorUniversaldeFuno
K.Hornik,M.Stinchcombe&H.White(1989).MultilayerFeedforwardNetworksare
UniversalApproximators,NeuralNetworks,vol.2,no.5,p.359366.
K.Hornik(1991).ApproximationCapabilitiesofMultilayerFeedforwardNetworks,
NeuralNetworks,vol.4,no.2,p.251257.
R. HechtNielsen (1987). Kolmogorov's mapping neural network existence theorem,
ProceedingsoftheIEEEInternationalConferenceonNeuralNetworks,pp.1114.
J.L.Castro,C.J.Mantas&J.M.Benitez(1987).Neuralnetworkswithacontinuous
squashingfunctionintheoutputareuniversalapproximators,NeuralNetworks,vol.13,
no.6,pp.561563.

8.RedePerceptronMulticamadas
ARedeMLPumAproximadorUniversaldeFuno
Istoquer dizer que,pormenorquesejaoerroquadrticomdio exigido
paraumaboaaproximaodoproblema,aredeMLPsereventualmente
capazdeatingilo,desdequeonmerodeneurniosocultossejaelevado.
Os resultados obtidosnasrefernciasacimasoapresentados na forma
deteoremasdeexistncia,ouseja,elesdizemqueexisteumaredeMLP
quepodeaproximarumacertafuno,pormnodizemcomoobtla.
Exceo:
V. Kurkova (1992). Kolmogorov's Theorem and Multilayer Neural Networks,
NeuralNetworks,vol.5,no.3,p.501506.

8.RedePerceptronMulticamadas
PapeldaDerivadadaFunodeAtivaonaRegradeAprendizagem
Assumindoumafunodeativaologstica,temseque
e

Quando a k t , ento o k t 1 o,k t 0


Quando ak t , ento o k t 0 o,k t 0
Logo , se o,k t 0 m k t = e k t o,k t z t 0

CONCLUSO:Quandoaativaomuitoalta(oumuitobaixa),
asadaestarprximadaregiodesaturaoe,assim,oajustedos
pesossermuitopequenoeoaprendizadomaislento.

8.RedePerceptronMulticamadas
Estefnomenorecebeonomedeparalisiadaredeepodesermelhor
visualizado colocandose os grficos da funo de ativao e de sua
derivadaladoalado.

8.RedePerceptronMulticamadas
Paraminimizaroefeitodaparalisiadarede,recomendvelqueaativao
seja mantidaem torno da regiomaislinearda funode ativao,pelo
menosnoinciodafasedeaprendizadoafimdeacelerla.
Dicasparaminimizaraparalisiadarede
(1) Iniciar os pesos e limiares com valores pequenos,e.g. na faixa
entre[1/10,+1/10]ou[1/2,+1/2].
(2)Normalizarasentradasparaafaixa[0,+1]ou[1,+1].
(3)Adicionar0,05aovalordaderivadadafunodeativao.Assim,
,
m k t = e k t o k t 0,05 z t , onde ek(t)=dk(t)ok(t)
m

,
w i t = e i t z t 0,05 x t , onde ei t =k=1 m ki o k t e k t
,
i

8.RedePerceptronMulticamadas
DeterminaodosNeurniosdaCamadaOculta
Infelizmente,noexisteummtododepassonicoparadeterminaro
nmerodeneurniosquesejaadequadoaumadadatarefa.
Emgeral,estenmerodeterminadoapsalgumaexperimentao
comosdados(tentativaeerro).
Portentativaeerroentendeserepetiroprocessodetreinamentoe
testeparacadavalorespecificadoparaonmerodeneuniosocultos.
Algumastcnicasheursticaspodemfornecerumvalorinicialparao
nmerodeneurniosdacamadaoculta.

8.RedePerceptronMulticamadas
HeursticasparaEspecificaroNo.deNeurniosOcultos
(1)RegradoValorMdio:
(2)RegradaRaizQuadrada:
(3)RegradeKolmogorov:
(4)RegradeFletcherGloss:

q 1=

pm
2

q 1= p . m
q1=2 p1
2 pmq12 p1

8.RedePerceptronMulticamadas
HeursticasparaEspecificaroNo.deNeurniosOcultos
(5)RegradeBaumHaussler:
onde

ZonmerodeparmetrosdaredeMLP(p,q1,m)
Z=(p+1)q1+(q1+1)m
Notamanhodoconjuntodetreinamento
oerrotoleradoduranteoteste.

Exemplo:Se=0,1(10%detolerncia),ento N

10 Z

8.RedePerceptronMulticamadas
Aplicao1:IdentificaodeumAerogerador

8.RedePerceptronMulticamadas
Aplicao2:CrditoBancrio