Transformer: Perguntas e Respostas
48 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Qual a complexidade computacional de uma pilha de camadas convolucionais com kernels contguos?

  • O(logk(n))
  • O(n * d^2)
  • O(k * n * d)
  • O(n/k) (correct)

Qual a principal vantagem das separable convolutions em relao s convolutional layers tradicionais?

  • Menor custo computacional (correct)
  • Maior interpretabilidade do modelo
  • Melhor desempenho em tarefas de processamento de linguagem natural
  • Maior capacidade de aprendizado de caractersticas complexas

Qual a complexidade das separable convolutions?

  • O(n/k)
  • O(k n d)
  • O(k n d + n d^2 ) (correct)
  • O(logk(n))

Qual dataset foi usado para treinar os modelos de traduo Ingls-Alemo?

<p>WMT 2014 English-German (C)</p> Signup and view all the answers

Qual tcnica de codificao foi utilizada para representar as sentenas nos modelos treinados?

<p>Byte-pair encoding (C)</p> Signup and view all the answers

Qual foi o tamanho aproximado do vocabulrio compartilhado entre as lnguas de origem e destino no dataset Ingls-Alemo?

<p>37000 tokens (A)</p> Signup and view all the answers

Quais hiperparmetros foram utilizados no otimizador Adam durante o treinamento dos modelos?

<p>1 = 0.9, 2 = 0.98, = 10^-9 (A)</p> Signup and view all the answers

Qual foi a durao do treinamento para os 'big models' mencionados no texto?

<p>3.5 dias (A)</p> Signup and view all the answers

Qual foi a principal limitação dos modelos recorrentes que o Transformer se propôs a resolver?

<p>A natureza inerentemente sequencial da computação, impedindo a paralelização durante o treinamento. (D)</p> Signup and view all the answers

Qual mecanismo permitiu que o Transformer eliminasse a necessidade de recorrência?

<p>Mecanismos de atenção, que permitem modelar dependências globais entre entradas e saídas. (C)</p> Signup and view all the answers

Qual foi a melhoria mais significativa alcançada pelo Transformer em relação aos modelos anteriores, como redes recorrentes com atenção?

<p>Aumento da capacidade de paralelização e, consequentemente, redução do tempo de treinamento. (C)</p> Signup and view all the answers

Quem propôs o mecanismo de scaled dot-product attention, atenção multi-cabeça e a representação de posição livre de parâmetros no contexto do modelo Transformer?

<p>Noam (B)</p> Signup and view all the answers

Qual das seguintes opções descreve com mais precisão o papel de Lukasz e Aidan no desenvolvimento do Transformer?

<p>Eles lideraram a implementação e o design do tensor2tensor, substituindo a base de código anterior e melhorando os resultados. (D)</p> Signup and view all the answers

Além de permitir maior paralelização, qual outra vantagem o Transformer ofereceu em relação aos modelos recorrentes?

<p>Capacidade de atingir um novo estado da arte em qualidade de tradução com menos tempo de treinamento. (D)</p> Signup and view all the answers

Como os modelos recorrentes processam as sequências de entrada e saída?

<p>Sequencialmente, fatorando a computação ao longo das posições dos símbolos. (D)</p> Signup and view all the answers

Qual foi o ambiente de hardware utilizado para treinar o modelo Transformer original em um período de tempo notavelmente curto?

<p>Oito GPUs P100. (D)</p> Signup and view all the answers

Qual é o objetivo principal de reduzir a computação sequencial em modelos como o Extended Neural GPU, ByteNet e ConvS2S?

<p>Computar representações ocultas em paralelo para todas as posições de entrada e saída. (B)</p> Signup and view all the answers

Como o Transformer minimiza o número de operações necessárias para relacionar sinais entre posições distantes, e qual é o efeito colateral dessa abordagem?

<p>Reduzindo para um número constante de operações, mas diminuindo a resolução efetiva devido à média ponderada da atenção. (C)</p> Signup and view all the answers

