Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Como Funciona a RNN? | Introdução às RNNs
Introdução às RNNs

bookComo Funciona a RNN?

Redes neurais recorrentes (RNNs) são projetadas para lidar com dados sequenciais ao reter informações de entradas anteriores em seus estados internos. Isso as torna ideais para tarefas como modelagem de linguagem e previsão de sequências.

  • Processamento sequencial: a RNN processa os dados passo a passo, acompanhando o que já foi apresentado;
  • Completação de sentença: dada a frase incompleta "My favourite dish is sushi. So, my favourite cuisine is _____.", a RNN processa as palavras uma a uma. Após identificar "sushi", ela prevê a próxima palavra como "Japanese" com base no contexto anterior;
  • Memória nas RNNs: a cada etapa, a RNN atualiza seu estado interno (memória) com novas informações, garantindo que mantenha o contexto para etapas futuras;
  • Treinamento da RNN: as RNNs são treinadas utilizando retropropagação no tempo (BPTT), onde os erros são propagados para trás em cada etapa temporal para ajustar os pesos e melhorar as previsões.

Propagação Direta

Durante a propagação direta, a RNN processa os dados de entrada passo a passo:

  1. Entrada no instante de tempo tt: a rede recebe uma entrada xtx_t em cada instante de tempo;

  2. Atualização do estado oculto: o estado oculto atual hth_t é atualizado com base no estado oculto anterior ht1h_{t-1} e na entrada atual xtx_t utilizando a seguinte fórmula:

    ht=f(W[ht1,xt]+b)
    • Onde:
      • WW é a matriz de pesos;
      • bb é o vetor de bias;
      • ff é a função de ativação.
  3. Geração da saída: a saída yty_t é gerada com base no estado oculto atual hth_t utilizando a fórmula:

    yt=g(Vht+c)

    • Onde:
      • VV é a matriz de pesos de saída;
      • cc é o bias de saída;
      • gg é a função de ativação utilizada na camada de saída.

Processo de Retropropagação

A retropropagação em RNNs é fundamental para atualizar os pesos e aprimorar o modelo. O processo é modificado para considerar a natureza sequencial das RNNs por meio da retropropagação no tempo (BPTT):

  1. Cálculo do erro: o primeiro passo na BPTT é calcular o erro em cada passo de tempo. Esse erro geralmente é a diferença entre a saída prevista e o alvo real;

  2. Cálculo do gradiente: em Redes Neurais Recorrentes, os gradientes da função de perda são calculados diferenciando o erro em relação aos parâmetros da rede e propagados para trás no tempo, do passo final ao inicial, o que pode levar a gradientes que desaparecem ou explodem, especialmente em sequências longas;

  3. Atualização dos pesos: uma vez que os gradientes são calculados, os pesos são atualizados utilizando uma técnica de otimização como o gradiente descendente estocástico (SGD). Os pesos são ajustados de forma que o erro seja minimizado em iterações futuras. A fórmula para atualização dos pesos é:

    W:=WηLossW

    • Onde:
      • η\eta é a taxa de aprendizado;
      • LossW é o gradiente da função de perda em relação à matriz de pesos.

Em resumo, as RNNs são poderosas porque podem memorizar e utilizar informações passadas, tornando-as adequadas para tarefas que envolvem sequências.

question mark

Qual é o papel da função gg na equação de saída yt=g(Vht+c)y_t = g(V \cdot h_t+ c)

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 2

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Awesome!

Completion rate improved to 4.55

bookComo Funciona a RNN?

Deslize para mostrar o menu

Redes neurais recorrentes (RNNs) são projetadas para lidar com dados sequenciais ao reter informações de entradas anteriores em seus estados internos. Isso as torna ideais para tarefas como modelagem de linguagem e previsão de sequências.

  • Processamento sequencial: a RNN processa os dados passo a passo, acompanhando o que já foi apresentado;
  • Completação de sentença: dada a frase incompleta "My favourite dish is sushi. So, my favourite cuisine is _____.", a RNN processa as palavras uma a uma. Após identificar "sushi", ela prevê a próxima palavra como "Japanese" com base no contexto anterior;
  • Memória nas RNNs: a cada etapa, a RNN atualiza seu estado interno (memória) com novas informações, garantindo que mantenha o contexto para etapas futuras;
  • Treinamento da RNN: as RNNs são treinadas utilizando retropropagação no tempo (BPTT), onde os erros são propagados para trás em cada etapa temporal para ajustar os pesos e melhorar as previsões.

Propagação Direta

Durante a propagação direta, a RNN processa os dados de entrada passo a passo:

  1. Entrada no instante de tempo tt: a rede recebe uma entrada xtx_t em cada instante de tempo;

  2. Atualização do estado oculto: o estado oculto atual hth_t é atualizado com base no estado oculto anterior ht1h_{t-1} e na entrada atual xtx_t utilizando a seguinte fórmula:

    ht=f(W[ht1,xt]+b)
    • Onde:
      • WW é a matriz de pesos;
      • bb é o vetor de bias;
      • ff é a função de ativação.
  3. Geração da saída: a saída yty_t é gerada com base no estado oculto atual hth_t utilizando a fórmula:

    yt=g(Vht+c)

    • Onde:
      • VV é a matriz de pesos de saída;
      • cc é o bias de saída;
      • gg é a função de ativação utilizada na camada de saída.

Processo de Retropropagação

A retropropagação em RNNs é fundamental para atualizar os pesos e aprimorar o modelo. O processo é modificado para considerar a natureza sequencial das RNNs por meio da retropropagação no tempo (BPTT):

  1. Cálculo do erro: o primeiro passo na BPTT é calcular o erro em cada passo de tempo. Esse erro geralmente é a diferença entre a saída prevista e o alvo real;

  2. Cálculo do gradiente: em Redes Neurais Recorrentes, os gradientes da função de perda são calculados diferenciando o erro em relação aos parâmetros da rede e propagados para trás no tempo, do passo final ao inicial, o que pode levar a gradientes que desaparecem ou explodem, especialmente em sequências longas;

  3. Atualização dos pesos: uma vez que os gradientes são calculados, os pesos são atualizados utilizando uma técnica de otimização como o gradiente descendente estocástico (SGD). Os pesos são ajustados de forma que o erro seja minimizado em iterações futuras. A fórmula para atualização dos pesos é:

    W:=WηLossW

    • Onde:
      • η\eta é a taxa de aprendizado;
      • LossW é o gradiente da função de perda em relação à matriz de pesos.

Em resumo, as RNNs são poderosas porque podem memorizar e utilizar informações passadas, tornando-as adequadas para tarefas que envolvem sequências.

question mark

Qual é o papel da função gg na equação de saída yt=g(Vht+c)y_t = g(V \cdot h_t+ c)

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 2
some-alt