Modelos e plataformas de IA

Modelos de Linguagem Grande Baseados em Decodificador: Um Guia Completo

mm
Adicione Unite.AI às suas fontes preferidas no Google

Modelos de Linguagem Grande (LLMs) revolucionaram o campo do processamento de linguagem natural (NLP) demonstrando capacidades notÃĄveis em gerar texto semelhante ao humano, responder a perguntas e auxiliar em uma ampla gama de tarefas relacionadas à linguagem. No nÚcleo desses modelos poderosos estÃĄ a arquitetura de transformador apenas decodificador, uma variante da arquitetura de transformador original proposta no artigo seminal “Attention is All You Need” por Vaswani et al.

Neste guia abrangente, exploraremos o funcionamento interno dos LLMs baseados em decodificador, mergulhando nos blocos de construçÃĢo fundamentais, inovaçÃĩes arquiteturais e detalhes de implementaçÃĢo que impulsionaram esses modelos para o centro das pesquisas e aplicaçÃĩes de NLP.

A Arquitetura do Transformador: Um Refresco

Antes de mergulhar nos detalhes dos LLMs baseados em decodificador, ÃĐ essencial revisitar a arquitetura do transformador, a base sobre a qual esses modelos sÃĢo construídos. O transformador introduziu uma abordagem nova para modelagem de sequÊncia, confiando apenas em mecanismos de atençÃĢo para capturar dependÊncias de longo alcance nos dados, sem a necessidade de camadas recorrentes ou convolucionais.

Arquitetura do Transformador

Arquitetura do Transformador

A arquitetura original do transformador consiste em dois componentes principais: um codificador e um decodificador. O codificador processa a sequÊncia de entrada e gera uma representaçÃĢo contextualizada, que ÃĐ entÃĢo consumida pelo decodificador para produzir a sequÊncia de saída. Essa arquitetura foi inicialmente projetada para tarefas de traduçÃĢo de mÃĄquina, onde o codificador processa a sentença de entrada na língua de origem e o decodificador gera a sentença correspondente na língua de destino.

AtençÃĢo Auto-Dirigida: A Chave para o Sucesso do Transformador

No coraçÃĢo do transformador estÃĄ o mecanismo de atençÃĢo auto-dirigida, uma tÃĐcnica poderosa que permite ao modelo ponderar e agregar informaçÃĩes de diferentes posiçÃĩes na sequÊncia de entrada. Ao contrÃĄrio dos modelos de sequÊncia tradicionais, que processam tokens de entrada sequencialmente, a atençÃĢo auto-dirigida permite que o modelo capture dependÊncias entre qualquer par de tokens, independentemente de sua posiçÃĢo na sequÊncia.

AtençÃĢo Multi-Consulta

AtençÃĢo Multi-Consulta

A operaçÃĢo de atençÃĢo auto-dirigida pode ser dividida em trÊs etapas principais:

  1. ProjeçÃĩes de Consulta, Chave e Valor: A sequÊncia de entrada ÃĐ projetada em trÊs representaçÃĩes separadas: consultas (Q), chaves (K) e valores (V). Essas projeçÃĩes sÃĢo obtidas multiplicando a entrada com matrizes de peso aprendidas.
  2. CÃĄlculo de PontuaçÃĩes de AtençÃĢo: Para cada posiçÃĢo na sequÊncia de entrada, pontuaçÃĩes de atençÃĢo sÃĢo calculadas tomando o produto escalar entre o vetor de consulta correspondente e todos os vetores de chave. Essas pontuaçÃĩes representam a relevÃĒncia de cada posiçÃĢo para a posiçÃĢo atual sendo processada.
  3. Soma Ponderada de Valores: As pontuaçÃĩes de atençÃĢo sÃĢo normalizadas usando uma funçÃĢo softmax, e os pesos de atençÃĢo resultantes sÃĢo usados para calcular uma soma ponderada dos vetores de valor, produzindo a representaçÃĢo de saída para a posiçÃĢo atual.

