Buscar

Introducao Redes Neurais Artificiais


Continue navegando


Prévia do material em texto

Introdução às
Redes Neurais Artificiais
Introdução
Prof. João Marcos Meirelles da Silva
http://www.professores.uff.br/jmarcos
Departamento de Engenharia de Telecomunicações
Escola de Engenharia
Universidade Federal Fluminense
Prof. João Marcos Meirelles da Silva – p. 1/60
Créditos autorais
Este curso e estes slides são parcialmente adaptados da bibliografia
citada e das aulas do professor Luiz Pereira Calôba - COPPE/UFRJ
www.lps.ufrj.br
Prof. João Marcos Meirelles da Silva – p. 2/60
Objetivo da Disciplina
Oferecer uma visão geral de redes neurais artificiais, seus diferentes
paradigmas, possibilidades e restrições, bem como estudar as
aplicações mais recentes em nosso dia-a-dia e destacar a importância
do estudo nesta área.
Prof. João Marcos Meirelles da Silva – p. 3/60
Avaliação
A avaliação do curso se dará da seguinte forma:
• Média das Listas de Exercícios (ML)
• Apresentação de um projeto (P)
• 1 Prova Final (Verificação Suplementar)
Prof. João Marcos Meirelles da Silva – p. 4/60
Avaliação
MF = 0, 4 ∗ ML + 0, 6 ∗ P
Condições
Se MF ≥ 6 → Aprovado
Se 4 ≤ MF < 6 → V S
Se MF < 4 → Reprovado
Prof. João Marcos Meirelles da Silva – p. 5/60
Avaliação
• Os alunos que fizerem a VS deverão alcançar a nota mínima de
6,0 para serem aprovados.
• Freqüência mínima das aulas: 75%
Prof. João Marcos Meirelles da Silva – p. 6/60
Ementa
• Introdução
• Processos de aprendizagem
• Perceptrons de camada única
• Perceptrons de múltiplas camadas
• Redes de base radial
• Máquinas de vetores de suporte
• Clusterização
• Mapas auto-organizáveis
Prof. João Marcos Meirelles da Silva – p. 7/60
Ementa
• Análise de componentes principais
• Aplicações diversas
- Processamento básico de áudio, voz e imagem.
- Aplicações em segurança.
- Aplicações em gerenciamento e desempenho.
- Aplicações em engenharia de tráfego
- etc...
Prof. João Marcos Meirelles da Silva – p. 8/60
Bibliografia
Prof. João Marcos Meirelles da Silva – p. 9/60
Bibliografia Complementar
• Cichoki, A., Unbehauen, R., “Neural Networks for Optimization
and Signal Processing”, Wiley, 1993.
• Bishop, C. M., “Neural Networks for Pattern Recognition”, Oxford,
1999.
• Sarle, W. S., ftp://ftp.sas.com/pub/neural/FAQ.html
Prof. João Marcos Meirelles da Silva – p. 10/60
software
• Matlab
• Neuralworks
• Neuroshell
• Statistica
• Neunet (www.cormactech.com/neunet)
• SNNS (Stuttgart Neural Network Simulator) -
ftp.informatik.uni-stuttgart.de
• Neurolab
• Sirene (UFRJ e CEPEL) - www.lps.ufrj.br/∼caloba
Prof. João Marcos Meirelles da Silva – p. 11/60
Introdução
Inteligência Artificial / Computacional:
• Cognitiva, Simbólica ⇒ IA Tradicional
• Evolucionista ⇒ Algoritmos Genéticos, Vida Artificial
• Conexionista ⇒ Redes Neurais Artificiais
Prof. João Marcos Meirelles da Silva – p. 12/60
Por quê Redes Neurais Artificiais?
• Desafio de utilizar máquinas para realizar tarefas “fáceis” para os
seres humanos:
• Reconhecimento de “escrita”
• Reconhecimento de rostos
• Mapeamento de conhecimento tácito
• Problemas de otimização com restrições
→ Algoritmos convencionais não lidam bem com determinados
problemas.
Prof. João Marcos Meirelles da Silva – p. 13/60
Aplicações
• Processamento de sinais (vídeo, áudio, imagem e texto)
• Controle e Automação
• Reconhecimento de Padrões
• Data Mining
• Clusterização
• Diagnósticos em Medicina
• Síntese de Fala
• Reconhecimento de voz e locutor
• Negócios (mercado financeiro, análise de risco, etc.)
Prof. João Marcos Meirelles da Silva – p. 14/60
Aplicações em Telecomunicações
• Segurança
• Detecção de Intrusão e fraudes
• Criptografia/Criptoanálise
• Esteganografia e marcas d’água
• Reconhecimento de voz e locutor
• Desempenho
• Gerenciamento inteligente de redes
• Compactação de dados
• Predição de falhas
• Correlação de alarmes
Prof. João Marcos Meirelles da Silva – p. 15/60
Vantagens
• Aprendizado
• Generalização
• Robustez
• Não requer um modelo matemático do problema
Prof. João Marcos Meirelles da Silva – p. 16/60
Desvantagens
• Instabilidade nas redes com realimentação;
• Problemas com diversos mínimos locais;
• Problemas de aprendizagem (convergência prematura, paralisia,
overtraining, etc...);
• Correlação entre características nos dados de entrada;
• Ruído não-correlacionado;
• Outros...
Prof. João Marcos Meirelles da Silva – p. 17/60
Redes Neurais: Quando usar?
Existe um algoritmo (modelo matemático) que seja satisfatório?
• SIM → Então use-o !
• NÃO → Então pense em usar redes neurais...
Prof. João Marcos Meirelles da Silva – p. 18/60
Redes Neurais: Biológicas x Artificiais
Figura 1: Neurônios do córtex cerebral.
Prof. João Marcos Meirelles da Silva – p. 19/60
Redes Neurais: Biológicas x Artificiais
Figura 2: Neurônios de diferentes espécies.
Prof. João Marcos Meirelles da Silva – p. 20/60
Redes Neurais: Biológicas x Artificiais
Em um neurônio biológico:
• Este recebe diversos sinais de outros neurônios ou terminações
nervosas.
• Os sinais podem ser recebidos com diferentes intensidades
(pesos) nas sinapses receptoras.
• O neurônio soma as entradas.
• Sob circunstâncias apropriadas (entradas com nível suficiente),
o neurônio “dispara” um sinal elétrico (saída).
Prof. João Marcos Meirelles da Silva – p. 21/60
Redes Neurais: Biológicas x Artificiais
Em um neurônio biológico:
• A saída de um neurônio pode ser a entrada de diversos outros
neurônios (rede).
• A memória é distribuída, residindo nas sinapses (nos pesos).
• A resposta a um estímulo pode alterar a “força” (o peso) de uma
sinapse → aprendizado através da experiência.
• Neurotransmissores em uma sinapse podem ser excitatórios ou
inibitórios.
Prof. João Marcos Meirelles da Silva – p. 22/60
Redes Neurais: Biológicas x Artificiais
Figura 3: Sinapse entre dois neurônios biológicos.
Prof. João Marcos Meirelles da Silva – p. 23/60
Redes Neurais: Biológicas x Artificiais
Figura 4: Sentido da propagação do sinal.
Prof. João Marcos Meirelles da Silva – p. 24/60
Modelo de um neurônio
Um neurônio é uma unidade de processamento de informação
essencial em uma rede neural biológica.
Figura 5: Modelagem de um neurônio biológico.
Prof. João Marcos Meirelles da Silva – p. 25/60
Modelo de um neurônio
O diagrama em blocos abaixo representa o modelo matemático de um
neurônio...
Figura 6: Modelo matemático de um neurônio artificial.
Prof. João Marcos Meirelles da Silva – p. 26/60
Modelo de um neurônio
... o qual forma a base para o projeto de redes neurais artificiais.
Temos:
• x1, x2, . . . , xm são os sinais de entrada.
• ωk1, ωk2, . . . , ωkm são os pesos das sinapses do k-ésimo
neurônio.
• uk é a combinação linear dos sinais de entrada ponderados por
seus respectivos pesos.
• bk é o bias do k-ésimo neurônio.
Prof. João Marcos Meirelles da Silva – p. 27/60
Modelo de um neurônio
• ϕk(·) é a função de ativação do k-ésimo neurônio.
• yk é a saída do k-ésimo neurônio.
uk =
m
∑
j=1
ωkjxj (1)
yk = ϕ(uk + bk) (2)
vk = uk + bk (3)
Prof. João Marcos Meirelles da Silva – p. 28/60
Modelo de um neurônio
O bias bk é um parâmetro externo do k-ésimo neurônio artificial.
Também pode ser interpretado como uma entrada x0 = +1 com peso
de sinapse igual a ωk0 = bk.
uk =
m
∑
j=0
ωkjxj , x0 = +1 (4)
yk = ϕ(uk) (5)
Prof. João Marcos Meirelles da Silva – p. 29/60
Modelo de um neurônio
Figura 7: Efeito do bias sobre o neurônio artificial.
Prof. João Marcos Meirelles da Silva – p. 30/60
Modelo de um neurônio
Podemos reformular o modelo do neurônio mostrado na Figura 7 de
forma a incorporar o bias.
Figura 8: Segundo modelo matemático do neurônio artificial.
Prof. João Marcos Meirelles da Silva – p. 31/60
Modelo de um neurônio
Agora que o segundo modelo foi apresentado, podemos simplificar a
sua representação gráfica apenas por maior conveniência.
Figura 9: Modelo simplificado do neurônio artificial.
Prof. João Marcos Meirelles da Silva – p. 32/60
Modelo de um neurônio
• Exemplo:Seja a entrada de um neurônio dado pelo vetor x = [1.4,−2.5, 0.7]T e
seja o vetor de pesos das sinapses ω = [0.4, 0.6, 0.3]T . Determine se a
saída é positiva ou negativa nos casos: com bias unitário e sem bias.
Prof. João Marcos Meirelles da Silva – p. 33/60
Tipos de Função de Ativação
A função de ativação, representada por ϕ(ν), define a saída de um
neurônio em termos do campo local induzido ν. Basicamente, há 3
tipos de função de ativação:
1. Função Threshold
2. Função Linear-por-Partes
3. Função sigmoidal
Prof. João Marcos Meirelles da Silva – p. 34/60
Tipos de Função de Ativação
Função Threshold
Figura 10: Função threshold.
ϕ(ν) =



