Rede Elman

Embed Size (px)

Citation preview

  • 7/24/2019 Rede Elman

    1/4

    A rede Elman comumente uma rede de duas camadas com o feedback do sada

    da primeira camada para a entrada da primeira camada. Esta ligao permite que a

    repetio Rede Elman para detectar e gerar padres variveis no tempo. ma de duas

    camadas Elman rede mostrado abai!o.

    Figura 1 - Esquema da rede Elman (Fonte: NNtoolbox)

    A rede Elman tem neur"nios tansig em sua escondido #recorrente$ camada% e

    purelin neur&nios na sua camada de sada. Esta combinao especial em que redes de

    duas camadas com estas funes de transfer'ncia pode apro!imar qualquer funo #com

    um n(mero finito de descontinuidades$ com preciso arbitrria. ) (nico requisito que

    a camada oculta deve ter suficientes neur&nios. *ais neur"nios ocultos so necessrios%

    como a funo que est sendo montado aumentos de comple!idade. +ote,se que a rede

    de Elman difere de redes de duas camadas convencionais em que a primeira camada tem

    uma ligao recorrente. ) atraso neste conte!to arma-ena os valores do passo de tempo

    anterior% que pode ser usado na actual intervalo de tempo.

    Assim% mesmo se duas redes Elman% com os mesmos pesos e desvios% so dadas

    entradas id'nticas em um determinado intervalo de tempo% seus resultados podem ser

    diferentes por causa da diferentes estados feedback.

    ma ve- que a rede pode arma-enar informao para refer'ncia futura% capa-de aprender padres temporais% bem como padres espaciais. A rede pode ser Elman

    treinados para responder a% e para gerar% ambos os tipos de padres.

    Criao de uma rede Elman (newelm)

    oc' pode usar o ne/elm funo para criar uma rede de Elman com dois ou

    mais camadas. As camadas ocultas geralmente t'm funes de transfer'ncia tansig e

    este o padro para ne/elm. ) diagrama mostra que a arquitectura purelin

    normalmente a funo de transfer'ncia de sada de camada.

    A funo de treinamento backpropagation padro trainbfg. oc' pode usartrainlm% mas tende a avanar to rapidamente que ele no necessariamente fa-er bem na

  • 7/24/2019 Rede Elman

    2/4

    rede de Elman. A funo peso backpropagation 0 vis de aprendi-ado padro

    learngdm% ea funo de desempen1o padro mse.

    2uando a rede criado% os pesos e preconceitos de cada camada so iniciali-ado

    com o mtodo camada iniciali-ao +gu3en,4idro/% que implementado no initn/

    funo. 5or e!emplo% considere uma sequ'ncia de vetores de entrada de um (nicoelemento no intervalo de 6 a 7 e com pot'ncia na mesma gama. 8upon1a que voc' quer

    ter cinco camadas escondidas neur"nios tansig e uma camada de sada logsig (nico. )

    comando a seguir cria esta rede9

    net : ne/elm#;6 77%7@

    ans :

    Columns 7 t1roug1 G

    6.666D 6.77HI 6.6667 6.667G 6.F=HH 6.667H 6.6667

    Column B

    6.6666

    Assim% uma ve- que a rede ser criada e a entrada especificado% voc' s& precisa

    de c1amar a funo sim.

  • 7/24/2019 Rede Elman

    3/4

    Trainando a rede Elman

    Elman redes podem ser treinados com qualquer uma das duas funes% trem ou

    adaptar. 2uando voc' usa a funo de trem para treinar uma rede Elman o seguinte

    ocorre9

    Em cada poca%

    7 A sequ'ncia inteira de entrada apresentada para a rede% e as suas sadas so calculado

    e comparado com a sequ'ncia alvo para gerar um erro sequ'ncia.

    D 5ara cada intervalo de tempo% o erro backpropagated para encontrar gradientes de

    erros para cada peso e preconceito. Este gradiente realmente uma apro!imao%

    porque as contribuies de pesos e preconceitos a erros via adiada cone!o recorrente

    so ignorados.

    J Este gradiente % ento% utili-ado para actuali-ar os pesos com o Retropropagao

    escol1ido funo de treinamento. ) traingd! funo recomendado. 7J +et/orks1ist&rico 7J,I 2uando voc' usa a funo de adaptar,se a treinar uma rede de Elman% o

    seguinte ocorre9

    Em cada passo de tempo,

    7 vectores de entrada so apresentados K rede% e gera um erro.

    D ) erro backpropagated para encontrar gradientes de erros para cada peso e vis. Este

    gradiente na verdade uma apro!imao% porque as contribuies de pesos e desvios

    para o erro% atravs da ligao recorrente atrasou% so ignorado.

    J Este gradiente apro!imado ento utili-ado para actuali-ar os pesos com o funo de

    aprendi-agem escol1ido. ) learngdm funo recomendado. Redes Elman no so to

    confiveis como alguns outros tipos de redes% porque treinamento e adaptao acontecer

    usando uma apro!imao do erro gradiente.

    5ara uma Elman para ter a mel1or c1ance de aprender um problema% ele precisa de mais

    neur"nios escondidos em sua camada escondida do que so realmente necessrios para

    uma soluo por outro mtodo. Enquanto uma soluo pode estar disponvel com menos

    neur"nios% o Rede Elman menos capa- de encontrar os pesos mais adequadas para

    ocultos neur&nios porque o gradiente de erro apro!imada. 5ortanto% ter uma feira

    n(mero de neur"nios para comear torna mais provvel que os neur"nios escondidos vaicomear a dividir o espao de entrada em formas (teis.

    ) trem funo treina uma rede Elman para gerar uma seqL'ncia de destino

    vectores de quando apresentado com uma dada sequ'ncia de vectores de entrada. A

    entrada vetores e vetores alvo so passados para treinar como matri-es 5 e M. trem leva

    estes vectores e os pesos iniciais e preconceitos da rede% treina o rede usando

    backpropagation com mpeto e uma aprendi-agem adaptativa ta!a% e retorna novos

    pesos e preconceitos.

    Continuar com o e!emplo% e supon1a que voc' quer treinar uma rede com uma

    entrada 5 e alvos M como definido a seguir%

    5 : round#rand#7%B$$

  • 7/24/2019 Rede Elman

    4/4

    5 : 7 6 7 7 7 6 7 7

    E

    M : ;6 #5#79end,7$N5#D9end$ :: D$?tansig?%?logsig?@$

    se trainbfg como a funo de treinamento e treinar para 766 pocas. Ap&s o

    treinamento% simular a rede com a entrada 5 e calcular a diferena entre o sada de

    destino e a sada da rede simulada.

    5seq : conDseq#5$

    Mseq : conDseq#M$

    net : train#net%5seq%Mseq$

    : sim#net%5seq$

    - : seqDcon#$

    ->7%7@

    diff7 : M , ->7%7@

    +ote,se que a diferena entre o alvo e a sada da simulao rede treinada muito

    pequena. Assim% a rede treinado para produ-ir o seqL'ncia de sada deseOado na

    apresentao do vetor de entrada 5. Consulte PAppelm79 Qeteco AmplitudeP na

    pgina 77,77 para uma aplicao do Rede Elman para a deteco da amplitude da onda.