A atençÃĢo multi-cabeça, uma variante do mecanismo de atençÃĢo auto-dirigida, permite que o modelo capture diferentes tipos de relacionamentos calculando pontuaçÃĩes de atençÃĢo em mÚltiplas “cabeças” em paralelo, cada uma com seu prÃģprio conjunto de projeçÃĩes de consulta, chave e valor.

Variantes e ConfiguraçÃĩes Arquiteturais

Embora os princípios bÃĄsicos dos LLMs baseados em decodificador sejam consistentes, os pesquisadores exploraram vÃĄrias variantes e configuraçÃĩes arquiteturais para melhorar o desempenho, a eficiÊncia e as capacidades de generalizaçÃĢo. Nesta seçÃĢo, mergulharemos nas diferentes escolhas arquiteturais e suas implicaçÃĩes.

Tipos de Arquitetura

Os LLMs baseados em decodificador podem ser amplamente classificados em trÊs principais tipos: codificador-decodificador, decodificador causal e decodificador de prefixo. Cada tipo de arquitetura exibe padrÃĩes de atençÃĢo distintos.

Arquitetura Codificador-Decodificador

Com base no modelo de transformador vanilla, a arquitetura codificador-decodificador consiste em duas pilhas: um codificador e um decodificador. O codificador usa camadas de atençÃĢo auto-dirigida empilhadas para codificar a sequÊncia de entrada e gerar representaçÃĩes contextualizadas. O decodificador entÃĢo realiza atençÃĢo cruzada nessas representaçÃĩes para gerar a sequÊncia de saída. Embora eficaz em vÃĄrias tarefas de NLP, poucos LLMs, como Flan-T5, adotam essa arquitetura.

Arquitetura Decodificador Causal

A arquitetura decodificador causal incorpora uma mÃĄscara de atençÃĢo unidirecional, permitindo que cada token de entrada atenda apenas a tokens passados e a si mesmo. Tanto os tokens de entrada quanto os tokens de saída sÃĢo processados dentro do mesmo decodificador. Modelos notÃĄveis como GPT-1, GPT-2 e GPT-3 sÃĢo construídos sobre essa arquitetura, com o GPT-3 demonstrando capacidades notÃĄveis de aprendizado em contexto. Muitos LLMs, incluindo OPT, BLOOM e Gopher, adotaram amplamente decodificadores causais.

Arquitetura Decodificador de Prefixo

TambÃĐm conhecida como arquitetura decodificador nÃĢo causal, a arquitetura decodificador de prefixo modifica o mecanismo de mascaramento dos decodificadores causais para permitir atençÃĢo bidirecional sobre tokens de prefixo e atençÃĢo unidirecional sobre tokens gerados. Como a arquitetura codificador-decodificador, os decodificadores de prefixo podem codificar a sequÊncia de prefixo bidirecionalmente e prever tokens de saída autoregressivamente usando parÃĒmetros compartilhados. LLMs baseados em decodificadores de prefixo incluem GLM130B e U-PaLM.

Todos os trÊs tipos de arquitetura podem ser estendidos usando a tÃĐcnica de escalonamento mixture-of-experts (MoE), que ativa esparsamente um subconjunto de pesos da rede neural para cada entrada. Essa abordagem foi empregada em modelos como Switch Transformer e GLaM, com o aumento do nÚmero de especialistas ou do tamanho total de parÃĒmetros mostrando melhorias significativas no desempenho.

Transformador Apenas Decodificador: Abraçando a Natureza Autoregressiva

Embora a arquitetura original do transformador tenha sido projetada para tarefas de sequÊncia-para-sequÊncia, como traduçÃĢo de mÃĄquina, muitas tarefas de NLP, como modelagem de linguagem e geraçÃĢo de texto, podem ser enquadradas como problemas autoregressivos, onde o modelo gera um token de cada vez, condicionado aos tokens previamente gerados.

Entre com o transformador apenas decodificador, uma variante simplificada da arquitetura do transformador que retÃĐm apenas o componente decodificador. Essa arquitetura ÃĐ particularmente adequada para tarefas autoregressivas, pois gera tokens de saída um a um, aproveitando os tokens previamente gerados como contexto de entrada.

