96966162 Redes Neurais No Matlab

download 96966162 Redes Neurais No Matlab

of 5

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