Você está na página 1de 95

Artificial Neural Networks

Aula 03
Projeto de Redes Neurais
Vanderlei A. Silva

https://www.linkedin.com/in/vanderlei-silva
1. Introdução à teoria de Redes Neurais

2. Modelagem matemática
Aula Anterior...
3. Exemplo de aplicação com MATLAB
Aula Anterior...
Nesta Aula
Agenda
1. Timeline Redes Neurais

2. Etapas de Projeto

3. Considerações Finais
Nesta Aula – Vocabulário Técnico
Agenda
Timeline
McCulloch
1943 and Pitts
Primeiro
Primeiromodelo
modeloartificial
artificialpara
paraneurônio
neurônio

1954

1958

1960

1961
Primeiro
Primeirofiltro
filtrocom
comaprendizado
aprendizadoeecom
compesos
pesosótimos
ótimos
1943 para
paraminimizar
minimizarooMSE
MSE

1954 Gabor

1958

1960

1961
Perceptron:
Perceptron:introduziu
introduziuooaprendizado
aprendizadoao
aomodelo
modelode
de
1943 McCulloch
McCullocheePitts
Pitts

1954

1958 Rosenblatt

1960

Perceptron
1961
1958 – Rosenblatt’s Perceptron
Fonte: Haykin, 2009
• Composto de pesos e bias
• Função de Transferência
Limiar: saída binária {0,1}
• Algoritmo de aprendizado.
1958 – Rosenblatt’s Perceptron
• Circuito Elétrico
o Pesos = potenciômetros
Fonte: Bishop, 2006 o Entradas = fiação
1958 – Rosenblatt’s Perceptron
Utilizado na época para classificação de padrões
o Limitado a duas classes
o Que sejam linearmente separáveis (para convergência do algorítimo de
aprendizado) (lados opostos de um hiperplano)
1958 – Rosenblatt’s Perceptron
Matlab help: perceptron Mapeamento de Classes
em função das entradas ( x1, x2 )

classe 1
x2

classe 0
Logical OR
0

0 x1 1
1958 – Rosenblatt’s Perceptron
Mapeamento de Classes
em função das entradas ( x1, x2 )
Logical XOR
x = [0 0 1 1; 0 1 0 1]; 1
t = [0 1 1 0]; classe 0
net = perceptron;
net = train(net,x,t); x2 classe 1
view(net)
y = net(x); classe 0
0

0 1
x1
Adaline:
Adaline:uma
umarede
redesimples
simplestreinada
treinadapelo
pelo
1943 algoritmo
algoritmodo
dogradiente
gradientepara
paraminimizar
minimizarooMSE.
MSE.

1954

1958

Widrow and Linear


1960 Hoff limiter

Adaline
1961
Propôs
Propôsooesquema
esquemabackpropagation
backpropagationpara paratreinar
treinar
1943 redes
redesmulticamadas.
multicamadas.Falhou
Falhoupor
porusar
usarf f(())não
nãodiferenciável.
diferenciável.

1954

1958

1960

1961 Rosenblatt
1963 Marquardt Least-Squares
Least-SquaresAlgorithm
Algorithm(ainda
(aindanão
nãoaplicado
aplicadoaaRNA)
RNA)

1969

1986

1987

1994
Demonstraram
Demonstraramlimitações
limitaçõesde
deum
umsimples
simplesperceptron.
perceptron.
1963 (XOR 1N --> XOR rede)
(XOR 1N --> XOR rede)
Houve
Houve drásticaredução
drástica reduçãonas
naspesquisas
pesquisascom
comRNA.
RNA.

Minsky
1969 And Papert

1986

1987

1994
Regras
Regrasdedeaprendizado
aprendizadoaplicáveis
aplicáveisaagrandes
1963 redes
grandes
redesneurais
neuraisforam
forampopularizadas
popularizadas(backpropagation).
(backpropagation).

1969

McClelland
1986 and Rumelhart

1987

1994
Primeira
Primeiraconferência
conferênciainternacional
internacionalRNA
1963 com
RNA
com1800
1800participantes
participantes

1969

1986

1987 IEEE

1994
IEEE
IEEE Transactions
Transactions on
on Neural
Neural Networks,
Networks, Vol.
Vol. 5,
5, No.
No. 6,
6, November
November 1994
1994
1963

1969

1986

1987

Hagan and
1994 Menhaj
Etapas de Projeto
Etapas Gerais de Projeto

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura da
da Rede
Rede
Dados
Dados de
de dados
dados Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Coleta de Dados

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura da
da Rede
Rede
Dados
Dados de
de dados
dados Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Coleta de Dados