O que é 'auto-atenção' (self-attention) no contexto dos modelos de processamento de linguagem natural?

<p>Um mecanismo de atenção que relaciona diferentes posições de uma única sequência para computar uma representação da sequência. (A)</p> Signup and view all the answers

Qual é a principal diferença entre o Transformer e os modelos de redes neurais recorrentes (RNNs) ou convolucionais no contexto da transdução?

<p>O Transformer depende inteiramente da auto-atenção para computar representações, sem usar RNNs ou convoluções alinhadas à sequência. (B)</p> Signup and view all the answers

Qual é a estrutura geral da maioria dos modelos de transdução neural competitivos?

<p>Uma estrutura de codificador-decodificador. (D)</p> Signup and view all the answers

No contexto do modelo Transformer, qual é a função do codificador (encoder)?

<p>Mapear uma sequência de entrada (x1,..., xn) para uma sequência de representações contínuas z = (z1,..., zn). (D)</p> Signup and view all the answers

Como o decodificador (decoder) gera a sequência de saída no modelo Transformer?

<p>Gerando a sequência de saída um elemento de cada vez, de forma auto-regressiva, consumindo os símbolos gerados previamente. (B)</p> Signup and view all the answers

Qual das seguintes estratégias de regularização é utilizada durante o treinamento do modelo Transformer?

<p>Dropout Residual (B)</p> Signup and view all the answers

Quais componentes principais são utilizados no codificador e decodificador do Transformer?

<p>Pilhas de auto-atenção e camadas <code>point-wise</code> totalmente conectadas. (A)</p> Signup and view all the answers

De acordo com a fórmula apresentada, como a taxa de aprendizado (lrate) é ajustada ao longo do treinamento?

<p>Aumenta linearmente nas primeiras <code>warmup_steps</code> etapas e diminui proporcionalmente à raiz quadrada inversa do número da etapa posteriormente. (C)</p> Signup and view all the answers

Qual é o efeito do 'label smoothing' no treinamento do modelo?

<p>Piora a perplexidade, mas melhora a precisão e o score BLEU. (C)</p> Signup and view all the answers

Qual é o valor de warmup_steps utilizado no ajuste da taxa de aprendizado?

<p>4000 (D)</p> Signup and view all the answers

Na fórmula da taxa de aprendizado, qual componente controla o aumento inicial da taxa de aprendizado?

<p><code>min(step_num, step_num * warmup_steps−1.5)</code> (D)</p> Signup and view all the answers

Qual é a taxa de dropout (Pdrop) utilizada no modelo base do Transformer?

<p>0.1 (C)</p> Signup and view all the answers

Qual modelo obteve o melhor score BLEU para a tradução de Inglês para Francês (EN-FR)?

<p>GNMT + RL Ensemble (C)</p> Signup and view all the answers

Qual a principal razão para a escolha da versão sinusoidal das incorporações posicionais em vez das aprendidas nos experimentos?

<p>A versão sinusoidal pode permitir que o modelo extrapole para sequências maiores do que as encontradas no treinamento. (C)</p> Signup and view all the answers

Considerando os dados fornecidos, qual modelo apresenta o menor custo de treinamento (FLOPs) para tradução de Inglês para Alemão (EN-DE)?

<p>Transformer (base model) (B)</p> Signup and view all the answers

Quais são os três critérios principais considerados para comparar self-attention com camadas recorrentes e convolucionais?

<p>Complexidade computacional, capacidade de paralelização e comprimento do caminho para dependências de longo alcance. (D)</p> Signup and view all the answers

Por que o aprendizado de dependências de longo alcance é um desafio importante em tarefas de transdução de sequência?

<p>Porque o comprimento dos caminhos que os sinais forward e backward têm que percorrer na rede afeta a capacidade de aprender essas dependências. (C)</p> Signup and view all the answers

Em que situação as camadas de self-attention são mais rápidas que as camadas recorrentes, de acordo com o texto?

<p>Quando o comprimento da sequência <code>n</code> é menor que a dimensionalidade da representação <code>d</code>. (B)</p> Signup and view all the answers

