Arquiteturas
O que “arquitetura” significa no aprendizado profundo (deep learning)
Uma arquitetura neural (neural architecture) é o desenho estrutural de um modelo: como as camadas são organizadas, como a informação flui, quais computações são repetidas e quais pressupostos (vieses indutivos (inductive biases)) são embutidos. Enquanto algoritmos de treinamento como Retropropagação e Descida do Gradiente determinam como os parâmetros são aprendidos, a arquitetura determina fortemente:
- Que tipos de funções o modelo consegue representar com eficiência (expressividade)
- Quais padrões ele aprende primeiro ou com mais facilidade (viés indutivo)
- Como o custo computacional e a memória escalam com o tamanho da entrada (eficiência)
- Quão bem ele generaliza com dados limitados ou sob mudança de distribuição
Arquiteturas frequentemente correspondem a modalidades de dados:
- Tabular / vetores de tamanho fixo → perceptrons multicamadas (Multi-Layer Perceptrons, MLPs)
- Imagens / grades espaciais → redes neurais convolucionais (Convolutional Neural Networks, CNNs)
- Sequências (texto, áudio, séries temporais) → redes neurais recorrentes (Recurrent Neural Networks, RNNs), Transformers (Transformer), modelos de espaço de estados (state space models, SSMs)
- Grafos / dados relacionais → redes neurais em grafos (Graph Neural Networks, GNNs)
- Aprendizado de representações e compressão → autocodificadores (autoencoders)
- Escalar a capacidade do modelo com eficiência → mistura de especialistas (mixture-of-experts, MoE)
Este artigo apresenta as principais famílias de arquiteturas e explica onde elas se encaixam, por que funcionam e aplicações comuns. Para detalhes sobre cada família, veja as páginas dedicadas: Perceptrons Multicamadas, Redes Neurais Convolucionais, RNNs/LSTMs, Transformers, Modelos de Espaço de Estados, Redes Neurais em Grafos, Autocodificadores e Mistura de Especialistas (MoE).
Ideia central: viés indutivo e estrutura computacional
Uma arquitetura geralmente é definida por uma ou mais destas escolhas estruturais:
Padrão de conectividade
- Camadas totalmente conectadas (densas)
- Campos receptivos locais (convolução)
- Conexões recorrentes (estado)
- Interações globais par a par (atenção (attention))
- Passagem de mensagens baseada em arestas (message passing) (grafos)
Equivariâncias / invariâncias
- CNNs codificam equivariância a translações (translation equivariance): deslocar uma imagem desloca os mapas de características de forma correspondente.
- Muitos modelos de grafos codificam invariância/equivariância a permutações (permutation invariance/equivariance) em relação à ordenação dos nós.
Compartilhamento de parâmetros
- A convolução compartilha kernels entre posições espaciais.
- Modelos recorrentes compartilham pesos de transição entre passos de tempo.
Comportamento de escalabilidade
- A atenção em Transformers frequentemente escala como O(n²) com o comprimento da sequência
n. - Convoluções e muitos SSMs podem escalar mais próximo de O(n) (ou
O(n log n)dependendo da implementação).
- A atenção em Transformers frequentemente escala como O(n²) com o comprimento da sequência
Essas propriedades determinam quais arquiteturas performam bem sob restrições como poucos dados, contextos muito longos ou requisitos rígidos de latência.
Uma forma prática de escolher uma arquitetura
Um modelo mental útil é combinar (a) estrutura dos dados, (b) tipo de dependência e (c) restrições de implantação.
Mapeamento rápido (regra geral)
- Use um perceptron multicamadas (MLP) quando as entradas forem vetores de tamanho fixo e engenharia de atributos for aceitável.
- Use uma rede neural convolucional (CNN) quando localidade e estrutura de translação importarem (visão, espectrogramas).
- Use um Transformer quando você precisar de interações flexíveis baseadas em conteúdo ao longo de uma sequência e puder arcar com o custo computacional (modelos de linguagem grandes (large language models, LLMs), multimodal).
- Use uma RNN/LSTM para processamento de sequências em fluxo/online com baixo uso de memória (menos comum no estado da arte (state of the art, SOTA), mas ainda prático).
- Use um modelo de espaço de estados (SSM) para sequências longas com restrições de eficiência (séries temporais, áudio/texto longos em algumas configurações).
- Use uma rede neural em grafos (GNN) quando relações/arestas forem elementos de primeira classe (moléculas, redes sociais, grafos de conhecimento).
- Use um autocodificador para compressão, remoção de ruído, detecção de anomalias e aprendizado de representações.
- Use MoE quando você precisar escalar a contagem de parâmetros sem custo computacional proporcional por token (token).
Principais famílias de arquiteturas
1) MLPs (Perceptrons Multicamadas): o baseline universal
O que são: pilhas de camadas totalmente conectadas com não linearidades.
Por que importam: MLPs são a arquitetura profunda mais simples e uma base para muitas outras. Resultados teóricos (por exemplo, aproximação universal (universal approximation)) mostram que MLPs suficientemente largas podem aproximar muitas funções, mas eficiência e generalização dependem fortemente do viés indutivo e dos dados.
Onde se encaixam melhor
- Dados tabulares com atributos bem construídos por engenharia
- Problemas pequenos a médios onde interpretabilidade e simplicidade importam
- Componentes dentro de modelos maiores (por exemplo, blocos de avanço direto (feed-forward) em Transformers)
Aplicações comuns
- Modelagem de risco de crédito (frequentemente junto com modelos baseados em árvores)
- Representações vetoriais (embeddings) simples + cabeças de MLP para classificação/regressão
- Redes de política/valor em aprendizado por reforço (em cenários menores)
Exemplo prático (esqueleto estilo PyTorch)
import torch
import torch.nn as nn
class MLP(nn.Module):
def __init__(self, d_in, d_hidden, d_out):
super().__init__()
self.net = nn.Sequential(
nn.Linear(d_in, d_hidden),
nn.ReLU(),
nn.Linear(d_hidden, d_hidden),
nn.ReLU(),
nn.Linear(d_hidden, d_out),
)
def forward(self, x):
return self.net(x)
Limitação principal: MLPs ignoram estrutura espacial/temporal a menos que você a codifique manualmente. Por isso, CNNs, modelos de sequência e GNNs frequentemente superam MLPs em dados estruturados.
Veja: Perceptrons Multicamadas, Redes Neurais
2) CNNs: localidade e estrutura de translação para grades
O que são: camadas convolucionais aplicam o mesmo filtro aprendido em todas as posições, capturando padrões locais com eficiência.
Viés indutivo central
- Pixels próximos são mais relacionados do que pixels distantes (localidade)
- Atributos podem aparecer em qualquer lugar de uma imagem (equivariância a translações)
- Composição hierárquica: bordas → texturas → partes → objetos
Onde se encaixam melhor
- Classificação, detecção e segmentação de imagens
- Qualquer sinal em forma de grade: espectrogramas, fatias de imagens médicas, alguns dados geoespaciais
- Como “front-ends” (front-ends) para outros modelos (CNN + Transformer, CNN + RNN)
Aplicações comuns
- Inspeção visual de qualidade na manufatura
- Triagem de imagens médicas (por exemplo, detecção de anomalias)
- Visão em dispositivos móveis (CNNs podem ser muito eficientes no dispositivo)
Exemplo prático: uma CNN para classificação de imagens pequenas (por exemplo, estilo CIFAR) usa convolução + pooling + uma pequena cabeça de MLP. CNNs também são centrais em muitos sistemas multimodais, onde imagens são codificadas em representações vetoriais para um modelo de linguagem.
Veja: Redes Neurais Convolucionais
3) RNNs e LSTMs: recorrência e estado compacto
O que são: modelos que processam sequências passo a passo, mantendo um estado oculto. LSTMs (memórias de longo curto prazo (Long Short-Term Memory, LSTMs)) (e GRUs) adicionam mecanismos de portas para reduzir gradientes que desaparecem e armazenar informação de mais longo prazo.
Viés indutivo central
- A ordem da sequência importa
- Um estado compacto resume o passado
- Natural para streaming: entra um passo, sai um passo
Onde se encaixam melhor hoje
- Cenários de streaming ou baixa latência onde você não pode manter toda a sequência em memória
- Tarefas menores onde treinamento na escala de Transformers é desnecessário
- Alguns pipelines de previsão de séries temporais
Aplicações comuns
- Detecção online de anomalias em fluxos de sensores
- Pipelines simples de reconhecimento de fala ou escrita à mão (historicamente)
- Modelagem de sequências embarcada
Trade-offs
- Mais difícil de paralelizar durante o treinamento do que modelos baseados em atenção
- Dependências de longo alcance ainda podem ser desafiadoras em comparação com Transformers ou alguns SSMs
Veja: RNNs/LSTMs
4) Transformers: interação global baseada em atenção
O que são: modelos de sequência construídos em torno de autoatenção (self-attention), que permite que cada token (ou patch, ou frame) atenda a qualquer outro token com base na similaridade de conteúdo.
Viés indutivo central
- Relações são descobertas dinamicamente via pesos de atenção
- Menos localidade embutida do que CNNs, mas podem aprendê-la
- Extremamente paralelizáveis entre tokens durante o treinamento
Onde se encaixam melhor
- Processamento de linguagem natural (natural language processing, NLP) (modelos de linguagem grandes)
- Modelagem multimodal (texto + imagem/áudio)
- Compreensão/geração de código
- Muitas transformações de “sequência para sequência (sequence-to-sequence, seq2seq)” (tradução, sumarização)
Propriedades práticas importantes
- O custo da autoatenção frequentemente é quadrático no comprimento da sequência (
O(n²)), o que importa em contextos longos. - Requer informação posicional (positional information) porque a atenção sozinha é invariante a permutações entre tokens. Abordagens incluem incorporações sinusoidais ou aprendidas e esquemas relativos.
Aplicações comuns
- Chatbots e assistentes
- Entendimento de documentos (classificação, extração)
- Transformers de Visão (imagens como sequências de patches)
- Modelagem de sequências de proteínas
Esboço mínimo de atenção
# Conceptual (not optimized) scaled dot-product attention
scores = (Q @ K.transpose(-2, -1)) / (d_k ** 0.5)
weights = scores.softmax(dim=-1)
output = weights @ V
Para se aprofundar, veja: Transformers, Mecânica da Atenção, Codificações Posicionais, Sequência para Sequência
5) Modelos de Espaço de Estados (SSMs): modelagem eficiente de sequências longas
O que são: modelos de sequência que mantêm um estado latente atualizado por um sistema dinâmico aprendido. SSMs modernos de aprendizado profundo adaptam ideias clássicas de espaço de estados com parametrizações neurais e kernels eficientes.
Por que são importantes
- Oferecem forte eficiência em contexto longo em muitos cenários
- Podem ser mais eficientes em computação/memória do que a atenção padrão em comprimentos de sequência grandes
- Naturalmente adequados a sinais com dinâmica temporal (séries temporais, áudio)
Onde se encaixam melhor
- Previsão de séries temporais longas
- Áudio longo ou fluxos de sensores
- Modelagem de linguagem com contexto longo em alguns regimes (dependendo da variante do modelo e das ferramentas)
Trade-offs
- Muitas vezes são menos “plug-and-play” do que Transformers em ecossistemas gerais de PLN
- Modelar interações arbitrárias baseadas em conteúdo pode ser mais difícil do que com atenção (dependendo do desenho do SSM)
Veja: Modelos de Espaço de Estados
6) GNNs: aprendizado em estrutura relacional
O que são: modelos que propagam informação ao longo de arestas usando passagem de mensagens. Nós agregam informação de vizinhos (e às vezes de estruturas de ordem superior).
Viés indutivo central
- A estrutura do grafo (arestas) codifica quais entidades interagem
- Invariância/equivariância a permutações na ordenação de nós
- Agregação de vizinhança local (pode ser empilhada para efeitos de múltiplos saltos)
Onde se encaixam melhor
- Moléculas (átomos/ligação), ciência de materiais
- Redes sociais, grafos de recomendação
- Grafos de conhecimento e raciocínio relacional
- Redes de tráfego, redes elétricas
Aplicações comuns
- Predição de propriedades moleculares (descoberta de fármacos)
- Detecção de fraude em grafos de transações
- Predição de links (predizer arestas ausentes)
Tarefas típicas
- Classificação de nós (rotular nós)
- Predição de arestas/links (predizer arestas)
- Classificação de grafos (rotular grafos inteiros)
Veja: Redes Neurais em Grafos
7) Autocodificadores: aprendizado de representações via compressão
O que são: arquiteturas codificador–decodificador (encoder–decoder) treinadas para reconstruir entradas (ou removê-las de ruído). O gargalo (latente) aprende uma representação compacta.
Viés indutivo central
- Fatores úteis de variação podem ser comprimidos
- Reconstrução/remoção de ruído força o modelo a aprender estrutura nos dados
Onde se encaixam melhor
- Redução de dimensionalidade quando métodos lineares são insuficientes
- Detecção de anomalias (reconstrução ruim indica comportamento fora da distribuição)
- Pré-treinamento e aprendizado de atributos em regimes com poucos rótulos
- Como componentes: por exemplo, autocodificadores variacionais (variational autoencoders, VAEs) e pipelines de difusão latente (relacionados conceitualmente via espaços latentes)
Exemplo prático: detecção de anomalias
- Treine um autocodificador em sinais “normais” de vibração de máquinas.
- Na inferência, alto erro de reconstrução sinaliza anomalias.
Veja: Autocodificadores, Aprendizado de Representações, Aprendizado Auto-Supervisionado
8) Mistura de Especialistas (MoE): escalando capacidade com computação esparsa
O que são: arquiteturas com múltiplas sub-redes “especialistas” e um roteador (router) aprendido que seleciona um pequeno subconjunto de especialistas por entrada (por exemplo, por token). Isso permite grandes contagens de parâmetros sem ativar todos os parâmetros a cada vez.
Por que importam
- Você pode aumentar significativamente a capacidade do modelo mantendo o custo computacional por exemplo aproximadamente limitado (ativação esparsa).
- Amplamente usadas ao escalar modelos de linguagem grandes e sistemas multilíngues.
Onde se encaixam melhor
- Treinamento em escala muito grande onde escalonamento denso é caro demais
- Cenários multidomínio ou multilíngues onde especialização ajuda
- Situações que exigem maior capacidade sem aumentos lineares de custo
Trade-offs
- Complexidade de treinamento (balanceamento de carga (load balancing), estabilidade do roteamento (routing))
- Complexidade de sistemas (execução distribuída, comunicação)
- Às vezes, comportamento menos previsível entre domínios
Veja: Mistura de Especialistas (MoE), Treinamento em Escala
Padrões arquiteturais comuns entre famílias
Codificador–decodificador (um blueprint reutilizável)
O padrão codificador–decodificador aparece em:
- Transformers de sequência para sequência (tradução, sumarização)
- Autocodificadores (compressão)
- Muitos sistemas multimodais (codificador de imagem + decodificador de texto)
O codificador mapeia entrada → representações; o decodificador mapeia representações → saídas (possivelmente de forma autorregressiva).
Veja: Sequência para Sequência
Conexões residuais e normalização
Redes profundas modernas dependem fortemente de:
- Conexões residuais (residual connections) (conexões de atalho (skip connections)) para fluxo estável de gradientes
- Normalização de camada (LayerNorm)/normalização em lote (BatchNorm) para estabilidade de treinamento
Essas são escolhas “no nível da arquitetura” porque afetam otimização e profundidade representacional.
Modelos híbridos
Muitos sistemas no estado da arte combinam arquiteturas:
- CNN + Transformer para visão (extração local de características + raciocínio global)
- Transformer + MoE para modelos de linguagem grandes escaláveis
- GNN + Transformer para raciocínio sobre grafos + texto/código
- Camadas de SSM intercaladas com atenção para eficiência em contexto longo
Na prática, você deve pensar em famílias de arquiteturas como blocos de construção, não como opções mutuamente exclusivas.
Arquitetura vs. paradigma de treinamento
A arquitetura define o grafo de computação; o treinamento define como ela aprende. A mesma arquitetura pode se comportar de forma muito diferente dependendo do objetivo e dos dados:
- Transformers treinados com predição do próximo token (next-token prediction) viram modelos de linguagem grandes.
- Codificadores treinados com perdas contrastivas (contrastive losses) aprendem representações vetoriais para recuperação (retrieval).
- CNNs treinadas com aumento de dados forte e aprendizado auto-supervisionado podem rivalizar com desempenho supervisionado.
Veja: Aprendizado Auto-Supervisionado, Aprendizado Multitarefa, Aprendizado por Currículo
Considerações práticas: escolhendo o que funciona em produção
Disponibilidade de dados e qualidade dos rótulos
- Com poucos rótulos, prefira arquiteturas e objetivos que suportem aprendizado auto-supervisionado ou aprendizado por transferência (transfer learning).
- Autocodificadores e objetivos contrastivos podem aprender representações sem rótulos.
Latência, memória e vazão (throughput)
- RNNs e alguns SSMs podem ser fortes para streaming e sequências longas.
- Transformers podem ser caros em contextos longos; variantes de atenção cuidadosas ou SSMs podem ser melhores.
Interpretabilidade e depuração
- GNNs podem expor influência de vizinhos; mapas de atenção às vezes ajudam (mas não são explicações garantidas).
- Baselines mais simples (MLPs, modelos lineares) ainda são valiosos para checagens de sanidade.
Destilação e compressão
Arquiteturas grandes frequentemente podem ser destiladas em menores para implantação.
Veja: Destilação de Conhecimento
Exemplos trabalhados de “encaixe”
Exemplo 1: Detecção de defeitos em imagens numa linha de fábrica
- Dados: imagens com pistas locais de textura
- Bom encaixe: Redes Neurais Convolucionais (rápidas, forte viés de localidade)
- Se houver poucos rótulos: backbone de CNN pré-treinado + pequena cabeça classificadora; opcionalmente pré-treinamento auto-supervisionado
Exemplo 2: Chatbot de suporte ao cliente
- Dados: texto com dependências de longo alcance e semântica flexível
- Bom encaixe: Transformers
- Escala: considere Mistura de Especialistas (MoE) para suporte grande e multidomínio
Exemplo 3: Detecção de fraude em pagamentos
- Dados: transações ligadas por contas/dispositivos/comerciantes (um grafo)
- Bom encaixe: Redes Neurais em Grafos para padrões relacionais
- Híbrido: representações vetoriais da GNN + cabeça de MLP; opcionalmente Transformers de texto para notas/descrições
Exemplo 4: Manutenção preditiva a partir de longos fluxos de sensores
- Dados: séries temporais multivariadas longas
- Bom encaixe: Modelos de Espaço de Estados ou RNNs/LSTMs para streaming; Transformers se os comprimentos de contexto forem administráveis e você precisar de interações flexíveis
Resumo: onde cada família se encaixa
- MLPs: baseline mais simples; ótimos para vetores e como submódulos
- CNNs: melhor padrão para imagens e sinais espaciais; eficientes e robustas
- RNNs/LSTMs: modelagem de sequências compacta e amigável a streaming; menos comuns no estado da arte para PLN
- Transformers: modelagem de sequências de propósito geral; dominantes em PLN e multimodal; o custo da atenção importa
- SSMs: modelagem eficiente de sequências longas; fortes para séries temporais/contextos longos sob restrições
- GNNs: viés indutivo relacional para dados estruturados em grafos
- Autocodificadores: compressão e aprendizado de representações; detecção de anomalias e pré-treinamento
- MoE: escalar capacidade com computação esparsa; poderoso, mas mais complexo de treinar e servir
Arquiteturas são melhor vistas como ferramentas com vieses. Combinar esses vieses com a estrutura dos seus dados e suas restrições — e então validar com baselines fortes e avaliação cuidadosa — costuma ser o caminho mais rápido para um modelo que funcione de forma confiável na prática.