Buscar

Conteúdo_ Redes Neurais Artificiais

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 37 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 37 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 37 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
1 
ÍNDICE 
2 – O NEURÔNIO BIOLÓGICO ............................................................................................................. 4 
3 – NEURÔNIOS ARTIFICIAIS: O MODELO MCP (MCCULLOCH E PITTS) ............................. 6 
4 – FUNÇÕES DE ATIVAÇÃO ................................................................................................................ 8 
5 – APRENDIZADO ................................................................................................................................ 10 
5.1 – APRENDIZADO SUPERVISIONADO 10 
5.2 – CORREÇÃO DE ERROS 11 
5.3 – APRENDIZADO NÃO SUPERVISIONADO 12 
5.4 – APRENDIZADO HEBBIANO 12 
5.5 – APRENDIZADO POR COMPETIÇÃO 13 
5.6 – APRENDIZADO POR REFORÇO 14 
6 – ALGUMAS ARQUITETURAS DE RNAS ...................................................................................... 16 
6.1 – PERCEPTRON DE CAMADA ÚNICA E SEU ALGORITMO DE APRENDIZADO 16 
6.2 - PERCEPTRON MULTICAMADAS 19 
6.2.1 – Arquitetura MLP ................................................................................................................... 21 
6.2.2 – Definição de uma Topologia Ideal para o MLP ................................................................... 21 
6.2.3 – Otimização da topologia utilizando pruning ........................................................................ 22 
6.2.4 – Treinamento de Redes MLP .................................................................................................. 24 
6.2.5 – Problemas Enfrentados no Treinamento de Redes MLP ...................................................... 27 
APÊNDICE 1 – ESTUDO DE CASO ..................................................................................................... 31 
1 INTRODUÇÃO 31 
2 HEPATITE: TIPOS E DIAGNÓSTICOS 31 
3 DESCRIÇÃO DOS DADOS UTILIZADOS 32 
4 TREINAMENTO, TESTE E VALIDAÇÃO DOS DADOS 33 
5 CLASSIFICAÇÃO 33 
6 CONCLUSÃO 30 
BIBLIOGRAFIA UTILIZADA............................................................................................................... 35 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
2 
ÍNDICE DE FIGURAS E TABELAS 
 
FIGURA 1 - COMPONENTES DE UM NEURÔNIO BIOLÓGICO ......................................................... 4 
FIGURA 2 - NEURÔNIO DE MCCULLOCH E PITTS ............................................................................. 6 
FIGURA 3 - ALGUMAS FUNÇÕES DE ATIVAÇÃO .............................................................................. 9 
FIGURA 4 - APRENDIZADO SUPERVISIONADO ............................................................................... 11 
FIGURA 5 - APRENDIZADO NÃO SUPERVISIONADO..................................................................... 12 
FIGURA 6 APRENDIZADO POR REFORÇO ........................................................................................ 14 
FIGURA 7 - TOPOLOGIA DE UM PERCEPTRON SIMPLES COM UMA ÚNICA SAÍDA ................ 16 
FIGURA 8 - FUNCIONAMENTO DO PERCEPTRON DE UMA CAMADA ........................................ 17 
FIGURA 9 - CLASSIFICAÇÃO DO PERCEPTRON JÁ TREINADO .................................................... 19 
FIGURA 10 - REDE MLP COM CAMADA INTERMEDIÁRIA ............................................................ 21 
FIGURA 11 - FLUXO DE PROCESSAMENTO DO ALGORITMO BACK-PROPAGATION. ............ 25 
FIGURA 12 - SUPERFÍCIE DO ERRO DE UMA REDE MLP ............................................................... 27 
 
TABELA 1 - ARQUITETURAS PARA TREINAMENTO ..................................................................... 33 
TABELA 2 - % DE REGISTROS ACEITÁVEIS EM RELAÇÃO A TAXA DE ERRO ......................... 34 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
3 
1 – Introdução 
O que são Redes Neurais Artificiais ? 
O final da década de 80 foi marcado pelo ressurgimento da área de Redes 
Neurais Artificiais (RNAs), também conhecida como conexionismo ou sistemas de 
processamento paralelo e distribuído. Esta forma de computação não é algorítmica, e 
sim caracterizada por sistemas que, de alguma forma ou de alguma maneira, relembram 
a estrutura do cérebro humano. Por não ser baseada em regras ou programas, a 
computação neural constitui em uma alternativa computação algorítmica convencional. 
As RNAs são sistemas paralelos distribuídos compostos por unidades de 
processamentos simples (nodos) que computam determinadas funções matemáticas 
(normalmente não lineares). Tais unidades são dispostas em uma ou mais camadas e 
interligadas por um grande número de conexões, geralmente, unidirecionais. Na maioria 
dos modelos estas conexões estão associadas a pesos, os quais armazenam o 
conhecimento representado no modelo e servem para ponderar a entrada recebida por 
cada neurônio da rede. O funcionamento destas redes é inspirado em uma estrutura 
física concebida pela natureza do cérebro humano. 
A solução de problemas através das RNAs é bastante atrativa. Pois o 
paralelismo constitui-se na característica principal das RNAs, onde esta cria a 
possibilidade de um desempenho superior em relação a solução de problemas baseados 
nos modelos convencionais. Em RNAs, o procedimento usual na solução de problemas 
passa inicialmente por uma fase de aprendizagem, onde um conjunto de exemplos é 
apresentado para rede, que extrai automaticamente as características necessárias para 
representar a informação fornecida. Essas características são utilizadas posteriormente 
para gerar respostas para o problema. 
A capacidade de aprender através de exemplos e de generalizar a 
informação aprendida são, os atrativos principais da solução de problemas através das 
RNAs. A generalização está associada à capacidade da rede em aprender através de um 
conjunto reduzido de exemplos, e posteriormente, dar respostas coerentes a dados não 
apresentados a rede. Isto é uma demonstração que a capacidade das RNAs vai, além de, 
simplemente mapear relações de entrada e saida. As RNAs são capazes de extrair 
informações não-apresentadas de forma explícita através de exemplos. Outras 
características importantes são a capacidade de auto-organização e processamento 
temporal que, aliadas à aquela citada anteriormente, fazem das RNAs uma ferramenta 
computacional extremamente poderosa e atrativa para a solução de problemas 
complexos. 
Este relatório trata das principais características das RNAs, com enfoque em 
algumas topologias e apresenta uma solução de um problema utilizando RNAs. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
4 
2 – O Neurônio Biológico 
Como as RNAs são baseadas na estrutura do cérebro (neurônio), serão 
mostradas as principais características de um neurônio biológico, para uma posterior 
compreensão, a respeito, do funcionamento das RNAs. 
O neurônio biológico é uma célula que pode ser dividida em três seções: o 
corpo da célula, os dendritos e o axônio, cada uma com funções específicas, porém 
complementares. 
O corpo do neurônio mede apenas alguns milésimos de milímetros e os 
dendritos apresentam poucos milímetros de comprimento. O axônio pode ser mais 
longo. Os dendritos têm como função, receber informações, ou impulsos nervosos, 
oriundas de outros neurônios, e conduzi-las até o corpo celular. Ali, a informação é 
processada e novos impulsos são gerados. Estes impulsos são transmitidos a outros 
neurônios (nodos), passando pelo do axônio e atingindo os dendritos dos neurônios 
seguintes. 
O ponto de contato entre a terminação axônica de um neurônio e o dentrito 
de outro é chamado sinapse. É pelassinapses que os nodos se unem funcionalmente, 
formando as redes neurais. As sinapses funcionam como válvulas, sendo capazes de 
controlar a transmissão de impulsos, isto é, o fluxo da informação entre os nodos na 
rede neural. O efeito das sinapses é variável, é esta variação que dá ao neurônio 
capacidade de adaptação. Na Figura 1 está ilustrada, de forma simplificada, os 
componentes do neurônio. 
 
Figura 1 - Componentes de um Neurônio Biológico 
Os sinais oriundos dos nodos pré-sinápticos são passados para o corpo do 
neurônio, onde são comparados com outros sinais recebidos pelo neurônio. Se o 
percentual em um intervalo curto de tempo é suficientemente alto, a célula “dispara”, 
produzindo um impulso que é transmitido para as células seguintes (nodos pós-
sinápticos). Este sistema simples é responsável pela maioria das funções realizadas 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
5 
pelo nosso cérebro. A capacidade de solucionar funções complexas surge com a 
operação em paralelo de todos os 10
11
 nodos do nosso cérebro. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
