Uma Visão Geral dos Modelos de Linguagem Baseados em Transformadores
Neste artigo, focamos nos modelos baseados em transformadores que abordam limitações anteriores. Exploraremos o mecanismo de atenção e os componentes dos transformadores e como são aplicados em modelos como USE, BERT e GPT.
Mecanismo de Atenção e Transformadores
Os mecanismos de atenção permitem que os modelos façam previsões considerando toda a entrada e focando seletivamente em partes específicas. Este foco é guiado por pesos aprendidos. Por exemplo, na frase “A raposa viu um coelho. Ela estava muito faminta, então tentou pegá-lo, mas ele se esquivou a tempo,” a atenção ajuda a determinar a qual “ela” se refere, ao coelho ou à raposa.
Os transformadores utilizam uma estrutura de codificador-decodificador aproveitando o mecanismo de atenção. O codificador processa a entrada focando seletivamente em diferentes partes e passa essas codificações para o decodificador. A Figura 1 mostra uma arquitetura simplificada de um transformador codificador. As palavras são primeiro convertidas em números através de métodos como codificação one-hot ou embeddings Word2Vec. Essa sequência é alimentada a uma camada de auto-atenção, que usa partes da entrada para prever outra parte. Os resultados são passados para uma rede neural feed-forward, criando informações codificadas com contexto para o decodificador.
O decodificador é semelhante, mas inclui uma camada de atenção codificador-decodificador para focar em partes importantes da sequência de entrada. Ao contrário das redes neurais recorrentes (por exemplo, LSTMs), os transformadores leem todas as palavras de entrada simultaneamente, permitindo a paralelização e o treinamento em corpora maiores.
Universal Sentence Encoder (USE)
Os modelos USE abordam duas limitações principais: prever a próxima palavra/palavra anterior limita a aplicação em tarefas subsequentes, e os embeddings de palavras não capturam a informação contextual de frases inteiras. O Google Research introduziu modelos USE usando transformadores e Deep Averaging Networks (DAN) otimizados para embeddings de frases em várias tarefas.
O modelo USE baseado em transformadores empilha seis codificadores de transformadores, que tokenizam as entradas e calculam as saídas sequencialmente. As saídas finais formam o embedding da frase. DAN, por outro lado, faz a média das representações vetoriais das palavras de entrada e seus bigramas, passando-os por camadas feed-forward para formar o embedding da frase.
Os modelos USE empregam aprendizado multitarefa, combinando conjuntos de dados não supervisionados e supervisionados, como Wikipedia, notícias da web e fóruns de discussão. Eles são treinados em tarefas como skip-thought (previsão de frases circundantes), entrada-resposta conversacional e inferência em linguagem natural (classificação de pares de frases como neutros, de implicação ou de contradição). Esses modelos são afinados para tarefas específicas, como análise de sentimentos e classificação.
Apesar de se destacarem em tarefas ao nível das frases, os modelos USE são menos eficazes para a geração de texto geral, que exploraremos com outros modelos.
Generative Pretraining Transformer (GPT)
O GPT da OpenAI, introduzido em 2018, foi revolucionário para o pré-treinamento de um modelo de linguagem geral para várias tarefas. O GPT usa um empilhamento de 12 decodificadores, codificando sequências de entrada com Byte Pair Encoding (BPE) e codificação de posição. Foi treinado no conjunto de dados BooksCorpus para a previsão de texto e classificação.
O GPT é afinado para tarefas como inferência em linguagem natural, resposta a perguntas, similaridade semântica e classificação, superando os modelos anteriores. No entanto, sua natureza unidirecional é uma limitação.
Bidirectional Encoder Representations from Transformers (BERT)
O BERT, introduzido pelo Google AI, é um modelo baseado em codificadores treinado bidirecionalmente. O BERT_BASE é comparável em tamanho ao GPT, enquanto o BERT_LARGE tem 340 milhões de parâmetros. Utiliza tokenização WordPiece, embeddings de segmentos e embeddings de posição. O BERT é pré-treinado em tarefas de modelo de linguagem mascarada e previsão da próxima frase utilizando conjuntos de dados como BooksCorpus e Wikipedia.
O BERT supera o GPT em várias tarefas devido à sua natureza bidirecional. Variantes como ALBERT (leve) e RoBERTa (otimizado) oferecem diferentes trade-offs. A bidirecionalidade do BERT melhora o desempenho, mas tem dificuldades em entender a negação.
GPT-2 e Condicionamento de Tarefas
O GPT-2, modelo da OpenAI de 2019, varia em tamanho, sendo o maior 10 vezes o tamanho do GPT. Treinado em 40 GB de dados do Reddit, o GPT-2 usa o condicionamento de tarefas, produzindo diferentes saídas com base em prompts de tarefas. Supera o BERT na maioria das tarefas, mas mostra limitações na sumarização de texto.
GPT-3
O GPT-3, introduzido em 2020, possui 175 bilhões de parâmetros e compartilha a arquitetura do GPT-2 com mais camadas. Treinado em uma mistura de conjuntos de dados, o GPT-3 se destaca no aprendizado com poucos exemplos, produzindo texto e código coerentes. No entanto, tem dificuldades com a coerência de textos longos e repetições.
Conclusão
Revisamos modelos baseados em transformadores como USE, GPT e BERT, destacando seus avanços e limitações. Embora transformadores para o processamento de linguagem natural, esses modelos ainda enfrentam desafios, como lidar com novos conceitos e análise de textos específicos de domínio.