Transforme 'A vence B' direto em um modelo melhor — sem modelo de recompensa, sem RL.

SRC·37 Source
Ensine a ele o que preferimos — sem juiz, sem tentativa e erro.

Ensine a ele o que preferimos — sem juiz, sem tentativa e erro.

Para inclinar um modelo rumo ao que as pessoas querem, a receita de sempre é uma máquina de Rube Goldberg. A Direct Preference Optimization joga a máquina fora. Dê a ele pares —esta resposta vence aquela— e uma única função de perda limpa transforma a preferência direto em um modelo melhor. Sem juiz separado para treinar. Sem aprendizado por reforço para vigiar. Direto da fonte.
O jeito de sempre faz um longo desvio — e dá para enganá-lo.

O jeito de sempre faz um longo desvio — e dá para enganá-lo.

maxπθ ExD,yπθ[r(x,y)]βDKL(πθ(yx)πref(yx))\max_{\pi_\theta}\ \mathbb{E}_{x\sim\mathcal{D},\,y\sim\pi_\theta}\big[r(x,y)\big]-\beta\,D_{\mathrm{KL}}\big(\pi_\theta(y\mid x)\,\|\,\pi_{\mathrm{ref}}(y\mid x)\big)
O RLHF pega o caminho panorâmico: treinar um juiz separado para pontuar respostas e depois perseguir essa nota com aprendizado por reforço — tudo sem se afastar muito do modelo de partida. Em palavras simples: ganhe o máximo de recompensa que puder sem se distanciar de casa. Duas etapas frágeis — e, se forçar demais, ele aprende a bajular o juiz, não a melhorar de verdade. Como uma estrada em ziguezague: a longa subida, com espaço de sobra para se desviar.
Essa meta tão longa tem uma única resposta ótima — já escrita.

Essa meta tão longa tem uma única resposta ótima — já escrita.

π(yx)=1Z(x)πref(yx)exp ⁣(1βr(x,y)),Z(x)=yπref(yx)exp ⁣(1βr(x,y))\pi^{*}(y\mid x)=\frac{1}{Z(x)}\,\pi_{\mathrm{ref}}(y\mid x)\,\exp\!\Big(\tfrac{1}{\beta}\,r(x,y)\Big),\quad Z(x)=\sum_{y}\pi_{\mathrm{ref}}(y\mid x)\,\exp\!\Big(\tfrac{1}{\beta}\,r(x,y)\Big)
Eis o segredo dobrado dentro dessa meta: a melhor política não é caçada por tentativa e erro — ela tem forma fechada. Pegue o modelo de partida e o repondere com suavidade, realçando as respostas que a recompensa favorece. Em palavras simples: o vencedor é apenas o modelo base, inclinado rumo à recompensa. Como uma latada numa videira: a planta ainda cresce sozinha — a estrutura só a inclina rumo à luz.
Leia ao contrário — a recompensa esteve dentro do modelo o tempo todo.

Leia ao contrário — a recompensa esteve dentro do modelo o tempo todo.

r(x,y)=βlogπ(yx)πref(yx)+βlogZ(x)r(x,y)=\beta\,\log\frac{\pi^{*}(y\mid x)}{\pi_{\mathrm{ref}}(y\mid x)}+\beta\,\log Z(x)
Agora vire essa equação do avesso e isole a recompensa. Ela salta — escrita inteiramente em termos da própria política. Aquilo para o qual íamos treinar uma rede separada inteira já estava ali, dobrado dentro do modelo. Em palavras simples: seu modelo é, em segredo, o próprio juiz da recompensa. Como uma marca-d'água no papel: invisível sobre a mesa — incline em direção à luz e a marca oculta aparece.
Coloque-a na preferência — e o termo impossível se cancela.

Coloque-a na preferência — e o termo impossível se cancela.

LDPO=E(x,yw,yl)D[logσ ⁣(βlogπθ(ywx)πref(ywx)βlogπθ(ylx)πref(ylx))]\mathcal{L}_{\mathrm{DPO}}=-\,\mathbb{E}_{(x,y_w,y_l)\sim\mathcal{D}}\Big[\log\sigma\!\Big(\beta\log\frac{\pi_\theta(y_w\mid x)}{\pi_{\mathrm{ref}}(y_w\mid x)}-\beta\log\frac{\pi_\theta(y_l\mid x)}{\pi_{\mathrm{ref}}(y_l\mid x)}\Big)\Big]
Essa recompensa ainda esconde um monstro: Z, a soma sobre cada resposta que o modelo poderia dar — impossível de calcular. Mas uma preferência só compara duas respostas à mesma pergunta. Subtraia uma recompensa da outra e Z — idêntico dos dois lados — simplesmente some. Sobra uma única função de perda, só com a política. Em palavras simples: comparar elimina a parte impossível. Como uma balança: pesos iguais nos dois pratos se cancelam; só a pedrinha a mais a inclina.
Um puxão: sobe o vencedor, desce o perdedor, mais forte onde erra.

Um puxão: sobe o vencedor, desce o perdedor, mais forte onde erra.

r^θ(x,y)=βlogπθ(yx)πref(yx),θLDPO=βE[σ(r^θ(x,yl)r^θ(x,yw))(θlogπθ(ywx)θlogπθ(ylx))]\hat r_\theta(x,y)=\beta\log\frac{\pi_\theta(y\mid x)}{\pi_{\mathrm{ref}}(y\mid x)},\quad \nabla_\theta\mathcal{L}_{\mathrm{DPO}}=-\beta\,\mathbb{E}\Big[\sigma\big(\hat r_\theta(x,y_l)-\hat r_\theta(x,y_w)\big)\big(\nabla_\theta\log\pi_\theta(y_w\mid x)-\nabla_\theta\log\pi_\theta(y_l\mid x)\big)\Big]
Reduza a perda ao seu puxão e é um cabo de guerra sobre a probabilidade: elevar a resposta que as pessoas preferiram, baixar a que rejeitaram. E o puxão não é uniforme — o termo da frente incha justo quando o modelo tem o par ao contrário, avaliando o perdedor acima do vencedor. Em palavras simples: ele se corrige com mais força onde erra com mais convicção. Como um cabo de guerra: você puxa com tudo no instante em que a corda começa a escorregar para o lado errado.
Uma pilha de 'esta vence aquela' — em um modelo melhor, num passo.

Uma pilha de 'esta vence aquela' — em um modelo melhor, num passo.

Assim, a máquina inteira se reduz a uma única linha. Sem juiz para treinar. Sem rollouts de reforço para estabilizar. Apenas uma pilha fixa de esta vence aquela e um passo de gradiente — e ainda assim chega à exata mesma meta que o RLHF buscava, alcançada diretamente em vez de contornada. Como um túnel pela montanha: o mesmo vale espera do outro lado — você apenas pulou a subida.
🌱 Ele aprendeu o que escolhemos — nunca por que escolhemos.

🌱 Ele aprendeu o que escolhemos — nunca por que escolhemos.

A DPO aprende nossas preferências à perfeição — qual resposta buscamos, toda vez. Mas uma preferência é só a sombra que uma razão projeta. Demos a ela a escolha e guardamos a razão para nós. Então, quando ela nos agrada, será que entende por que a melhor resposta é melhor — ou só aprendeu o formato do nosso querer?
toque →deslize ↑ para maisdeslize ↓ para sair