Sunteți pe pagina 1din 59

Unioeste - Universidade Estadual do Oeste do Paran

CENTRO DE CINCIAS EXATAS E TECNOLGICAS


Colegiado de Cincia da Computao
Curso de Bacharelado em Cincia da Computao

Estudo Comparativo entre redes neurais artificiais e redes neurais pulsadas


usando MATLAB R

Diego Henrique Pagani

CASCAVEL
2012
DIEGO HENRIQUE PAGANI

Estudo Comparativo entre redes neurais artificiais e redes neurais pulsadas


usando MATLAB R

Monografia apresentada como requisito parcial


para obteno do grau de Bacharel em Cincia da
Computao, do Centro de Cincias Exatas e Tec-
nolgicas da Universidade Estadual do Oeste do
Paran - Campus de Cascavel

Orientador: Prof. Josu Pereira de Castro

CASCAVEL
2012
DIEGO HENRIQUE PAGANI

Estudo Comparativo entre redes neurais artificiais e redes neurais pulsadas


usando MATLAB R

Monografia apresentada como requisito parcial para obteno do Ttulo de Bacharel em


Cincia da Computao, pela Universidade Estadual do Oeste do Paran, Campus de Cascavel,
aprovada pela Comisso formada pelos professores:

Prof. M. Eng. Josu Pereira de Castro


(Orientador)
Colegiado de Cincia da Computao,
UNIOESTE

Prof. M. Eng. Adriana Postal


Colegiado de Cincia da Computao,
UNIOESTE

Prof. Msc. Suzan Kelly Borges Piovesan


Colegiado de Engenharia com nfase em
Controle e Automao, FAG
Colegiado de Sistema de Informao, UNIPAR

Cascavel, 28 de novembro de 2012


DEDICATRIA

Aos meus pais e a meu irmo por ser meu fiel com-
panheiro.
EPGRAFE

A curiosidade sempre o primeiro passo em um


problema que vai ser resolvido.
Galileu Galilei.
AGRADECIMENTOS

Primeiramente, ao criador de todas as coisas por permitir que exista a vida, inteligncia e por
conceder-me o anseio do entendimento.

Aos meus pais, por servirem de exemplo e por me apoiarem durante toda minha vida.

Ao meu irmo que sempre foi meu companheiro fiel.

minha namorada por ter suportado e dado apoio nos momentos difceis.

toda minha famlia, por sempre darem seu apoio.

Aos meus antigos e novos amigos por me propiciarem momentos de alegria e descontrao.

Aos meus professores, por terem dado todo suporte terico e prtico necessrio para minha
formao.

Ao meu orientador professor Josu, professora Adriana pela grande contribuio e dedi-
cao que tiveram na realizao deste e de outros trabalhos. professora Suzan pelas sugestes
para que este trabalho se torne melhor e se conclua com qualidade.

Ao professor Clodis, aos colegas do grupo PETComp, pela amizade, companheirismo e tra-
balho em grupo.

todos que, de alguma maneira, foram responsveis pela realizao deste trabalho.
Lista de Figuras

2.1 Modelo de neurnio biolgico. . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.2 Perodos Refratrios Absoluto e Relativo. . . . . . . . . . . . . . . . . . . . . 7

3.1 Modelo de neurnio perceptron . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.2 Exemplos de funes de ativao. . . . . . . . . . . . . . . . . . . . . . . . . 12

3.3 Modelo de uma RNA multicamadas do tipo feedforward . . . . . . . . . . . . 14

3.4 Modelo de uma RNA do tipo recorrente . . . . . . . . . . . . . . . . . . . . . 15

3.5 Uma rede Neural Backpropagation com uma camada oculta. . . . . . . . . . . 17

4.1 Codificao em fase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.2 Codificao atravs de Sincronismo . . . . . . . . . . . . . . . . . . . . . . . 22

4.3 Modelo esquemtico do circuito do modelo de integrao e disparo. . . . . . . 25

4.4 Grfico do neurnio do tipo SRM, durante o disparo. . . . . . . . . . . . . . . 26

4.5 a) uma rede FeedForward de neurnios pulsados. b) Uma ligao dividida em


sub-conexes contendo unidades de atraso diferentes. . . . . . . . . . . . . . 28

5.1 Codificao de um valor contnuo (130) em pulsos temporais em 8 neurnios


de entrada. O intervalo de entrada de [0:255], coberto por g = 8 campos
receptivos gaussianos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

vii
Lista de Tabelas

5.1 Dimenses das amostras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

6.1 Resultados obtidos. A coluna de Iteraes do treinamento calculada como o


total de iteraes necessria para realizar o treinamento. Cada amostra da base
de treinamento considerada 1 iteraco. . . . . . . . . . . . . . . . . . . . . . 40

viii
Lista de Abreviaturas e Siglas

RNA Rede Neural Artificial


RNP Rede Neural Pulsada
MLP Multi-layer Perceptron
IA Inteligncia Artificial
ERA Estado Refratrio Absoluto
ERR Estado Refratrio Relativo
RBF Radial Base Function, funo de base radial, em ingls
SRM Simple Response Model, Modelo de resposta simples, em ingls

ix
Lista de Smbolos

n Total de neurnios da camada de entrada


w Peso sinptico
Xi Representa a entrada do neurnio
Zp Sada do neurnio p da camada intermediria
Yk Sada do neurnio sem aplicao da funo de ativao
yk Sada final do neurnio
p Total de neurnios da camada de intermediria
m Total de neurnio da camada de sada
Taxa de correo de erro de w
t Intervalo de tempo
np Neurnio pulsado
t Tempo
u Potencial da membrana
I ndice da camada de entrada
J ndice da camada oculta
K ndice da camada de sada
tk Tempo de Sada desejado
tk Tempo de saida do neurnio
d
wjk Peso da subconexo d entre os neurnios j e k
Taxa de aprendizado
Constante de decaimento do potencial ps-sinptico
xmin Valor mnimo da entrada x
xmax Valor mximo da entrada x
ck Centro da gaussiana
h Tempo de disparo
g Total de gaussianas

x
Sumrio

Lista de Figuras vii

Lista de Tabelas viii

Lista de Abreviaturas e Siglas ix

Lista de Smbolos x

Sumrio xi

Resumo xiv

1 Introduo 1

1.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 Justificativas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3 Organizao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Redes Neurais Biolgicas 5

2.1 Neurnio Biolgico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2 Sinapses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.3 Codificao da informao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3 Redes Neurais Artificiais 9

3.1 Histrico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3.2 Neurnio Artificial Perceptron . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.3 Funo de ativao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

xi
3.4 Aprendizado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.5 Arquitetura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.5.1 Redes do tipo FeedFoward . . . . . . . . . . . . . . . . . . . . . . . . 13

3.5.2 Redes Recorrentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.6 Algoritmos de aprendizado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.6.1 Algoritmo Backpropagation . . . . . . . . . . . . . . . . . . . . . . . 16

4 Redes Neurais Pulsadas 18

4.1 Hipteses de Codificao de Informao . . . . . . . . . . . . . . . . . . . . . 19

4.1.1 Taxa de Pulsos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.1.2 Codificao atravs de pulsos . . . . . . . . . . . . . . . . . . . . . . 20

4.2 Modelos de neurnios pulsados . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.2.1 Condutncia e Compartimentos . . . . . . . . . . . . . . . . . . . . . 24

4.2.2 Limiar de disparo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

4.3 Arquiteturas Pulsadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.4 Algoritmos de Treinamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

5 Materiais e Mtodos 33

5.1 Problemas encontrados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.2 Metodologia dos testes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.3 Bases de dados Utilizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.3.1 Iris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.3.2 Breast Cancer Wisconsin . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.4 Codificao das informaes de entrada . . . . . . . . . . . . . . . . . . . . . 37

6 Resultados obtidos 39

7 Consideraes Finais 41

7.1 Sugesto para trabalhos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . 42

xii
Referncias Bibliogrficas 43

xiii
Resumo

O objetivo deste trabalho realizar um estudo comparativo entre dois modelos de redes neu-
rais artificiais: o modelo Multilayer Perceptron (MP) e o modelo chamado de Spiking ou Pul-
sado. Como o modelo pulsado relativamente recente comparado s Redes Neurais Artificiais,
suas caractersticas ainda no so totalmente conhecidas, mesmo considerando modelos mais
simples de rede, como o Perceptron. Este estudo tem por objetivo comparar os dois modelos
de Perceptron e estabelecer os principais pontos positivos e negativos de seu funcionamento,
utilizando para isto tarefas de classificao. Estabelecemos que as Redes Neurais Pulsadas,
com neurnios SRM e SpikeProp como algoritmo de treinamento, no apresentam resultado
significativo no quesito qualidade de soluo, perante as redes neurais artificiais tradicionais.

Palavras-chave: Redes Neurais artificiais, Redes neurais pulsadas, Backpropagation, Campos


Receptivos Gaussianos, SpikeProp.

xiv
Captulo 1

Introduo

O crebro o principal rgo do sistema nervoso em vrias espcies de animais. Este rgo
nos seres humanos contm aproximadamente 100 bilhes de neurnios, ligados por mais de
sessenta trilhes de sinapses. Estes neurnios interligados formam o que se chama de Rede
Neural [1].

Existem modelos tericos que visam simular esta estrutura neuronal de forma que seja pos-
svel emular o processo de raciocnio. Atualmente dois modelos em destaque so as conhecidas
Redes Neurais Artificiais (RNA), bem difundidas na literatura e as Redes Neurais Pulsadas
(RNP) que uma abordagem mais plausvel biologicamente que as RNAs.