A principal diferença entre o transformador apenas decodificador e o decodificador original do transformador reside no mecanismo de atençÃĢo auto-dirigida. No contexto apenas decodificador, a operaçÃĢo de atençÃĢo auto-dirigida ÃĐ modificada para evitar que o modelo atenda a tokens futuros, uma propriedade conhecida como causalidade. Isso ÃĐ alcançado por meio de uma tÃĐcnica chamada “atençÃĢo auto-dirigida mascarada”, onde as pontuaçÃĩes de atençÃĢo correspondentes a posiçÃĩes futuras sÃĢo definidas como negativo infinito, efetivamente mascarando-as durante a normalizaçÃĢo softmax.

Componentes Arquiteturais dos LLMs Baseados em Decodificador

Embora os princípios bÃĄsicos da atençÃĢo auto-dirigida e da atençÃĢo auto-dirigida mascarada permaneçam os mesmos, os LLMs baseados em decodificador modernos introduziram vÃĄrias inovaçÃĩes arquiteturais para melhorar o desempenho, a eficiÊncia e as capacidades de generalizaçÃĢo. Vamos explorar alguns dos principais componentes e tÃĐcnicas empregadas nos LLMs de ponta.

RepresentaçÃĢo de Entrada

Antes de processar a sequÊncia de entrada, os LLMs baseados em decodificador empregam tÃĐcnicas de tokenizaçÃĢo e incorporaçÃĢo para converter o texto bruto em uma representaçÃĢo numÃĐrica adequada para o modelo.

IncorporaçÃĢo de Vetor

IncorporaçÃĢo de Vetor

TokenizaçÃĢo: O processo de tokenizaçÃĢo converte o texto de entrada em uma sequÊncia de tokens, que podem ser palavras, subpalavras ou atÃĐ mesmo caracteres individuais, dependendo da estratÃĐgia de tokenizaçÃĢo empregada. TÃĐcnicas de tokenizaçÃĢo populares para LLMs incluem CodificaçÃĢo de Pares de Bytes (BPE), SentencePiece e WordPiece. Esses mÃĐtodos visam equilibrar o tamanho do vocabulÃĄrio e a granularidade da representaçÃĢo, permitindo que o modelo lide com palavras raras ou fora do vocabulÃĄrio de forma eficaz.

IncorporaçÃĢo de Token: ApÃģs a tokenizaçÃĢo, cada token ÃĐ mapeado para uma representaçÃĢo vetorial densa chamada incorporaçÃĢo de token. Essas incorporaçÃĩes sÃĢo aprendidas durante o treinamento e capturam relaçÃĩes semÃĒnticas e sintÃĄticas entre tokens.

IncorporaçÃĢo Posicional: Os modelos de transformador processam a sequÊncia de entrada inteira simultaneamente, carecendo da noçÃĢo inerente de posiçÃĢo de token presente em modelos recorrentes. Para incorporar informaçÃĩes posicionais, incorporaçÃĩes posicionais sÃĢo adicionadas às incorporaçÃĩes de token, permitindo que o modelo distinga entre tokens com base em suas posiçÃĩes na sequÊncia. LLMs iniciais usavam incorporaçÃĩes posicionais fixas baseadas em funçÃĩes sinusoidais, enquanto modelos mais recentes exploraram incorporaçÃĩes posicionais aprendidas ou tÃĐcnicas de codificaçÃĢo posicional alternativas, como incorporaçÃĩes posicionais rotativas.

Blocos de AtençÃĢo Multi-Cabeça

Os blocos de construçÃĢo bÃĄsicos dos LLMs baseados em decodificador sÃĢo as camadas de atençÃĢo multi-cabeça, que realizam a operaçÃĢo de atençÃĢo auto-dirigida mascarada descrita anteriormente. Essas camadas sÃĢo empilhadas vÃĄrias vezes, com cada camada atendendo à saída da camada anterior, permitindo que o modelo capture dependÊncias e representaçÃĩes cada vez mais complexas.

