Auditoria de Vieses de Preferência e Ajuste Fino de Modelos de Linguagem com Otimização Direta de Preferências usando TRL e LoRA

Pesquisadores divulgaram um tutorial detalhado que apresenta um fluxo completo de aprendizado por preferência baseado no conjunto de dados Anthropic HH-RLHF e na técnica conhecida como Otimização Direta de Preferências, ou DPO (Direct Preference Optimization). O trabalho descreve, passo a passo, como preparar o ambiente computacional, tratar os dados, diagnosticar vieses e ajustar um modelo de linguagem leve para que suas respostas reflitam melhor as preferências humanas.

IA Alinhada ou Enviesada? Como Auditar Preferências e Ajustar Modelos de Linguagem com DPO, TRL e LoRA - Imagem complementar

O ponto de partida do experimento é a montagem de um ambiente estável no Google Colab, com instalação de bibliotecas como TRL, Transformers, Accelerate, Datasets, PEFT e Scikit-learn. Os autores destacam a importância de lidar com conflitos de versões entre essas ferramentas, especialmente em relação à biblioteca torchao, que pode causar erros durante o carregamento de modelos com PEFT. Após a configuração inicial, são definidos hiperparâmetros como tamanho máximo de sequência, taxa de aprendizado, parâmetro beta (responsável por controlar o quanto o modelo pode se afastar de seu comportamento original) e o uso opcional de LoRA (Low-Rank Adaptation), técnica que permite ajustar apenas uma pequena parte dos parâmetros do modelo, reduzindo o custo computacional.

PUBLICIDADE

O conjunto de dados utilizado é o Anthropic HH-RLHF, dividido em quatro subconjuntos: helpful-base, helpful-rejection-sampled, helpful-online e harmless-base. Cada exemplo contém pares de respostas escolhidas e rejeitadas para uma mesma conversa. O tutorial mostra como transformar essas transcrições brutas em um formato estruturado de mensagens entre usuário e assistente, garantindo que ambas as respostas compartilhem o mesmo histórico de conversa. Essa padronização é considerada essencial para que o modelo aprenda a distinguir preferências reais e não diferenças de contexto.

Uma etapa central do tutorial é a auditoria dos pares de preferência. Os autores analisam métricas como número médio de palavras nas respostas escolhidas e rejeitadas, número de turnos de conversa e diferença de comprimento entre as alternativas. Os resultados revelam assimetrias de comprimento em alguns subconjuntos, indicando que respostas escolhidas tendem a ser, em média, mais longas do que as rejeitadas. Esse fenômeno é conhecido como viés de comprimento, e o tutorial alerta que o modelo pode acabar aprendendo a preferir respostas longas simplesmente por parecerem mais elaboradas, e não por serem realmente melhores.

Para investigar a existência de atalhos linguísticos, o tutorial emprega um classificador de regressão logística treinado com características extraídas por TF-IDF (método que converte texto em vetores numéricos com base na frequência de palavras). O objetivo é verificar se padrões superficiais de palavras são suficientes para distinguir respostas escolhidas de rejeitadas. Quando combinado com um teste de permutação de rótulos, o experimento permite identificar se há um sinal lexical forte nos dados ou se o desempenho do classificador está dentro do esperado pelo acaso.

O próximo passo envolve a preparação dos dados para o treinamento com DPO. O tokenizador do modelo Qwen2.5-0.5B-Instruct é carregado e recebe um template de conversa no formato ChatML. Os autores calculam o número de tokens de cada exemplo e filtram aqueles que excedem limites de comprimento do prompt ou do par completo. Em seguida, os argumentos de configuração do DPO são construídos de forma adaptativa, verificando automaticamente quais parâmetros são aceitos pela versão instalada da biblioteca TRL. Isso torna o pipeline robusto a mudanças entre versões.

O treinamento propriamente dito é curto, com apenas 30 passos, funcionando como um teste de fumaça para validar o pipeline. O modelo pode ser ajustado de forma completa ou com LoRA, configuração esta que utiliza o próprio modelo base congelado como referência para o cálculo das probabilidades envolvidas no DPO. Durante o treino, métricas como perda, margem de recompensa e acurácia de recompensa são registradas e visualizadas em gráficos.

A avaliação final analisa o comportamento do modelo em cada subconjunto do HH-RLHF separadamente, evitando que bons resultados em uma área mascarem quedas em outra. Os autores também medem a correlação entre a preferência do modelo e a diferença de comprimento das respostas, oferecendo um indicador direto sobre se o ajuste fino caiu em atalhos de comprimento. Para completar a análise, são geradas respostas qualitativas a partir de prompts de teste, permitindo observar o comportamento do modelo em situações práticas.

O tutorial conclui que o pipeline desenvolvido vai além do simples ajuste fino em pares de preferência. A auditoria dos dados, o diagnóstico de atalhos, a formatação consistente das conversas e a avaliação por subconjunto formam uma estrutura capaz de distinguir entre aprendizado legítimo de preferências e adoção indevida de vieses. Segundo os autores, esse tipo de análise é fundamental para o avanço de técnicas de alinhamento de modelos de linguagem, especialmente à medida que essas tecnologias passam a ser aplicadas em contextos cada vez mais sensíveis.