36
Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Embed Size (px)

Citation preview

Page 1: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Daniela Justiniano de Sousa

Multilayer Neural Networks Machine Learning

Page 2: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Multi-Layer Perceptron (MLP)

• Técnica computacional que apresenta um modelo inspirado na estrutura neural.

• O Perceptron Multi - Camadas é uma extensão do Perceptron de camada única.

Page 3: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Breve histórico• 1958-1967.

– Várias pesquisas mal sucedidas.

• 1969– Minsky & Papert: Perceptron só é capaz de resolver

problemas com dados de classes linearmente separáveis.

• 1967-1982.– Pesquisas silenciosas.

• 1986 –Rumelhart, Hinton e Williams – Algoritmo eficaz de aprendizagem.– introduziram o Backpropagation.

Page 4: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Motivação

• Resolve somente problemas linearmente separáveis e funções lógicas simples.

• Redes Neurais limitadas para aplicações práticas complexas.

Page 5: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Solução definida

• Uma ou mais camadas de nós intermediários às unidades de entrada e saída, chamadas unidades ocultas(hidden).

Page 6: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Estrutura da Rede Multi-Camadas

–Entrada– Intermediárias, ocultas ou escondidas–Saída

Page 7: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Arquitetura Redes Multi-Camadas

• Quantidade de neurônios nas camadas– camada de entrada é dada pelo problema a

ser abordado.– Camada oculta: empírico– Camada saída: nº classes

• Capacidade de mapeamento (camada oculta oculta)

Page 8: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Processo de aprendizado

• Supervisionado• Não-supervisionado• Por reforço

AMBIENTE PROFESSOR

SISTEMA DE APRENDIZAGEM

Σ

VETRO DE ESTADODO AMBIENTE

RESPOTADESEJADA

RESPOTAREAL

SINAL DE ERRO

Page 9: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Treinamento

• Algoritmo Backpropagation

• Compara o resultado gerado pela rede com o valor de saída esperado, ajustando os pesos associados à unidade de saída, caso os valores não sejam iguais, porém este treinamento ocorre em duas fases:

– É realizado em duas fases:

• Fase FORWARD (para frente)• Fase BACKWARD (para trás)

Page 10: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Fase Forward: Cálculo da saída da rede

Fase backward: Correção dos pesos sinápticos

Camadas intermediárias

Camada de entrada

Camada de saída

Padrão

Saída

Desejada

Page 11: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Bias

Backpropagation: Funcionamento

Σ

Função de ativação

Entradas

X1

X2

X3

Saída Y

w1

w2

w3

Page 12: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Backpropagation: descrição matemática

Regra de propagação Função de ativação

Page 13: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Backpropagation: descrição matemática

• Processo de minimização do erro quadrático pelo método do Gradiente Descendente.

• O mínimo da função de erro pode ser calculada pelo Gradiente.

Page 14: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Backpropagation: descrição matemática

Page 15: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Backpropagation

0,42

0,55

0,62

-0,170,81

0,35

0

1

00

11

0,45 0,45

0,63 0,63

0,64 0,64

A

B

C

D

E( 0 – 0, 648) 0, 64 (1- 0, 64) = - 0,147

0,45 (1- 0,45)( -0,147 x 0, 79)= -0.029

0, 63 (1-0, 63)( - 0,147 x 0,32)= -0.0111

00

11

0,45 0,45

0,63 0,63

0,64 0,64

A

B

C

D

E

0,42

0,55

-0,18

0,32

0,62

0,79

Page 16: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning
Page 17: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Aspectos Práticos

• Alguns aspectos práticos devem ser considerados na utilização de redes neurais MLP.

– Taxa de aprendizagem– Superfície do erro– Momentum – Misturando Exemplos– Overfitting e Underfitting

Page 18: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Taxa de Aprendizagem

• Taxas muito pequenas tornam o processo bastante lento.

• Taxas muito grandes tornam o processo rápido.– Podem não trazer os resultados ideais.

Erro mínimo

Superfície doerro

Taxa pequena Taxa grande

Page 19: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Taxa de Aprendizagem

• O ideal é começar com uma taxa grande e reduzir durante as iterações.

• Permite a exploração global no início (exploration) a local (exploitation) quando o algoritmo estiver próximo do ótimo global.

• Geralmente valores entre 0.05 e 0.75 fornecem bons resultados.

