01-03-02 — Self-Supervised Learning e Por Que Importa para LLMs
TL;DR
Self-supervised learning resolve o gargalo do aprendizado supervisionado: você não precisa de humanos rotulando dados. O modelo cria seus próprios labels a partir dos dados — escondendo parte do input e tentando prever o que foi escondido. É assim que GPT e BERT foram treinados em centenas de bilhões de palavras sem nenhuma anotação humana. A internet inteira vira dado de treino.
O Problema que Self-Supervised Resolve
No aprendizado supervisionado, você precisa de labels — e labels custam caro. Para treinar um modelo de linguagem em todo o texto da internet, você precisaria de humanos lendo e rotulando bilhões de frases. Impossível.
Self-supervised learning é uma jogada elegante: o próprio dado gera o label. Você não rotula nada — você esconde parte do dado e usa o resto como supervisão.
Dois Sabores de Self-Supervised para Texto
1. Masked Language Modeling (MLM) — Como o BERT Aprende
Você pega uma frase, esconde algumas palavras aleatoriamente (15% delas), e pede ao modelo para prever as palavras escondidas usando o contexto ao redor.
Para prever a palavra mascarada, o modelo precisa entender o contexto antes e depois. Treinar em bilhões de exemplos assim força o modelo a aprender gramática, semântica, fatos do mundo — qualquer coisa que ajude a completar lacunas.
BERT foi treinado com MLM em 3,3 bilhões de palavras. Zero anotação humana no pré-treino.
2. Causal Language Modeling (CLM) — Como o GPT Aprende
Diferente do BERT que olha para os dois lados, o GPT usa uma abordagem autoregressiva: dado o que veio antes, prediz o próximo token.
A cada passo, o label é simplesmente "a próxima palavra no texto". Todo texto existente vira dado de treino — blogs, livros, código, Wikipedia, Reddit, papers científicos.
Por que Isso Viabilizou os LLMs
Com self-supervised learning, o gargalo de dados desaparece. A internet tem estimados 4,5 bilhões de páginas web. Livros digitalizados. GitHub. Wikipedia em 300 idiomas. Tudo isso vira dado de treino sem custo de anotação.
GPT-3 foi treinado em ~300 bilhões de tokens — texto suficiente para um humano ler 24 horas por dia durante 2.700 anos. Isso só é possível com self-supervised learning.
Self-Supervised Além do Texto
O paradigma se generaliza para outros tipos de dados:
- Imagens: MAE (Masked Autoencoders, Meta 2021) mascara partes de imagens e treina para reconstruir. CLIP (OpenAI) alinha imagens com descrições textuais
- Áudio: wav2vec 2.0 (Meta) mascara partes do áudio e treina para reconstruir — funciona sem transcrições
- Código: GitHub Copilot foi treinado com self-supervised em ~54 milhões de repositórios públicos — prever o próximo token de código
A Cadeia Completa: Pré-treino → Fine-tuning → RLHF
O self-supervised pré-treino faz o trabalho pesado — aprende tudo sobre linguagem sem custo de anotação. O fine-tuning supervisionado (com poucos dados de alta qualidade) ensina o modelo a responder de forma útil. O RLHF alinha o comportamento com preferências humanas.
Exemplo Prático: Masked Language Model em Python
from transformers import pipeline
# Carrega modelo BERT pré-treinado (treinado com MLM)
# NÃO requer GPU — roda em CPU para esse exemplo
mlm = pipeline("fill-mask", model="neuralmind/bert-base-portuguese-cased")
# O modelo preenche o [MASK] usando contexto
resultado = mlm("O [MASK] aprovou o empréstimo ontem.")
for r in resultado[:3]:
print(f"{r['token_str']:20} → {r['score']:.2%}")
# Saída esperada:
# banco → 73.2%
# tribunal → 8.1%
# juiz → 4.3%
# A ordem das probabilidades reflete o que o modelo aprendeu
# sobre quais palavras são prováveis nesse contexto
Desafio
🎯 Desafio 01-03-02
Acesse huggingface.co/neuralmind/bert-base-portuguese-cased e use o "Inference API" no site (sem instalar nada) para:
- Mascare uma palavra técnica de TI: "O servidor [MASK] a conexão por timeout"
- Mascare uma palavra de negócio: "O cliente solicitou [MASK] do contrato"
- Compare os resultados. O modelo treinado em português geral entende termos técnicos de TI? O que isso implica para fine-tuning no seu domínio?
Como isso se conecta
- 🔗 01-01-03 — GPT-3 treinado em 300B tokens e BERT em 3.3B tokens — ambos usam self-supervised como base
- 🔗 01-04-01 — Tokens são o que está sendo mascarado e predito no self-supervised learning — os dois tópicos são diretamente ligados
- 🔗 01-03-01 — Self-supervised é um paradigma distinto dos três clássicos — mas usa o mesmo loop de forward/backward pass
Fontes
- arXiv 1810.04805 — BERT — Devlin et al., masked language modeling explicado
- Wikipedia — Self-Supervised Learning — Definição, variantes e exemplos
- Hugging Face — BERT Portuguese — Modelo pré-treinado em português com MLM
- arXiv 2111.06377 — Masked Autoencoders (MAE) — He et al., Meta, self-supervised para imagens