1 se ν ≥ 0
0 se ν < 0
(6)
Prof. João Marcos Meirelles da Silva – p. 35/60
Tipos de Função de Ativação
De forma correspondente, a saída do k-ésimo neurônio é dado por:
yk =



1, se νk ≥ 0
0, se νk < 0
(7)
onde νk é o campo local induzido do neurônio:
νk =
m
∑
j=1
ωkjxj + bk (8)
Prof. João Marcos Meirelles da Silva – p. 36/60
Tipos de Função de Ativação
Função Linear-por-Partes
Figura 11: Função linear-por-partes.
ϕ(ν) =







1, se ν ≥ 0.5
v, se − 0.5 < ν < +0.5
0, se ν ≤ −0.5
(9)
Prof. João Marcos Meirelles da Silva – p. 37/60
Tipos de Função de Ativação
Função Sigmoidal
Figura 12: Função sigmóide.
ϕ(ν) =
1
1 + exp−aν
(10)
Prof. João Marcos Meirelles da Silva – p. 38/60
Tipos de Função de Ativação
Função Sigmoidal
Figura 13: Função sigmóide - tangente hiperbólica.
ϕ(ν) = tanh ν (11)
Prof. João Marcos Meirelles da Silva – p. 39/60
Tipos de Função de Ativação
• Função mais comumente utilizada em redes neurais.
• É definida como uma função estritamente crescente que exibe
uma balanço interessante entre um comportamento linear e
não-linear.
• Função diferenciável .
Prof. João Marcos Meirelles da Silva – p. 40/60
Modelo Estocástico de Neurônio
Em algumas aplicações, é desejável o funcionamento de um neurônio
baseado em um modelo estocástico.
x =