Os dados devem cobrir a faixa de entrada para a qual rede
será utilizada;

A rede não tem a habilidade de extrapolar com precisão a
faixa para a qual foi treinada;

Em geral, quanto maior a quantidade de dados, melhor a
capacidade de generalização da rede;

Por outro lado, quanto maior a quantidade de dados, maior o
tempo gasto com aprendizado.

Durante o projeto pode haver a necessidade de aumentar a
base de dados coletados.
Próxima Etapa...

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura da
da Rede
Rede
Dados
Dados de
de dados
dados Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Pré-processamento

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura da
da Rede
Rede
Dados
Dados de
de dados
dados Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Pré-processamento de Dados
Normalização: dados de entrada Normalização de alvos

Valores elevados de entrada podem saturar • Possibilita o uso de função de transferência
as funções de transferência da rede (logo no limitada na saída
início trein.)
• Um processo inverso da normalização dos
– O gradiente do erro pode ficar muito alvos deve ser aplicado durante o uso da rede.
pequeno
– Resultado → treinamento muito lento.

● Entradas com valores mais


elevados podem ser
priorizadas na rede em
detrimento daquelas com
valores menores.
Pré-processamento de Dados

Normalizando: 2 Exemplos

1)Passar da faixa original para a faixa [-1,1]. Exemplo:


Matlab: mapminmax

2)Normalizar para média zero e variância unitária



Calcule a média do conjunto e subtraia de cada valor.

Divida cada valor pelo desvio padrão.

Matlab: mapstd
Pré-processamento de Dados

Imagens
– Qual o tamanho do grid?
– Extrair informações da
imagem antes?
– Como representar/codificar
cada pixel?

Preto e branco

Tons de cinza

Outras informações
– Hora do dia
– Dia chuvoso
– Final de semana e feriado …
Próxima Etapa...

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura da
da Rede
Rede
Dados
Dados de
de dados
dados Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Estrutura/Arquitetura de Rede

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura Rede
Rede
Dados
Dados de
de dados
dados da
da Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Arquiteturas de Rede
• Arquitetura: maneira pela qual os neurônios estão estruturados
• Está intimamente relacionada ao algoritmo de aprendizado do treinamento.
• Estruturada em camadas:
i. Entrada: composta pelos dados de entrada (camada sem neurônio);
ii. Ocultas: camadas entre a entrada e a saída;
iii. Saída: última camada da rede;
• Tipos:
1. Redes feedforward de camada simples
Estáticas
2. Redes feedforward de múltiplas camadas Dinâmicas
3. Redes recorrentes
Arquiteturas – Redes Estáticas
Redes Feedforward de Camada Única
Fonte: Haykin, 2009
• A mais simples forma de rede
estruturada por camadas
• Possui duas camadas: entrada e saída
• Possui camada única de neurônios
✔ Nenhum cálculo é feito na camada
de entrada.
Arquiteturas – Redes Estáticas
Redes Feedforward de Múltiplas Camadas
Fonte: Haykin, 2009
• Possui uma ou mais camadas ocultas;
• A(s) camada(s) oculta(s) habilita a rede a extrair
estatísticas de ordem superior de sua entrada;
• Feedforward: as entradas de uma camada vêm
das saídas da camada anterior;
• Notação compacta: rede 10-4-2
• Número de Nós: 16
Arquiteturas – Redes Dinâmicas

Podem depender, além das amostras atuais de entrada:
– Das amostras passadas da entrada
– Da saída
– Dos estados da rede

Possuem memória, atraso
Arquiteturas – Redes Dinâmicas
Rede Feedforward

Exemplo:
– perceptron com atrasos na
entrada

Neste caso, se f é linear, então
– Filtro digital FIR
Arquiteturas – Redes Dinâmicas
Redes Recorrentes
Fonte: Haykin, 2009
• Possui ao menos um loop de
realimentação;
• Apresenta impacto relevante na
capacidade de aprendizado da rede;
Dimensionando a rede

O número de nós em uma rede (num. camadas e neurônios)
usualmente é definido por tentativa e erro (Mehrotra, 1997).


Isso porque esse número depende muito do tipo de aplicação.


Na prática, pode-se partir de uma rede mínima e aumentar
gradativamente o número de nós verificando o erro. Cuidar com
overtraining.

Por outro lado, a carga de processamento exigida à medida que
aumenta-se o número de nós pode ser um fator limitante.