A RNA uma arquitetura responsvel por codificar informaes para que se obtenha a
soluo de algum problema, seja ele de classificao, monitoramento ou predio. Elas po-
dem ser desenvolvidas a partir de modelos matemticos assumindo que [2]:

A informao processada por uma estrutura simples chamadas de neurnios;

Sinais so passados entre neurnios por meio de conexes;

Cada conexo est associada a um peso, que responsvel pela codificao da infor-
mao;

Cada neurnio avalia a entrada e determina se deve fazer seu disparo, por meio de sua
funo de ativao.
Um dos modelos mais conhecidos e simples o perceptron que constitudo de um nico
neurnio e uma nica camada que recebe uma ou vrias entradas e retorna uma sada. A carac-
terstica principal deste modelo reconhecer padres ditos como linearmente separveis, isto ,
padres que se caracterizam por apresentar diferenas possveis de se separar em duas regies
distintas. Com avanos nas pesquisas nesta rea da Inteligncia Artificial (IA), passou-se de
um nico neurnio para um modelo de mltiplos neurnios com mltiplas camadas conectadas
por ligaes ponderadas. Este modelo chamado de Multilayer Perceptron (MLP) e contm ao
menos trs camadas [3]:

Input (Entrada): responsvel pelo envio dos sinais para a camada oculta;

Hidden (Oculta): processa os sinais oriundos da Entrada, realizando a ponderao dos


sinais;

Output (Sada): recebe os sinais provenientes da camada oculta, realiza a ponderao dos
sinais, e a sada o resultado final da operao.

Com o avano da neurocincia, descobriu-se que com este modelo de clculo seria impos-
svel para o crebro realizar em tempo hbil o processamento e ento os pesquisadores elab-
oraram outra teoria: o conjunto dos neurnios funciona com a taxa de envio de sinais depen-
dente do tempo e, alguns modelos, da sua ordem e no com ligaes com custos e disparo
sincronizado. A partir desta ideia, desenvolveu-se um novo modelo de RNA, as chamadas Re-
des Neurais Pulsadas (Spiking Neural Network).

A realizao de um estudo comparativo entre estas duas abordagens de Rede Neuronal (RNA
e RNP) importante porque poderemos conhecer se o modelo Pulsado ao menos equivalente
ao modelo tradicional. O problema a ser resolvido realizar a classificao de uma base de
dados. Testaremos estas redes, analisando o comportamento por meio de testes de desempenho
e qualidade de soluo. Implementando os algoritmos em uma mesma linguagem e utilizando
um mesmo ambiente de desenvolvimento, MATLAB R
, poderemos avaliar ambos os modelos
quanto a tarefa de classificao.

2
1.1 Objetivos

O objetivo geral deste trabalho realizar um estudo comparativo entre as arquiteturas RNAs
e as RNPs na tarefa de classificao de base de dados, utilizando a qualidade de soluo e tempo
de resposta como fatores principais.

Para alcanar este objetivo geral sera necessria a realizao dos seguintes objetivos espec-
ficos:

Implementar a Rede Neural Artificial Multilayer perceptron;

Avaliar o desempenho da tarefa de classificao de base de dados;

Implementar a Rede Neural Pulsada de mltiplas camadas;

Avaliar o desempenho da Rede Neural Pulsada da tarefa de classificao de base de


dados;

Realizar testes que permitam a anlise do comportamento das redes;

Comparar a qualidade de soluo e tempo de resposta.

1.2 Justificativas

Realizar um estudo comparativo entre estes dois modelos de redes neurais interessante
porque conhecendo as caractersticas especficas destes modelos, poderemos saber qual a mel-
hor arquitetura para o problema que tentamos resolver.

Analisando e entendendo os limites de cada modelo, os pontos positivos e negativos e quais


classes de problemas apresentam caractersticas que possam determinar qual das redes obtm
o melhor desempenho para a tarefa de classificao, podemos utilizar novos mtodos mais efi-
cientes para resolver estas classes de problemas.

3
1.3 Organizao

O trabalho est organizado da seguinte maneira: o captulo 2 disserta sobre as redes neu-
rais biolgicas e sobre hipteses sobre o seu funcionamento; no captulo 3, falaremos sobre as
Redes Neurais Artificiais tradicionais, explicando sua ideia e funcionamento; o captulo 4 expli-
car como funciona uma rede neural pulsada e suas diferenas tericas perante a Rede Neural
Artificial Tradicional; no captulo 5 ser discutida a metologia, as bases de dados utilizadas e
detalhes sobre a implementao; no captulo 6 sero discutidos os resultados obtidos com testes
de reconhecimento de base de dados envolvendo as duas abordagens neurais e no captulo 7
abordaremos as consideraes finais e os trabalhos futuros.

4
Captulo 2

Redes Neurais Biolgicas

O crebro humano o principal rgo do sistema nervoso central. Ele responsvel por
realizar o processamento dos sinais enviados pelos rgos dos sentidos e pelo processo decisrio
que leva a realizao de aes que sero efetuadas pelos msculos. responsvel tambm pelo
raciocnio abstrato que leva a aquisio de conhecimento e melhora a compreenso do mundo.
Estima-se que ele formado por cerca de cem bilhes de neurnios, ligados por mais de sessenta
trilhes de sinapses, que so os estmulos entre os neurnios [1].

Sendo as Redes Neurais Artificiais e as Redes Neurais Pulsadas baseadas no modelo bi-
olgico, importante conhecer como funciona o sistema biolgico para compreender melhor os
sistemas artificiais.

2.1 Neurnio Biolgico

O neurnio a unidade bsica de processamento neural. Os neurnios podem ser encontra-


dos nas mais variadas formas e tamanhos, o que faz com que no crebro humano encontremos
vrios modelos de neurnios. Apesar de serem diferentes entre si, os neurnios funcionam de
maneira semelhante, recebendo estmulos e avaliando se devem, ou no, responder a este est-
mulo. Eles so divididos basicamente em trs partes, conforme mostra a figura 2.1 adaptada de
Tatibana e Kaetsu [4].

Dendritos: recebem a conexo sinptica.


Soma: corpo celular onde se faz o processamento do sinal e decide se deve produzir ou no um
sinal de sada.

Axnio: responsvel por propagar a sada de sinal para outras clulas nervosas.

Figura 2.1: Modelo de neurnio biolgico.

necessrio que a membrana celular receba uma quantidade de estmulos especfica para
que o potencial da membrana atinja um nvel mnimo e realize um disparo. Com os estmulos
pr-sinpticos oriundos de outros neurnios, este potencial alterado e se no recebido, tende
a ser constante. Caso este potencial seja superior ao chamado limiar de disparo, o neurnio
realiza o disparo e o sinal propagado. Entretanto, no somente necessrio que estes estmu-
los ocorram, mas estes devem ocorrer em tempos prximos e com intensidade suficiente para
provocar o disparo. Pode acontecer de um nico estmulo ser responsvel por alterar o poten-
cial de forma significativa e faa o neurnio disparar, assim como possvel que mesmo com
mltiplos estmulos, em tempos prximos, o neurnio no dispare [5].

A propagao de um sinal por um neurnio tem uma frequncia limitada. Aps ocorrer um
disparo, o neurnio entra em um estado em que, mesmo recebendo estmulos, ele no realiza
disparos. Este estado chamado de Estado Refratrio Absoluto (ERA). Aps o neurnio sair
deste estado, ele entra em outro estado chamado de Estado Refratrio Relativo (ERR) em que o
seu limiar mais alto, tornando necessrio mais estmulos para que um disparo ocorra [6]. A
figura 2.2,por Kolb e Whishaw [7] adaptado por Jaskowiak [5], mostra os estados refratrios.

6
Figura 2.2: Perodos Refratrios Absoluto e Relativo.

2.2 Sinapses

As sinapses so as unidades bsicas que realizam as interaes entre os neurnios. Entre


os diversos tipos de sinapses, a mais comum a sinapse qumica, que libera uma substncia
transmissora que se espalha pelo espao entre os neurnios, chamado juno sinptica. Assim
um sinal eltrico pr-sinptico transformado em um sinal qumico e ento retorna um sinal
eltrico ps-sinptico [1].

Uma caracterstica das sinapses que estas podem mudar a fora do estmulo e este efeito
chamado de plasticidade sinptica e permite rede aprender com experincias passadas [5].

2.3 Codificao da informao

Sendo a fora do estmulo a unidade bsica de transmisso de informao entre os neurnios


e sabendo-se que este estmulo no transmite informao em seu formato, o crebro certamente
possui outras maneiras para codificar e decodificar as informaes em seu interior. Mesmo
com os avanos nas pesquisas, ainda no chegou-se a um consenso de como o crebro faz esta
codificao/decodificao biologicamente [8].

Existem duas hipteses que tentam explicar como a informao codificada e decodificada

7
nos pulsos trocados entre os neurnios, que so a codificao atravs de pulsos (Pulse Coding)
e a hiptese da taxa de pulsos (Rate Coding) que sero explicadas no captulo 4.

8
Captulo 3

Redes Neurais Artificiais

Segundo Fausset [3], uma Rede Neural Artificial um sistema de processamento de infor-
mao que apresenta certas caractersticas de redes neurais biolgicas. Os modelos de RNAs
foram desenvolvidos a partir de generalizaes de modelos matemticos sobre a biologia neural,
baseado em alguns princpios:

O processamento de sinal ocorre em elementos simples chamados de neurnios;

Sinais so transmitidos entre neurnios por meio de conexes;

Cada conexo tem um peso que multiplica o sinal transmitido;

Cada neurnio aplica uma funo de ativao, que tem como objetivo verificar se o
neurnio deve disparar ou no, como ser visto na seo 3.3.

Existem modelos ou paradigmas diferentes que visam separar em categorias as RNAs. Duas
abordagens que contribuem para caracterizar sua habilidade funcional, alm de diferenci-las,
referente ao aprendizado e arquitetura.

3.1 Histrico

As RNAs surgiram em 1943, quando Warren McCulloch e Walter Pitts propuseram um


primeiro modelo matemtico para uma rede neural (Neurnio McCullock-Pitts) [1]. Estes
pesquisadores reconheceram que na combinao de simples neurnios em sistemas neurais es-
tava a fonte do aumento de poder computacional [3].
O prximo desenvolvimento significativo das redes neurais apareceu em 1949, com a pub-
licao do livro The Organization of Behavior, escrita por Donald O. Hebb, que descreveu um
modelo de aprendizado por correlao dos neurnios, que acabou dando origem a Regra de
Aprendizagem de Hebb e essa teoria comumente lembrada para alguns tipos de aprendizagem
associativas, onde o peso da ligao entre dois neurnios aumentado, no caso de ativao
simultnea [1].

Na dcada de 1950 e 1960, chamada de The first Golden Age (A primeira era de Ouro) por
Fausset [3], ocorreu quando vrios pesquisadores desenvolveram uma grande classe de redes
neurais artificiais chamadas de perceptrons. Explicaremos mais sobre estes neurnios na seo
3.2. Nesta poca foi desenvolvida tambm a chamada Regra Delta, um mtodo para ajuste dos
pesos do perceptron. A Regra Delta faz o ajuste dos pesos para reduzir a diferena entre o
resultado da rede com o valor que deveria sair.

A dcada de 1970 no teve grandes avanos na rea das redes neurais, apenas 3 trabalhos
principais [3]:

Teuvo Kohonen, memrias associativas e auto-organizadas utilizando clusters;

James Anderson, iniciou pesquisa em redes neurais com redes de memria associativa;

Gail Carpenter, junto com Stephen Grossberg desenvolveram a teoria de ressonncia


adaptativa.

Na dcada de 1980, chamada de ressurgimento das redes, o problema das redes percep-
tron de uma nica camada reconhecerem apenas problemas linearmente separveis teve uma
soluo, com o surgimento do algoritmo backpropagation, que um algoritmo de treinamento
para redes de mltiplas camadas. Alm disso, surgiram as chamadas Redes de Hopfield que
trabalham com pesos fixos e com ativaes adaptativas, usadas para criar redes de memria
associativa [3].

3.2 Neurnio Artificial Perceptron

Segundo Haykin [1], Um neurnio uma unidade de processamento de informaes que


fundamental para a operao de uma rede neural.

10
Cada neurnio pode receber diversas entradas e cada entrada dessas passa por uma conexo
que possui um peso. Um sinal xn na entrada n do neurnio k multiplicado pelo peso sinptico
wkn . Aps o clculo de todas as conexes, todos os sinais so somados e este valor passado
para funo de ativao. Na seo 3.3 abordaremos com mais detalhes as funes de ativao.
A figura 3.1 mostra o modelo de um neurnio do tipo perceptron, com suas entradas xn , pesos
wkn e a sada yk .

Figura 3.1: Modelo de neurnio perceptron

3.3 Funo de ativao

A operao bsica de um neurnio envolve a soma dos sinais ponderados e aplicao da


funo da ativao. Normalmente, usa-se a mesma funo de ativao para os neurnios de
uma mesma camada, mas isto no regra. Na maioria dos casos, utiliza-se uma funo que no
seja a identidade (f (x) = x). Quando usa-se redes neurais de mltiplas camadas, obrigatrio
que a funo de ativao no seja linear [3].

Existem vrios tipos de funes que podem ser usadas, como exemplo as da figura 3.2,
adaptado por Postal [9]:

1. Identidade

2. Binria

3. Sigmoidal

11
Figura 3.2: Exemplos de funes de ativao.

3.4 Aprendizado

Segundo Haykin [1], a propriedade primordial de uma RNA a sua habilidade de apren-
der a partir do seu ambiente e de melhorar o seu desempenho atravs da aprendizagem. Este
processo consiste na adequao dos parmetros da rede, que so adaptados atravs de um algo-
ritmo especfico. O tipo de aprendizado determinado pela maneira em que modificao dos
parmetros ocorre. Para que o treinamento seja finalizado, necessrio que a rede atinja uma
soluo generalizada para uma classe de problemas. Em uma RNA em fase de treinamento,
ocorrem trs eventos:

1. Estimulao pelo ambiente;

2. Ocorrem modificaes nos seus parmetros;

3. Mudana na resposta as aes do ambiente.

Existem dois tipos de paradigmas de aprendizado de uma rede, que so [1]:

Supervisionado: A rede aprende atravs de exemplos propostos por um supervisor. Com isso,
um conjunto de exemplos de um domnio apresentado rede com seu valor de sada
correto.

No supervisionado: Este modo usado quando no existem informaes claras sobre os pos-
sveis mapeamentos com base nos dados disponveis. Ento no existe um supervisor
ensinando-a, espera-se que ela possa agrupar as entradas por alguma similaridade.

12
3.5 Arquitetura

A arquitetura de uma RNA representa a forma como os neurnios esto organizados e conec-
tados entre si. Esta forma de organizao est relacionada com os algoritmos de aprendizagem
usados para treinar a rede [3].

Em geral, podem ser identificadas duas classes de redes neurais com duas ou mais camadas,
chamadas de feedforward e as redes recorrentes.

A escolha de uma arquitetura de uma Rede Neural depende de vrios fatores, principalmente:

Complexidade do problema;

Dimenso das entradas;

Conhecimento a priori sobre o problema;

Representatividade dos dados;

Tipo de algoritmo de treinamento escolhido.

3.5.1 Redes do tipo FeedFoward

Normalmente, as redes neurais so tipicamente organizadas em camadas, que podem estar


conectadas s unidades da camada seguinte. Basicamente, so definidas trs tipos de camadas:

Entrada: este tipo de camada nico na rede, onde os padres so apresentados e no feito
nenhum tipo de clculo.

Escondidas ou Intermedirias: este tipo de camada onde realiza-se a maior parte do pro-
cessamento, atravs de conexes ponderadas com os neurnios da camada anterior. De-
pendendo do domnio do problema, necessrio que se tenha mais de uma camada deste
tipo, para que possa extrair corretamente as caractersticas do problema.

Sada: este tipo nico na rede, em que o resultado final apresentado.

13
A figura 3.3 representa um modelo esquemtico de uma rede neural do tipo feedfoward
com as trs camadas principais. Estas redes so caracterizadas por sempre serem propagadas
frente, em que o fluxo de dados sempre ocorre no mesmo sentido.

Figura 3.3: Modelo de uma RNA multicamadas do tipo feedforward

Cada crculo representa um neurnio e cada seta representa a ligao ponderada de cada
neurnio. Os neurnios esquerda representam a entrada. Os neurnios centrais representam
a camada escondida e os direita, a camada de sada. As setas esquerda indicam as entradas
chegando nos neurnios de entrada e as que saem dos neurnios de sada, so a sada da rede.
As setas entre os neurnios indicam as ligaes sinpticas ponderadas e mostram que a rede
est interconectada.

3.5.2 Redes Recorrentes

As redes recorrentes so aquelas em que a estrutura dos neurnios, alm da alimentao para
frente, possui conexes para realimentao (feedback), portanto, no existe direo privile-
giada para propagao da informao. A figura 3.4 mostra um exemplo de uma rede recorrente
com trs neurnios.

Esta arquitetura a mais utilizada para memria associativa. Pode-se ter mais de uma ca-
mada, com realimentao a partir de qualquer uma destas, tornando-o a organizao da rede as
mais variadas possveis. O treinamento deste modelo de rede ocorre desta maneira: dado a

14
Figura 3.4: Modelo de uma RNA do tipo recorrente

rede os dados iniciais, calculada a sada da mesma e esta sada usada como entrada na prx-
ima iterao. Este tipo de treinamento s finalizado quando a sada durante algumas iteraes
seja constante.

3.6 Algoritmos de aprendizado

Define-se algoritmo de aprendizado como um conjunto de regras que define a soluo de um


problema de aprendizado [1]. Existem muitos tipos de algoritmos especficos para determinados
modelos de RNA, e estes se diferem principalmente como os pesos so ajustados.

Existem vrios tipos de algoritmos de aprendizado e cada um apresenta caractersticas es-


pecficas para cada modelo de RNA, como por exemplo [1]:

Correo de erro;

Baseada em memria;

Hebbiana;

15
Competitiva;

Boltzmann;

Por reforo.

Neste trabalho abordaremos um algoritmo por Correo de Erro, que o backpropagation.

3.6.1 Algoritmo Backpropagation

A demonstrao das limitaes de redes neurais de uma nica camada foi um fator na queda
do interesse por redes neurais nos anos 70. A descoberta por vrios cientistas independentes
e a ampla divulgao de um mtodo eficaz geral de treinamento de uma rede neural multica-
madas desempenhou um papel importante no ressurgimento de redes neurais (1980) como uma
ferramenta para resolver uma grande variedade de problemas [3].

