96966162 Redes Neurais No Matlab
-
Upload
denilson-ferreira-rocha -
Category
Documents
-
view
217 -
download
0
Transcript of 96966162 Redes Neurais No Matlab
-
7/23/2019 96966162 Redes Neurais No Matlab
1/5
UNIVERSIDADE FEDERAL DE SERGIPECENTRO DE CINCIAS EXATAS E TECNOLOGIADEPARTAMENTO DE ENGENHARIA ELTRICAORIENTARDOR: PROF. CARLOS ALBERTO V. CARDOSOALUNA: TARCIANA ALVES ALMEIDA
REDES NEURAIS NOMATLABINTRODUODEFINIES:
1. Tcnica inspirada no funcionamento docrebro, onde neurnios artificiais, conectadosem rede, so capazes de aprender e degeneralizar.2.Isso significa que se a rede aprende a lidarcom um certo problema, e lhe apresentado umsimilar, mas no exatamente o mesmo, elatende a reconhecer esse novo problema,oferecendo a mesma soluo.
Componentes do neurnio artificial As sinapses (entradas), com seus pesos associados
A juno somadora; e
A funo de ativao.
wk1wk2
wkmE f(uk)x1x2xmuk
wk0=bkyksinaisdeentradapesos
-
7/23/2019 96966162 Redes Neurais No Matlab
2/5
sinpticosjunoaditiva(bias)funode ativaosadawk0x0=+1entrada fixaPrincpio de funcionamentoA operao de um neurnio artificial se resume em:
Sinais so apresentados entrada (x1 xm); Cada sinal multiplicado por um peso que indicasua influncia na sada da unidade (wk
); feita a soma ponderada dos sinais que produzum nvel de atividade (uk); A funo de ativao f(uk) tem a funo de limitara sada e introduzir no-linearidade ao modelo. O bias bktem o papel de aumentar ou diminuir ainfluncia do valor das entradas.
Expresso Matemtica do NeurnioArtificial||.|
\|+ = =
=mjk j kj k kb x w f u f y
1) (Matematicamente a sada pode ser expressa por:
-
7/23/2019 96966162 Redes Neurais No Matlab
3/5
Caractersticas Tpicas de Redes NeuraisArtificiaisCaractersticas Positivas
Capacidade de Aprendizado: RNA no so programadas, mas treinadas com padres detreinamento. Podem ser adaptadas atravs das entradas.
Paralelismo: RNA so massivamente paralelas e so portanto muito bem adequadas parauma simulao/implementao em computao paralela.
Representao distribuda do conhecimento: O conhecimento armazenado de formadistribuda em seus pesos. O que aumenta muito a tolerncia do sistema a falhas de neurniosindividuais; permite o processamento paralelo.
Tolerncia falhas: O sistema pode ser mais tolerante a falhas de neurnios individuis quealgoritmos convencionais. A rede deve, no entanto, ser treinada para apresentarestacaracterstica. Nem toda rede automaticamente tolerante a falhas.
Armazenamento associativo da informao: Para um certo padro de entrada a RNAfornece o padro que lhe mais prximo. O acesso no feito por endereamento.
Robustez contra perturbaes ou dados ruidosos: Quando treinadas para tanto as redesneurais so mais robustas a padres incompletos
Caractersticas Tpicas de Redes NeuraisArtificiaisCaractersticas Negativas Aquisio de conhecimento s possvel atravs de aprendizado:Principalmente devido representao distribuda muito difcil (exceo: rede
de Hopfield para problemas de otimizao) introduzir conhecimento prvio emuma RNA. Isto muito comum em sistemas de IA simblicos.
No possvel a introspeco: No possvel analisar o conhecimento oupercorrer o procedimento para a soluo,como possvel com os componentes deexplicao de sistemas especialistas.
Difcil deduo lgica (seqencial): virtualmente impossvel obter-se cadeiasde inferncia lgica com redes neurais.
Aprendizado lento: Principalmente redes completamente conectadas e quasetodas as variantes dos algoritmos backpropagation so muito lentas.
Aplicaes de redes neurais classificao de dado anlise de imagens; anlise de voz; anlise de aroma e odor (nariz eletrnico); Reconhecimento de assinatura Reconhecimento de faces e outros biomtricosCriando Redes Neurais
Existem vrios tipos de rede neural. A maiscomum o modelo MLP (multi layer
-
7/23/2019 96966162 Redes Neurais No Matlab
4/5
perceptron).ENTRADA SADACamada1Camada2Camada3Rede feedforward de Mltiplas Camadas(Multilayer Perceptron - MLP)Treinamento da rede neuralDurante o treinamento, a rede neural recebera matriz de dados e o alvo.Todos os pesos de todos os neurnios seromodificados para obter a classificaodesejada.Exemplo 01% cria a estrutura da RNA com um perceptron% [min; max], nmero de neurnios
net = newp([-2 2; -2 2], 1)P = *0 0; 0 1; 1 0; 1 1+; % entradasT = [0 1 1 1]; % sadasfigure; % cria nova figura
plotpv(P, T); % plota as entradas/sadaslh = plotpc(net.IW{1}, net.b{1}) % plota linha que separa as classeshold onfor cont=1:6,net = adapt(net, P, T); % treinamentolh = plotpc(net.IW{1}, net.b{1}, lh);drawnow;pause;Y = sim(net, P) % propagaoend;hold off;Criao e treinamento de um Percepton
Criao e treinamento de um PerceptonCriao e treinamento de um PerceptonCriao e treinamento de um PerceptonExemplo 02% cria uma rede BP para solucionar o problema do XOR
P = [-1 -1; -1 1; 1 -1; 1 1]; % entradasT = [-1 1 1 -1]; % sadasnet = newff([-1 1; -1 1], [2 1]); % criao da rede BPa = 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.9985Exemplo 03
-
7/23/2019 96966162 Redes Neurais No Matlab
5/5
FUNO SENO
x = -pi:pi/16:pi;y = sin(x);plot(x,y);pause;Criao e treinamento de uma redeBackPropagation% cria uma rede BP para aproximar a funo seno% entradas podem variar de -pi at pi% 20 neurnios na camada oculta% 1 neurnio na camada de sada
net = newff([-pi pi], [20 1]);a = sim(net, x);plot(x, a);pause;
% a rede inicia com pesos aleatrios. Ento...Criao e treinamento de uma redeBackPropagation
Criao e treinamento de uma redeBackPropagation
% treina a rede BP para aproximar a funo senonet = train(net, x, y);a = sim(net, x);plot(x, a);pause;Criao e treinamento de uma redeBackPropagationCriao e treinamento de uma redeBackPropagation% 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);Criao e treinamento de uma redeBackPropagation