Observa-se que redes com somente uma camada oculta
resolvem grande parte dos problemas práticos.
Próxima Etapa...

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura Rede
Rede
Dados
Dados de
de dados
dados da
da Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Inicialização

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura Rede
Rede
Dados
Dados de
de dados
dados da
da Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Inicialização dos Pesos e Bias
Uma boa escolha faz diferença. Qual a melhor escolha?


Pesos com valores elevados podem levar a saturação das FTs e
aprendizado lento.


Valores muito baixos também podem ser problemáticos no
aprendizado (backpropagation).


Valores típicos podem estar entre -0.5 e 0.5 (Mehrotra, 1997)
Inicialização dos Pesos e Bias
Três exemplos:

1. Aleatoriamente
– Não deve haver pesos com valores iguais;
– A magnitude dos pesos deve ser pequena;
– Diferenças significativas entre magnitudes de peso → rede
pode dar “maior importância” para os pesos de maior
magnitude
– As bias podem ser inicializadas com valor zero.

2. Valores dataset de entrada (pré-processada): escolha aleatória


– Vantagem: valores dentro da faixa de mapeamento;
Inicialização dos Pesos e Bias
3. Regra prática (Haykin, 2009)

– distribuição uniforme
– média zero
– variância = 1/m
⇒ m = número de pesos de um neurônio.
Próxima Etapa...

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura Rede
Rede
Dados
Dados de
de dados
dados da
da Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Treinamento, Validação e Teste

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura Rede
Rede
Dados
Dados de
de dados
dados da
da Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Treinamento, Validação e Teste

1) Medidas de performance (similaridade, função custo)

2) Aprendizado
−Treinamento
−Validação

3) Teste

4) Divisão de dados

5) Overtraining

6) Modos de treinamento
Medidas de Similaridade (Erro)

Objetivo

Determinar o grau de similaridade entre o resultado
desejado (alvo) e o obtido (saída da rede).

Quantificar a proximidade entre dois pontos, o desejado e
o obtido, no espaço N-dimensional.


Índice de Desempenho

Treinamento: ajuste dos pesos da rede

Validação: parada do algoritmo de treinamento

Teste: mede a generalização da rede; comparação entre
redes diferentes.
Medidas de Similaridade (Erro)

Exemlo: data set com 2 amostras

data set = x1 x2 , d1 d2

Qual foi o erro nas 4 iterações?


Medidas de Similaridade (Erro)

Distância Euclideana ●
Espaço N-dimensional
Medidas de Similaridade – MSE
Medidas de Similaridade – Cross Entropy (CE)
Medidas de Similaridade – Cross Entropy (CE)
Padrões Classes Alvos
B A dA = [ 1 0 0 ]
C classificar
A
A C B A B dB = [ 0 1 0 ]
B A C C C
dC = [ 0 0 1 ]
B B A
C


Exemplo: reconhecimento de padrão
Medidas de Similaridade – Cross Entropy (CE)

dA = [ 1 0 0]

dB = [ 0 1 0]

dC = [ 0 0 1]
Vetores Alvos

d = [d1 d2 d3 ] y = [ y1 y2 y3 ]
Medidas de Similaridade – Cross Entropy (CE)
Alvo
dA = [ 1 0 0]
y=[ 1 0 0 ]
Saída
y = [ y1 y2 y3 ] y=[ 0.9 0.1 0.1 ]
y=[ 0.1 0.9 0.1 ]
Medidas de Similaridade – CE

[ 0.0 1.0 0.0] = alvo


y1 y2 y3 CE MSE
0.001 0.997 0.002 0.006 4e-6
0.100 0.800 0.100 0.433 0.020
0.100 0.800 0.600 1.245 0.136
0.228 0.619 0.153 0.904 0.073
0.619 0.228 0.153 2.609 0.334
Algoritmo do Gradiente Descendente

- vetor gradiente
passo de adaptação

estimativa
Algoritmo do Gradiente Descendente
x1 x2
b1
w1 1
a1
g( ) b2
w2 2
w5 a1
b1 g( )
w3 1
^y
a2
w6
g( )
w4

Objetivo:
Retropropagação do Erro
x1 x2
b1
w1 1
a1
g( ) b2
w2 2
w5 a1
b1 g( )
w3 1
^y
a2
w6
g( )
w4
Retropropagação do Erro

x1 x2
b1
w1 1
a1
g( ) b2
w2 2
w5 a1
b1 g( )
w3 1
^y
a2
w6
g( )
w4
Retropropagação do Erro
Retropropagação do Erro
Retropropagação do Erro
Retropropagação do Erro

x1 x2
b1
w1 1
a1
g( ) b2
w2 2
w5 a1
b1 g( )
w3 1
^y
a 2 w6
g( )
w4
Treinamento e Validação – Algoritmo
Treinamento e Validação – Algoritmo
Treinamento e Validação – Algoritmo
Treinamento e Validação – Algoritmo
Treinamento, Validação e Teste – Algoritmo
Treinamento, Validação e Teste – Algoritmo

Treinamento

Amostras são apresentadas à rede que é ajustada de


acordo com algum critério de otimização (erro).


calcula-se o gradiente do erro e ajusta-se os pesos e bias.


minimizar o MSE (fitting) ou;


minimizar a entropia cruzada (pattern recognition).
Treinamento, Validação e Teste
Validação


Objetivo: medir o desempenho da rede, afim de interromper o
aprendizado, por meio do critério de otimização.

O erro de validação é monitorado durante o processo de
aprendizado.

Este erro normalmente decresce na fase inicial de treinamento.

Mas, quando ocorre overfit de dados o erro pode aumentar.

Neste caso, os pesos e bias da rede são salvos na época em que o
erro de validação atingiu seu valor mínimo.
Treinamento, Validação e Teste

Validação

Alguns critérios de parada (MSE ou entropia cruzada):

i. Erro parou de evoluir (overfit de dados), ou

ii. Erro atingiu um valor desejado, ou ainda

iii. O número limite de épocas foi alcançado.


Treinamento, Validação e Teste
Best Validation Performance is 0.0059128 at epoch 12

Valores referentes à época 12


Treinamento, Validação e Teste

Teste

O erro de teste não é utilizado no (não tem efeito sobre o) aprendizado


Medida de performance independente da rede (durante e depois do
treinamento).


Mede a generalização da rede: capacidade da rede de apresentar uma boa
performance para amostras nunca vistas antes.


Pode ser utilizado para comparar diferentes modelagens/arquiteturas
Treinamento, Validação e Teste
Teste

Pode ser útil monitorar o erro
de teste durante o
aprendizado (a cada época)
✔ A evolução do erro de teste
deve acompanhar a do erro
de validação.
✔ Se o erro de teste atinge
um valor mínimo
significativamente antes do
erro de validação, pode
indicar divisão/alocação
inadequada de dados.
Divisão de Dados (Data Set)

O Data Set total (100%) deve ser dividido em três subconjuntos distintos:

1. Treinamento (tipicamente entre 50% e 70%) - tentativa e erro;

2. Validação (tipicamente entre 15% e 25%) - tentativa e erro;

3. Testes (tipicamente entre 15% e 25%) - tentativa e erro;

Em que: Treinamento + Validação + Testes ≡ 100%


Preferencialmente utilize uma alocação de dados aleatória em cada subconjunto.
Divisão de Dados (Data Set)


Particularidades Para Classificação de Padrão:

– Em qualquer subconjunto (treinamento, validação e teste):



O número de amostras (padrões) por classe deve ser o mesmo para
todas as classes envolvidas;

O número total de amostras do subconjunto será a soma do número
de amostras das classes individuais;

As amostras de um subconjunto devem ser embaralhadas (índices
aleatórios) antes de serem apresentadas à rede.
Divisão de Dados (Data Set)

Teoricamente, quantas amostras são suficientes para um bom treinamento?
– Condição suficiente para reconhecimento de padrão (Mehrotra, 1997):

• StrainSet = tamanho do Data Set de treinamento


• Weights = quantidade de pesos e bias da rede
• Nodes = quantiade de nós da rede (cada neurônio é um nó e cada
entrada é um nó);
• a = precisão desejada para o conjunto de teste. Exemplo: precisão de 95%
→ valor de a = 0.95;
Divisão de Dados (Data Set)
Exemplo: rede 10-10-3, com a = 0,95

Camada de Entrada
– 10 nós;


Camada oculta
– 10 nós;
– 10 (neurônios) x 10 (entradas) +
10 bias = 110 pesos; Válido para

Camada de saída Reconhecimento de Padrão
– 3 nós;
– 3 (neurônios) x 10 (saídas da camada oculta) + 3 bias = 33 pesos;


Total: 143 pesos e 23 nós
Divisão de Dados (Data Set)

MATLAB (valores default fitting): 70%, 15% e 15% (train, valid, test)


Função “dividerand” retorna índices aleatorios para cada
subconjunto

[trainIndex, valIndex, testIndex] = dividerand(Q, trainRatio, valRatio,
testRatio)