O treinamento de uma rede usando o backpropagation envolve 3 estgios:

1. A propagao frente das amostras de treinamento;

2. O clculo e a retropropagao do erro associado;

3. Ajuste dos pesos.

Aps o treinamento, o uso da rede envolve apenas a propagao frente, que a operao
das entradas com os pesos, que , nos computadores atuais, executado de maneira bem rpida.
Como o treinamento no tem um tempo fixo de execuo, pode demandar bastante pacincia,
entretanto, existem vrias maneiras de melhorar o desempenho do processo de treinamento [3].
Um exemplo, ao invs de usar o backpropagation tradicional que usa o gradiente descendente,
utilizar o Levenberg-Marquardt backpropagation que apresenta resultados mais rpidos (este
mtodo o padro definido na toolbox de redes neurais do MATLAB R
).

Como uma rede de uma nica camada limitada nos problemas que pode aprender, uma rede
multicamadas (com uma ou mais camadas ocultas) pode aprender qualquer problema contnuo
com uma alta preciso. Mais de uma camada oculta pode ser benfica, para algumas aplicaes,
mas uma camada oculta suficiente. A figura 3.5, adaptada de Fausset [3], mostra um esquema
de uma rede neural artificial com uma camada oculta.

16
Figura 3.5: Uma rede Neural Backpropagation com uma camada oculta.

Algoritmo

Esta subseo baseada em FAUSSET [3].

Durante propagao a frente, cada unidade de entrada (xi ) recebe o sinal e distribui para
todos os neurnios da camada oculta Zp . Cada neurnio Zp faz soma da ponderao de todas
as entradas que recebeu e aplica a funo de ativao f (x). Com a sada da funo, espalha-se
esta sada como entrada todos os neurnios da prxima camada, sendo ela a ltima ou no.
Na ltima camada, aps todos os clculos idnticos aos outros neurnios, a sada da rede ser
a sada dos neurnios Yk aplicadas a uma funo de ativao, podendo esta ser a mesma dos
outros.

Aps isso, calculada a partir da sada obtida e a sada correta o erro referente a esta entrada.
Com este erro, calculado um fator k do neurnio da camada de sada e ser repassado para
os neurnios da camada anterior, para que estes possam calcular qual a sua parcela de erro e o
fator de correo do pesos.

Com os valores calculados, o peso da ligao wij atualizado utilizando como uma parcela
da correo este valor . Com isto sendo feito para todos as ligaes entre os neurnios, os
pesos so ajustados para aperfeioar a rede.

17
Captulo 4

Redes Neurais Pulsadas

Chamada por alguns autores como a terceira evoluo das Redes Neurais Artificiais, as Redes
Neurais Pulsadas utilizam a hiptese de que a codificao de informao ocorre na forma de taxa
de pulsos (rate code). Os experimentos e estudos de Gerstner [10] assumem que a codificao
de informao no crebro ocorre na forma de taxa de pulsos e conseguem justificar os resultados
obtidos por meio de observaes. Vrios modelos matemticos foram inspirados pelas hipteses
de taxa de pulsos, alm de experimentos e estudos no campo da neurocincia [5]. Todos estes
dados fizeram com que esta hiptese de codificao tivesse sucesso nos ltimos tempos [10].

Vrios modelos RNAs tradicionais utilizam a hiptese de codificao de informao por


meio da taxa de pulsos produzida pelos neurnios, entretanto no h parmetros que incre-
mentem ao modelo alguma informao temporal. A noo de atraso que existe nas redes de
Hopfield no possui influncia direta no processamento de informao deste modelo de rede,
ou seja, no h influncia do tempo na informao [5].

Estudos realizados revelam que a codificao baseada em taxas de pulsos no seriam rpidas
o suficiente para proporcionar a realizao de certos tipos de operaes e um dos principais ar-
gumentos foi dado por Thorpe e Imbert [11], em 1989: Primatas podem realizar processamento
e classificao de padres visuais (reconhecimento de objetos e classificao) em tempos prx-
imos a cem milissegundos. Este intervalo de tempo no seria o suficiente para que os neurnios
pudessem realizar uma estimativa da taxa de disparos, pois muitos neurnios no conseguiriam
gerar mais de um disparo. Para dizer isto, os autores usam a lgica de que os estmulos na retina
passam por volta de dez camadas de neurnios, o que deixaria cerca de dez milissegundos de
processamento para cada camada de neurnios envolvida no processamento [5].
Com base nestes argumentos, de Thorpe e Imbert, surgiu interesse por parte de pesquisadores
em encontrar alguma forma de processamento, como RNAs, mas que fossem inspirados em
neurnios biolgicos de maneira mais realstica. Com a definio de tais modelos e atravs
de simulaes, espera-se ter modelos capazes de realizar computaes de maneira to eficiente
quanto as realizadas no crebro [5].

4.1 Hipteses de Codificao de Informao

Existem diversas hipteses que tentam justificar a maneira com que a informao transmi-
tida internamente no crebro. A seguir so abordados alguns conceitos que so usados tipica-
mente em experimentos na rea da neurocincia e da computao.

4.1.1 Taxa de Pulsos

Esta hiptese de codificao vem sofrendo grandes crticas por diversos autores, como Ger-
stner [10] e Thorpe e Imbert [12], pois seria muito simples e no permitiria que os neurnios
respondessem a estmulos em tempos curtos suficientemente para certas computaes. Existem
trs formas de como codificar pela taxa de pulsos, descritas com mais detalhes em Jaskowiak
[5]:

Contagem de Pulsos: Esta a hiptese mais usada em experimentos. A representao consiste


na determinao de um intervalo t no qual os pulsos recebidos pelo neurnio np so
contados, a partir de um instante t, at outro instante t + t que delimita o intervalo da
contagem.

Densidade de Pulsos: Esta forma de codificao consiste na repetio de um determinado


padro em um determinado intervalo de tempo. O resultado pode ser interpretado de
maneira sucinta criando um histograma que represente a densidade de pulsos ao longo do
tempo. interessante ressaltar que esta codificao pode no ser usada biologicamente,
pois invivel a realizao de vrias repeties por parte de um neurnio para que possa
decidir se dispara ou no.

19
Atividade populacional: Para utilizao desta forma de codificao, os neurnios devem pos-
suir propriedades idnticas, alm de um mesmo padro de conexes. Com isso, podemos
dividir a populao de neurnios em sub-populaes, que trocam informaes entre si. O
clculo se d pelo total de disparos de uma sub-populao em um determinado intervalo
de tempo.

4.1.2 Codificao atravs de pulsos

Segundo Gerstner [10], a escolha de um modelo de codificao para representar a informao


no deve se basear apenas na simples escolha entre um modelo de taxa de disparos, pois o mod-
elo deve ir alm disso, sendo importante que o esquema ou hiptese de codificao permita que
os neurnios respondam de maneira rpida a estmulos, sendo assim biologicamente plausveis.
Por este motivo, os modelos baseados na hiptese de que a informao codificada por qualquer
meio de taxa de pulsos no interessante, pois negligencia informaes de pulsos produzidos
pelos neurnios. As codificaes atravs das taxas de pulsos permitem que o neurnio responda
de maneira rpida a estmulos, pois levam em conta tempos precisos em que so gerados os
pulsos. Nas prximas subsees sero abordadas as teorias, segundo este mtodo.

Instante para Primeiro Pulso

Neste esquema, o primeiro pulso gerado contm grande parte da informao (se no toda)
a ser transmitida de acordo com os estmulos recebidos. Aps estmulos em um neurnio i,
um pulso gerado dentro de um intervalo de tempo t. Desta forma, quanto mais cedo um
neurnio dispara, mais forte o disparo [5]. Thorpe argumenta que certas atividades do crebro
no possuem tempo suficiente para analisar mais de um pulso em cada neurnio em cada etapa
do processamento [13].

Mesmo considerando que cada neurnio gera apenas um pulso, existem algumas maneiras
de se interpretar estes pulsos, alm da latncia de gerao do pulso, por exemplo:

Ordem de chegada: Nesta hiptese o tempo deixa de ser importante para que a ordem de
chegada do pulso seja relevante. Supondo um intervalo tn com t0 = 0 e t10 = 10, se

20
houver disparos ocorridos neste intervalo, existem 10! possveis ordens diferentes, que
demonstra uma grande quantidade de informao que pode ser transmitida [5].

Cdigo binrio: A informao neste mtodo representado como um cdigo binrio. Para
n neurnios, existem 2n variaes possveis, o que pode ser uma grande quantidade de
informao.

Tempos Precisos dos Pulsos: Esta hiptese codifica e decodifica informaes dependendo dos
tempos de chegada dos pulsos. O nmero de variaes depende apenas do nmero de
neurnios e o grau de preciso com que estas diferenas so abordadas.

Estes trs mtodos so formas que podem ser utilizadas para trocar informaes baseando-se
apenas no primeiro pulso de um neurnio. Em qualquer um dos mtodos, uma grande quanti-
dade de informao pode ser trocada, mesmo usando poucos neurnios.

Codificao em Fase

Esta forma de codificao semelhante a da seo 4.1.2, mas ao invs de utilizar apenas um
pulso usada como referncia um sinal peridico, ou seja, um ciclo. A cada ciclo da entrada
feito o disparo dos neurnios. Se o ciclo de entrada no se altera durante o tempo, o padro
de sada em fases produzido. A figura 4.1, adaptada por Jaskowiak [5] retirado de Gerstner e
Kistler [14], mostra seu funcionamento.