Qual é a complexidade computacional de uma camada recorrente?

<p>$O(n)$ (A)</p> Signup and view all the answers

Qual é uma estratégia sugerida para melhorar o desempenho computacional do self-attention em sequências muito longas?

<p>Restringir o <em>self-attention</em> a considerar apenas uma vizinhança de tamanho <code>r</code> na sequência de entrada. (B)</p> Signup and view all the answers

O que acontece com o comprimento máximo do caminho quando o self-attention é restrito a uma vizinhança de tamanho r?

<p>Aumenta para $O(n/r)$. (A)</p> Signup and view all the answers

Como uma única camada convolucional com largura de kernel k < n conecta as posições de entrada e saída?

<p>Não conecta todos os pares de posições de entrada e saída. (C)</p> Signup and view all the answers

Na função de atenção dot-product, qual é o propósito de escalar os produtos escalares por $\sqrt{d_k}$?

<p>Reduzir a magnitude dos produtos escalares para evitar que a função softmax opere em regiões com gradientes muito pequenos. (B)</p> Signup and view all the answers

Qual é a principal vantagem da atenção multi-cabeça em comparação com a atenção de cabeça única?

<p>Permitir que o modelo atenda conjuntamente a informações de diferentes subespaços de representação em diferentes posições. (A)</p> Signup and view all the answers

Como a função de atenção calcula a importância de cada palavra na sequência de entrada?

<p>Calculando um peso para cada par de palavras (query e key) e aplicando uma função softmax para normalizar esses pesos. (C)</p> Signup and view all the answers

Quais são as entradas da função de atenção?

<p>Queries (Q), Keys (K) e Values (V). (D)</p> Signup and view all the answers

Em que situação a atenção aditiva geralmente supera a atenção dot-product?

<p>Quando a dimensão das chaves ($d_k$) é grande e a atenção <em>dot-product</em> não é escalada. (B)</p> Signup and view all the answers

Qual das seguintes opções descreve corretamente a relação entre a atenção dot-product e a atenção aditiva em termos de eficiência computacional?

<p>A atenção <em>dot-product</em> é mais rápida e eficiente em termos de espaço porque pode ser implementada usando código de multiplicação de matrizes altamente otimizado. (A)</p> Signup and view all the answers

Na atenção multi-cabeça, qual é o efeito da projeção linear das queries, keys e values em 'h' diferentes espaços?

<p>Permitir que o modelo capture diferentes aspectos das relações entre as palavras, projetando-as em subespaços distintos. (B)</p> Signup and view all the answers

Como é calculada a matriz de outputs na função de atenção?

<p>Pela aplicação da função softmax à divisão do produto escalar de Q e K pela raiz quadrada da dimensão da chave (dk), seguido pela multiplicação pela matriz V. (B)</p> Signup and view all the answers

Flashcards

Modelos Recorrentes

Modelos que processam sequências, calculando estados ocultos sequencialmente.

Limitação da Paralelização

A natureza inerentemente sequencial impede a paralelização durante o treinamento.

Mecanismos de Atenção

Mecanismos que permitem modelar dependências sem se preocupar com a distância na sequência.

Transformer

Uma arquitetura de modelo que dispensa a recorrência e usa apenas mecanismos de atenção.

Signup and view all the flashcards

Paralelização do Transformer

Permite muito mais paralelização no processamento de sequências.

Signup and view all the flashcards

Atenção Escalonada Dot-Product

Proposto por Noam, é uma forma específica de calcular a importância de diferentes partes da sequência.

Signup and view all the flashcards

Atenção Multi-Cabeça

Proposto por Noam, permite que o modelo atenda a diferentes partes da sequência com diferentes 'cabeças'.

Signup and view all the flashcards

Representação Posicional

Representações que ajudam o modelo a entender a ordem das palavras sem usar recorrência.

Signup and view all the flashcards

Extended Neural GPU, ByteNet e ConvS2S