6 
3 – Neurônios Artificiais: O Modelo MCP (McCulloch e Pitts) 
O modelo de neurônio proposto por McCulloch e Pitts (MCP) em 1943 [1] é 
uma simplificação do que se sabia à respeito do neurônio biológico naquela época. A 
sua descrição matemática resultou em um modelo com n terminais de entrada 
x1, x2, . . . ,xn (que representam os dendritos), e apenas um terminal de saída y (que 
representa o axônio). Para emular o comportamento das sinapses, os terminais de 
entrada do neurônio têm pesos acoplados w1, w2, . . . ,wn, cujo valores podem ser 
positivos ou negativos, dependendo das sinapses correspondentes serem inibitórias ou 
excitatórias. O efeito de uma sinapse particular i no neurônio pós-sináptico é dado por: 
xi wi. Os pesos determinam “em que grau” o neurônio deve considerar sinais de disparo 
que ocorrem naquela conexão. Uma descrição do modelo está ilustrado na Figura 2. 
Um neurônio dispara quando a soma dos impulsos que ele recebe ultrapassa 
o seu limiar de excitação chamado de threshold. O corpo do neurônio, por sua vez, é 
emulado por um mecanismo simples que faz a soma dos valores xi wi recebidos pelo 
neurônio (soma ponderada). E decide se o neurônio deve ou não disparar (saída igual a 
1 ou a 0) comparando a soma obtida ao limiar ou threshold do neurônio. No modelo 
MCP, a ativação do neurônio é obtida através da aplicação de uma “função de 
ativação”, que ativa a saída ou não, dependendo do valor da soma ponderada das suas 
entradas. Na descrição original do modelo MCP, a função de ativação é dada pela 
função limiar descrita na a seguir. O nodo MCP terá então sua saída ativa quando: 



n
i
ii wx
1

 
onde n é o número de entradas do neurônio, wi é o peso associado à entrada xi, e  é o 
limiar (threshold) do neurônio. 
S .
.
.
X1
X2
Xn
Y
W1
W2
Wn
 
Figura 2 - Neurônio de McCulloch e Pitts 
McCulloch e Pitts simplificaram seu modelo assumindo que os nodos em 
cada camada da rede disparam sincronamente, isto é, que todos os nodos são avaliados 
ao mesmo tempo e também que as entradas em um instante de tempo t produzem a sua 
saída no tempo t + 1. Em sistemas biológicos, sabe-se que não existe um mecanismo 
para sincronizar as ações de nodos, nem há restrição para que as suas saídas sejam 
ativadas em tempos discretos como no modelo MCP. Sabe-se também que o valor da 
próxima saída dos nodos biológicos depende enormemente das ativações dos neurônios 
anteriores, já que até mesmo os neuro-transmissores liberados anteriormente levam 
algum tempo para se re-combinarem, influenciando, assim, as ativações seguintes. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
7 
Finalmente, pode-se levantar algumas limitações na descrição do modelo 
MCP original, como: 
1. Redes MCP com apenas uma camada conseguem implementar funções linearmente 
separáveis; 
2. Pesos negativos são mais adequados para representar disparos inibidores; 
3. O modelo foi proposto com pesos fixos, não ajustáveis. Não há a presença de um 
algoritmo de aprendizado. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
8 
4 – Funções de Ativação 
A partir do modelo proposto por McCulloch e Pitts foram derivados vários 
outros modelos que permitem a produção de uma saída qualquer, não necessariamente 
zero ou um, e com diferentes funções de ativação. A Figura 3 ilustra, graficamente, 
quatro funções de ativação diferentes: a função linear, a função rampa, a função degrau 
(step) e a função sigmoidal. 
A função de ativação linear, mostrada na Figura 3a, é definida pela equação 
abaixo. 
y =  x 
Onde  é um número real que define a saída linear para os valores de 
entrada, y é a saída e x é a entrada. 
A função linear pode ser restringida para produzir valores constantes em 
uma faixa [-, +], e neste caso, passa a ser a função rampa mostrada, graficamente, na 
Figura 3b definida pela notação abaixo. 












xse
xsex
xse
y
 
Os valores máximo e mínimo da saída são -, +. A função rampa é usada 
geralmente, como uma função linear simplificada. 
A função step, ilustrada na Figura 3, é similar a uma função rampa, pois a 
função produz a saída + para valores de x maiores que zero, caso contrário a função 
produz o valor de -. A função step é definida por. 






0
0
xse
xse
y

 
A função sigmoidal, conhecida também como S-shape, ilustrada na Figura 
3d, é uma função semi-linear. É possível definir várias funções sigmoidais. Uma das 
funções sigmoidais mais importantes é a função logística definida por. 
Txe
y
/1
1


 
Onde parâmetro T determina a suavidade de curva. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
9 
x
f(x)
x
f(x)
x
f(x)
x
f(x)
(a) (b) (d)(c)
 
Figura 3 - Algumas funções de ativação 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
10 
5 – Aprendizado 
As RNAs possuem a capacidade de aprender através exemplos e fazer 
interpolações e extrapolações do que aprenderam. No aprendizado conexionista não se 
procura obter regras como na abordagem simbólica da Inteligência Artificial (IA), mas 
determinar a intensidade das conexões entre os neurônios. Um conjunto de 
procedimentos bem definidos para adaptar os parâmetros de uma RNA, afim de que a 
mesma possa aprender uma determinada função é chamado de algoritmo de 
aprendizado. Como era de se esperar, não há um único algoritmo de aprendizado. O que 
temos é um conjunto de ferramentas representadas por diversos algoritmos, cada qual 
com suas vantagens e desvantagens. Estes algoritmos, basicamente, diferem pela 
maneira através da qual o ajuste dos pesos é feito. 
A utilização de uma RNA na solução de uma tarefa passa, inicialmente, por 
uma fase de aprendizagem, onde a rede extrai características relevantes de padrões de 
informações apresentados para a mesma, criando assim uma representação própria para 
o problema. A etapa de aprendizagem consiste em um processo iterativo de ajuste de 
parâmetros da rede, os pesos das conexões entre as unidades de processamento, que 
guardam o conhecimento que a rede adquiriu do ambiente em que está operando. Uma 
definição geral do que vem a ser aprendizagem pode ser expressa da seguinte forma 
[11]. 
“Aprendizagem é o processo pelo qual os parâmetros de uma 
rede neural são ajustados através de uma forma continuada de 
estímulos fornecidos pelo ambiente no qual a rede está 
operando, sendo que otipo específico de aprendizagem 
realizado, é definido pela maneira particular como ocorrem os 
ajustes realizados nos parâmetros”. 
Diversos métodos para treinamento de redes foram desenvolvidos, podendo 
estes serem agrupados em dois paradigmas principais: Aprendizado Supervisionado e 
Aprendizado Não Supervisionado. Outros dois paradigmas bastante conhecidos são os 
de Aprendizado por Reforço (que é um caso particular de Aprendizado Supervisionado) 
e Aprendizado por Competição (que é um caso particular de Aprendizado Não 
Supervisionado). Nas próximas seções estes paradigmas serão estudados, juntamente, 
com dois mecanismos de aprendizados encontrados na literatura, Correção de Erros e o 
Aprendizado Hebbiano. 
5.1 – Aprendizado Supervisionado 
Este método de aprendizado é o mais comum no treinamento das RNAs, 
tanto de neurônios com pesos, quanto de neurônios sem pesos, sendo chamado 
Aprendizado Supervisionado porque a saída desejada que a rede deve resultar é 
fornecida por um supervisor (professor) externo. O objetivo é ajustar os parâmetros da 
rede, de forma a encontrar uma ligação entre os pares de entrada e saída fornecidos. A 
Figura 4 ilustra o mecanismo de Aprendizado Supervisionado. O professor indica, 
explicitamente, um comportamento bom ou ruim para a rede, visando direcionar o 
processo de treinamento. A rede tem sua saída corrente (calculada) comparada com a 
saída desejada, recebendo informações do supervisor sobre o erro da resposta atual. A 
cada padrão de entrada submetido à rede compara-se a resposta desejada (que representa 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
11 
uma ação ótima a ser realizada pela rede) com a resposta calculada, e os pesos das 
conexões são ajustados para minimizar o erro. A minimização da diferença é 
incremental, já que pequenos ajustes são feitos nos pesos à cada etapa de treinamento, 
de tal forma que estes caminhem, se possível, para uma solução. 
Professor
RNA
Entrada
S
-
+
Erro
 