Sincronismo e Correlao

A codificao pela forma de sincronismo estabelece que disparos em tempos prximos po-
dem ser considerados sendo o mesmo, como se houvessem disparado ao mesmo tempo. A
figura 4.2, de Gerstner e Kistler [14], mostra o diagrama de pulsos. As regies em destaque
representam os pulsos que sero considerados ao mesmo tempo.

A codificao por correlao leva em conta os tempos e a ordem de produo de sinais, ou


seja, caso a mesma ordem de produo de sinais ocorra, mas com tempos diferentes, a codifi-
cao das entradas tambm seria diferente, consequentemente a sada do neurnio tambm.

21
Figura 4.1: Codificao em fase

Figura 4.2: Codificao atravs de Sincronismo

4.2 Modelos de neurnios pulsados

Mass [15] separa as redes neurais em trs geraes, segundo os modelos de neurnios:

Primeira gerao: so os modelos que possuem as unidades funcionais baseadas no neurnio


criado por McCulloch e Pitts, que tem como caracterstica as entradas e sadas digitais,
tornando o modelo universal para realizao para computaes deste tipo;

Segunda gerao: a principal caracterstica da segunda gerao a utilizao de funes de


ativao contnuas, do tipo sigmoidal ou de base radial. Com estes tipos de funes

22
possvel a computao de valores analgicos e digitais, se na sada da rede houver algum
tipo de normalizao. Assim como nos neurnios de primeira gerao, no h qualquer
informao temporal na codificao das informaes pelo neurnio;

Terceira gerao: os modelos classificados como pertencentes terceira gerao so aqueles


que codificam as informaes utilizando o tempo como um fator decisivo. Estes modelos
so chamados de neurnios pulsados (spiking ou pulsed, em ingls).

importante dizer que nas Redes Neurais Artificias, ditas tradicionais, a deciso da escolha
do modelo do neurnio implica apenas na escolha da funo de ativao que melhor se ad-
eque ao problema. J nas Redes Neurais Pulsadas a escolha, talvez por enquanto, no to
simples. Existem diversos modelos de neurnios pulsados na literatura e por enquanto no se
encontram muitos estudos prticos comparando estes modelos para determinar qual obtm um
melhor resultado para algum tipo de tarefa.

Existem vrias linhas de pesquisa envolvendo neurnios pulsados e existem diversos modelos
destas unidades funcionais, que podem ser divididos em duas categorias:

Condutncia e Compartimentos;

Limiar de disparo.

interessante saber que os neurnios pulsados podem ser usados em implementaes de


unidades em redes neurais de base radial. Em uma abordagem convencional, estes neurnios
funcionam como uma unidade que integra os sinais de entrada e dispara caso estes alcancem
um limiar. Atravs de uma interpretao dos tempos de disparo, pode-se fazer com que este se
assemelhe a um neurnio RBF (Radial Base Function). O tempo de disparo de um neurnio
representa a distncia do sinal de entrada recebido do centro de uma funo de base radial. Para
que isso seja possvel, as conexes sinpticas devem possuir unidades de atraso associadas.
Quando todas as unidades de atraso que chegam a um neurnio esto sintonizadas de forma que
os sinais cheguem em tempos prximos, isto faz com que o neurnio dispare, sendo que quanto
mais prximos os sinais chegam, mais prxima do centro da funo RBF se encontra a entrada
associada a estes sinais [5] [16].

23
Nas sub-sees seguintes sero abordados alguns modelos de neurnios que mais so citados
na literatura.

4.2.1 Condutncia e Compartimentos

Os tipos de neurnios do modelo de condutncia descrevem o funcionamento dos neurnios


de forma bem detalhada. Os neurnios deste tipo so usados para simulaes de pequeno porte
em que o tempo de execuo no um fator crtico [17]. Por serem bem detalhados, apresen-
tam caractersticas fortemente ligadas aos neurnios biolgicos mas possuem um gasto com-
putacional muito alto. O modelo de Hodhkin-Huxley, por exemplo, precisa de 1200 operaes
de ponto flutuante para cada milissegundo de simulao [17]. Estes modelos no apresentam
descrio da estrutura espacial do neurnio ou das sinapses envolvidas na modelagem, apenas
so considerados como estruturas pontuais. O foco a maneira em que ocorre o processo de
gerao do potencial de ao. Para mais detalhes, ver Gerstner [10].

Os modelos de compartimentos se baseiam na descrio do funcionamento do neurnio glob-


almente e suas interligaes. So baseados nos modelos de condutncia e acrescentam infor-
maes espaciais nas suas definies. Diferente dos modelos de condutncia, este modelo leva
em conta como as dimenses espaciais dos neurnios e modelam a transmisso sinptica de
maneira mais detalhada [10].

4.2.2 Limiar de disparo

Os modelos de limiar de disparo (threshold-fire models) possuem uma maior plausabilidade


biolgica, mas no descrevem de maneira fiel o funcionamento das suas estruturas. Estes mo-
delos utilizam vrias abstraes em funo de desempenho, mas mantm a caracterstica dos
neurnios pulsados, que utilizar o tempo como fator de codificao. Sendo assim, so mel-
hores para aplicaes prticas, podendo ter redes de tamanhos maiores e melhor adequados para
aplicaes prticas [5]. Os pargrafos seguintes dissertam sobre alguns tipos de neurnios deste
modelo.

24
Modelo de Integrao e Disparo

O modelo de integrao e disparo um dos modelos mais simples dos limiar de disparo.
Ele necessita de 5 operaes de ponto flutuante para computar um milissegundo de simulao.
Comparando este modelo ao de Hodhkin-Huxley, h uma drstica reduo de operaes, con-
sequentemente h redues tambm na lista de fenmenos biolgicos observados [5]. Este
modelo um dos mais conhecidos dos limiar de disparo [14]. A compreenso deste modelo
mais simples se interpretarmos a rede como um circuito eltrico com um capacitor de capac-
itncia C e um resistor de resistncia R ligados em paralelo, ligados com uma corrente I que
varia de acordo com o tempo, como mostra a figura 4.3, retirada de Jaskowiak [5].

Figura 4.3: Modelo esquemtico do circuito do modelo de integrao e disparo.

Utilizando a Equao 4.1, demonstrada em Jaskowiak [5], podemos calcular o potencial da


membrana em um determinado instante de tempo. Para que o neurnio possa disparar, este
potencial deve atingir ao menos um limiar j previamente estabelecido.

du
m = u(t) + RI(t) (4.1)
dt

possvel incorporar ao modelo o perodo refratrio absoluto modelando uma interrupo


do clculo da Equao 4.1 por um intervalo t.

Vale ressaltar que neste modelo, a forma do potencial de ao, dos potenciais ps-sinpticos
e os perodos refratrios no esto inseridos, apenas o potencial da membrana rigorosamente

25
definido.

Os valores para os parmetros m e R da Equao 4.1 no so pr-estabelecidos e devem ser


ajustados de maneira emprica, para obter o padro de pulsos e comportamento desejados do
respectivo neurnio.

Modelo de Resposta Impulsiva

Este modelo, Simple Response Model (SRM), criado por Gerstner [18], constitudo de
uma abordagem diferente da utilizada pelo modelo de integrao e disparo. O autor diz que os
modelos de condutncia e compartimentos levam em conta aspectos irrelevantes, quando se est
interessado apenas em informaes carregadas nos trens de pulso (sequncia de pulsos) gerados
pelos neurnios.

Comparando este modelo aos de condutncia e compartimentos, temos um gasto computa-


cional menor, pois apenas os trens de pulsos so gerados, semelhante aos neurnios biolgiocs.
A figura 4.4, retirado de Jaskowiak [5], mostra um grfico de disparo de um neurnio deste
modelo, em que antes de disparar o neurnio tem uma variao de crescimento maior do que
aps o disparo, em que o decaimento da funo mais suave.

Figura 4.4: Grfico do neurnio do tipo SRM, durante o disparo.

Este modelo constitudo de uma varivel, u, que representa o potencial da membrana de


um neurnio i em funo do tempo, ou seja ui (t). Quando o potencial ui se iguala ou ultrapassa
o limiar a gerao de um potencial de ao ocorre. Bohte [19] utiliza a frmula 4.2 para

26
a modelagem dos potenciais ps-sinpticos do SRM, sendo uma constante que determina o
decaimento do potencial da membrana, definido empiricamente.

(f ) t t
ij (t tj ) = exp(1 ) (4.2)

O potencial da membrana ui (t), definido pela equao 4.3 alterado em apenas dois eventos.
O primeiro o recebimento de um sinal proveniente de um neurnio pr-sinptico j e o segundo
o estabelecimento do potencial de equilbrio aps a ocorrncia de um disparo e a passagem
dos perodos refratrios (absoluto e relativo) [5].

m
XX
d
uj (t) = wij (t t dk ) (4.3)
ij k=1

4.3 Arquiteturas Pulsadas

Assim como as Redes Neurais Artificiais tradicionais, a distribuio dos neurnios de forma
que cada unidade seja conectada a outro neurnio, formando uma rede neural, necessria.