Usa redes neurais convolucionais para computar representações ocultas em paralelo para todas as posições de entrada e saída.

Signup and view all the flashcards

Auto-atenção (Self-Attention)

Mecanismo de atenção que relaciona diferentes posições de uma única sequência para computar sua representação.

Signup and view all the flashcards

ConvS2S e ByteNet

O número de operações para relacionar sinais entre posições aumenta linear ou logaritmicamente com a distância.

Signup and view all the flashcards

Encoder (Codificador)

Mapeia uma sequência de entrada para uma sequência de representações contínuas.

Signup and view all the flashcards

Decoder (Decodificador)

Gera uma sequência de saída, um elemento por vez, usando símbolos gerados anteriormente como entrada.

Signup and view all the flashcards

Auto-regressivo

Modelos que geram a saída em etapas, usando a saída anterior como entrada para a próxima etapa.

Signup and view all the flashcards

Arquitetura Encoder-Decoder

Estrutura comum em modelos de tradução neural, composta por um codificador e um decodificador.

Signup and view all the flashcards

Incorporação posicional senoidal

Técnica alternativa para codificar a posição das palavras numa sequência, usando funções seno e coseno.

Signup and view all the flashcards

Operações sequenciais

Número mínimo de operações que precisam ser feitas em série. Mede o potencial de paralelização de um modelo.

Signup and view all the flashcards

Dependências de longo alcance

Desafio de aprender relações entre palavras que estão distantes umas das outras numa frase.

Signup and view all the flashcards

Comprimento do caminho

Distância máxima que um sinal precisa percorrer entre quaisquer duas posições nas sequências de entrada e saída.

Signup and view all the flashcards

Autoatenção

Camada que conecta todas as posições de uma sequência diretamente, sem precisar de etapas sequenciais.

Signup and view all the flashcards

Velocidade da autoatenção

As camadas de autoatenção são mais rápidas que as recorrentes quando o comprimento da sequência é menor que a dimensão da representação.

Signup and view all the flashcards

Autoatenção restrita

Limitar a autoatenção para considerar apenas palavras próximas. Aumenta o comprimento do caminho, mas acelera o processamento de sequências longas.

Signup and view all the flashcards

Convolução

Uma única camada convolucional não conecta todas as posições nas sequências de entrada e saída.

Signup and view all the flashcards

Atenção de Produto Escalar

Função de atenção que utiliza o produto escalar das consultas (Q) e chaves (K), escalonado pela raiz quadrada da dimensão da chave (dk), para calcular os pesos de atenção.

Signup and view all the flashcards

dk (Dimensão da Chave)

A dimensão das chaves (K) no mecanismo de atenção. Usada para escalar os produtos escalares para evitar gradientes muito pequenos durante o treinamento.

Signup and view all the flashcards

Atenção Aditiva

Uma função que calcula a compatibilidade entre consultas e chaves usando uma rede neural feed-forward com uma camada escondida.

Signup and view all the flashcards

Escalonamento por √dk

Escalonar os produtos escalares por √dk ajuda a prevenir que a função softmax entre em regiões com gradientes muito pequenos, o que prejudica o aprendizado.

Signup and view all the flashcards

Projeções Lineares (Atenção)

As projeções lineares em atenção multi-cabeça permitem que o modelo atenda conjuntamente a informações de diferentes subespaços de representação.

Signup and view all the flashcards

Concatenação e Projeção Final

Concatenar as saídas das diferentes cabeças de atenção e projetá-las resulta nos valores finais usados para a saída do modelo.

Signup and view all the flashcards

Múltiplos Subespaços de Representação

Em atenção multi-cabeça, permite que o modelo capture informações de diferentes partes da sequência de entrada, melhorando a capacidade de representação.

Signup and view all the flashcards

Variação da Taxa de Aprendizado

A taxa de aprendizado varia durante o treino, aumentando linearmente nas primeiras etapas (warmup_steps) e depois diminuindo inversamente proporcional à raiz quadrada do número da etapa.