Figura 4 - Aprendizado Supervisionado 
A desvantagen do Aprendizado Supervisionado é que, na ausência do 
professor, a rede não conseguirá aprender novas estratégias para situações não cobertas 
pelos exemplos do treinamento da rede. Os exemplos mais conhecidos de algoritmos de 
Aprendizado Supervisionado são a regra delta ou correção de erros (vide seção 5.2) [18] 
e a sua generalização para redes de múltiplas camadas, o algoritmo back-propagation 
[15]. 
O Aprendizado Supervisionado pode ser implementado, basicamente, de 
duas formas: off-line e on-line. Para treinamento off-line, os dados do conjunto de 
treinamento não mudam, sendo que uma vez obtida uma solução para a rede, esta deve 
permanecer fixa. Por sua vez, no aprendizado on-line, o conjunto de dados muda, 
continuamente, visto que a rede deve estar em contínuo processo de adaptação. 
Na seção seguinte, será apresentada noção geral sobre o método de 
aprendizado através da Correção de Erros. 
5.2 – Correção de Erros 
O processo de aprendizado por correção de erros procura minimizar a 
diferença entre a soma ponderada das entradas pelo pesos (saída calculada pela rede) e a 
saída desejada, ou seja, o erro da resposta atual da rede. O termo e(t) denota o erro e 
deve ser calculado através da seguinte expressão: e(t) = d(t) – y(t), onde d(t) é a saída 
desejada e y(t) é a resposta atual (calculada) no instante de tempo t. A forma genérica 
para alteração dos pesos por correção de erros é definida por: 
wi(t+1) = wi(t) +  e(t) xi(t) 
onde  é a taxa de aprendizado e xi(t) é a entrada para o neurônio i no tempo t. 
Segundo a equação acima, o ajuste dos pesos deve ser proporcional ao 
produto do erro pelo valor de entrada da sinapse naquele instante de tempo. Esta 
expressão aparece tanto no algoritmo de treinamento do perceptron [14] quanto no 
algoritmo para treinamento do ADALINE [18] e posterior generalização para o 
algoritmo back-propagation [15]. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
12 
O método de aprendizado por correção de erros também pode ser chamado 
de regra delta de aprendizado. Este método caracteriza o conceito de aprendizado 
supervisionado descrito na Seção 5.1. Existem outros conceitos de aprendizado entre 
eles, o Aprendizado Não Supervisionado mostrado na Seção 5.3. 
5.3 – Aprendizado Não Supervisionado 
No Aprendizado Não Supervisionado, como o próprio nome sugere, não há 
um professor ou supervisor para acompanhar o processo de aprendizado. Este método é 
ilustrado na Figura 5. Para este tipo de aprendizado, somente os padrões de entrada 
estão disponíveis para rede, ao contrário do Aprendizado Supervisionado, cujo conjunto 
de treinamento possui pares de entrada e saída. A partir do momento em que a rede 
estabelece uma harmonia com as regularidades estatísticas da entrada de dados, 
desenvolve-se nela uma habilidade de formar representações internas para codificar 
características da entrada e criar novas classes ou grupos automaticamente. Este tipo de 
aprendizado, só se torna possível, quando existe redundância nos dados de entrada. Sem 
redundância seria impossível encontrar quaisquer padrões ou características dos dados 
de entrada. 
Meio Externo RNA
Estado do 
Meio Externo
Resposta
 
Figura 5 - Aprendizado Não Supervisionado 
Uma das vantagens do Aprendizado Não Supervisionado pode ser 
visualizada na ausência do supervisor ou professor (responsável pela indicação da saída 
desejada). A desvantagem está, intimamente, ligada ao conjunto de dados para 
treinamento, onde este deve ser redundante para que a rede consega abstrair 
características em seu treinamento. 
5.4 – Aprendizado Hebbiano 
Os resultados obtidos por Hebb [6] motivaram os primeiros métodos de 
aprendizado em RNAs. Como originalmente postulado, a regra de Hebb propõe que o 
peso de uma conexão sináptica deva ser ajustado, caso exista sincronismo entre os 
“níveis de atividade” das entrada e saídas. Caso dois neurônios, em lados distintos da 
sinapse, são ativados sincronamente, teremos um fortalecimento desta sinapse. 
Entretanto, se os neurônios forem ativados assincronamente, a sinapse será enfraquecida 
ou mesmo eliminada. Em outras palavras, se o neurônio pré-sináptico tiver grande 
influência na ativação do neurônio pós-sináptico, a conexão entre eles dever ser 
reforçada. 
A sinapse Hebbiana possui quatro características principais: 
 Mecanismo interativo: dentro do aprendizado Hebbiano, não se pode 
analisar atividades pré-sinápticas de forma isolada; qualquer 
modificação na sinapse Hebbiana depende (estatisticamente ou 
deterministicamente) da interação entre os dois tipos de atividades (pré e 
pós-sinápticos). 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
13 
 Mecanismo local: uma sinapse Hebbiana é uma transmissão com sinais 
contínuos que produz modificações sinápticas locais que são entradas 
específicas. É a partir do mecanismo local que sinapses Hebbianas 
efetuam Aprendizado Não Supervisionado. 
 Mecanismo dependente do tempo: as modificações em uma sinapse 
Hebbiana dependem do momento exato de ocorrência das atividades pré 
e pós-sinápticas. 
 Mecanismo correlacional ou conjuncional: a sinapse Hebbiana pode ser 