Exemplo de uso para Q = 250 amostras:

[trainIndex, valIndex, testIndex] = dividerand(250, 0.70, 0.15, 0.15)
Memorização e Generalização – Overtraining

Memorização

– Ensine a uma criança que 11+22=33 e que 10+50=60;

– Ao ser questionada sobre quanto é 11+22 ou 10+50 ela saberá!!

– Ao ser questionada sobre quanto é 10+60 ela saberá?


Generalização

– Ensine uma criança a realizar a operação de soma;

– Ao ser questionada sobre quanto é 11+22 ou 10+50 ou 10+60 ela saberá!!


Memorização e Generalização – Overtraining

A memorização ocorre na rede devido ao excesso de treinamento
(overtraining, overfitting).


A generalização da rede pode ser medida pelo erro de teste (uma boa rede
é medida pela sua capacidade de generalização não memorização).


Para detectar o overtraining o erro de validação deve ser avaliado
constantemente:

– Deve-se interromper o treinamento caso o erro de treinamento continue


decrescendo e o erro de validação permaneça constante ou aumente.
Memorização e Generalização – Overtraining
Para evitar o overtraining:

– Dimensionar a rede
adequadamente: uma rede
com excesso de nós possui
maior capacidade de
memorização dos dados de
entrada;

– Pode-se acrescentar (somar)


aleatoriedade ao dados de
treinamento, principalmente
se a quantidade de dados for
pequena.
Memorização e Generalização – Overtraining
Na prática:

Performance do treinamento ruim Aumente no Neurônios

Performance do treinamento boa


Diminua no Neurônios
Performance do teste ruim
Modos de Treinamento
Existem dois modos de treinamento da rede:

Modo Incremental: o gradiente é calculado e os pesos são atualizados para
cada entrada do Data Set de treinamento.
– A cada entrada tem-se uma época;
– Comumente utilizado em redes dinâmicas como filtros adaptativos.

Modo Batelada: todas as entradas do Data Set de treinamento são aplicadas
à rede antes da atualização dos pesos.
– A cada época todas as amostras são utilizadas;
– O modo batelada é mais rápido e atinge um erro menor quando comparado
ao modo incremental para a maioria dos problemas (Beale, 2010).
Próxima Etapa...

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura Rede
Rede
Dados
Dados de
de dados
dados da
da Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Verificar Resultado do Projeto

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura Rede
Rede
Dados
Dados de
de dados
dados da
da Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Redimensionar Projeto

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura Rede
Rede
Dados
Dados de
de dados
dados da
da Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Verificar Resultado do Projeto

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura Rede
Rede
Dados
Dados de
de dados
dados da
da Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Rede Pronta Para Utilização

Coleta
Coleta Pré-
Pré- Definir
Definir aa Utilizar
Utilizar aa
de
de processamento
processamento Estrutura
Estrutura Rede
Rede
Dados
Dados de
de dados
dados da
da Rede
Rede

Sim

Inicializar
Inicializar Treinar
Treinar aa Testar
Testar aa Resultado
aa Rede
Rede Rede
Rede Rede
Rede Satisfatório?

Não

Definir
Definir nova
nova
Estrutura
Estrutura da
da
Rede
Rede
Utilização da Rede

Pré-
Pré- Pós-
Pós-
Dados
Dados Rede
Rede Neural
Neural
processamento
processamento processamento
processamento Resultados
Resultados
Atuais
Atuais Processamento
Processamento
de
de dados
dados de
de dados
dados

Tipicamente incorporado em um único procedimento


Considerações Finais
Próxima Aula

Aula de Laboatório


Atividades com Matlab
Redes Neurais Artificiais
Referências
(Munakata, 2008) MUNAKATA, Toshinori. Fundamentals of the New Artificial Intelligence:
Nerual, Evolutionary, Fuzzy and More. 2nd ed. London: Springer, 2008. ISBN:
978-1-84628-838-8.

(Haykin, 2009) HAYKIN, Simon. Neural Netowrks and Learning Machines. 3rd ed. New
Jersey: Person, 2009. ISBN: 978-0-13-147139-9.

(MathWorks, 2010) BEALE, M. H.; HAGAN, M. T.; DEMUTH, H. B. Neural Network ToolboxTM 7:
User’s Guide. Natick: The MathWorks, Inc, 2010.

(Bishop, 2006) BISHOP, Christopher M. Pattern Recognition and Machine Learning. New
York: Springer, 2006. ISBN 0-387-31073-8.
Obrigado Pela Atenção!

Você também pode gostar