---
title: "Encoder (Transformador) (PT)"
source: "https://systems-analysis.info/int/Encoder_(Transformador)_(PT)"
wiki: "systems-analysis.info/int"
article: "Encoder_(Transformador)_(PT)"
language: "pt"
categories:
  - "Category:Core LLM concepts"
  - "Category:Large language models"
  - "Category:LLM core concepts"
  - "Category:Machine learning"
  - "Category:Portuguese"
revision_id: 1938
wiki_created_at: 2026-09-06T22:56:18Z
wiki_modified_at: 2026-09-06T22:56:18Z
downloaded_at: 2026-09-07T22:48:35Z
---

# Encoder (Transformador) (PT)

**Encoder** (do inglês, *Encoder*, codificador) — em aprendizado de máquina e aprendizado profundo, é um componente de uma rede neural cuja principal tarefa é transformar uma sequência de dados de entrada (por exemplo, texto ou imagem) em uma representação numérica rica, geralmente chamada de **estado oculto** (*hidden state*), **vetor de contexto** (*context vector*) ou **embedding**. Essa representação captura as características-chave e a semântica dos dados de entrada em um formato conveniente para processamento posterior.

Em um sentido mais amplo, na teoria da informação, um encoder é qualquer dispositivo ou algoritmo que converte informações de um formato para outro, frequentemente com o objetivo de compressão ou transmissão.

## Conceito e Finalidade

O principal objetivo de um encoder em redes neurais é extrair características úteis dos dados de entrada e "codificá-las" em um vetor denso de comprimento fixo. Este processo pode ser visto como uma forma de redução de dimensionalidade não linear, onde dados de entrada de alta dimensão e esparsos (por exemplo, texto representado por vetores one-hot) são transformados em um espaço vetorial de baixa dimensão, mas rico em informações (espaço latente).

Este vetor codificado pode então ser usado por:

- Um **Decoder** para gerar uma nova sequência (por exemplo, em tradução automática).
- Um **Classificador** para resolver tarefas de análise (por exemplo, análise de sentimento de texto).
- Para tarefas que exigem a compreensão de todo o contexto de entrada.

## O Encoder em Diferentes Arquiteturas

### Encoder em Autoencoders

Um dos exemplos clássicos é a arquitetura de **autoencoder**. Ele consiste em duas partes:

1.  **Encoder:** Comprime os dados de entrada em uma representação oculta de menor dimensionalidade (código latente).
2.  **Decoder:** Tenta reconstruir os dados originais a partir dessa representação comprimida.

Ao treinar tal rede para minimizar o erro de reconstrução, o encoder aprende a extrair as características mais importantes dos dados.

### Encoder em Redes Neurais Recorrentes (RNN/LSTM)

Antes do surgimento da arquitetura Transformer, os encoders em tarefas de processamento de sequências (seq2seq) eram construídos com base em redes neurais recorrentes (RNN) ou sua variante aprimorada, LSTM.

- **Princípio de funcionamento:** Um encoder RNN processa a sequência de entrada token por token. A cada passo, ele atualiza seu **estado oculto**, incorporando informações sobre o token atual e o estado anterior. O estado oculto final, obtido após o processamento de toda a sequência, é considerado o vetor que codifica o significado de toda a sequência de entrada. Este vetor é frequentemente chamado de **vetor de contexto** ou "vetor de pensamento" (*thought vector*).

### Encoder na Arquitetura Transformer

A revolução no processamento de linguagem natural está associada ao surgimento do encoder baseado na arquitetura **Transformer**. Diferente das RNNs, ele processa todos os tokens da sequência em paralelo.

O encoder do Transformer consiste em uma pilha ($N$) de camadas idênticas. Cada camada possui duas subcamadas principais:

1.  **Autoatenção Multi-Cabeça (Multi-Head Self-Attention):** Este mecanismo permite que cada token na sequência de entrada "preste atenção" a todos os outros tokens e pondere sua importância para formar sua própria representação contextual. Isso permite que o modelo capture dependências complexas entre palavras, independentemente de sua posição.
2.  **Rede Neural Feed-Forward:** É aplicada à representação de cada token individualmente para uma transformação não linear adicional.

A principal diferença do encoder do Transformer em relação a um encoder RNN é que sua saída não é um único vetor de contexto, mas sim uma **sequência de vetores contextualizados** — um para cada token de entrada. Cada um desses vetores contém informações sobre seu próprio token no contexto de toda a sequência.

## Tipos de Modelos Baseados em Encoder