chamada de sinapse conjuncional pelo fato de que a ocorrência conjunta 
de atividades pré e pós-sinápticas é suficiente para que haja uma 
modificação. Além disso, pode também ser chamada de sinapse 
correlacional, porque uma correlação entre estas mesmas atividades é 
suficiente para gerar mudanças. 
Pode-se expressar o postulado de Hebb em termos matemáticos a partir da 
seguinte equação, que consiste em uma regra para a mudança do peso sinápticowij 
(regra do produto de atividade): 
)()(.)( txtytw jiij 
 
onde  é uma constante positiva que determina a taxa de aprendizado, yi é a saída 
desejada no instante de tempo t e xj é a entrada do neurônio j no instante de tempo t. 
Apesar dos vetores de entrada e saída serem fornecidos (como no 
Aprendizado Supervisionado), a regra de Hebb é classificada como Aprendizado Não 
Supervisionado, já que não existe supervisor externo para verificar a qualidade da 
resposta da rede para prover um ajustes de pesos. Neste caso, o treinamento da rede é 
feito, independentemente, da resposta atual, através de um mecanismo local à sinapse. 
5.5 – Aprendizado por Competição 
Aprendizado por Competição é um caso particular de Aprendizado Não 
Supervisionado [2, 8, 3]. A idéia neste caso é, dado um padrão de entrada, fazer com 
que as unidades de saída disputem entre si para serem ativadas. Existe, portanto, uma 
competição entre as unidades de saída para decidir qual delas será a vencedora e, 
consequentemente, terá a sua saída ativada e seus pesos atualizados no treinamento. As 
unidades de entrada são diretamente conectadas às unidades de saída, sendo que estas 
últimas também podem estar ligadas entre si via conexões laterais inibitórias, ou 
negativas. A unidade de saída com maior ativação inicial terá mais chance de vencer a 
disputa com as outras unidades, que perderão o poder de inibição ao longo do tempo 
sobre as unidades de maior ativação. A unidade mais forte fica ainda mais forte e seu 
efeito inibidor sobre as outras unidades de saída torna-se dominante. Com o tempo, 
todas as outras unidades de saída ficarão completamente inativas, exceto a vencedora. 
Este tipo de inibição mútua também é conhecido como winner tasks all. 
Um algoritmo simples de aprendizado competitivo é: 
1. Apresentar um vetor de entrada; 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
14 
2. Calcular a ativação inicial de cada unidade de saída; 
3. Deixar as unidades de saída competirem até que apenas uma permaneça 
ativa; 
4. Aumentar os pesos sobre as conexões entre as unidades de saída ativa e 
as unidades de entrada ativas. Com isso, a unidade de saída terá maior 
probabilidade de ficar ativa na próxima repetição do padrão. 
Um problema neste algoritmo é que uma unidade de saída pode se tornar 
dominante e ficar ativa todo tempo, podendo captar para si todo o espaço de entrada. A 
solução para tal problema está em racionar os pesos, de tal forma que a soma dos pesos 
sobre as linhas de entrada de uma unidade seja limitada a 1. Para aumentar o peso de 
uma conexão, é preciso diminuir o peso de outra, tal que. 
wj = xj / M - wj 
para todo j = 1, 2, . . . , n, onde wj é o peso da conexão da unidade de entrada j com a 
unidade ativa, xj é o valor do j-ésimo bit de entrada, M é o número de unidades de 
entrada ativas no vetor de entrada e  é a taxa de aprendizagem. 
Este algoritmo funciona em muitos casos, porém, às vezes, uma unidade de 
saída ganha sempre. Uma solução para este problema é a leaky learning [4] que foi 
desenvolvido por Grossberg. O Aprendizado por Competição é a base dos modelos 
ART de Grossberg [4] e dos mapas de Kohonen [8, 9]. 
5.6 – Aprendizado por Reforço 
Aprendizado por Reforço pode ser visto como um caso particular de 
Aprendizado Supervisionado. A principal diferença entre o Aprendizado 
Supervisionado clássico e o Aprendizado por Reforço é a medida de desempenho usada 
em cada um dos sistemas. No Aprendizado Supervisionado, a medida de desempenho é 
baseada no conjunto de respostas desejadas usando um critério de erro conhecido, 
enquanto que, no Aprendizado por Reforço o desempenho é baseado em qualquer 
medida que possa ser fornecida ao sistema. No Aprendizado por Reforço, a única 
informação de realimentação fornecida à rede é se uma determinada saída está correta 
ou não, isto é, não é fornecida a rede a resposta correta para o padrão de entrada. O 
Aprendizado por Reforço é ilustrado na Figura 6. 
Crítico
RNA
Reforço / Penalidade
ação
 
Aprendizado por Reforço 
Figura 6 Aprendizado por Reforço 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
15 
Aprendizado por Reforço é uma forma de aprendizado on-line obtido por 
um mapeamento de entrada-saída, através de um processo de triagem de erro 
desenvolvido para maximizar o índice de desempenho escalar chamada de sinal de 
reforço. O termo Aprendizagem por Reforço foi, inicialmente, citado por Minsky [13] 
em seus estudos iniciais de IA. A idéia básica que está por trás do termo “reforço” tem 
sua origem em estudos experimentais sobre aprendizado dos animais [5]. Neste 
contexto, é interessante lembrar a Lei do Efeito [17] que diz quanto maior a satisfação 
obtida com uma certa experiência em um animal, maiores as chances dele aprender. 
Sutton [16] conceitualiza o Aprendizado por Reforço como: 
“Se uma ação tomada pelo sistema de aprendizagem é seguida 
de estados satisfatórios, então a tendência do sistema de 
produzir esta ação particular é reforçada. Se não for seguida 
de estados satisfatórios, a tendência do sistema de produzir esta 
ação é enfraquecida”. 
Neste capítulo foi apresentado os principais tipos de aprendizados. O 
modelo mais utilizado atualmente é o Aprendizado Supervisionado. No próximo 
capítulo será mostrado duas arquiteturas no universo das RNAs, perceptron de uma 
camada, e o perceptron multicamadas. Ambas arquiteturas utilizam o conceito do 
Aprendizado Supervisionado em seus algoritmos. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
16 
6 – Algumas Arquiteturas de RNAs 
Nesta seção será abordado o modelo perceptron de única e múltiplas 
camadas. O perceptron foi proposto por Rosenblatt [14] e originou-se do trabalho de 
McCullch e Pitts [1]. 
6.1 – Perceptron de Camada Única e seu Algoritmo de Aprendizado 
O trabalho original que enfocou o modelamento de um neurônio e sua 
capacidade computacional de solucionar problemas, teve início com as pesquisas de 
McCulloch e Pitts [1]. Naquela época surgiram os primeiros computadores digitais e 
entende-se que a associação de um modelo artificial de um neurônio com a capacidade 
de resolver funções Booleanas está, provavelmente, ligada ao pensamento vigente na 
época de que era possível construir uma máquina inteligente através de operadores 
lógicos básicos. Foi somente com o trabalho de Frank Rosenblatt em 1958 [14] que o 
conceito aprendizado em RNAs foi introduzido. O modelo proposto por Rosenblatt, 
conhecido como perceptron, era composto por uma estrutura de rede tendo como 
unidades básicas nodos MCP e uma regra de aprendizado. Alguns anos mais tarde, 
Rosenblatt demostrou o teorema de convergência do perceptron, o qual mostra que um 
nodo MCP treinado com o algoritmo de aprendizado do perceptron sempre converge, 
caso o problema em questão seja linearmente separável [19]. 
A topologia original descrita por Rosenblatt era composta por unidades de 
entrada (retina), por um nível intermediário formado pelas unidades de associação e por 
um nível de saída formado pelas unidades de resposta. Embora, esta topologia original 
possua três níveis, ela é conhecida como perceptron de um única camada, já que 
somente o nível de saída (unidade de resposta) possui propriedades adaptativas. A 
Figura 7 mostra um esboço da topologia do perceptron. 
S
S
S
S
.
.
.
S
Entrada
Associação
Resposta
r
 
Figura 7 - Topologia de um perceptron simples com uma única saída 
Apesar de ter causado grande euforia na comunidade cientifica da época, o 
perceptron não teve vida muito longa, já que duras críticas de Minsky e Papert [12] 
foram feitas em relaçãoà sua capacidade computacional, causando, assim, um grande 
impacto sobre as pesquisas em RNAs, o que levou a um grande desinteresse pela área 
durante os anos 70 e início dos anos 80. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
17 
Esta visão pessimista sobre a capacidade do perceptron e das RNAs de um 
maneira geral mudou, devido as descrições da rede de Hopfield em 1982 [7] e do 
algoritmo de back-propagation (que será visto nas próximas seções). Foi em 
conseqüência destes trabalhos que a área de RNAs ganhou novo impulso, ocorrendo a 
partir do final dos anos 80, uma forma de expansão no número de trabalhos de aplicação 
e teóricos envolvendo RNAs e técnicas correlatadas. 
O algoritmo de aprendizagem do perceptron utiliza o algoritmo de correção 
de erros como base. Pode-se ilustrar o funcionamento e o método de aprendizagem do 
perceptron de uma camada através da formulação exemplo. 
 Dada uma rede do tipo perceptron formada por 3 terminais de entrada utilizando 
pesos iniciais de w0 = 0.4, w1 = -0.5, w2 = 0.6; valor threshold  = 0.5 e a taxa de 
aprendizado  = 0.4 (Figura 8). 
 Ensinar a rede gerar a saída –1 para o padrão 001 saída de 1 para o padrão 110. 
 Após a rede treinada, determinar a que classe pertence os padrões 111, 000, 100, 
011. 
Utilize como função de ativação a função step 






01
01
xse
xse
y
 
Solução: Swixi
w0 = 0.4
w2 = 0.6
w1 = -0.5
 0.5
0
0
1
-1
1
1
0
1
-1
x1
x3
x2
d
 
 
Figura 8 - Funcionamento do Perceptron de uma camada 
 
xi = padrões de entrada. 
d = valor desejada para saída após processamento da rede. 
Processamento para o padrão 001: 
y = (-1 . 0,5) + (0 . 0,4) + (0 . –0,5) + (1 . 0,6) 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
18 
y = 0,1 [aplicar função de ativação] 
y = 1, onde y representa a saída do padrão processado 
De acordo com o processamento da rede, percebe-se que a saída está 
incorreta em relação a saída desejada, deve-se então aplicar o algoritmo de treinamento 
do perceptron: 
wi = wi +  e xi | e = (d – y) 
w3 = 0,5 + 0,4 . (-1 -1) . -1 
w3 = 1.3 | w3 =  
 
w0 = 0,4 + 0,4 . (-1 -1) . 0 
w0 = 0,4 
 
w1 = -0,5 + 0,4 . (-1 -1) . 0 
w1 = -0.5 
 
w2 = 0,6 + 0,4 . (-1 -1) . 1 
w2 = -0.2 
 
Com os pesos atualizados de acordo com o algoritmo de aprendizagem, 
deve-se processar o padrão de entrada novamente. 
Processamento para o padrão 001: 
y = (-1 . 1,3) + (0 . 0,4) + (0 . -0.5) + (1 . -0,2) 
y = -1,5 [aplicar a função de ativação] 
y = -1 
Neste momento, verifica-se que a saída desejada é igual a saída obtida pela 
rede, com isso não é necessário a atualização dos pesos, pois a rede emitiu uma saída 
correta. 
Processamento para o padrão 110: 
y = (-1 . 1,3) + (1 . 0,4) + (1 . -0.5) + (0 . -0,2) 
y = -1.4 [aplicar a função de ativação] y = -1 
Novamente, percebe-se que a saída emitido pela rede está incorreta em 
relação a saída desejada, deve-se então aplicar o algoritmo de treinamento do 
perceptron: 
wi = wi +  e xi | e = (d – y) 
w3 = 1.3 + 0,4 . (1 - (-1) ) . -1 
w3 = 0,5 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
19 
 
w0 = 0,4 + 0,4 . (1 - (-1) ) . 1 
w0 = 1,2 
 
w1 = -0,5 + 0,4 . (1 - (-1) ) . 1 
w1 = 0.3 
 
w2 = -0,2 + 0,4 . (-1 - (-1) ). 0 
w2 = -0.2 
Com os pesos atualizados de acordo com o algoritmo de aprendizagem, 
deve-se processar o padrão de entrada novamente. 
Processamento para o padrão 110: 
y = (-1 . 0,5) + (1 . 1,2) + (1 . 0,3) + (0 . -0,2) 
y = 1 [aplicar a função de ativação] 
y = 1 
Neste momento, verifica-se que a saída desejada é igual a saída obtida pela 
rede, com isso não é necessário a atualização dos pesos, pois a rede emitiu uma saída 
correta. 
Com o treinamento realizado, pode-se então classificar os padrões 111, 000, 
100, 011 e obter as saídas 1, -1, 1, -1 respectivamente. A Figura 9 ilustra tal 
classificação 
 
Figura 9 - Classificação do Perceptron já treinado 
6.2 - Perceptron Multicamadas 
Conforme citado na seção anterior, as redes de uma só camada resolvem 
apenas problemas linearmente separáveis. A solução de problemas não linearmente 
separáveis passa pelo uso de redes com uma ou mais camadas intermediárias, ou 
escondidas. Segundo [20], uma rede com camada uma intermediária pode implementar 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
20 
qualquer função contínua. A utilização de duas camadas intermediárias permite a 
aproximação de qualquer função [21]. 
Com a utilização desta arquitetura é necessário, então, encontrar uma forma 
de treinar tal rede. Uma possibilidade seria a divisão da rede em um conjunto de sub-
rede para cada camada, com treinamento independente. Uma rede com uma camada 
intermediária pode ser formada por um conjunto de redes perceptron, uma rede para 
cada grupo de entradas linearmente separáveis. Na camada de saída, uma outra rede 
combina as saídas produzidas pelas redes da primeira camada, gerando, assim, a 
classificação final. Esta solução esbarra na dificuldade de dividir um problema em 
subproblemas. Geralmente, esta divisão ou não é possível ou muito complicada. 
Uma outra alternativa seria treinar a rede completa de uma só vez. O 
problema agora esta em como treinar os nodos da camada intermediária desta rede. 
Quais seriam a respostas desejadas para estes nodos? Ou melhor, como seria definido o 
erro destes nodos? O problema passa agora ser a definição do erro dos nodos das 
camadas intermediárias. Se uma função de ativação do tipo limiar (função threshold) for 
utilizada, a avaliação do erro será bastante complexa, uma vez, que os nodos das 
camadas intermediárias e de saída não saberão quão distantes as respostas de seus nodos 
estarão dos valores desejados, este é um dos problemas da rede perceptron. Uma 
alternativa seria a utilização de funções de ativação lineares. No entanto, uma rede com 
mais de uma camada cujos nodos utilizarão funções de ativação lineares é equivalente a 
uma rede de uma só camada. Esta afirmação pode ser, facilmente, provada: 
Seja uma Rede Neural com uma camada intermediária e 
funções de ativação lineares. Seja x o vetor de entrada e wA e 
wB as matrizes de pesos para nodos da primeira e segunda 
camadas, respectivamente. O vetor de saída da rede é gerado 
de acordo com: 
y = (x wA). wB 
Utilizando propriedades da Álgebra Linear [22], tem-se que: 
(wA e wB)  wC | wC = wA . wB 
Logo: 
y = x . wC 
onde x é o vetor de entrada, y o vetor de saída e wA, wB, e wC, são vetores de pesos. 
Para treinar redes com mais de uma camada foi proposto um método que se 
baseia em gradiente descendente [15]. Afim de que, este método possa ser utilizado, a 
função de ativação precisa ser contínua, diferençiável e, de preferência não decrescente. 
A função de ativação deve informar os erros cometidos pela rede para as camadas 
anteriores com a maior precisão possível. A alternativa utilizada para superar os 
problemas acima citados foi a utilização de funções de ativação do tipo sigmoidal. 
Esta seção tem por objetivo descrever e explicar o funcionamento das 
RNAs do tipo perceptron multicamadas, ou MLP (do inglês MultiLayer Perceptron), 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
21 
que são RNAs que apresentam pelo menos uma camada intermediária ou escondida 
[15]. 
6.2.1 – Arquitetura MLP 
Conforme visto nas seções anteriores, a inexistência ou desconhecimento de 
algoritmos para treinar redes com uma ou mais camadas intermediárias foi uma das 
causas para redução das pesquisasem RNAs na década de 70. Tal problema foi 
primeiro apontado por Minsky e Papert, no livro “Perceptrons” [12] e, por representar 
uma redução no universo de aplicações de RNAs, causou uma diminuição drástica tanto 
do número de pesquisadores que trabalhavam na área quanto no financiamento de 
projetos envolvendo RNAs. 
As redes MLP apresentam um poder computacional maior do que aquele 
apresentado pelas redes sem camadas intermediárias. As redes MLP’s podem tratar 
com dados que não são linearmente separáveis. A precisão obtida e a implementação de 
uma rede MLP dependem do número de nodos utilizados nas camadas intermediárias, e 
um dos problemas é a definição de uma função de ativação. Na Figura 10 é apresentada 
um rede MLP típica. 
camada de 
entrada
camada 
intermediária
camada de 
saída
 
Figura 10 - Rede MLP com camada intermediária 
Conforme já observado, um dos principais aspectos relacionados ao projeto 
de redes MLP diz respeito à função de ativação utilizada. Diversas funções de ativação 
têm sido propostas para redes multicamadas. Estas funções são não lineares e 
diferenciáveis. As funções precisam ser diferenciáveis para que o gradiente possa ser 
calculado, direcionando o ajuste dos pesos. A função de ativação mais utilizada é 
sigmoidal logística. A orientação da sigmoidal é determinada pela direção do vetor de 
pesos w. O valor do termo de polarização, corresponde ao peso wo, determina a 
localização da função sigmoidal, ou seja, define a posição da função com relação ao 
eixo da ordenada. 
6.2.2 – Definição de uma Topologia Ideal para o MLP 
A definição de um topologia de uma rede do tipo MLP está intimamente 
ligada com a definição dos nodos de camada intermediária; este número é, geralmente, 
definido empiricamente e depende, fortemente, da distribuição dos padrões de 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
22 
treinamento e validação da rede. Alguns métodos, no entanto, têm sido propostos. Os 
mais utilizados são: 
 Definir o número de unidades em função do número de entradas e 
saídas; 
 Utilizar um número de conexões dez vezes menor que o número de 
exemplos. Este método apenas reduz a incidência de overfitting (rede 
memoriza padrões de treinamento, ao invés de extrair as características). 
Se o número de exemplos for muito maior que o número de conexões, 
overfitting é improvável, mas pode ocorrer underfitting (a rede não 
converge durante o seu treinamento). 
O número adequado de nodos na camada intermediária depende de vários 
fatores, como: 
 Número de exemplos de treinamento; 
 Quantidade de ruído presente nos exemplos; 
 Complexidade da função a ser aprendida; 
 Distribuição estatística dos dados de treinamento. 
Existem problemas que necessitam apenas de uma unidade de entrada e 
uma unidade de saída, e outros que podem precisar de milhares de unidades 
intermediárias. O número de unidades intermediárias pode também, em alguns casos, 
crescer, exponencialmente, com o número de entradas. A solução neural mais eficiente 
é aquela onde o número de unidades cresce apenas polinomialmente com o aumento do 
números de unidades de entrada. 
Para solução de problemas práticos de reconhecimento de padrões, aloca-se 
para a rede um número de unidades intermediárias suficiente para a solução do 
problema. Deve-se ter cuidado para não utilizar unidades demais, o que pode levar a 
rede memorizar padrões de treinamento, ao invés de extrair as características gerais que 
permitirão a generalização ou reconhecimento de padrões não vistos durante o 
treinamento (este problema é chamado de overfitting), não utilizar um número muito 
pequeno, que possa forçar a rede a gastar tempo em excesso tentando encontrar uma 
representação ótima (as unidade utilizadas podem ficar sobrecarregadas, tendo que lidar 
com um elevado número de restrições). 
6.2.3 – Otimização da topologia utilizando pruning 
Conforme observado nos parágrafos anteriores, uma das maiores 
dificuldades em se definir a estrutura de uma RNA é o fiel dimensionamento de sua 
topologia. Normalmente, o número de camadas e o número de nodos em cada camada é 
definido em função de uma inspeção prévia nos dados e da complexidade do problema. 
Uma vez definida a topologia inicial, a estrutura final mais adequada para o 
modelamento é, normalmente, obtida através de refinamentos sucessivos, que pode 
levar a um tempo de dimensionamento alto, já que este tem um grande componente 
empírico. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
23 
O objetivo desta etapa de ajuste é a obtenção de uma topologia de rede que 
modele com precisão os dados do conjunto de treinamento, mas também resulte em uma 
aproximação com boa capacidade de generalização. Como, na maioria dos casos, os 
conjunto de treinamento de uma RNA é composto de dados experimentais, estes 
contêm, implicitamente, erros inerentes aos processos de amostragem. Desta forma, a 
aproximação através de RNAs deve ser feita visando a obtenção de uma estrutura que 
seja capaz de modelar os dados sem modelar o ruído contido neles. 
Este é um problema no projeto de RNAs conhecida na literatura como bias 
and variance delemma [23], que envolve a obtenção de um modelo que não seja muito 
rígido a ponto de não modelar fielmente os dados, mas que também não seja, 
excessivamente, flexível a ponto de modelar também o ruído. 
O equilíbrio entre a rigidez e flexibilidade da rede é obtido através de seu 
dimensionamento. Quanto maior a sua estrutura, maior o número de parâmetros livres 
ajustáveis e, consequentemente, maior a sua flexibilidade. Porém, quando os dados são 
apresentados à rede, não se tem real conhecimento de sua complexidade, daí a 
dificuldade do problema de dimensionamento. 
Uma forma de evitar o overfitting é estimar o erro de generalização durante 
o processo de treinamento [24]. Para isto, o conjunto de dados é dividido em conjunto 
de treinamento e conjunto de validação. O conjunto de treinamento é utilizado na 
modificação dos pesos e o conjunto de validação é utilizado para estimar a capacidade 
de generalização da rede durante o processo de aprendizagem. 
O treinamento deve ser interrompido quando o erro do conjunto de 
validação começar a subir, ou seja, quando a rede começar a incorporar o ruído presente 
nos dados o que causa degradação na sua capacidade de generalização [24]. Embora, 
esta alternativa possa se mostrar eficiente em algumas situações, a sua utilização é 
limitada para os casos em que um conjunto de treinamento muito grande está 
disponível, já que os dados do conjunto de validação não podem ser utilizados para 
treinamento. 
Uma outra solução conhecida é adoção de técnicas de pruning [24] que, por 
sua vez, envolvem a eliminação de pesos e nodos irrelevantes para a função executada 
pela rede. Existem, basicamente, dois tipos de métodos de pruning: métodos baseados 
na avaliação da sensibilidade da saída e os métodos que envolvem modificações na 
função de custo [24]. A filosofia dos métodos do primeiro grupo é a retirada de 
elementos da rede e subsequente verificação da variação do erro de saída [25, 26, 27]. 
Caso a retirada do elemento não cause grande variação no erro de saída, conclui-se que 
a rede é pouco sensível a este e que o mesmo pode ser retirado sem perda da capacidade 
da rede modelar dados. 
A desvantagem deste método é que a retirada dos elementos não considera 
a correlação entre eles, Um exemplo de situação em que este método poderia falhar 
seria o caso de dois nodos que anulam as suas saídas em uma camada intermediária da 
rede. Como um par eles não causam nenhum efeito na saída de rede, mas 
individualmente, podem ter um grande efeitoquando a remoção de um deles é analisada 
[24]. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
24 
Por sua vez, os métodos que envolvem modificação na função de custo [28, 
10], utilizam, em uma primeira etapa, termos de regularização [29] adicionados ao 
termo de erro padrão. A idéia deste algoritmos é a obtenção de soluções com pesos de 
norma mínima, para isto, as soluções com valores altos de pesos são penalizadas 
durante o treinamento. Começa-se com uma rede com topologia super-dimensionada e 
desta são retirados os pesos irrelevantes. 
Como exemplo, forma geral da função custo para o treinamento do 
algoritmo weight decay [136] é apresentada na equação seguinte. Pode-se então 
observar que se minimiza não somente a soma dos erros quadráticos, mas também a 
norma de vetor de pesos. 
2
1
2 ||||
2
1
)(
2
1
wydJ
k
i
ii

 
 
onde k é o número de nodos de saída, di e saída desejada do nodo i, yi a saída gerada 
pelo nodo i e w o vetor de pesos. 
Uma vez obtida uma solução com pesos de norma mínima, aqueles com 
valores muito pequenos são então considerados irrelevantes e eliminados, Espera-se 
então obter uma solução com um fiel equilíbrio entre a rigidez e a flexibilidade da rede. 
A contrapartida para esta abordagem, que parece mais elegante, é a busca de uma 
solução com norma mínima também depende do ajuste de forma empírica do parâmetro 
de regularização . Quando este é nulo somente a soma dos erros quadráticos é 
minimizada quando possui valor muito grande a solução para a vetor de pesos tende 
para w = 0. Portanto, um valor satisfatório intermediário deve ser encontrado. 
Uma solução para contornar este problema é, obviamente, incluir o 
parâmetro  como uma das vaiáveis a serem ajustadas, porém, isto incorpora mais 
complexidade ao processo de treinamento. Outros procedimentos para a construção de 
redes com estrutura otimizada é a utilização de redes construtivas. 
6.2.4 – Treinamento de Redes MLP 
Existem, atualmente, vários algoritmos para treinar rede MLP [30, 31, 32, 
33, 34, 35]. Estes algoritmos são do tipo supervisionado. De acordo com os parâmetros 
que eles atualizam, os algoritmos para treinamento de redes do tipo MLP podem ser 
classificados em: 
 Estáticos; 
 Dinâmicos. 
Como os algoritmos estáticos não alteram a estrutura da rede, variando 
apenas os valores de seus pesos, os algoritmos dinâmicos podem tanto reduzir quanto 
aumentar o tamanho da rede (número de camadas, número de nodos nas camadas 
intermediárias e número de conexões). Quando se utiliza o aprendizado estático, a 
mesma regra de aprendizado é empregada para redes do tipo MLP com diferentes 
tamanhos e formatos. Interessante observar que topologias diferentes podem resolver o 
mesmo problema. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
25 
O algoritmo de aprendizado mais conhecido para treinamento destas redes é 
o back-propagation [30]. A maioria dos métodos de aprendizado para RNAs do tipo 
MLP utiliza variações deste algoritmo. O back-propagation foi um dos principais 
responsáveis pelo ressurgimento de interesse em RNAs, por ocasião da publicação do 
livro Parallel Distributed Processing, mais conhecido como PDP, em 1986 [30]. 
Embora a popularização deste algoritmo tenha surgido a partir de 1986, ele foi proposto 
muito antes, com diferentes propósitos, por diferentes pequisadores como : Bryson e Ho 
[36] (1969), Werbos [37] (1974) , Parker [38] (1985) e Le Cun [39] (1985). 
O back-propagation é um algoritmo supervisionado, que utiliza pares 
(entrada, saída desejada) para, através de um mecanismo de correção de erros, ajustar os 
pesos da rede. O treinamento ocorre em duas fases, onde cada fase percorre a rede em 
um sentido. Estas duas fases são chamadas de fase forward e fase backward. Estão 
ilustrada estas duas fases na Figura 11. 
fase forward
fase Backward
 
Figura 11 - Fluxo de Processamento do algoritmo back-propagation. 
A fase forward envolve os seguintes passos: 
1 – A entrada é apresenta à primeira camada da rede, a camada C0. 
2 – Para cada camada Ci a partir da camada de entrada 
2.1 – Após os nodos da camada Ci (i > 0) 
Calcular os sinais de saída, estes servem como entrada para a 
definição das saídas produzidas pelos nodos da camada C
i+1
. 
3 – As saídas produzidas pelos nodos da última cada são comparadas às 
saídas desejadas 
A fase backward envolve as etapas listadas a seguir: 
1 – A partir da última camada, até chegar na camada de entrada: 
1.1 – Os nodos da camada atual ajustam seus pesos de forma a reduzir 
seus erros 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
26 
1.2 – O erro de um nodo da camada intermediária é calculado, 
utilizando os erros dos nodos da camada seguinte conectados a ele, 
ponderado pelos pesos das conexões entre eles 
O algoritmo back-propagation, que faz uso destas duas fases, é apresentado 
a seguir: 
1 – Inicializar pesos e parâmetros 
2 – Repita até o erro ser mínimo ou a realização de um dado número de 
ciclos: 
2.1 – Para cada padrão de treinamento X 
2.1.1 – Definir saída da rede através de fase forward 
2.1.2 – Comparar saídas produzidas com as saídas desejadas 
2.1.3 – Atualizar pesos do nodos através da fase backward 
O back-propagation é baseado na regra proposta por Widrow e Hoff [18], 
sendo também chamada de regra delta generalizada. Este algoritmo propõe uma forma 
de definir o erro dos nodos das camadas intermediárias, possibilitando o ajuste de seus 
pesos. Os ajustes dos pesos são realizados utilizando o método do gradiente. Na 
literatura da análise numérica, a regra delta generalizada é conhecida como “método da 
bola pesada” [40]. 
A derivação da regra delta generalizada é simples e semelhante à derivação 
da regra delta. Também neste caso, a função a ser minimizada é uma função erro, 
definida pela soma doe erros quadráticos e representada por: 



p
k
i
p
i
p
i ydE
1
2)(
2
1
 
onde E é a medida de erro total, p é o número de padrões, k é o número de unidades de 
saída, di é a i-ésima saída desejada e yi é a i-ésima saída gerada pela rede. Esta equação 
define o erro total cometido pela rede, ou a quantidade que, para todos os padrões p de 
um dado conjunto, as saídas geradas pela rede diferem das saídas desejadas. 
A regra delta generalizada requer que as funções de ativação utilizadas 
pelos nodos sejam contínuas, diferenciáveis, geralmente, não decrescente da entrada 
total recebida pelo nodo. Estas funções são chamadas de funções semi-lineares. A 
Equação abaixo ilustra o cálculo do valor de ativação. 
 
)( pjj
p
j netfy 
 
onde: 



n
i
ji
p
i
p
j wxnet
1
 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
27 
A constante n represente o número de conexões de entrada do nodo j e wij o 
peso da conexão entre a entrada
p
ix
e o nodo j. 
Há garantia de convergência se a superfície do erro for simples. Uma forma 
de visualizar a influência do treinamento da rede no valor do erro está ilustrada pela 
superfície de erro da Figura 12. Esta Figura ilustra um caso simples de uma rede com 
apenas um nodo e duas conexões. Os valores dos pesos da rede definem a coordenada 
de um ponto da superfície do erro. O erro produzido pela rede, para cada combinação de 
valores de pesos, é pela altura da superficie naquele ponto. 
Solução Desejada
Superfície do erro
 
Figura 12 - Superfície do Erro de uma Rede MLP 
As três equações anteriores mostram como encontrar o erro global da rede e 
como encontrar o erro local de um determinado padrão de entrada, processadas as duas 
equaçõesanteriores deve-se aplicar e equação seguinte que ajustará os pesos das 
diversas camadas: 
ijji xw 
 ou 
)()()()1( txttwtw ijijij 
 
onde 
)( jjj yd 
para camada de saída e 
 iijj w 
para camadas intermediárias, i 
unidade em questão, j camada em questão. 
6.2.5 – Problemas Enfrentados no Treinamento de Redes MLP 
Um dos problemas enfrentados no treinamento de rede MLP diz respeito à 
definição de seus parâmetros. A seleção dos parâmetros de treinamento do algoritmo 
back-propagation é um processo pouco conhecido, muitas vezes chamado de “magia 
negra”. Pequenas diferenças nestes parâmetros podem levar a grandes divergências 
tanto no tempo de treinamento como na generalização obtida. 
Esta é uma dúvida que surge, naturalmente. Em que momento parar de 
treinar a rede? Existem vários métodos para a determinação do momento que o 
treinamento deva ser encerrado. Estes métodos são chamados de critérios de parada. Os 
critérios de paradas mais utilizados são: 
1. Encerrar o treinamento após n ciclos; 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
28 
2. Encerrar o treinamento após o erro quadrático médio ficar abaixo de uma constante 
c. 
3. Encerrar o treinamento quando a percentagem de classificações corretas estivarem 
acima de uma constante c (mais indicados para saídas binárias); 
4. Combinação dos métodos acima. 
Outro aspecto que precisa ser observado é freqüência das atualizações dos 
pesos. A freqüência de ajustes dos pesos influência o desempenho obtido durante o 
treinamento. Duas abordagens diferentes têm sido utilizadas quanto à freqüência 
(periodicidade) para o ajuste de pesos pelo algoritmo back-propagation: 
 Por padrão (on-line); 
 Por ciclo (batch). 
Existem vantagens e desvantagens em cada uma destas abordagens. Na 
abordagem por padrão, os pesos são atualizados após a apresentação de cada padrão de 
treinamento. Esta abordagem é estável se a taxa de aprendizado for pequena (é a 
aconselhável reduzir progressivamente esta taxa). Quando taxas elevadas são utilizadas, 
a rede torna-se instável. A abordagem por padrão é mais rápida, principalmente, se o 
conjunto de treinamento for grande e redundante. Outra vantagem desta técnica e que 
ela requer menos memória. 
Na abordagem por ciclo, por sua vez, os pesos são atualizados após todos os 
padrões terem sido apresentados. Esta técnica é mais estável, mas ela pode ser lenta, se 
o conjunto de treinamento for grande e redundante. Esta abordagem apresenta uma 
estimativa mais precisa do vetor gradiente, ao custo da necessidade de mais memória. A 
escolha da abordagem a ser utilizada depende da aplicação e da distribuição estatística 
dos dados. 
O principal problema diz respeito a lentidão do algoritmo para superfícies 
complexas. Uma forma de minimizar este problema é considerar efeitos de segunda 
ordem (taxa de momentum) para o gradiente descendente. Não é raro o algoritmo 
convergir para mínimos locais. 
Mínimos locais são pontos na superfície de erro que apresentam uma 
solução estável, embora não seja correta. Algumas técnicas são utilizadas tanto para 
acelerar o algoritmo back-propagation como para reduzir a incidência de mínimos 
locais: 
 Utilizar taxa de aprendizado decrescente; 
 Adicionar nós intermediários; 
 Utilizar um termo momentum; 
Entre as várias técnicas utilizadas para acelerar o processo de treinamento e 
evitar mínimos locais, a adição de um termo momentum [236] é uma das mais 
freqüentes. O termo momentum é representado por: 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
29 
))1()(()()()()1(  twtwtxttwtw ijijijijij  
onde  é taxa de momentum a ser utilizada no processamento do aprendizado da rede. 
A inclusão da taxa de momentum na fórmula de ajuste dos pesos aumenta a 
velocidade de aprendizado (aceleração), reduzindo o perigo de instabilidade. A taxa 
momentum pode acelerar o treinamento em regiões muito planas para a superfície de 
erro. Além disso, ele suprime a oscilação de pesos em valores de ravinas. 
Nesta seção foi mostrado as principais arquiteturas utilizadas na área de 
RNAs. Dentre os tópicos estudados destacam-se os algoritmos de aprendizagem do 
modelo MLP. Para um entendimento completo sobre tais conceitos apresentados o 
Apêndice 1, utiliza um rede MLP para a previsão de vida em doentes com hepatite. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
30 
6 Conclusão 
A utilização de RNAs pode ser considerada uma arte. Dentre os fatores 
inseridos no contexto de RNAs, pode-se destacar a configuração de dados para o 
treinamento, a escolha e análise das possíveis topologias. Ambos fatores citados são 
considerados de vital importância para que se obtenha uma solução plausível para um 
determinado problema. 
 Este trabalho discutiu alguns conceitos sobre RNA’s, dando ênfase as 
arquiteturas Perceptron de uma e de multiplas camadas. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
31 
Apêndice 1 – Estudo de Caso 
1 Introdução 
As RNAs são consideradas ferramentas de grande potencial em diversas 
áreas do conhecimento, isto ocorre devido a sua grande capacidade de aprendizagem. 
Tais redes podem classificar e reconhecer diversos padrões, como por exemplo, áudio, 
imagem, etc. 
O objetivo deste estudo é classificar a perspectiva de vida em doentes com 
hepatite, utilizando Redes Neurais do tipo MLP. 
 Foi utilizada uma abordagem tradicional em relação aos experimentos com 
rede MLP, que pode ser verificada em [41]. 
Os dados utilizados neste trabalho são de domínio público e podem ser 
encontrados no endereço www.ics.uci.edu/~mlearn/ MLSumary.html. 
2 Hepatite: Tipos e Diagnósticos 
Segundo [42], hepatite é um termo genérico que designa a inflamação do 
fígado, seja ela por conseqüência da agressão direta ou parte de um processo sistêmico. 
As hepatites mais comuns são as virais e as tóxicas. Dentre os processos tóxicos, 
encontram-se a hepatite medicamentosa, causada por ingestão excessiva ou inadequada 
de medicamentos; a hepatite decorrente de usos de drogas e alcoólica, que também pode 
ser crônica, ou seja, se dá por lesão direta à célula hepática e é a causa mais freqüente 
de cirrose. Entende-se por hepatite crônica, a inflamação do fígado por um período 
superior a 6 meses. 
Existem vários tipos de hepatite, dentre estes tipos encontram-se: 
 Hepatite A - de transmissão fecal-oral e com a contaminação pela água e pelos 
alimentos, não se transmite pelo sangue, a não ser durante o período agudo. A taxa 
de mortalidade é muito baixa e não há relato de hepatite crônica por Hepatite A. 
 Hepatite B - se transmite por contato com sangue infectado, por via sexual ou pela 
chamada transmissão vertical, isto é, da mãe infectada para o recém nascido, no 
momento do parto. Os grupos de risco incluem os homossexuais, usuários de drogas 
intravenosas, pacientes em hemodiálise e profissionais da saúde. A hepatite pode ter 
cura completa, tornar-se fulminante ou câncer de fígado. 
 Hepatite C – tem alta incidência entre usuários de drogas intravenosas, com 80 % 
dos casos contraídos por transfusão de sangue. 
 Hepatite D - causada pelo agente delta e se desenvolve somente com a associação da 
Hepatite B. É epidêmica em algumas áreas, especialmente, na Amazônia. 
 Hepatite E - transmitida pela água e epidêmica na Ásia, no norte da África e no 
México. A sua transmissão é fecal-oral. 
 Hepatite F - causada por partícula viral detectada em pacientes submetidos a 
transplante hepático. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
32 
A identificação dos diferentes tipos de hepatite se faz pela detecção do vírus,no 
sangue do paciente. O quadro clínico é, extremamente variável, podendo ocorrer casos 
completamente sem sintomas, só detectados por exames de laboratórios, além dos 
quadros de morte em poucos dias (hepatite fulminante). 
O período de incubação varia de duas a seis semanas na Hepatite A, de seis 
semanas a seis meses na Hepatite B. A doença se manifesta por sintomas gerais de mal 
estar, fadiga intensa, náuseas e vômitos, febres, dor na região do fígado, que se 
apresenta de tamanho aumentado, fezes esbranquiçadas e urina escura. Cinco dias após 
o aparecimento dos sintomas tem início uma fase ictérica, em que a pele e as 
conjuntivas se apresentam amareladas. A doença aguda regride de duas a três semanas, 
os exames de laboratórios que monitoram a evolução da doença só revelam resultados 
normais após nove semanas (Hepatite A) ou dezesseis semanas (Hepatite B e C). A 
Hepatite C é verificada em 1% dos casos. 
3 Descrição dos Dados Utilizados 
A base de dado utilizada, como descrito na introdução, é de domínio 
publico. Esta base possui 155 instâncias, isto é, os dados de 155 pacientes. Cada 
instância possui 20 atributos descritos a seguir: 
 Atributos binários: 
- Sexo. 
- Steroid: Substância química presente em nosso organismo. 
- Antivírus: Substância química presente em algumas pessoas. 
- Fadiga: Sinais de cansaço após pequenos esforços físicos. 
- Malaise: Enzima presente em nosso organismo. 
- Anorexia: Substância química presente em nosso organismo. 
- Fígado Inchado. 
- Fígado Duro. 
- Baço palpável. 
- Spiders: Substância química presente em algumas pessoas. 
- Ascites: Enzima presente em nosso organismo. 
- Varices: Substância química encontrada em nosso organismo. 
- Histologia: Estudo da células do paciente 
- Classificação. Vivo ou Morto 
Atributos numéricos: 
- Idade. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
33 
- Birilubin. Proteína encontrada em nosso organismo 
- Fosfato. 
- Sgot: Substância química encontrada em nosso organismo. 
- Albumin. Proteína encontrada na gema do ovo. 
- Protime: Substância química encontrada em nosso organismo. 
A classificação dos dados é de responsabilidade do atributo “classificação”. 
Este atributo mostra se o paciente com determinadas características, valores dos demais 
atributos, encontra-se no estado vivo ou morto. 
4 Treinamento, Teste e Validação dos Dados 
A arquitetura utilizada neste estudo de caso, é o MLP mostrado no Capítulo 
6. O algoritmo de aprendizagem utilizado é o back-propagation e o tipo de aprendizado 
é o supervisionado. 
Para o treinamento, teste e validação da rede do tipo MLP foram utilizadas 
as topologias mostradas na Tabela 1. 
Camada 1 Camada 2 Camada 3 
19 5 1 
19 6 1 
19 7 1 
19 8 1 
Tabela 1 - Arquiteturas para Treinamento 
Em tais topologias foram empregadas várias partições da base de dados. A 
divisão destas partições foram baseadas em [41]. 
A taxa de aprendizado foi inicializada em 0,54. Utilizou-se a taxa de 
momentum inicializada em 0,60. O erro mínimo aceitável para o treinamento foi 
determinado na casa de 0,04. 
Através destes atributos pode-se classificar, dentre as topologias que foram 
utilizadas, qual se portou da melhor forma para solução deste problema. 
5 Classificação 
Dentro do processo de classificação podemos destacar os seguintes 
atributos: 
 % registros que variaram de 0 à 0,04 em relação a taxa de erro aceitável no processo 
de treinamento; 
 % registros que foram classificados corretamente após o treinamento da rede. 
A Tabela 2 mostra como as diferentes topologias se portaram em relação aos 
atributos analisados. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
34 
 
Topologia % de erro aceitável. 
19-5-1 83,00 
19-6-1 88,67 
19-7-1 87,67 
19-8-1 89,67 
Tabela 2 - % de Registros Aceitáveis em Relação a Taxa de Erro 
De acordo com os atributos classificatórios analisados, pode-se perceber que 
a topologia que melhor se adaptou em relação ao problema questionado (doentes com 
hepatite), foi a que utilizou 19 neurônios na camada de entrada, 8 neurônios na camada 
interna e 1 neurônio na cada de saída. 
O processo de escolha da topologia está, intimamente, relacionado à questão 
da distribuição dos dados empregados para o treinamento, teste e validação da rede. 
6 Conclusão 
 A utilização de RNAs voltada à área de medicina pode ser muito útil se 
considerada uma ferramenta auxiliar para os especialistas inseridos dentro desta área. 
 Este estudo de caso, analisou as perspectivas de vida de doentes com hepatite 
utilizando RNAs, mostrando as topologias e os resultados obtidos. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
35 
Bibliografia Utilizada 
[1] – W.S. McCulloch and W. Pitts. A Logical Calculus of the Ideas Immanent in 
Nervous Activity. Bulletin of Mathematical Biophysics, 5:115-133, 1943. 
[2] – K. Fukushima. Cognitron: A Self-Organising Multilayered Neural Network. Biol. 
Cybern., 23:121-134, 1975 
[3] – S. Grossberg. Adaptive Pattern Recognition and Universal Recoding: Parallel 
Development and Coding of Neural Feature Detectors. Biol. Cybern., 24:121-
134, 1976. 
[4] – S. Grossberg. Competitive Learning: From Interactive Activation to Adaptive 
Resonance. Cognitive Science, 11:23-63, 1987. 
[5] – S. E. Hampson. Connectionistic Problem Solving: Computational Aspects of 
Biological Learning. Berlin: Birkhauser, 1990. 
[6] – D. O. Hebb. The Organization of Behavior. Wiley, 1949. 
[7] – J. J. Hopfield. Neural Networks and Physical Systems with Emergent Collective 
Properties. Proc. Nat. Acad. Sci., 79:2554-8, 1982. 
[8] – T. Kohonen. Self-organized Formation of Topologically Correct Feature Maps. 
Biological Cybernetics, 43, 1982. 
[9] – T. Kohonen. Self-Organization and Associative Memory. Springer-Verlag, Berlim 
3 edition, 1989. 
[10] – Y. Le Cun, J.S. Denker S.A. Solla. Optimal Brain Damage. In D.S. Touretzky, 
editor, Neural Information Processing Systems, volume 2, pages 598-605, Denver 
1989, 1990. Morgan Kaufmann, San Mateo. 
[11] – J. M. Mendel and R. W. McLaren. Adaptive, Learning, and Pettern Recognition 
Systems; Theory and Applications, chapter Reinforcement-learning control and 
pattern recogniton systems, pages 287-318. New York: Academic Press, 70. 
[12] – M. Minsky and S. Papert. Perceptrons: an Introduction to Computational 
Geometry. MIT Press, Massachusetts, 1969. 
[13] – M. L. Minsky. Steps Towards Artificial Intelligence. In Proc. of the Institute of 
Radio Engineers 49, pages 8-32 1961. 
[14] – F. Rosenblatt. The Perceptron: A Probabilistic Model for Information Storange 
and Organization in the Brain. Psychol. Rev., 65:386-408, 1958. 
[15] – D. E. Rumelhart, G. E. Hinton, and R. J. Williams. Learning Representations by 
Back-propagation Error. Nature, 323:533-536, 1986. 
[16] – R. S. Sutton. A. G. Barto, and R. J. Willians. Reinforcement Learning is Direct 
Adaptive Optimal Control. In Proc. of the American Control Coference, pages 
2143-2146: 1991. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
36 
[17] – E. L. Thorndike, Animal Intelligence. Darien, 1911. 
[18] – B. Widrow and M.E. Hoff. Adaptative Switching Circuits. Institute of Radio 
Enginners. Western Electronic Show and Convention, 1960. 
[19] – K. Sycara. Using Case-Based Reasoning for plan Adaptation and Repair. In Case 
Based Reasoning Workshop, DARPA, pages 425-434, Morgan Kaufmann, 1988. 
[20] – G. Cybenko. Approximation by Superpositons of a Sigmoid Function. 
Mathematics of Control, Signals and Systems, 2:303-314, 1989. 
[21] – G. Cybenko. Continuos Valued Neural Network with two Hidden Layers are 
Sufficient.Technical Report, Departament of Computer Science, Tufts University, 
1988. 
[22] – D. Lay. Algebra Linear and its Applications. Addison Wesley, 1997. 
[23] – S. Geman, E. Bienenstock, and R. Doursat. Neural Network and the Bias-
variance Dilemma. Neural Computation, 4:1-58, 1992. 
[24] – Russel Reed. Pruning Algorithms – A survey. IEEE Transactions on Neural 
Networks, 4(5):740-746, 1993. 
[25] – M. C. Mozer and P. Smolensky. Skeletonization: A Technique for Trimming the 
fat from a Network via Rebalance Assessment. In D. S. Touretzky, editor, 
Advances in Neural Information Processing System 1, pages 107-115. Morgan 
Kaufmann, 1989 
[26] – Ehud D. Karnin. A Simple Procedure for Pruning Back-Propagation Trained 
Neural Networks. IEEE Transactions on Neural Networks, 1:(2):239-242, 1990. 
[27] – Y. Le Cun, B. Boser, J.S. Denker, D. Henderson, R.E. Howard, W. Hubbard, and 
L.D. Jackel. Handwritten Digit Recognition with a Back-propagation Network. In 
D.S. Touretzky, editor, Neural Information Processing Systems, volume 2, pages 
396-404, Denver 1989, 1990. Morgan Kaufmann, San Mateo. 
[28] – Geoffrey E. Hinton and Stephen J. Nowlan. How Learning Can Guide Evolution 
Complex Systems, 1(1):495-502, June 1987. 
[29] – A. N. Tikhonov And V. Y. Arsenin. Solutions of III-Posed Problems. V.H. 
Winston & Sons, John Wiley & Sons, Washington D.C., 1977. Translation editor 
Fritz John. 
[30] – D. E. Rumelhart and J. L. McClelland. Parallel Distributed Processing, volume 
1: Foundations. The MIT Press, 1986. 
[31] – S. E. Fahlman. An Empirical Study of Learning Speed in Back-propagation 
Network. Technical Report, Carnegie Mellow University, 1988. 
[32] – M. Riedmiller. Rprop – Description and Implementation Details. Techinical 
Report Universty of Karlsruhe, 1994. 
Redes Neurais Artificiais 
 
Conceitos e Aplicações 
 
37 
[33] – B. Pearlmutter. Gradient Descent: Second Order Momentum and Saturation 
Erro. In J. E. Moody, S. Hanson, and R. Lippmann, editors, Advances in Neural 
Information Processing Systems 2, pages 887-894. Morgan Kaufmann, 1992. 
[34] - R. Barletta. An Introduction to Case-based Reasoning. AI Expert, pages 43-49, 
1991. 
[35] – M. Hagan and M. Menhaj. Training Feedforward Network with The Marquardt 
Algorithm. IEEE Transactions on Neural Networks, 5(6):989-993, November 
1994. 
[36] – A. E. Bryson and Y. Ho. Applied Optimal Control. Blaisdell, 1969. 
[37] – P. Werbos. Beyond Regression: News Tools For Prediction and Analysis in the 
Behavioral Sciences. PhD thesis, Harvard University, 1974. 
[38] – D. Parker Learning Logic: Casting the Cortex of the Human Brain in Silicon 
Technical Report, Center for Computational Research in Economics and 
Management Science, MIT, 1985. 
[39] – Y. Le Cun. A learning Procedure for Assymetric Threshold Network. In 
Proceedings of Cognitiva 85, pages 599-604, 1985. 
[40] – D. Bertsekas. Non Linear Progamming. Athena Scientific, 1995. 
[41] – Lutz Prechelt. Problem 1 – A Set of Neural Network Benchmark Problems and 
Benchmarking Rules. Technical Report, University Karlsruhe Germany, 1994. 
[42] – Nova Enciclopédia Barsa. Encyclopaedia Britânica do Brasil Publicações Ltda. 
Rio de Janeiro – São Paulo, 1998. Volume 7, páginas 356, 357.

Outros materiais