Signup and view all the flashcards

warmup_steps

Número de etapas de treinamento durante as quais a taxa de aprendizado aumenta linearmente desde o início.

Signup and view all the flashcards

Residual Dropout

Técnica que aplica dropout à saída de cada subcamada antes de ser somada à entrada e normalizada.

Signup and view all the flashcards

Dropout em Embeddings

Dropout aplicado à soma dos embeddings e das codificações posicionais nas pilhas do encoder e decoder.

Signup and view all the flashcards

Label Smoothing

Valor usado para regularização que suaviza a distribuição dos rótulos, tornando o modelo menos confiante.

Signup and view all the flashcards

Pontuação BLEU

BLEU (Bilingual Evaluation Understudy) é uma métrica para avaliar a qualidade do texto traduzido automaticamente.

Signup and view all the flashcards

Custo de Treinamento (FLOPs)

Quantidade de operações de ponto flutuante (FLOPs) necessárias para treinar um modelo.

Signup and view all the flashcards

Transformer (base model)

Um tipo de rede neural que utiliza mecanismos de auto-atenção para modelar dependências em dados sequenciais, permitindo maior paralelização e eficiência no treinamento.

Signup and view all the flashcards

Convoluções Separáveis

Camadas que decompõem as convoluções padrão em operações separadas para reduzir a complexidade computacional.

Signup and view all the flashcards

Dados de Treinamento

Dados usados para treinar o modelo, neste caso, pares de frases em inglês e alemão ou inglês e francês.

Signup and view all the flashcards

Codificação de Par de Bytes (BPE)

Uma técnica de tokenização que divide palavras em subpalavras com base em frequência, permitindo lidar com palavras raras e desconhecidas.

Signup and view all the flashcards

Otimizador Adam

Otimizador popular usado para treinar redes neurais, conhecido por sua eficiência e adaptabilidade.

Signup and view all the flashcards

NVIDIA P100 GPUs

Um conjunto de GPUs (Unidades de Processamento Gráfico) usadas para acelerar o treinamento dos modelos.

Signup and view all the flashcards

Etapas de Treinamento

O número de etapas de atualização dos parâmetros do modelo durante o treinamento.

Signup and view all the flashcards

Lote de Treinamento

Uma coleção de pares de frases agrupadas para treinamento, contendo um número aproximado de tokens de origem e destino.

Signup and view all the flashcards

Study Notes

  • Os modelos dominantes de transdução de sequência são baseados em redes neurais recorrentes ou convolucionais complexas com um codificador e um decodificador.
  • Os melhores modelos conectam codificador e decodificador por meio de um mecanismo de atenção.
  • O Transformer é uma nova arquitetura de rede simples, baseada apenas em mecanismos de atenção, dispensando a recorrência e as convoluções.
  • Experimentos em tarefas de tradução automática mostram que esses modelos são superiores em qualidade, mais paralelizáveis e exigem menos tempo para treinar.
  • O modelo alcança 28.4 BLEU na tarefa de tradução Inglês-para-Alemão WMT 2014, melhorando os resultados existentes em mais de 2 BLEU
  • O modelo estabelece uma nova pontuação BLEU de última geração de 41.0 na tarefa de tradução Inglês-para-Francês WMT 2014 após 3.5 dias de treinamento em oito GPUs, o que é uma pequena fração dos custos de treinamento dos melhores modelos da literatura.

Introdução

  • Redes neurais recorrentes, memória de curto prazo longo e redes neurais recorrentes com portão são frequentemente utilizadas para modelagem de sequência e tradução
  • Muitos esforços foram feitos para melhorar os modelos de linguagem recorrente e as arquiteturas de codificador-decodificador.
  • O Transformer, proposto neste trabalho, evita a recorrência, dependendo inteiramente de um mecanismo de atenção para estabelecer dependências globais entre entrada e saída.
  • O Transformer permite muito mais paralelização e pode atingir um novo estado da arte na qualidade da tradução sendo treinado por apenas 12 horas em oito GPUs P100.

