Redes Neurais No Matlab

Share Embed Donate


Short Description

Download Redes Neurais No Matlab...

Description

UNIVERSIDADE FEDERAL DE SERGIPE CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA DEPAR DEPART TAMENTO DE ENGENHARIA ENGENHA RIA ELÉTRICA ELÉTRIC A ORIENTARDOR: ORIENTARDOR: PROF PRO F. CARLOS ALBERTO ALBERTO V. V. CARDOSO ALUNA: TARCIANA ALVES ALVES ALMEIDA ALM EIDA

REDES NEURAIS NO MATLAB

INTRODUÇÃO

DEFINIÇÕES: 1. Técnica inspirada no funcionamento do cérebro, onde neurônios artificiais, conectados em rede, são capazes de aprender e de generalizar. 2.Isso significa que se a rede aprende a lidar com um certo problema, e lhe é apresentado um similar, mas não exatamente o mesmo, ela tende a reconhecer esse novo problema, oferecendo a mesma solução.

Componentes do neurônio artificial  –

 –

 –

As sinapses (entradas), com seus pesos associados A junção somadora; e A função de ativação.

wk0=bk (bias)

entrada fixa x0=+1

wk0

x1

wk1

sinais de entrada

x2

wk2

função de ativação uk 

yk f(uk )

saída  junção aditiva xm

wkm pesos sinápticos

Princípio de funcionamento A operação de um neurônio artificial se resume em: •









Sinais são apresentados à entrada (x 1 à xm); Cada sinal é multiplicado por um peso que indica sua influência na saída da unidade (w k); É feita a soma ponderada dos sinais que produz um nível de atividade (uk); A função de ativação f(u k) tem a função de limitar a saída e introduzir não-linearidade ao modelo. O bias bk tem o papel de aumentar ou diminuir a influência do valor das entradas.

Expressão Matemática do Neurônio Artificial Matematicamente a saída pode ser expressa por:

  m    yk    f  (uk  )   f    wkj x j  bk     j 1     

Características Típicas de Redes Neurais Artificiais

Características Positivas 



Capacidade de Aprendizado: RNA não são programadas, mas treinadas com padrões de

treinamento. Podem ser adaptadas através das entradas.

Paralelismo: RNA são massivamente paralelas e são portanto muito bem adequadas para

uma simulação/implementação em computação paralela.



Representação distribuída do conhecimento: O conhecimento é armazenado de forma



Tolerância à falhas: O sistema pode ser mais tolerante a falhas de neurônios individuais que



Armazenamento associativo da informação: Para um certo padrão de entrada a RNA



Robustez contra perturbações ou dados ruidosos: Quando treinadas para tanto as redes

distribuída em seus pesos. O que aumenta muito a tolerância do sistema a falhas de neurônios individuais; permite o processamento paralelo. algoritmos convencionais. A rede deve, no entanto, ser treinada para apresentar esta característica. Nem toda rede é automaticamente tolerante a falhas. fornece o padrão que lhe é mais próximo. O acesso não é feito por endereçamento. neurais são mais robustas a padrões incompletos

Características Típicas de Redes Neurais Artificiais Características Negativas 

Aquisição de conhecimento só é possível através de aprendizado:

Principalmente devido à representação distribuída é muito difícil (exceção: rede de Hopfield para problemas de otimização) introduzir conhecimento prévio em uma RNA. Isto é muito comum em sistemas de IA simbólicos. 

Não é possível a introspecção: Não é possível analisar o conhecimento ou

percorrer o procedimento para a solução,como é possível com os componentes de explicação de sistemas especialistas. 

Difícil dedução lógica (seqüencial): É virtualmente impossível obter-se cadeias

de inferência lógica com redes neurais. 

Aprendizado é lento: Principalmente redes completamente conectadas e quase todas as variantes dos algoritmos backpropagation são muito lentas.

Aplicações de redes neurais •











classificação de dado análise de imagens; análise de voz; análise de aroma e odor (nariz eletrônico); Reconhecimento de assinatura Reconhecimento de faces e outros biométricos

Criando Redes Neurais Existem vários tipos de rede neural. A mais comum é o modelo MLP (multi layer perceptron). ENTRADA

Camada 1

Camada 2

Camada 3

SAÍDA

Rede feedforward de Múltiplas Camadas (Multilayer Perceptron - MLP)

Treinamento da rede neural Durante o treinamento, a rede neural receberá a matriz de dados e o alvo.  Todos os pesos de todos os neurônios serão modificados para obter a classificação desejada. 

Exemplo 01

% cria a estrutura da RNA com um perceptron

% [min; max], número de neurônios net = newp([-2 2; -2 2], 1) P = *0 0; 0 1; 1 0; 1 1+’; % entradas T = [0 1 1 1]; % saídas figure; % cria nova figura plotpv(P, T); % plota as entradas/saídas lh = plotpc(net.IW{1}, net.b{1}) % plota linha que separa as classes hold on for cont=1:6, net = adapt(net, P, T); % treinamento lh = plotpc(net.IW{1}, net.b{1}, lh); drawnow; pause; Y = sim(net, P) % propagação end; hold off;

Criação e treinamento de um Percepton

Criação e treinamento de um Percepton

Criação e treinamento de um Percepton

Criação e treinamento de um Percepton

Exemplo 02 % cria uma rede BP para solucionar o problema do XOR P = [-1 -1; -1 1; 1 -1; 1 1]; % entradas T = [-1 1 1 -1]; % saídas net = newff([-1 1; -1 1], [2 1]); % criação da rede BP a = sim(net, P.’) net = train(net, P.’, T); a = sim(net, P.’)

TREINAMENTO a= 0.4012 0.6344 -0.5085 0.6298

a= -0.9996 0.9995 0.9996 -0.9985

Exemplo 03 FUNÇÃO SENO x = -pi:pi/16:pi; y = sin(x); plot(x,y); pause;

Criação e treinamento de uma rede BackPropagation % cria uma rede BP para aproximar a função seno % entradas podem variar de -pi até pi % 20 neurônios na camada oculta % 1 neurônio na camada de saída net = newff([-pi pi], [20 1]); a = sim(net, x); plot(x, a); pause; % a rede inicia com pesos aleatórios. Então...

Criação e treinamento de uma rede BackPropagation

Criação e treinamento de uma rede BackPropagation % treina a rede BP para aproximar a função seno net = train(net, x, y); a = sim(net, x); plot(x, a); pause;

Criação e treinamento de uma rede BackPropagation

Criação e treinamento de uma rede BackPropagation % repetindo para 500 épocas de treinamento net = init(net); % inicializa novamente os pesos net.trainParam.epochs = 500; net = train(net, x, y); a = sim(net, x); plot(x, a);

Criação e treinamento de uma rede BackPropagation

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF