17 pontos por GN⁺ 26 일 전 | Ainda não há comentários. | Compartilhar no WhatsApp
  • O Gemma 4, lançado pelo Google DeepMind, é uma família de LLMs multimodais composta por 4 modelos — E2B, E4B, 31B e 26B A4B — e todas as variantes aceitam entrada de imagens
  • Todos os modelos compartilham uma estrutura que intercala atenção local (sliding window) e camadas de atenção global, com a última camada sempre fixa como atenção global
  • Nas camadas de atenção global, são aplicadas simultaneamente três técnicas de eficiência: GQA (Grouped Query Attention), técnica K=V e p-RoPE, reduzindo memória e computação
  • Os modelos pequenos (E2B·E4B) usam Per-Layer Embeddings (PLE) para armazenar grandes tabelas de embeddings em memória flash, minimizando o uso de VRAM, e também incluem um encoder de áudio
  • O Gemma 4 suporta uma ampla gama de usos, de on-device a inferência de grande porte, por meio de um encoder de visão (baseado em ViT) com suporte a proporções e resoluções variáveis e da arquitetura MoE (26B A4B)

Composição da família Gemma 4

  • É composta por 4 modelos e usa dois tipos de arquitetura: dense e MoE
    • Gemma 4 - E2B: aplica Per-Layer Embeddings, 2 bilhões de parâmetros efetivos
    • Gemma 4 - E4B: aplica Per-Layer Embeddings, 4 bilhões de parâmetros efetivos
    • Gemma 4 - 31B: modelo dense com 31 bilhões de parâmetros
    • Gemma 4 - 26B A4B: modelo MoE com 26 bilhões de parâmetros no total, com apenas 4 bilhões de parâmetros ativados durante a inferência
  • Todos os modelos são multimodais e podem processar imagens de vários tamanhos e resoluções
  • Os modelos pequenos (E2B·E4B), além de imagem e texto, também oferecem suporte adicional a entrada de áudio

Arquitetura comum do Gemma 4

Intercalação de camadas de atenção (Interleaving Layers)

  • Assim como no Gemma 3, ele intercala camadas de atenção local (sliding window) e atenção global
    • Atenção sliding window: consulta apenas tokens dentro de um certo intervalo → reduz o volume de computação
    • Atenção global: consulta toda a sequência → permite compreender a estrutura completa do contexto
  • Tamanho da sliding window
    • Modelos pequenos (E2B·E4B): 512 tokens
    • Modelos grandes (26B A4B·31B): 1024 tokens
  • No Gemma 3, havia casos em que a última camada era de atenção local, mas no Gemma 4 a última camada é sempre fixada como atenção global
  • Proporção de intercalação
    • E2B: padrão 4:1, com 4 camadas de atenção local + 1 camada de atenção global
    • Demais modelos: padrão 5:1 (5 camadas locais + 1 camada global)

Eficiência da atenção global

GQA (Grouped Query Attention)

  • Nas camadas de atenção global, 8 cabeças de consulta compartilham 1 cabeça KV, reduzindo drasticamente o armazenamento do cache KV
  • Para compensar a possível perda de desempenho ao reduzir o número de cabeças KV, a dimensão de Key é ampliada em 2x

Técnica K=V

  • Nas camadas de atenção global, Keys e Values são definidos como idênticos, reduzindo ainda mais a exigência de memória do cache KV
  • É uma técnica que melhora a eficiência de memória sem grande perda de desempenho

p-RoPE

  • O RoPE (Rotary Position Encoding) é aplicado não à dimensão inteira, mas apenas a parte das dimensões (se p=0.25, aplica-se apenas aos 25% superiores dos pares)
  • Os pares de baixa frequência são usados para preservar informação semântica em vez de informação posicional
  • É especialmente eficaz para mitigar o problema de distorção da distância entre tokens causado por contextos longos na atenção global
  • Resumo de todas as melhorias aplicadas às camadas de atenção global:
    • A última camada é sempre atenção global
    • 1 Key compartilhada a cada 8 consultas
    • Dimensão de Key ampliada em 2x
    • Keys = Values
    • Aplicação de p-RoPE com p=0.25

Encoder de visão

  • Baseado em Vision Transformer (ViT), converte imagens em sequências de patches para gerar embeddings
    • Cada patch tem tamanho de 16×16 pixels
  • Os modelos pequenos (E2B·E4B) usam um encoder de visão de 150 milhões de parâmetros, enquanto os demais usam um encoder de visão de 550 milhões de parâmetros