Cabeças de AtençÃĢo: Cada camada de atençÃĢo multi-cabeça consiste em mÚltiplas “cabeças de atençÃĢo“, cada uma com seu prÃģprio conjunto de projeçÃĩes de consulta, chave e valor. Isso permite que o modelo atenda a diferentes aspectos da sequÊncia de entrada simultaneamente, capturando relacionamentos e padrÃĩes diversificados.

ConexÃĩes Residuais e NormalizaçÃĢo de Camada: Para facilitar o treinamento de redes profundas e mitigar o problema do gradiente desvanecente, os LLMs baseados em decodificador empregam conexÃĩes residuais e tÃĐcnicas de normalizaçÃĢo de camada. As conexÃĩes residuais adicionam a entrada de uma camada à sua saída, permitindo que os gradientes fluam mais facilmente durante a retropropagaçÃĢo. A normalizaçÃĢo de camada ajuda a estabilizar as ativaçÃĩes e gradientes, melhorando ainda mais a estabilidade e o desempenho do treinamento.

Camadas de AlimentaçÃĢo Direta

AlÃĐm das camadas de atençÃĢo multi-cabeça, os LLMs baseados em decodificador incorporam camadas de alimentaçÃĢo direta, que aplicam uma rede neural simples de alimentaçÃĢo direta a cada posiçÃĢo na sequÊncia. Essas camadas introduzem nÃĢo linearidades e permitem que o modelo aprenda representaçÃĩes mais complexas.

FunçÃĩes de AtivaçÃĢo: A escolha da funçÃĢo de ativaçÃĢo nas camadas de alimentaçÃĢo direta pode impactar significativamente o desempenho do modelo. Enquanto LLMs iniciais confiavam na amplamente utilizada ativaçÃĢo ReLU, modelos mais recentes adotaram funçÃĩes de ativaçÃĢo mais sofisticadas, como a Unidade de Erro Gaussiana Linear (GELU) ou a ativaçÃĢo SwiGLU, que demonstraram melhor desempenho.

AtençÃĢo Esparsa e Transformadores Eficientes

Embora o mecanismo de atençÃĢo auto-dirigida seja poderoso, ele vem com uma complexidade computacional quadrÃĄtica em relaçÃĢo ao comprimento da sequÊncia, tornando-o computacionalmente caro para sequÊncias longas. Para abordar esse desafio, vÃĄrias tÃĐcnicas foram propostas para reduzir os requisitos computacionais e de memÃģria da atençÃĢo auto-dirigida, permitindo o processamento eficiente de sequÊncias mais longas.

AtençÃĢo Esparsa: TÃĐcnicas de atençÃĢo esparsa, como a empregada no modelo GPT-3, atendem seletivamente a um subconjunto de posiçÃĩes na sequÊncia de entrada, em vez de calcular pontuaçÃĩes de atençÃĢo para todas as posiçÃĩes. Isso pode reduzir significativamente a complexidade computacional enquanto mantÃĐm um desempenho razoÃĄvel.

AtençÃĢo de Janela Deslizante: Introduzida no modelo Mistral 7B, a atençÃĢo de janela deslizante (SWA) ÃĐ uma tÃĐcnica simples, mas eficaz, que restringe o alcance de atençÃĢo de cada token a um tamanho de janela fixo. Essa abordagem aproveita a capacidade das camadas de transformador de transmitir informaçÃĩes atravÃĐs de mÚltiplas camadas, efetivamente aumentando o alcance de atençÃĢo sem a complexidade quadrÃĄtica da atençÃĢo auto-dirigida completa.

Cache de Buffer Rolante: Para reduzir ainda mais os requisitos de memÃģria, especialmente para sequÊncias longas, o modelo Mistral 7B emprega um cache de buffer rolante. Essa tÃĐcnica armazena e reutiliza os vetores de chave e valor calculados para um tamanho de janela fixo, evitando cÃĄlculos redundantes e minimizando o uso de memÃģria.