Contexto

  • A redução da computação sequencial é a base da GPU Neural Estendida, ByteNet e ConvS2S, que usam redes neurais convolucionais para computar representações ocultas em paralelo para todas as posições de entrada e saída.
  • Nesses modelos (GPU Neural Estendida, ByteNet e ConvS2S), o número de operações necessárias para relacionar sinais de duas posições arbitrárias de entrada ou saída aumenta com a distância entre as posições
  • No Transformer, esse número é reduzido a um número constante de operações, mas com custo de resolução efetiva reduzida devido à média das posições ponderadas por atenção, que é combatida com a Atenção Multi-Cabeça.
  • A autoatenção é um mecanismo que relaciona diferentes posições de uma única sequência para computar sua representação e tem sido usada com sucesso em várias tarefas, incluindo compreensão de leitura, resumo abstrativo e inferência textual.
  • As redes de memória de ponta a ponta são baseadas em um mecanismo de atenção recorrente em vez de recorrência alinhada à sequência e demonstraram ter bom desempenho em tarefas simples de perguntas e respostas em linguagem e modelagem de linguagem.
  • O Transformer é o primeiro modelo de transdução que depende inteiramente da autoatenção para calcular representações de sua entrada e saída sem usar RNNs ou convoluções alinhadas à sequência.

Arquitetura do Modelo

  • A maioria dos modelos competitivos de transdução de sequência neural tem uma estrutura de codificador-decodificador.
  • O codificador mapeia uma sequência de representações de símbolos para uma sequência de representações contínuas.
  • Dado, o decodificador gera uma sequência de saída de símbolos um elemento por vez.
  • A cada etapa, o modelo é auto-regressivo, consumindo os símbolos gerados anteriormente como entrada adicional ao gerar o próximo.
  • O Transformer segue essa arquitetura geral usando autoatenção empilhada e camadas totalmente conectadas pontuais para o codificador e o decodificador.

Pilhas de Codificador e Decodificador

  • O codificador consiste em uma pilha de N = 6 camadas idênticas, cada uma com duas subcamadas.
  • A primeira subcamada é um mecanismo de autoatenção multi-cabeça, e a segunda é uma rede feed-forward totalmente conectada pontual simples.
  • Uma conexão residual é empregada em torno de cada uma das duas subcamadas, seguida pela normalização da camada.
  • Todas as subcamadas no modelo, bem como as camadas de incorporação, produzem saídas de dimensão dmodel = 512 para facilitar essas conexões residuais.
  • O decodificador também é composto por uma pilha de N = 6 camadas idênticas, cada uma com três subcamadas
  • O decodificador também emprega conexões residuais em torno de cada uma das subcamadas seguido por normalização de camada.
  • A subcamada de autoatenção na pilha do decodificador é modificada para impedir que as posições atendam às posições subsequentes.
  • Combinado com o fato de que as incorporações de saída são deslocadas em uma posição, essa máscara garante que as previsões para a posição i possam depender apenas das saídas conhecidas nas posições menores que i.

Atenção

  • Uma função de atenção mapeia uma consulta e um conjunto de pares chave-valor para uma saída, onde a consulta, as chaves, os valores e a saída são todos vetores.
  • A saída é uma soma ponderada dos valores, onde o peso atribuído a cada valor é calculado por uma função de compatibilidade da consulta com a chave correspondente.

Atenção de Produto de Ponto em Escala

  • A atenção particular é chamada de "Atenção de Produto de Ponto em Escala".
  • A entrada consiste em consultas e chaves de dimensão dk e valores de dimensão dv.
  • Os produtos de ponto das consultas com todas as chaves são computados, cada um é dividido por raiz quadrada de dk, e uma função softmax é aplicada para obter os pesos nos valores.
  • Na prática, a função de atenção é computada em um conjunto de consultas simultaneamente, empacotadas em uma matriz.
  • As chaves e os valores também são empacotados em matrizes.

