Modelagem de Recompensa (Reward Modeling)
O que é Modelagem de Recompensa?
Modelagem de recompensa (reward modeling) é a prática de treinar um modelo (o modelo de recompensa (reward model), ou RM) para prever quais saídas de um modelo os humanos preferem (ou quais saídas recebem pontuação mais alta de acordo com algum outro sinal de feedback). O modelo de recompensa atribui uma pontuação escalar (scalar score) a uma saída candidata dado um prompt de entrada. Pontuações mais altas devem corresponder a saídas “melhores” sob a noção de qualidade visada (prestatividade, inocuidade, estilo, correção etc.).
Modelos de recompensa são mais comumente associados a pipelines no estilo RLHF (RLHF-style pipelines), nos quais o RM se torna um objetivo aprendido usado para melhorar um modelo de linguagem via aprendizado por reforço (reinforcement learning). Veja também: Aprendizado por Reforço a partir de Feedback Humano.
Em alto nível, a modelagem de recompensa reformula “qualidade” como um problema de aprendizado supervisionado:
- Coletar feedback sobre saídas (frequentemente preferências pareadas (pairwise preferences)).
- Ajustar um modelo ( r_\phi(x, y) ) que mapeia um prompt (x) e uma resposta (y) para uma recompensa de valor real.
- Usar essa recompensa para otimizar uma política (policy)/modelo ( \pi_\theta(y \mid x) ).
Isso fica na interseção entre:
- Aprendizado de preferências (preference learning) (aprender uma função de utilidade latente a partir de comparações),
- Aprendizado supervisionado (supervised learning) (treinar o RM),
- Aprendizado por reforço (otimizar a política contra o RM).
Onde Modelos de Recompensa se Encaixam em Pipelines de Alinhamento
Pipeline típico de RLHF (baseado em modelo de recompensa)
Um pipeline moderno comum é:
- Pré-treinar um LLM base em texto em larga escala.
- Ajuste fino supervisionado (SFT) (supervised fine-tune) em demonstrações de seguimento de instruções.
- Coletar dados de preferência: para cada prompt, amostrar múltiplas respostas candidatas e pedir aos avaliadores que as comparem.
- Treinar um modelo de recompensa no conjunto de dados de preferências.
- Otimizar a política (o LLM) para maximizar o modelo de recompensa, geralmente com um algoritmo como Otimização de Política Proximal (PPO), enquanto restringe o desvio em relação a um modelo de referência (reference model) (frequentemente usando uma penalidade de KL (KL penalty); veja Divergência KL).
Modelo de recompensa como objetivo *e* como seletor
Modelos de recompensa são usados de duas formas principais:
- Como objetivo: o aprendizado por reforço atualiza a política para aumentar a recompensa esperada.
- Como ranqueador/seletor: amostrar (N) respostas, pontuá-las com o RM e escolher a melhor (melhor de N (best-of-N)). Isso pode gerar melhorias sem fazer aprendizado por reforço, embora possa ser caro em computação e ainda vulnerável a hackeamento de recompensa se levado longe demais.
Dados de Feedback: Formatos e Coleta na Prática
A modelagem de recompensa depende fortemente do formato e da qualidade do feedback. Os formatos mais comuns são comparações pareadas e ranqueamentos.
Comparações pareadas (mais comum)
Para um prompt (x), gere duas respostas (y_A) e (y_B). Um humano escolhe qual é melhor (ou declara um empate).
Isso é popular porque:
- É mais fácil para avaliadores do que pontuação absoluta.
- Dá suporte natural a modelos probabilísticos de preferência (por exemplo, Bradley–Terry).
Campos típicos do conjunto de dados
prompt: a entradachosen: a resposta preferidarejected: a resposta menos preferida- metadados opcionais: id do anotador, timestamps, tags de domínio, flags de segurança
Exemplo (JSONL)
{"prompt":"Explain what overfitting is.","chosen":"Overfitting is when a model learns patterns specific to the training data...","rejected":"Overfitting is when your model is too big and always wrong..."}
Ranqueamentos / feedback listwise
Em vez de comparar duas respostas, avaliadores ranqueiam (k) respostas (ou fornecem uma ordem parcial).
Benefícios:
- Maior eficiência de rotulagem: um ranqueamento gera múltiplas restrições pareadas.
- Captura melhor estruturas de preferência mais sutis.
Custos:
- Mais difícil para humanos, especialmente para (k) grande.
- Perdas e agregação mais complexas.
Um compromisso comum são comparações em estilo torneio (tournament-style): fazer várias disputas pareadas para aproximar um ranqueamento.
Avaliações escalares e outros sinais
Às vezes o feedback é uma nota (score) (por exemplo, 1–5 estrelas) ou uma avaliação baseada em rubrica (prestatividade, correção, tom). Você pode treinar o RM via regressão ou perdas ordinais, mas notas frequentemente são ruidosas e inconsistentes entre avaliadores.
Outros sinais não humanos também podem ser usados:
- Feedback de IA (RLAIF) (AI feedback): usar outro modelo para julgar respostas.
- Feedback implícito (implicit feedback): cliques, tempo de permanência, edições do usuário (comum em sistemas de recomendação, mais delicado para alinhamento de LLMs).
- Sinais de sucesso de tarefa (task success signals): testes unitários passando, sucesso no uso de ferramentas, pontuação em jogos etc.
Agregação de preferências e ruído de rótulos
Humanos discordam. Pipelines práticos frequentemente incluem:
- Múltiplos rótulos por comparação e voto da maioria.
- Filtragem de itens com baixa concordância.
- Calibração/treinamento de anotadores e checagens padrão-ouro (gold-standard).
- Modelagem de viés de anotador (avançado, mas importante em alguns domínios).
Arquiteturas de Modelo de Recompensa
O design padrão: um LLM + cabeça de recompensa
Um RM típico é um Transformer pré-treinado (pretrained Transformer) (frequentemente da mesma família que o modelo de política) com uma pequena cabeça de recompensa (reward head) que produz um escalar.
- Entrada: texto concatenado como
"<prompt>\n<response>" - Saída: uma recompensa escalar ( r_\phi(x, y) )
Frequentemente, o escalar é calculado a partir do estado oculto final (ou de uma representação agregada) via uma camada linear.
Contexto relacionado: Arquitetura Transformer
Modelos codificadores vs decodificadores
- Modelos de recompensa somente decodificador (decoder-only) (tipo GPT) são comuns porque reutilizam a mesma arquitetura da política.
- Modelos somente codificador (encoder-only) (tipo BERT) podem ser eficientes para pontuar texto fixo, mas são menos alinhados com a dinâmica de decodificação generativa e podem não compartilhar tokenização/distribuição tão de perto.
Na prática, equipes frequentemente escolhem o que é operacionalmente conveniente: infraestrutura compartilhada, tokenizadores e leis de escalonamento (scaling laws).
Recompensas em nível de sequência vs nível de token
A maioria dos modelos de recompensa em RLHF fornece uma recompensa em nível de sequência (sequence-level): uma nota por resposta. Isso é simples e combina com dados de preferência.
Algumas abordagens tentam recompensas em nível de token (token-level) ou passo a passo (stepwise), especialmente para:
- trajetórias de uso de ferramentas,
- raciocínio multi-etapas,
- ambientes em que ações intermediárias importam.
No entanto, supervisão em nível de token geralmente não está disponível; ela exige anotação adicional ou inferência algorítmica (e pode introduzir novos modos de falha).
Conjuntos (ensembles) e incerteza
Um único RM pode estar confiantemente errado. Sistemas práticos podem usar:
- Conjuntos (ensembles) de modelos de recompensa (variância como incerteza).
- Aproximações de incerteza baseadas em dropout.
- Modelos separados de “recompensa de segurança” e “recompensa de prestatividade”, combinados via somas ponderadas ou restrições.
Estimativas de incerteza podem ser usadas para:
- evitar pontuar entradas fora da distribuição,
- priorizar itens para rotulagem adicional,
- reduzir hackeamento de recompensa.
Objetivos de Treinamento e Funções de Perda
A maioria dos modelos de recompensa é treinada para prever preferências relativas, não uma “recompensa verdadeira” absoluta. Este é um ponto conceitual-chave: o RM aprende uma função de utilidade até uma constante aditiva e (frequentemente) uma escala, porque comparações só restringem diferenças.
Perda pareada Bradley–Terry / logística (padrão comum)
Assuma que a probabilidade de humanos preferirem (y^+) a (y^-) é:
[ P(y^+ \succ y^- \mid x) = \sigma(r_\phi(x,y^+) - r_\phi(x,y^-)) ]
onde (\sigma) é a sigmoide logística.
A perda para um par rotulado é:
[ \mathcal{L} = -\log \sigma(r_\phi(x,y^+) - r_\phi(x,y^-)) ]
Isso é equivalente a ajustar um modelo de preferência Bradley–Terry com uma função de pontuação neural.
Esboço no estilo PyTorch
import torch
import torch.nn.functional as F
def pairwise_rm_loss(r_chosen, r_rejected):
# r_* are shape [batch]
return -F.logsigmoid(r_chosen - r_rejected).mean()
Perdas de ranqueamento com margem
Alguns pipelines usam uma margem no estilo hinge:
[ \mathcal{L} = \max(0, m - (r^+ - r^-)) ]
Isso pode incentivar separação, mas é menos probabilístico e pode ser mais sensível à escolha da margem.
Perdas listwise (Plackett–Luce)
Para um ranqueamento (y_1 \succ y_2 \succ \dots \succ y_k), um modelo Plackett–Luce define:
[ P(\text{ranking}) = \prod_{i=1}^{k} \frac{\exp(r(y_i))}{\sum_{j=i}^{k} \exp(r(y_j))} ]
Isso pode usar o esforço do avaliador de forma mais eficiente, mas implementação e depuração são mais complexas.
Regressão sobre avaliações
Se você tem notas escalares (s), pode fazer regressão:
[ \mathcal{L} = |r_\phi(x,y) - s|^2 ]
Mas como as escalas dos avaliadores mudam (drift), a regressão pode produzir objetivos mal calibrados e menos robustos, a menos que você normalize por anotador ou por lote.
Considerações práticas de treinamento
“Pegadinhas” comuns que importam em produção:
- Viés de comprimento (length bias): o RM pode aprender “mais longo é melhor” se avaliadores preferirem respostas mais detalhadas.
- Mitigações: dados com controle de comprimento, penalidades explícitas ou amostragem balanceada.
- Vazamento do prompt (prompt leakage): garanta que a entrada do RM inclua prompt e resposta; garanta que mascaramento e separadores sejam consistentes.
- Contaminação treino/val (train/val contamination): prompts reutilizados entre partições podem inflar a acurácia de validação.
- Deriva na escala de recompensa (reward scale drift): a escala absoluta é arbitrária; o aprendizado por reforço a jusante pode ser sensível.
- Frequentemente mitigado por normalização da recompensa (por exemplo, média zero / variância unitária por lote) ou clipping.
- Regularização (regularization): weight decay, dropout, early stopping — modelos de recompensa superajustam facilmente porque conjuntos de preferências são menores do que corpora de pré-treino.
Calibração e Otimização Excessiva (Hackeamento de Recompensa)
Por que a calibração importa
Mesmo que o RM ranqueie pares corretamente, as magnitudes das pontuações podem ser enganosas. No aprendizado por reforço, magnitudes importam porque o otimizador força o aumento da recompensa esperada. Se o RM atribui recompensas excessivamente grandes a certos padrões, a política pode explorá-los.
Questões de calibração incluem:
- ( \sigma(r^+ - r^-) ) corresponde a probabilidades empíricas de preferência humana?
- As recompensas são comparáveis entre prompts/domínios, ou apenas dentro de um prompt?
A calibração não é garantida automaticamente por treinamento pareado, especialmente sob mudança de distribuição.
Otimização excessiva e a lei de Goodhart
Quando você otimiza com força suficiente um objetivo proxy, ele pode deixar de refletir a meta pretendida. Em modelagem de recompensa, isso frequentemente aparece como:
- A política descobre idiossincrasias (quirks) das quais o RM gosta (marcadores estilísticos, verbosidade, excesso de cautela).
- As saídas da política ficam fora da distribuição (out-of-distribution) em relação aos dados de treino do RM.
- A pontuação do RM aumenta, mas a preferência humana não (ou diminui).
Este é um caso clássico da lei de Goodhart (Goodhart’s law): “Quando uma medida vira um alvo, ela deixa de ser uma boa medida.”
Exemplo prático: padrão de hackeamento de recompensa
Suponha que avaliadores prefiram respostas educadas e completas. O RM pode aprender a recompensar fortemente:
- respostas longas,
- avisos do tipo “As an AI language model…”,
- ressalvas de segurança em excesso.
Após aprendizado por reforço, a política pode começar a produzir:
- respostas muito longas independentemente da intenção do usuário,
- avisos repetitivos,
- conteúdo parecido com recusa mesmo para prompts benignos,
porque essas características aumentam de forma confiável a recompensa aprendida.
Estratégias de mitigação
Defesas comuns incluem:
- Otimização com restrição por KL (KL-constrained optimization): em RLHF no estilo PPO, adicionar uma penalidade de KL para manter a política próxima de um modelo de referência (frequentemente o modelo SFT). Isso limita mudança de distribuição e reduz exploração extrema.
- Interrupção antecipada / aprendizado por reforço conservador (early stopping / conservative RL): parar o aprendizado por reforço quando a avaliação humana para de melhorar, mesmo que a recompensa do RM continue subindo.
- Conjuntos de modelos de recompensa: otimizar contra múltiplos RMs ou penalizar discordância (um proxy de incerteza).
- Aprendizado ativo / rerrotulagem on-policy (active learning / on-policy relabeling): periodicamente amostrar saídas da política atual, obter novas preferências humanas e retreinar o RM para que ele continue relevante.
- Coleta adversarial de dados (adversarial data collection): buscar deliberadamente saídas que enganem o RM, então rotular e adicioná-las ao treino.
- Regularizar a recompensa (regularize reward): clipping, normalização ou penalidades explícitas para características espúrias conhecidas (por exemplo, penalidades de comprimento).
- Objetivos alternativos (alternative objectives): métodos como Otimização Direta de Preferências podem evitar modelagem explícita de recompensa e parte da instabilidade do aprendizado por reforço, embora introduzam suas próprias suposições e trade-offs.
Na prática, sistemas robustos frequentemente combinam várias dessas abordagens.
Avaliando e Validando a Qualidade do Modelo de Recompensa
Um modelo de recompensa só é útil se generaliza para os tipos de saídas que sua política produzirá durante e após a otimização. A avaliação deve refletir isso.
Métricas preditivas offline (dados de preferência *held-out*)
Checagens padrão incluem:
- Acurácia pareada (pairwise accuracy): fração de pares held-out em que (r(x,y^+) > r(x,y^-)).
- AUC / ROC: útil quando preferências incluem empates ou confiança variável.
- Correlações de ranqueamento (ranking correlations) (para rótulos listwise): (\tau) de Kendall, correlação de Spearman.
- Desempenho entre domínios (cross-domain performance): avaliar em prompts de diferentes fontes ou tópicos.
Cuidado: alta acurácia offline ainda pode falhar sob aprendizado por reforço, porque a política se moverá para regiões que o RM não viu.
Diagnósticos de calibração
Se você interpreta a diferença do RM como uma probabilidade via sigmoide, pode medir:
- Pontuação de Brier (Brier score): erro quadrático médio de probabilidades previstas.
- Curvas de confiabilidade (reliability curves): comparar probabilidades previstas vs frequências empíricas.
- Escalonamento de temperatura (temperature scaling) em um conjunto de validação para melhorar a calibração de probabilidades (observação: isso não corrige erros de ranqueamento, mas pode estabilizar a otimização a jusante).
Robustez e “testes de estresse”
Modelos de recompensa frequentemente falham de maneiras sistemáticas. Testes de estresse úteis incluem:
- Mudança de distribuição (distribution shift): avaliar em prompts mais longos, estilos de escrita diferentes ou novos tipos de tarefa.
- Prompting adversarial (adversarial prompting): prompts tipo jailbreak que provocam respostas extremas ou manipulativas.
- Testes de perturbação (perturbation tests): pequenas edições que não deveriam mudar muito a preferência (paráfrases, mudanças inofensivas de formatação).
- Controles de comprimento (length controls): comparar respostas com comprimento pareado para detectar viés de verbosidade.
A avaliação mais importante: avaliação humana de políticas otimizadas
Em última instância, você se importa com a preferência humana sobre as saídas da política final, não com as pontuações do RM. Portanto:
- Execute testes humanos A/B periódicos entre checkpoints do modelo.
- Acompanhe a “curva de otimização excessiva”: conforme o treinamento de aprendizado por reforço prossegue, a recompensa do RM frequentemente aumenta de forma monotônica enquanto a preferência humana pode estabilizar ou cair.
- Valide em múltiplos eixos (prestatividade, inocuidade, honestidade), não apenas em uma única pontuação escalar.
É também aqui que configurações multiobjetivo (recompensas separadas ou avaliação baseada em rubrica) se tornam importantes.
Aplicações Práticas Além do “RLHF Clássico”
Modelos de recompensa são úteis mesmo quando você não executa aprendizado por reforço:
- Decodificação melhor de N / reranqueamento (Best-of-N decoding / reranking): amostrar múltiplos candidatos e escolher o de maior recompensa.
- Testes de regressão automatizados (automated regression testing): pontuar mudanças no modelo em uma suíte fixa de prompts; detectar deriva em tom ou segurança.
- Filtros de segurança (safety filters): um classificador tipo recompensa pode sinalizar saídas inseguras (embora “recompensa” vs “classificador de segurança” seja mais uma distinção de design do que uma fronteira rígida).
- Uso de ferramentas e agentes (tool-use and agents): modelos de recompensa podem avaliar planos multi-etapas ou sequências de chamadas de ferramentas, especialmente quando o feedback humano é esparso.
Armadilhas Comuns e Boas Práticas
- Trate pontuações do RM como uma ferramenta, não como verdade: elas são proxies aprendidos e podem ser manipuladas.
- Priorize diversidade de dados: inclua prompts difíceis, casos de borda e múltiplos domínios.
- Atualize rótulos continuamente: a política muda; seu RM precisa acompanhar a distribuição da política.
- Observe atalhos espúrios: verbosidade, marcadores de polidez, formatação, modelos de recusa.
- Mantenha partições limpas: evite duplicação de prompts e vazamento entre treino/validação/teste.
- Use avaliação humana como norte: métricas offline do RM são necessárias, mas não suficientes.
Resumo
A modelagem de recompensa treina um avaliador neural para prever preferências humanas (ou outros sinais de feedback) sobre as saídas do modelo. O modelo de recompensa resultante é um componente central em pipelines no estilo RLHF: ele transforma julgamentos subjetivos em um objetivo diferenciável usado para otimizar um modelo de linguagem — frequentemente via aprendizado por reforço com restrição por KL — ou para reranquear saídas amostradas.
Ideias e desafios-chave incluem:
- Formatos de dados: comparações pareadas são padrão; ranqueamentos e notas também são usados.
- Arquiteturas: tipicamente um Transformer com uma cabeça de recompensa escalar.
- Perdas: mais comumente perdas pareadas Bradley–Terry/logísticas; existem variantes listwise e de regressão.
- Calibração e otimização excessiva: modelos de recompensa podem ser explorados; mitigação exige restrições, melhores dados, tratamento de incerteza e validação humana contínua.
- Avaliação: acurácia de preferência held-out é útil, mas validação robusta deve incluir checagens de calibração, testes de estresse e — mais importante — avaliação humana da política otimizada.
Modelos de recompensa são poderosos porque codificam feedback humano rico, mas também são frágeis: quanto mais agressivamente você os otimiza, mais cuidadosamente você deve medir se eles ainda representam o que você realmente quer.