Suporte a proporção variável

  • ViTs tradicionais exigem entrada quadrada fixa → isso gera problemas porque a codificação posicional varia conforme a proporção
  • O Gemma 4 introduz 2D RoPE: divide os embeddings dos patches em duas partes e codifica separadamente as informações posicionais horizontal (w) e vertical (h)
  • A imagem de entrada é redimensionada de forma adaptativa para se ajustar aos patches de 16×16 pixels, e as partes que não se encaixam completamente recebem padding
  • Patches de tamanho variável são agrupados com base na posição espacial para serem reduzidos a um número fixo de embeddings de patch

Suporte a resolução variável (soft token budget)

  • Introduz o conceito de soft token budget: limita o número máximo de embeddings de patch enviados ao LLM
    • Orçamentos selecionáveis pelo usuário: 70, 140, 280, 560, 1120 tokens
  • Quanto maior o orçamento (por exemplo, 1120), maior a preservação da alta resolução; quanto menor (por exemplo, 70), mais a imagem é reduzida
  • Exemplo: com orçamento 280, o número máximo de patches = 9 × 280 = 2.520 (com average pooling aplicado em blocos 3×3)

Projeção linear (Linear Projection)

  • Os embeddings de saída do encoder de visão têm dimensão e distribuição diferentes dos embeddings de token do LLM, então passam por projeção com uma pequena rede neural
  • Após a projeção, aplica-se RMSNorm para ajustar à escala esperada pelos blocos Transformer seguintes
  • A camada de projeção linear é treinada junto com o Gemma 4 para otimizar os embeddings de patch de acordo com o espaço esperado pelo LLM

Gemma 4 - 31B (Dense)

  • Modelo de arquitetura dense com 31 bilhões de parâmetros, a estrutura mais próxima do formato básico entre as variantes do Gemma 4
  • Estruturalmente semelhante ao modelo 27B do Gemma 3, mas com as melhorias comuns do Gemma 4, como K=V e p-RoPE
  • O número de camadas caiu de 62 para 60, mas a arquitetura passou a ter maior largura por camada

Gemma 4 - 26B A4B (Mixture of Experts)

  • Tem 26 bilhões de parâmetros no total, mas durante a inferência usa apenas 4 bilhões de parâmetros (parâmetros ativos), operando em velocidade comparável à de um modelo 4B
  • Estrutura MoE (Mixture of Experts): em vez de uma FFNN grande tradicional, usa várias FFNNs pequenas (Experts), ativando apenas parte delas conforme a entrada
    • Entre 128 Experts no total, 8 são selecionados e ativados durante a inferência
    • 1 Shared Expert fica sempre ativo: é responsável pelo processamento de conhecimento geral e tem tamanho 3x maior que os demais Experts
  • O Router gera probabilidades de seleção de Expert para cada token de entrada e faz o roteamento, aplicando pesos probabilísticos aos resultados produzidos pelos Experts selecionados
  • Todos os parâmetros são carregados na memória, mas no cálculo real apenas 8 Experts + 1 Shared Expert são usados → os outros 119 ficam em espera

Gemma 4 - E2B & E4B (Dense + Per-Layer Embeddings)

Per-Layer Embeddings (PLE)

  • Em vez de ficar dentro do modelo, adiciona tabelas de lookup de embeddings separadas para cada camada, minimizando o uso de VRAM em dispositivos pequenos
  • No E2B: tabela PLE de 262.144 tokens × 35 camadas × 256 dimensões → armazenada em memória flash
  • No início da inferência, os embeddings por camada dos tokens de entrada são consultados apenas uma vez → depois não é necessário consultá-los novamente em cada camada
  • Entre os blocos decoder, uma função de gating determina o peso dos embeddings, que então são projetados para o tamanho original (E2B: 256→1536, E4B: 256→2560)
  • Os embeddings projetados são normalizados e somados à saída do bloco decoder anterior → o modelo pode continuar referenciando o significado dos tokens
  • O “E” significa parâmetros efetivos (effective parameters), excluindo o PLE

Encoder de áudio

  • Presente apenas nos modelos pequenos (E2B·E4B), sendo usado em reconhecimento automático de fala e tradução, entre outras aplicações
  • 3 etapas do processamento de áudio:
    1. Extração de características: áudio bruto → mel-spectrogram (representação 2D de tempo × frequência)
    2. Agrupamento em chunks: as características mel são agrupadas em chunks para definir o ponto de partida da sequência de tokens
    3. Downsampling: 2 camadas convolucionais 2D encurtam o comprimento da sequência e geram soft tokens
  • O encoder de áudio usa Conformer: estrutura que adiciona um módulo convolucional a um encoder Transformer padrão
  • Assim como no encoder de visão, os embeddings de saída do Conformer também são convertidos para o espaço de embeddings do Gemma 4 por meio de projeção linear

Ainda não há comentários.

Ainda não há comentários.