AtençÃĢo de Consulta Agrupada: Introduzida no modelo LLaMA 2, a atençÃĢo de consulta agrupada (GQA) ÃĐ uma variante do mecanismo de atençÃĢo multi-consulta que divide as cabeças de atençÃĢo em grupos, cada um compartilhando uma matriz de chave e valor comum. Essa abordagem equilibra a eficiÊncia da atençÃĢo multi-consulta e o desempenho da atençÃĢo auto-dirigida padrÃĢo, proporcionando tempos de inferÊncia melhorados enquanto mantÃĐm resultados de alta qualidade.

AtençÃĢo de Consulta Agrupada

AtençÃĢo de Consulta Agrupada

Tamanho do Modelo e Escalonamento

Uma das características definidoras dos LLMs modernos ÃĐ seu tamanho impressionante, com o nÚmero de parÃĒmetros variando de bilhÃĩes a centenas de bilhÃĩes. Aumentar o tamanho do modelo tem sido um fator crucial para alcançar o desempenho de ponta, pois modelos maiores podem capturar padrÃĩes e relacionamentos mais complexos nos dados.

Contagem de ParÃĒmetros: O nÚmero de parÃĒmetros em um LLM baseado em decodificador ÃĐ determinado principalmente pela dimensÃĢo da incorporaçÃĢo (d_model), pelo nÚmero de cabeças de atençÃĢo (n_heads), pelo nÚmero de camadas (n_layers) e pelo tamanho do vocabulÃĄrio (vocab_size). Por exemplo, o modelo GPT-3 tem 175 bilhÃĩes de parÃĒmetros, com d_model = 12288, n_heads = 96, n_layers = 96 e vocab_size = 50257.

Paralelismo de Modelo: Treinar e implantar modelos tÃĢo massivos exige recursos computacionais substanciais e hardware especializado. Para superar esse desafio, tÃĐcnicas de paralelismo de modelo foram empregadas, onde o modelo ÃĐ dividido em mÚltiplos GPUs ou TPUs, com cada dispositivo responsÃĄvel por uma porçÃĢo dos cÃĄlculos.

Mistura de Especialistas: Outra abordagem para escalonar LLMs ÃĐ a arquitetura de mistura de especialistas (MoE), que combina vÃĄrios modelos especialistas, cada um se especializando em um subconjunto específico dos dados ou tarefa. O modelo Mixtral 8x7B ÃĐ um exemplo de um modelo MoE que usa o Mistral 7B como seu modelo base, alcançando desempenho superior enquanto mantÃĐm eficiÊncia computacional.

InferÊncia e GeraçÃĢo de Texto

Um dos principais casos de uso dos LLMs baseados em decodificador ÃĐ a geraçÃĢo de texto, onde o modelo gera texto coerente e natural com base em um prompt ou contexto dado.

DecodificaçÃĢo Autoregressiva: Durante a inferÊncia, os LLMs baseados em decodificador geram texto de forma autoregressiva, prevendo um token de cada vez com base nos tokens previamente gerados e no prompt de entrada. Esse processo continua atÃĐ que um critÃĐrio de parada predeterminado seja atingido, como atingir um comprimento de sequÊncia mÃĄximo ou gerar um token de fim de sequÊncia.

EstratÃĐgias de Amostragem: Para gerar texto diverso e realista, vÃĄrias estratÃĐgias de amostragem podem ser empregadas, como amostragem top-k, amostragem top-p (tambÃĐm conhecida como amostragem de nÚcleo) ou escalonamento de temperatura. Essas tÃĐcnicas controlam o trade-off entre diversidade e coerÊncia do texto gerado, ajustando a distribuiçÃĢo de probabilidade sobre o vocabulÃĄrio.

Engenharia de Prompt: A qualidade e especificidade do prompt de entrada podem impactar significativamente o texto gerado. A engenharia de prompt, a arte de criar prompts eficazes, emergiu como um aspecto crucial para aproveitar os LLMs em vÃĄrias tarefas, permitindo que os usuÃĄrios orientem o processo de geraçÃĢo do modelo e alcancem saídas desejadas.