A arquitetura que se deve usar em redes com neurnios pulsados deve ser adequada ao prob-
lema que se deseja resolver. [6]. Como as RNAs so bem difundidas na literatura, uma var-
iedade de problemas j possuem soluo e a maneira de configurao da rede explicada. Tais
conhecimentos sobre a soluo destes problemas tm sido aplicados na escolha ou montagem
da arquitetura das redes neurais pulsadas. Ou seja, a ideia de redes de nica camada, mltiplas
camadas e competitivas ainda se mantm possvel nas redes pulsadas. Entretanto, no h como
afirmar que o mesmo modelo de RNAs apresente um resultado semelhante nas RNPs.

Sobre as conexes sinpticas entre os neurnios, os pesos das ligaes multiplicam a intensi-
dade do sinal de entrada, alterando a sua intensidade ou valor, analogamente as RNAs. Como as
RNPs utilizam tempo como codificao, um sinal em um determinado tempo t, que pode sofrer
alguma alterao devido aos pesos, poder causar influencia no neurnio de destino quando este
determinar se o neurnio deve disparar ou no, causando assim diferena na sada do sinal.

Em alguns tipos de arquitetura de RNPs existe as chamadas unidades de atraso. Estas


unidades, que podem ser diferentes em cada sinapse (ou sub-conexo), causam a propagao

27
dos pulsos de forma atrasada por um determinado perodo pr-estabelecido. Por alterar o tempo
de propagao, estas unidades tem ligao direta na codificao da informao, podendo influ-
enciar no aprendizado.

Outro fator diferente das arquiteturas das RNAs, o conceito de sub-conexes, sub-sinapses
ou desdobramento sinptico, em que uma ligao entre um neurnio e outro contm mais de um
canal, tendo cada sub-canal um peso e talvez unidades de atraso especficas para aquela sub-
conexo [5]. A figura 4.5, retirada de Bohte [19], exemplifica as sub-conexes. Para exemplos
de ferramentas que utilizam diferentes arquiteturas, ver Jaskowiak [5].

Figura 4.5: a) uma rede FeedForward de neurnios pulsados. b) Uma ligao dividida em
sub-conexes contendo unidades de atraso diferentes.

4.4 Algoritmos de Treinamento

Assim como as RNAs, as RNPs precisam ser treinadas para que a rede possa aprender e re-
alizar as tarefas especficas. Para as RNAs existem diversos algoritmos espalhados na literatura
(ver Fausset [3] e Haykin [1]). Em se tratando das RNPs, faltam algoritmos de treinamento
amplamente formalizados e aceitos. Diversos algoritmos para treinamento supervisionado, ou
no-supervisionado foram propostos mas nenhum deles surge como uma resposta definitiva para
uma determinada arquitetura, deixando assim como um problema ainda em aberto a determi-
nao de mtodos de treinamento eficientes [5].

Um fato que indica o no-estabelecimento dos algoritmos de treinamento o que infor-


maes importantes sobre o seu funcionamento e parmetros so omitidas por seus autores. Por

28
exemplo, o algoritmo SpikeProp [19] no tem convergncia garantida e no apresenta infor-
maes sobre os valores que devem ser usados em seus pesos sinpticos [20]. Existem casos
que no h um algoritmo de treinamento genrico, mas um algoritmo especfico para aquele
problema. Existem outros casos em que o treinamento ocorre dentro do modelo neurnio [5].

Existem alguns algoritmos para treinamento de RNPs, como SpikeProp (que veremos a
seguir), de aprendizagem competitiva, baseado na regra de Hebb e para redes do tipo RBF
[5].

SpikeProp

Este algoritmo [19] [21] um mtodo de treinamento supervisionado semelhante ao algo-


ritmo backpropagation aplicado s RNAs e considerado como o primeiro deste tipo para Redes
Neurais Pulsadas [16]. Para que ele possa ser utilizado, a rede neural deve utilizar neurnios
do tipo e Resposta Impulsiva (seo 4.2.2) e codificar a informao com apenas um pulso pro-
duzido por neurnio para cada sinal de entrada apresentado. Alm disso, eliminada a neces-
sidade dos perodos refratrios no modelo do neurnio. Ele destinado para redes de mltiplas
camadas, com um ou mais ocultas, tendo seus neurnios conectados atravs de sinapses mlti-
plas. A discusso a seguir baseia-se em Jaskowiak [5], Simes [16], Sporea [22] e Bohte [19].

A definio do algoritmo feita a partir de uma rede neural de trs camadas I, J e K. O


objetivo do algoritmo o de ensinar os neurnios da camada de sada K um conjunto de tempos
de disparos para cada uma das entradas que apresentada rede, a partir da camada de entrada
I.

Definindo tk como o valor do tempo de disparo de um neurnio da camada de sada e tk como


o valor de sada efetiva do neurnio, a equao 4.4 calcula o erro E apresentado na camada de
sada da rede, para uma entrada.

1X
E= (tk tk )2 (4.4)
2 kK

De maneira diferente do algoritmo backpropagation tradicional, existem duas regras de adap-


tao distintas: uma para os pesos da camada de sada e outra para os pesos da camada escondida
da rede.

29
Como podem existir mais de uma conexo (ou sub-conexes) entre dois neurnios distintos,
d
um da camada oculta (J) e outro da camada de sada (K), existir um peso wjk , com j e
k representando os ndices dos neurnios da camada oculta e de sada respectivamente e d
indicando o ndice da subconexo entre os neurnios.

Para o ajuste dos pesos sinpticos da camada de sada, os autores prope a equao 4.5, onde:

d
wjk a variao do peso da ligao entre os neurnios j e k na conexo d;

a taxa de aprendizado;

djk (tk ) a funo do potencial ps-sinptico do neurnio k em um instante tk , em resposta ao


sinal transmitido a esta ligao na fase de propagao;

k definida pela Equao 4.6.

d
wjk = .djk (tk ).k (4.5)

Na equao 4.6, tk e tk so o tempo de disparo desejado e o tempo de disparo real que


ocorreu no neurnio k. Os somatrios na equao fazem que seja levado em conta cada uma
das subconexes de todos os neurnios ligados k.

(tk tk )
k = P Pn  d (t)  (4.6)
d jk
jJ d=1 wjk . t
.(tj )

Para as camadas ocultas, os pesos sinpticos so calculados conforme mostra a equao 4.7.

d
wij = .dij (tj ).j (4.7)

Pode ser utilizada na equao 4.8, as mesmas definies das equaes 4.5 4.7.

P P d d (t)
ij
k {k . d wjk tj }
j = P P  d (t )  (4.8)
n d ij j
iI w
d=1 ij . tj

30
As equaes acima definem as regras de adaptao dos pesos de uma RNP que utiliza
neurnios do tipo SRM e o algoritmo Spikeprop.

Observando as equaes acima, podemos notar que se o neurnio no realiza o disparo, sua
contribuio nula, pois seu tempo de disparo indefinido e consequentemente a variao dos
pesos tambm. Este fator pode causar problemas, pois caso vrios neurnios no disparem para
um padro de entrada, no possvel realizar o ajuste dos pesos. Com isso, deve-se alterar os
parmetros do SRM para que uma maior quantidade de neurnios dispare, ou ento modificar
os pesos sinpticos de forma que causem o disparo. Os autores no fornecem informaes de
como se deve inicializar os pesos sinpticos ou distribu-los.

Um fator importante a respeito do algoritmo que sua convergncia no garantida e aps


a criao, adaptaes foram sugeridas por Booij [6] e McKennoch [23] a fim de melhorar o
desempenho. O algoritmo 4.4 mostra o pseudo-cdigo do SpikeProp.

Algoritmo 1 Algoritmo SpikeProp, adaptado de Moore [24]


o tempo de disparo de um neurnio encontrado quando uj (t) usando a equao 4.3. Isso
repassado para os neurnios da camada oculta e logo em seguida para sada;

calcular k usando a equao 4.6, usando o tempo de disparo atual e o desejado nos neurnios de
sada;

calcular j usando a equao 4.8, usando o tempo de disparo atual dos neurnios da camada oculto
e os valores k ;

para a camada de sada, calcular wjk usando a equao 4.5;

para as camadas intermedirias, calcular wij usando a equao 4.7;

adaptar os pesos utilizando N ovoW = AntigoW + wij para camada intermediria e N ovoW =
AntigoW + wjk para camada de sada.

Comparando os tempos de pesquisa das RNAs tradicionais com as das RNPs estas podem
ser consideradas relativamente recentes e existem muitos fatores importantes que so descritos
pelos criadores dos algoritmos, o que dificulta a sua determinao [5]. Simes [16] argumenta
que o desenvolvimento do SpikeProp recente e mesmo com alguns testes, maiores anlises
precisam ser realizadas para que informaes concretas sobre suas implementaes se tornem
possveis.

Existem diversas fontes na literatura que mostram, ou tentam, explicar o funcionamento

31
do SpikeProp. Algumas delas mostram resultados de uso deste algoritmo utilizando certas
metodologias e bases de dados. Entretanto, no dizem claramente como foram feitas as im-
plementaes, a codificao/decodificao dos dados ou at mesmo o porqu da escolha de
determinados valores.

32
Captulo 5

Materiais e Mtodos

5.1 Problemas encontrados

Devido h vrios problemas no foi possvel realizar a implementao da Rede Neural Pul-
sada. Entre os problemas encontrados, podemos citar:

Omisso de parmetros e detalhes da implementao da RNP;

Falta de material definitivo ou poucos estudos definindo padres;

Poucos estudos em portugus;

Vrios trabalhos tericos e poucos prticos.

Apesar deste inconveniente, Bothe[21] disse em sua tese que realizou a implementao e,
alm disso, realizou uma comparao entre as RNPs e RNAs, que veremos com detalhes nas
prximas sesses.