### Modelos Encoder-Decoder

Esta é a arquitetura clássica para tarefas de sequência para sequência (seq2seq), como tradução automática ou sumarização.

- **Princípio de funcionamento:** O encoder processa toda a sequência de entrada (por exemplo, uma frase no idioma de origem). Suas representações de saída são então passadas para o decoder, que as utiliza para gerar autorregressivamente a sequência de saída (uma frase no idioma de destino). O decoder "olha" para a saída do encoder usando um mecanismo especial de **atenção cruzada (cross-attention)**.
- **Exemplos:** O Transformer original, T5, BART.

### Modelos Somente-Encoder (Encoder-Only)

Esses modelos utilizam exclusivamente a pilha de encoders do Transformer.

- **Princípio de funcionamento:** Eles são projetados para tarefas que exigem uma compreensão profunda do contexto de todo o texto de entrada. Graças à natureza bidirecional do mecanismo de autoatenção, eles criam representações contextuais ricas para cada token.
- **Aplicação:** Ideais para tarefas de análise e compreensão de linguagem (NLU), como:
  - Classificação de texto (por exemplo, análise de sentimento).
  - Reconhecimento de Entidade Nomeada (NER).
  - Resposta a Perguntas (Question Answering), onde a resposta é um trecho do texto.
- **Exemplo:** BERT e seus derivados (RoBERTa, ALBERT).

## Relação com o Decoder

Na arquitetura encoder-decoder, o encoder e o decoder desempenham papéis complementares:

- O **Encoder** é responsável pela **compreensão** da sequência de entrada.
- O **Decoder** é responsável pela **geração** da sequência de saída.

O elo de ligação fundamental entre eles é o mecanismo de **atenção cruzada (cross-attention)** dentro do decoder. A cada passo da geração, o decoder forma uma consulta (Query) com base na parte já gerada da sequência de saída e a utiliza para "prestar atenção" às representações de saída do encoder (que servem como chaves e valores — Key e Value). Isso permite que o decoder se concentre nas partes mais relevantes da sequência de entrada para gerar o próximo token.

## Ver também

- BERT

## Literatura

- Hinton, G. E.; Salakhutdinov, R. R. (2006). *Reducing the Dimensionality of Data with Neural Networks*. *Science*. <a href="https://www.science.org/doi/10.1126/science.1127647" class="external text" rel="nofollow">DOI:10.1126/science.1127647</a>.
- Cho, K. et al. (2014). *Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation*. <a href="https://arxiv.org/abs/1406.1078" class="external text" rel="nofollow">arXiv:1406.1078</a>.
- Sutskever, I.; Vinyals, O.; Le, Q. V. (2014). *Sequence to Sequence Learning with Neural Networks*. <a href="https://arxiv.org/abs/1409.3215" class="external text" rel="nofollow">arXiv:1409.3215</a>.
- Bahdanau, D.; Cho, K.; Bengio, Y. (2015). *Neural Machine Translation by Jointly Learning to Align and Translate*. <a href="https://arxiv.org/abs/1409.0473" class="external text" rel="nofollow">arXiv:1409.0473</a>.
- Kingma, D. P.; Welling, M. (2014). *Auto-Encoding Variational Bayes*. <a href="https://arxiv.org/abs/1312.6114" class="external text" rel="nofollow">arXiv:1312.6114</a>.
- Vaswani, A. et al. (2017). *Attention Is All You Need*. <a href="https://arxiv.org/abs/1706.03762" class="external text" rel="nofollow">arXiv:1706.03762</a>.
- Devlin, J. et al. (2019). *BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding*. <a href="https://arxiv.org/abs/1810.04805" class="external text" rel="nofollow">arXiv:1810.04805</a>.
- Dai, Z. et al. (2019). *Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context*. <a href="https://arxiv.org/abs/1901.02860" class="external text" rel="nofollow">arXiv:1901.02860</a>.
- Raffel, C. et al. (2020). *Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer*. <a href="https://arxiv.org/abs/1910.10683" class="external text" rel="nofollow">arXiv:1910.10683</a>.
- Brown, T. B. et al. (2020). *Language Models Are Few-Shot Learners*. <a href="https://arxiv.org/abs/2005.14165" class="external text" rel="nofollow">arXiv:2005.14165</a>.
- Dosovitskiy, A. et al. (2020). *An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale*. <a href="https://arxiv.org/abs/2010.11929" class="external text" rel="nofollow">arXiv:2010.11929</a>.