DecodificaçÃĢo com InteraçÃĢo Humana: Para melhorar ainda mais a qualidade e a coerÊncia do texto gerado, tÃĐcnicas como Aprendizado por Reforço com Feedback Humano (RLHF) foram empregadas. Nessa abordagem, avaliadores humanos fornecem feedback sobre o texto gerado pelo modelo, que ÃĐ entÃĢo usado para ajustar o modelo, efetivamente alinhando-o com as preferÊncias humanas e melhorando suas saídas.

Avanços e DireçÃĩes Futuras

O campo dos LLMs baseados em decodificador estÃĄ evoluindo rapidamente, com novas pesquisas e avanços continuamente empurrando os limites do que esses modelos podem alcançar. Aqui estÃĢo alguns avanços notÃĄveis e direçÃĩes futuras:

Variante Eficiente do Transformador: Embora a atençÃĢo esparsa e a atençÃĢo de janela deslizante tenham feito progressos significativos na melhoria da eficiÊncia dos LLMs baseados em decodificador, os pesquisadores estÃĢo ativamente explorando arquiteturas e mecanismos de atençÃĢo alternativos para reduzir ainda mais os requisitos computacionais enquanto mantÊm ou melhoram o desempenho.

LLMs Multimodais: Estender as capacidades dos LLMs alÃĐm do texto, os modelos multimodais visam integrar mÚltiplas modalidades, como imagens, ÃĄudio ou vídeo, em uma estrutura unificada. Isso abre possibilidades excitantes para aplicaçÃĩes como legendas de imagens, resposta a perguntas visuais e geraçÃĢo de conteÚdo multimídia.

GeraçÃĢo Controlada: Permitir controle granular sobre o texto gerado ÃĐ uma direçÃĢo desafiadora, mas importante, para os LLMs. TÃĐcnicas como geraçÃĢo de texto controlada e ajuste de prompt visam fornecer aos usuÃĄrios mais controle sobre vÃĄrios atributos do texto gerado, como estilo, tom ou requisitos de conteÚdo específicos.

ConclusÃĢo

Os LLMs baseados em decodificador emergiram como uma força transformadora no campo do processamento de linguagem natural, empurrando os limites do que ÃĐ possível com geraçÃĢo e compreensÃĢo de linguagem. Desde seus humildes começos como uma variante simplificada da arquitetura do transformador, esses modelos evoluíram para sistemas altamente sofisticados e poderosos, aproveitando tÃĐcnicas e inovaçÃĩes arquiteturais de ponta.

À medida que continuamos a explorar e avançar nos LLMs baseados em decodificador, podemos esperar testemunhar realizaçÃĩes ainda mais notÃĄveis em tarefas relacionadas à linguagem, bem como a integraçÃĢo desses modelos em uma ampla gama de aplicaçÃĩes e domínios. No entanto, ÃĐ crucial abordar as consideraçÃĩes ÃĐticas, os desafios de interpretabilidade e os possíveis vieses que podem surgir da implantaçÃĢo generalizada desses modelos poderosos.

Mantendo-nos à frente da pesquisa, fomentando a colaboraçÃĢo aberta e mantendo um forte compromisso com o desenvolvimento responsÃĄvel de IA, podemos desbloquear o potencial completo dos LLMs baseados em decodificador, garantindo que sejam desenvolvidos e utilizados de forma segura, ÃĐtica e benÃĐfica para a sociedade.

Eu passei os Últimos cinco anos me imergindo no fascinante mundo de Aprendizado de MÃĄquina e Aprendizado Profundo. Minha paixÃĢo e expertise me levaram a contribuir para mais de 50 projetos de engenharia de software diversificados, com um foco particular em IA/ML. Minha curiosidade contínua tambÃĐm me levou em direçÃĢo ao Processamento de Linguagem Natural, um campo que estou ansioso para explorar mais.