Atenção Multi-Cabeça

  • Em vez de realizar uma única função de atenção com chaves, valores e consultas dmodel-dimensionais, é benéfico projetar linearmente as consultas, chaves e valores h vezes com diferentes projeções lineares aprendidas para dk, dk e dv dimensões, respectivamente.
  • A função de atenção é então executada em paralelo em cada uma dessas versões projetadas, produzindo valores de saída dv-dimensionais, que são concatenados e projetados novamente, resultando nos valores finais.
  • A atenção multi-cabeça permite que o modelo participe conjuntamente de informações de diferentes subespaços de representação em diferentes posições, pois com uma única cabeça de atenção, a média inibe isso.

Aplicações de Atenção no Modelo

O Transformer usa atenção multi-cabeça de três maneiras diferentes:

  • Nas camadas de "atenção codificador-decodificador", as consultas vêm da camada anterior do decodificador, e as chaves e os valores de memória vêm da saída do codificador, permitindo que cada posição no decodificador atenda a todas as posições na sequência de entrada.
  • O codificador contém camadas de autoatenção, onde todas as chaves, valores e consultas vêm do mesmo lugar, neste caso, a saída da camada anterior no codificador, permitindo que cada posição no codificador atenda a todas as posições na camada anterior do codificador.
  • Da mesma forma, as camadas de autoatenção no decodificador permitem que cada posição no decodificador atenda a todas as posições no decodificador até e incluindo essa posição, o que é importante para a propriedade auto-regressiva.

Redes Feed-Forward Position-wise

  • Além das subcamadas de atenção, cada uma das camadas no codificador e decodificador contém uma rede feed-forward totalmente conectada, que é aplicada a cada posição separadamente e identicamente.
  • Essa rede consiste em duas transformações lineares com uma ativação ReLU no meio.

Incorporações e Softmax

  • Semelhante a outros modelos de transdução de sequência, incorporações aprendidas são usadas para converter os tokens de entrada e os tokens de saída em vetores de dimensão dmodel, e a transformação linear aprendida usual e a função softmax são usadas para converter a saída do decodificador em probabilidades previstas de próximo token.
  • O modelo compartilha a mesma matriz de peso entre as duas camadas de incorporação e a transformação linear pré-softmax e multiplica os pesos por raiz quadrada de dmodel nas camadas de incorporação.

Codificação Posicional

  • Como o modelo não contém recorrência nem convolução, ele deve injetar informações sobre a posição relativa ou absoluta dos tokens na sequência para usar a ordem dela.
  • Para isso, "codificações posicionais" são adicionadas às incorporações de entrada na parte inferior do codificador e das pilhas do decodificador.
  • As codificações posicionais têm a mesma dimensão dmodel que as incorporações, para que as duas possam ser somadas.
  • Funções seno e cosseno de diferentes frequências são usadas, onde cada dimensão da codificação posicional corresponde a uma senoide.
  • O modelo pode aprender facilmente a atender pelas posições relativas devido aos senoides.

Por que a autoatenção

  • A autoatenção é comparada com as camadas recorrentes e convolucionais comuns para mapear uma sequência de comprimento variável de representações de símbolos para outra sequência de comprimento igual.
  • A complexidade computacional total por camada, a quantidade de computação que pode ser paralelizada e o comprimento do caminho entre dependências de longo alcance na rede são considerados para motivar o uso da autoatenção.
  • Uma camada de autoatenção conecta todas as posições com um número constante de operações executadas sequencialmente, enquanto uma camada recorrente requer O(n) operações sequenciais.
  • As camadas de autoatenção são mais rápidas que as camadas recorrentes quando o comprimento da sequência n é menor que a dimensionalidade da representação d.
  • As camadas convolucionais são geralmente mais caras do que as camadas recorrentes por um fator de k; no entanto, as convoluções separáveis diminuem a complexidade consideravelmente e podem ser iguais à combinação de uma camada de autoatenção e uma camada feed-forward pontual.
  • Além disso, a autoatenção pode produzir modelos mais interpretáveis.