5.2 Metodologia dos testes

A metodologia de anlise das RNAs usada para estabelecer a comparao foi:

1. 300 baterias de teste;

2. 10.000 pocas de treinamento;


3. taxa de aprendizado de 0.01;

4. uso de 30% da amostra, escolhida aleatoriamente, total para treinamento.

A escolha de 30% da amostra foi definida empiricamente e as amostras so selecionadas de


acordo com o resultado da funo dividerand() presente no MATLAB R
, que recebe como
parmetros o total de amostras e as porcentagens referentes a 3 categorias quaisquer. Definindo
apenas uma categoria como 30%, o retorno um vetor de ndices de amostras.

5.3 Bases de dados Utilizadas

5.3.1 Iris

A base de dados Iris foi criada por R.A. Fisher em 1936 e em 1988 se tornou pblica. Ela
contm 150 amostras de dimenses das spalas e ptalas da planta Iris, que as divide em trs
classes: Iris-Setosa, Iris-Versicolour e Iris-Virginica [25]. Os limites dos dados das amostras
dada pela tabela 5.1.

Tabela 5.1: Dimenses das amostras


Mnimo Mximo Mdia Desvio padro
largura 4.3 7.9 5.84 0.83
Spala
altura 2.0 4.4 3.05 0.43
largura 1.0 6.9 3.76 1.76
Ptala
altura 0.1 2.5 1.20 0.76

A configurao dos neurnios da RNA se deu da seguinte maneira para esta base:

Camada de Entrada: como a base Iris contm 4 valores de ponto flutuante, altura e largura da
ptala e spala, existem 4 neurnios na camada de entrada que repassam para os neurnios
da camada de sada, acrescido um de bias, totalizando 5;

Camada oculta: como no h um modo exato de se calcular a quantidade ideal de neurnios


na camada oculta, o valor de 11 neurnios foi determinado empiricamente;

Camada sada: como existem trs categorias de flores, foram utilizadas sadas binrias em que
apenas um neurnio ativado para cada classe.

34
Bohte [19] usou a seguinte configurao nos seus testes envolvendo RNAs e RNPs para fazer
a classificao desta base de dados.

Camada de Entrada: devido as redes pulsadas possurem um conceito diferente das RNAs, o
padro de entrada diferente tambm. Usando campos receptivos gaussianos (explicado
na seo 5.4) para realizar a codificao da entrada, ele usa 50 neurnios nesta camada.
Bothe [19] cita tambm que utilizou 12 neurnios para cada padro de entrada, o que
totalizaria, a partir das 4 entradas da Iris, 48 neurnios. Os dois neurnios extras no so
citados se so usados como bias;

Camada oculta: 10 neurnios;

Camada sada: como existem trs categorias de flores, utilizou sadas binrias, totalizando trs
neurnios.

Afirma tambm que o intervalo de codificao usado de quatro milissegundos e a constante


de tempo = 7ms. A taxa de aprendizado foi definida como = 0.0075.

5.3.2 Breast Cancer Wisconsin

Esta base de dados, criada por Dr. W. H. Wolberg, contm anlises de amostras de mamas
com cncer [26]. A amostra contm 699 amostras. Existem nove atributos que descrevem esta
classe:

Clump Thickness;

Uniformity of Cell Size;

Uniformity of Cell Shape;

Marginal Adhesion;

Single Epithelial Cell Size;

Bare Nuclei;

35
Bland Chromatin;

Normal Nucleoli;

Mitoses.

A configurao dos neurnios da RNA se deu da seguinte maneira para esta base:

Camada de Entrada: como esta base contm nove entradas, foram utilizados nove neurnios
de entrada, acrescido 1 de bias, totalizando 10;

Camada oculta: como dito anteriormente, empiricamente foi determinado o uso de dezessete
neurnios na camada oculta;

Camada sada: como a sada benigno ou maligno, foi determinado dois neurnios utilizando
sada binria.

Foi usada em Bohte [19] a seguinte configurao para as Redes Neurais, tanto Pulsada quanto
Artificial, para realizar os testes com esta base de dados.

Camada de Entrada: pelo mesmo motivo abordado em respeito as entradas na base Iris, ele
usa 64 neurnios nesta camada. Este afirma que utilizou 7 gaussianas para codificar a
entrada, sendo 9 entradas da base, o que totaliza 63 entradas. Este neurnio faltante o
bias;

Camada oculta: 15 neurnios;

Camada sada: como existem duas categorias, benigno ou maligno, a sada contm 2
neurnios binrios.

O intervalo de codificao usado de quatro milissegundos, a constante de tempo = 7ms


e a taxa de aprendizado foi definida como = 0.0075.

36
5.4 Codificao das informaes de entrada

Como as RNPs levam o tempo em considerao necessrio que a entrada tambm seja
dada por tempos. Como os dados disponibilizados para as bases utilizadas nesta monografia so
valores estticos e no variam com o tempo, necessrio que estes dados sejam transformados
em sinais de pulsos.

Bohte [21] introduz um mtodo para codificar entradas digitais em sequncias de pulsos e
utiliza campos receptivos gaussianos para isto. Como um meio de codificao de uma populao
de dados, usa-se mltiplos campos locais receptivos para distribuir a varivel de entrada em
mltiplos neurnios de entrada. Este mtodo origina um grande nmero de disparos, para cada
entrada digital. A seguir segue o funcionamento do mtodo, retirado de Bohte [21] e Simes
[16].

Primeiramente precisaremos definir que:

1. n a dimenso de uma componente do vetor de entrada;

2. g o conjunto de gaussianas;

3. k o ndice que percorreremos as gaussianas, que ser usada para percorrer o nmero de
neurnios da camada de entrada;

4. ck o centro da gaussiana;

5. o intervalo dos dados, no exemplo mostrado na figura 5.1, retirada de Simes [16], de
entrada de [0:255];

6. h o tempo de disparo (valor de retorno da aplicao do dado de entrada na funo


gaussiana);

7. o intervalo de tempo, usado no exemplo, de 10 iteraes;

8. x : [xmin xmax ] a entrada.

A camada de entrada da rede composta com n.g neurnios e as gaussianas determinam o


atraso no disparo de cada um dos n.g neurnios da camada de entrada. Se alguma gaussiana k

37
for estimulada no seu valor mximo local, o neurnio ik gerar um pulso da primeira iterao.
Se isto no ocorrer, o neurnio ik disparar aps h iteraes. Ou seja, o k-simo neurnio
da camada de entrada ir disparar de acordo com o estmulo da gaussiana k. A equao 5.1
demonstra como realizado o clculo do centro de cada uma das k gaussianas.

2k 3 xmax xmin
ck = xmin + . n.g > 2 (5.1)
2 (n.g) 2

A partir de descoberto o centro da gaussiana, ela segmentada no total de iteraes (atraso


de disparo), como mostra a figura 5.1. O valor utilizado na figura, 130, calculado em todas
as gaussianas e a partir do resultado obtido, verifica-se em qual iterao o valor resultante se
aproxima, este sendo definido o tempo no qual o neurnio (ou gaussiana) disparar.

Figura 5.1: Codificao de um valor contnuo (130) em pulsos temporais em 8 neurnios de


entrada. O intervalo de entrada de [0:255], coberto por g = 8 campos receptivos gaussianos.

interessante dizer que dentre as pesquisas realizadas, este foi o nico mtodo encontrado
de codificar sinais de entrada em pulsos. Em sua tese, Bohte [21] afirma que no tinha con-
hecimento sobre algum mtodo de codificao de entradas contnuas/digitais em pulsos. Ele
tambm no afirma se, em uma rede neural, necessrio fazer a decodificao deste mtodo

38
Captulo 6

Resultados obtidos

A tabela 6.1 mostra os resultados obtidos por Bohte [19] e os resultados seguindo a metodolo-
gia proposta. As implementaes utilizando MatlabBP e MatlabLM utilizam a toolbox de redes
neurais disponvel no MATLAB R
. MatlabBP usa a funo de gradiente descendente tradi-
cional e MatlabLM usa o treinamento Levenberg-Marquardt para o ajuste dos pesos. SpikeProp
se refere a implementao de Bohte [19] utilizando neurnios SRM e SpikeProp como algoritmo
de treinamento.

Analisando a tabela 6.1, podemos ver que sempre obteve-se uma taxa de acerto semelhante,
com exceo do MatlabLM, com a base Iris, que teve uma taxa de 98% que pode ser consider-
ada alta. Se compararmos o uso do SpikeProp com as RNAs, utilizando os campos receptivos
gaussianos como mtodo de codificao das entradas, podemos notar que o SpikeProp apresen-
tou um treinamento bem mais rpido do que os outros e tem que se levar em conta, que os dados
de entrada so preparados para as RNPs.

Se compararmos as RNAs com e sem codificao das entradas, apresentaram uma taxa de
iteraes semelhate( Bohte[21] utilizou 70% da base, enquanto nesta dissertaco, 30%), mas
os mtodos sem codificao apresentam menor custo computacional devido a utilizar menos
neurnios na camada de entrada.
Tabela 6.1: Resultados obtidos. A coluna de Iteraes do treinamento calculada como o total
de iteraes necessria para realizar o treinamento. Cada amostra da base de treinamento
considerada 1 iteraco.
Algoritmos Entrada Intermediria Sada Iteraes do treinamento Taxa de acerto
Resultados obtidos por Bohte [19]
Iris dataset
SpikeProp 50 10 3 1000 96.1%
MatlabBP 50 10 3 2600000 95.5%
MatlabLM 50 10 3 3750 95.7%
Wisconsin breast cancer dataset
SpikeProp 64 15 2 1500 97.0%
MatlabBP 64 15 2 92000000 96.3%
MatlabLM 64 15 2 3500 96.7%