+1, com probabilidade P(ν)
−1, com probabilidade 1 − P(ν)
(12)
onde x é o estado do neurônio.Uma escolha típica para P é:
P =
1
1 + exp−ν/T
(13)
Prof. João Marcos Meirelles da Silva – p. 41/60
Como os neurônios formam uma rede?
Da mesma maneira que os neurônios no córtex cerebral são
organizados em camadas, em geral, organizamos também as redes
neurais artificiais em camadas.
Figura 14: Organização em camadas.
Prof. João Marcos Meirelles da Silva – p. 42/60
Como os neurônios formam uma rede?
• Arquiteturas típicas:
• Redes de camada única
• Redes de múltiplas camadas
• Redes de camada competitiva
• Treinamento:
• Supervisionado
• Não supervisionado
• Pesos fixos
Prof. João Marcos Meirelles da Silva – p. 43/60
Como os neurônios formam uma rede?
• Freqüentemente é conveniente visualizar os neurônios em
camadas.
• Neurônios da mesma camada tipicamente possuem o mesmo
comportamento (função de ativação e padrão de conexões).
• O arranjo de neurônios em camadas e o padrão de interconexão
entre estas é conhecido como arquitetura da rede.
• Redes neurais também podem ser classificadas como redes
feedfoward ou recorrentes.
Prof. João Marcos Meirelles da Silva – p. 44/60
Redes de Camada Única
• Possuem uma única camada de conexões com pesos.
• Para classificação de padrões, cada neurônio de saída
corresponde à uma classe em particular a qual um vetor de
entrada pode pertencer ou não.
Prof. João Marcos Meirelles da Silva – p. 45/60
Redes de Camada Única
Figura 15: Rede de Camada Única.
Prof. João Marcos Meirelles da Silva – p. 46/60
Redes de Múltiplas Camadas
• Possuem uma ou mais camadas de neurônios escondidos entre
as unidades de entrada e as unidades de saída.
• Em geral, redes de múltiplas camadas podem resolver
problemas mais complexos que as redes de camada única, mas
o treinamento pode ser mais complexo.
Prof. João Marcos Meirelles da Silva – p. 47/60
Redes de Múltiplas Camadas
Figura 16: Rede de Múltiplas Camadas.
Prof. João Marcos Meirelles da Silva – p. 48/60
Redes de Camada Competitiva
• Estão presentes em um grande número de redes neurais.
• Em geral, a saída dos neurônios da camada de saída
conecta-se aos outros neurônios desta última, permitindo que
um neurônio compare o seu valor de saída com os valores dos
outros n − 1 neurônios.
• Normalmente as interconexões entre os neurônios da camada
competitiva não são representados nas arquiteturas de rede
deste tipo.
Prof. João Marcos Meirelles da Silva – p. 49/60
Redesfeedfoward× recorrentes
• Redes feedfoward
• Sem realimentações
• Estática
• Estruturalmente estável
• Redes Recorrentes
• Com realimentações
• Dinâmica
• Instabilidade
Prof. João Marcos Meirelles da Silva – p. 50/60
Redesfeedfoward× recorrentes
Figura 17: Redes Feedfoward × Recorrentes.
Prof. João Marcos Meirelles da Silva – p. 51/60
Treinamento
• Treinamento Supervisionado
• Geralmente a base de dados disponível é divida em dois
conjuntos: o conjunto de treinamento e o conjunto de testes.
• A base de dados é formada por tuplas, ou seja, pares de
dados de “entrada” e “saída” (base rotulada).
• Apresenta-se uma seqüência de vetores de treinamento, ou
padrões, cada um associado a um determinado vetor de
saída.
Prof. João Marcos Meirelles da Silva – p. 52/60
Treinamento
• Treinamento Supervisionado
• Os pesos das sinapses são ajustados de acordo com um
algoritmo de aprendizado.
• Utilizado nos problemas de classificação de padrões e
associação de padrões (memória auto-associativa e
hetero-associativa).
Prof. João Marcos Meirelles da Silva – p. 53/60
Treinamento
• Treinamento Não Supervisionado
• Uma seqüência de vetores de treinamento (entrada) é
apresentada à rede, mas sem apresentar a saída (base
não-rotulada).
• Os pesos das sinapses são ajustados de forma que os
vetores de entrada mais “similares”, sejam agrupados sob o
mesmo rótulo (cluster ou classe).
• A rede produzirá um vetor exemplar (representativo) para
cada cluster formado.
Prof. João Marcos Meirelles da Silva – p. 54/60
Treinamento
• Treinamento Não Supervisionado
• O número de clusters pode ser conhecido previamente ou
não.
• É bastante utilizado em problemas de clusterização e data
mining.
Prof. João Marcos Meirelles da Silva – p. 55/60
Treinamento
• Redes com pesos fixos
• Geralmente utilizada em problemas de otimização com
restrições.
• Tais redes pode trabalhar muito bem em problemas que
causam dificuldades para técnicas tradicionais, tais como
restrições conflitantes (nem todas as restrições podem ser
satisfeitas simultaneamente).
Prof. João Marcos Meirelles da Silva – p. 56/60
Treinamento
• Redes com pesos fixos
• Os pesos das sinapses são ajustados de forma a
representar as restrições e a quantidade a ser maximizada
ou minimizada.
• São exemplos: a máquina de Boltzmann (sem aprendizado)
e a Rede de Hopfield .
Prof. João Marcos Meirelles da Silva – p. 57/60
Histórico
• McCulloch e Pitts (1943) → pioneiros.
• The organization of behavior de Donald Hebb (1949).
• Frank Rosemblatt (1958) → perceptron.
• Widrow e Hoff (1960) → LMS ou Regra Delta.
• Teuvo Kohonen (1972) → Mapas auto-organizáveis.
• Rumelhart, Williams e Hinton (1986) → Backpropagation.
• Ainda na década de 80, John Hopfield e David Tank → redes
neurais com pesos fixos.
Prof. João Marcos Meirelles da Silva – p. 58/60
Referências
1. Haykin, S., “Neural Networks - A Comprehensive Foundation,”
2nd edition - Prentice Hall, 1999.
2. Fausett, L., “Fundamental of Neural Networks - Architectures,
Algorithms and Applications,” Prentice Hall, 1994.
3. Theodoris, S., Koutroumbas, K, “Pattern Recognition,” 4th
edition, Academic Press.
Prof. João Marcos Meirelles da Silva – p. 59/60
FIM
Prof. João Marcos Meirelles da Silva – p. 60/60
	Créditos autorais
	Objetivo da Disciplina
	Avaliação
	Avaliação
	Avaliação
	Ementa
	Ementa
	Bibliografia
	Bibliografia Complementar
	software
	Introdução
	Por quê Redes Neurais Artificiais?
	Aplicações
	Aplicações em TelecomunicaçõesVantagens
	Desvantagens
	Redes Neurais: Quando usar?
	Redes Neurais: Biológicas x Artificiais
	Redes Neurais: Biológicas x Artificiais
	Redes Neurais: Biológicas x Artificiais
	Redes Neurais: Biológicas x Artificiais
	Redes Neurais: Biológicas x Artificiais
	Redes Neurais: Biológicas x Artificiais
	Modelo de um neurônio
	Modelo de um neurônio
	Modelo de um neurônio
	Modelo de um neurônio
	Modelo de um neurônio
	Modelo de um neurônio
	Modelo de um neurônio
	Modelo de um neurônio
	Modelo de um neurônio
	Tipos de Função de Ativação
	Tipos de Função de Ativação
	Tipos de Função de Ativação
	Tipos de Função de Ativação
	Tipos de Função de Ativação
	Tipos de Função de Ativação
	Tipos de Função de Ativação
	Modelo Estocástico de Neurônio
	Como os neurônios formam uma rede?
	Como os neurônios formam uma rede?
	Como os neurônios formam uma rede?
	Redes de Camada Única
	Redes de Camada Única
	Redes de Múltiplas Camadas
	Redes de Múltiplas Camadas
	Redes de Camada Competitiva
	Redes 	extit {feedfoward} $	imes $ 	extit {recorrentes}
	Redes 	extit {feedfoward} $	imes $ 	extit {recorrentes}
	Treinamento
	Treinamento
	Treinamento
	Treinamento
	Treinamento
	Treinamento
	Histórico
	Referências