Treinamento

  • O regime de treinamento para os modelos é descrito.
  • Os modelos foram treinados no conjunto de dados padrão WMT 2014 Inglês-Alemão, consistindo de cerca de 4.5 milhões de pares de frases.
  • As frases foram codificadas usando a codificação de par de bytes, que tem um vocabulário de origem-alvo compartilhado de cerca de 37.000 tokens.
  • Para Inglês-Francês, o conjunto de dados WMT 2014 Inglês-Francês significativamente maior foi usado, consistindo em 36 milhões de frases e tokens divididos em um vocabulário de 32000 palavras.
  • Os pares de frases foram agrupados por comprimento aproximado da sequência, e cada lote de treinamento continha um conjunto de pares de frases contendo aproximadamente 25.000 tokens de origem e 25.000 tokens de destino.
  • Os modelos foram treinados em uma máquina com 8 GPUs NVIDIA P100.
  • O otimizador Adam foi usado e a taxa de aprendizado variou durante o treinamento.
  • Três tipos de regularização foram empregados durante o treinamento: dropout residual, regularização L1 e suavização de rótulo.

Resultados

  • O desempenho do modelo Transformer foi avaliado em tarefas de tradução automática.
  • O grande modelo Transformer superou os melhores modelos relatados anteriormente na tarefa de tradução Inglês-Alemão WMT 2014 em mais de 2.0 BLEU, estabelecendo uma nova pontuação BLEU de última geração de 28.4.
  • O treinamento levou 3.5 dias em 8 GPUs P100.
  • Até mesmo o modelo base superou todos os modelos e conjuntos publicados anteriormente a uma fração do custo de treinamento de qualquer um dos modelos competitivos..
  • O grande modelo alcançou uma pontuação BLEU de 41.0 na tarefa de tradução Inglês-Francês WMT 2014, superando todos os modelos únicos publicados anteriormente a menos de 1/4 do custo de treinamento do modelo de última geração anterior.
  • As variações do modelo Transformer foram avaliadas variando diferentes componentes e medindo a mudança no desempenho na tradução Inglês-Alemão no conjunto de desenvolvimento, newstest2013.
  • A redução do tamanho da chave de atenção dk prejudica a qualidade do modelo e um desempenho do modelo único é pior do que a melhor configuração, e a qualidade também diminui com muitas cabeças.

Conclusão

  • O Transformer, o primeiro modelo de transdução de sequência baseado inteiramente na atenção, foi apresentado substituindo as camadas recorrentes mais comumente usadas em arquiteturas de codificador-decodificador por autoatenção multi-cabeça.
  • O Transformer pode ser treinado significativamente mais rápido do que as arquiteturas baseadas em camadas recorrentes ou convolucionais para tarefas de tradução.
  • O melhor modelo supera até mesmo todos os conjuntos relatados anteriormente nas tarefas de tradução de Inglês para Alemão e Inglês para Francês WMT 2014, alcançando um novo estado da arte na tradução.
  • O Transformer pode ser estendido a problemas que envolvam modalidades de entrada e saída diferentes do texto e a mecanismos de atenção local e restrita podem ser investigados para lidar com grandes entradas e saídas de forma eficiente, tornando a geração menos sequencial.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

Attention is All You Need PDF

Description

Resumo sobre complexidade computacional de camadas convolucionais, vantagens das separable convolutions e detalhes sobre o treinamento de modelos de tradução Inglês-Alemão com o Transformer. Aborda a arquitetura e os hiperparâmetros utilizados.

More Like This

Transformer Networks
5 questions

Transformer Networks

SupportiveStarlitSky avatar
SupportiveStarlitSky
Transformer Architecture
10 questions

Transformer Architecture

ChivalrousSmokyQuartz avatar
ChivalrousSmokyQuartz
Transformer Networks Overview
5 questions

Transformer Networks Overview

IntuitiveFuchsia3018 avatar
IntuitiveFuchsia3018
Architecture du transformateur
18 questions
Use Quizgecko on...
Browser
Browser