Resultados obtidos a partir da metodologia usada


Iris dataset
RNA MP 5 11 3 450000 96.7%
MatlabBP 5 11 3 450000 94.7%
MatlabLM 5 11 3 540 98%
Wisconsin breast cancer dataset
RNA MP 10 17 2 126315 97.4%
MatlabBP 10 17 2 2100000 94.9%
MatlabLM 10 17 2 2310 96.9%

40
Captulo 7

Consideraes Finais

Analisando a literatura sobre as Redes Neurais Pulsadas, pudemos notar que ainda so feitos
muitos estudos tericos sobre os modelos de neurnios e algoritmos que os descrevem. Por ser
um abordagem relativamente recente, comparado as RNAs, as RNPs no tem uma definio
slida sobre suas unidades bsicas ou sobre algoritmos de treinamento. O que existe so adap-
taes dos algoritmos das RNAs para que possam ser aplicados s RNPs.

Determinar qual das duas arquiteturas tem o melhor funcionamento na resoluo de um de-
terminado problema ainda carente de experimentos. Pela falta de clareza dos autores dos
algoritmos, a implementao se torna um desafio de fora-bruta para ajustar alguns parmet-
ros que, por enquanto, so definidos empiricamente. Com novos trabalhos tericos e prticos
surgindo sobre as RNPs, as definies vo se tornando mais slidas e os experimentos mais real-
istas, para que possam a partir dai determinar as aplicaes que apresentam resultados melhores
com esta abordagem.

Como visto no captulo 6, analisando os resultados obtidos por Bohte [19], comparando com
os abordados segundo a metodologia proposta, nota-se que as redes Neurais Pulsadas apre-
sentam um resultado semelhante as Redes Neurais Artificiais, se analisados a taxa de acertos
obtida. Ao se analisar do ponto de vista computacional, as RNPs possuem um custo maior que
as RNAs tradicionais, devido necessitar de codificar informaes de maneira temporal e exigir
uma quantidade maior de neurnios na camada de entrada.

Para o problema de classificao destas bases, onde os dados so estticos e no variam


com o tempo, nenhuma das arquiteturas se destaca quanto a qualidade de soluo, exceto se
no for utilizada a codificao pro campos receptivos e utilizar MatlabLM como mtodo de
treinamento. possvel que as RNPs tenham um resultado melhor que as RNAs em outras
tarefas ou com outras bases de dados. Ao se analisar as iteraes do treinamento, percebe-se
que as RNPs apresentam um treinamento com menos iteraes, que pode ser mais rpido.

7.1 Sugesto para trabalhos futuros

1. Estudar de maneira detalhada os modelos de neurnios do tipo de limiar de disparo,


implement-los e avaliar o seu comportamento;

2. Analisar o modelo de Resposta Impulsiva (SRM), analisar o algoritmo SpikeProp, escol-


her uma tarefa, implement-los e avaliar o comportamento;

3. Estudar mais profundamente os mtodos de codificao de entrada e sada;

4. Formalizar um algoritmo que possa explicar de maneira precisa o treinamento para RNPs;

5. Estudar a aplicao de RNPs dados de natureza temporal (ECG ou EEG).

42
Referncias Bibliogrficas

[1] HAYKIN, S. Redes Neurais - Princpios e prtica. 2. ed. Porto Alegre: Bookman, 2001.

[2] BRAGA, A. de P. Redes Neurais Artificiais: Teoria e Aplicaes. 1. ed. Rio de Janeiro - RJ:
LTC - LIVROS TCNICOS E CIENTFICOS EDITORA S.A., 2000.

[3] FAUSETT, L. Fundamentals of Neural Networks. 1. ed. New Jersey: Printice Hall, 1994.

[4] TATIBANA, C. Y.; KAETSU, D. Y. Uma Introduo s Redes Neurais. Consultado na


INTERNET: http://www.din.uem.br/ia/neurais, 28/06/2012.

[5] JASKOWIAK, P. A. Um Estudo Sobre as Redes Neurais Pulsadas. Dissertao (Trabalho de


Concluso de Curso) UNIOESTE Universidade Estadual do Oeste do Paran, Cascavel
- PR, Dezembro 2008.

[6] BOOIJ, O. Temporal Pattern Classification using Spiking neural Networks. Dissertao
(Mestrado) University of Amsterdam, Amasterdam, Agosto 2004.

[7] KOLB, B.; WHISHAW, I. An Introduction to Brain and Behavior. 2. ed. New York: Worth
Publishers, 2001.

[8] TIMOSZCZUK, A. P. Reconhecimento automtico de locutor usando Redes Neurais Pul-


sadas. Tese (Doutorado) Universidade de So Paulo, So Paulo, SP, Dezembro 2004.

[9] POSTAL, A. Reconhecimento de Imagens de Impresses Digitais Utilizando Redes Neurais


Artificiais. Dissertao (Trabalho de Concluso de Curso) UNIOESTE Universidade
Estadual do Oeste do Paran, Cascavel - PR, Dezembro 2001.

[10] GERSTNER, W. Pulsed Neural Networks. 1. ed. Cambridgem, USA: MIT Press, 1999.
[11] THORPE, S. J.; IMBERT, M. Biological constraints on connectionist modelling. [S.l.]:
Elsevier, 1989. 6392 p.

[12] THORPE, S. J.; DELORME, A.; VANRULLEN, R. Spike-based strategies for rapid pro-
cessing. Toulouse, France: Nature, 2001.

[13] VANRULLEN, R.; GUYONNEAU, R.; THORPE, S. J. Spike times make sense. Trends in
Neurosciences, Centre de Recherche Cerveau et Cognition, 133 Route de Narbonne, 31062
Toulouse Cedex, France. rufin.vanrullen@cerco.ups-tlse.fr, v. 28, n. 1, p. 14, jan. 2005.
ISSN 01662236. Disponvel em: <http://dx.doi.org/10.1016/j.tins.2004.10.010>.

[14] GERSTNER, W.; KISTLER, W. M. Spiking Neuron Models: Single Neurons, Populations,
Plasticity. 1. ed. New York: New York, 2002.

[15] MAASS, W. Networks of spiking neurons: The third generation of neural network models.
Neural Networks, v. 10, p. 16591671, 1996.

[16] SIMES, A. da S. Aprendizado no supervisionado em redes neurais pulsadas de base


radial. Tese (Doutorado) Escola Politcnica da Universidade de So Paulo, 2006.

[17] IZHIKEVICH, E. M. Which model to use for cortical spiking neurons? IEEE transactions
on neural networks / a publication of the IEEE Neural Networks Council, The Neurosciences
Institute, San Diego, CA 92121, USA. Eugene.Izhikevich@nsi.edu, v. 15, n. 5, p. 1063
1070, set. 2004. Disponvel em: <http://dx.doi.org/10.1109/TNN.2004.832719>.

[18] GERSTNER, W. Associative memory in a network of biological neurons. In: LIPP-


MANN, R.; MOODY, J. E.; TOURETZKY, D. S. (Ed.). Advances in Neural Information
Processing Systems 3, [NIPS Conference, Denver, Colorado, USA, November 26-29, 1990].
[S.l.]: Morgan Kaufmann, 1990. p. 8490. ISBN 1-55860-184-8.

[19] BOHTE, S. M.; KOK, J. N.; POUTR, J. A. L. Error-backpropagation in temporally


encoded networks of spiking neurons. Neurocomputing, v. 48, n. 1-4, p. 1737, 2002.

[20] BELATRECHE, A.; MAGUIRE, L. P.; MCGINNITY, M. Advances in design and


application of spiking neural networks. Soft Comput., Springer-Verlag, Berlin, Hei-

44
delberg, v. 11, n. 3, p. 239248, out. 2006. ISSN 1432-7643. Disponvel em:
<http://dx.doi.org/10.1007/s00500-006-0065-7>.

[21] BOHTE, S. M. Spiking Neural Networks. Tese (Doutorado) Universiteit Leiden, 2003.

[22] SPOREA, I.; GRNING, A. Reference time in spikeprop. Proceeding of the International
Joint Conference on Neural Networks (IJCNN 2011), San Jose, USA, 2011.

[23] MCKENNOCH, S.; LIU, D.; BUSHNELL, L. G. Fast modifications of the spike-
prop algorithm. In: IJCNN. IEEE, 2006. p. 39703977. Disponvel em: <http://dblp.uni-
trier.de/db/conf/ijcnn/ijcnn2006.html>.

[24] MOORE, S. C. Back-propagation in Spiking Neural Networks. Tese (Doutorado) Uni-


versity of Bath, 2002.

[25] FISHER, R. Iris Data Set. 1936. Consultado na INTERNET:


http://archive.ics.uci.edu/ml/datasets/Iris, 28/06/2012.

[26] WOLBERG, W. H.; STREET, W. N.; MANGASARIAN, O. L. Wiscon-


sin Diagnostic Breast Cancer (WDBC). 1995. Consultado na INTERNET:
http://archive.ics.uci.edu/ml/datasets/Breast+Cancer+Wisconsin+(Original), 05/08/2012.

45

S-ar putea să vă placă și