Page 20: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Superfície do erro

• A superfície de erro pode ser bastante complexa dependendo da configuração da rede.

Page 21: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Momentum

• É uma estratégia usada para evitar mínimos locais. Considere a seguinte superfície

• Existem três mínimos locais antes do mínimo global.

Page 22: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Backpropagation: descrição matemática

• Normalmente utilizado para acelerar o processo de treinamento da rede e evitar mínimos locais.

• A fórmula completa do ajuste de pesos utilizando Momentum fica:

Page 23: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Misturando Exemplos (Shuffle)

• Redes neuronais aprendem melhor quando diferentes exemplos de diferentes classes são apresentados a rede.

• Se apresentarmos à rede todos os exemplos de uma classe, e assim por diante, os pesos finais tenderão para a última classe– A rede vai “esquecer” o que ela aprendeu antes.

Page 24: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Overfitting

– Muitos neurônios na camada oculta.– A rede memoriza os padrões de treinamento, ao invés

de extrair as características gerais, gravando suas peculiaridades e ruídos.

– Depois de um certo ponto do treinamento, a rede piora ao invés de melhorar.

• Solução: – Encerrar treinamento cedo– Eliminação de pesos e nodos irrelevantes

Page 25: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Underfitting

• Número reduzido de neurônios na camada oculta.

• Não realiza o mapeamento desejado.

• A rede a gastar tempo em excesso tentando encontrar a representação ótima.

Page 26: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Etapas para o desenvolvimento RNA

COLETA DE DADOS E SEPARAÇÃO EM CONJUNTOS

CONFIGURAÇÃO DA REDE

TREINAMENTO

TESTE

INTEGRAÇÃO

Page 27: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Aplicações Redes MultiCamadas

– Reconhecimento de padrões e Classificação;

– Agrupamento ou categorização (clustering);

– Aproximação de funções e modelagem;

– Previsão;– Otimização;– Controle.

Classificação de imagens

Avaliação de crédito e risco

Reconhecimento de caractere

Previsão e modelagem

Auxílio à decisão

Robótica

Bioinformática

Page 28: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

CLASSIFICAÇÃO

• Classificador não-linear.

• O objetivo básico: o ajuste dos parâmetros livres (pesos e bias) de forma a criar uma superfície de decisão que separe os padrões de entrada em classes distintas.

• A classificação é realizada somente fase de Forward.– Unidades de entrada: componentes de um vetor (a ser

classificada) – Unidades de saída: funções discriminantes utilizados para a

classificação ou dados classificados.

Page 29: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Exemplo Classificação

• Classificação de flores íris• Três espécies: setosa, versicolor e virgínica• Parâmetros de medição: comprimento e largura

da pétala / comprimento e largura da sépala.

Page 30: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Exemplo Classificação

Classificação de flor íris - Silva, 2003.

Page 31: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Exemplo Classificação

Reconhecimento de caracteresMilho, 2000.

Page 32: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Exemplo Classificação

• 20 nós na camada de entrada, 5 nós na camada intermediária e 1 nó de saída.

Sistema Especialista de CardiologiaLima Jr, 2011.

Page 33: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Conclusão

• Evolução no poder computacional em relação às redes de camada única;

• Aplicações complexas

• Viabilidade da utilização

• Topologia e Arquitetura

• Algoritmos de treinamento (Ex.: Rprop, Quickprop, Levenberg-Marquardt).

Page 34: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

REFERÊNCIAS

• DUDA, R. O.; HART, P. E.; STORK; D. G. Pattern Classification. 2.ed. Nova Iorque: Wiley-Interscience. 654 p., 2001

• MITCHELL, Tom M. Machine Learning. Boston: WCB/McGraw-Hill, 414P.,1997.

• RUSSEL S. J., NORVIG P. Artificial Intelligence, A Modern Approach, 2.ed. New Jersey: Prentice Hall, 2003.

• http://www.solv.com.br/prof/redeneural/• http://elson_mendes.sites.uol.com.br/rn/index.html• http://www.ufjf.googlecode.com/svn/trunk/../MonogLuizFernando.pdf

Page 35: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Demonstração

• http://www.eee.metu.edu.tr/~halici/courses/543java/NNOC/Backpropagation.html

Page 36: Daniela Justiniano de Sousa Multilayer Neural Networks Machine Learning

Perguntas