Reading the Math in AI Papers · Parte 3 de 3

Ler funções objetivo: destilação, DPO e GRPO

Tradução automática

Este artigo foi traduzido automaticamente a partir da versão original em inglês.

A destilação, a Direct Preference Optimization (DPO) e a Group Relative Policy Optimization (GRPO) alteram as probabilidades de um modelo de linguagem, mas usam exemplos de treino e informação de retorno diferentes. Este guia destina-se a engenheiros que querem compreender essas diferenças antes de ler as funções objetivo completas. Os diagramas mostram de onde vem a informação de retorno e como altera as comparações de probabilidades; as equações apresentam as operações correspondentes.

No fine-tuning supervisionado habitual, o modelo aprende a prever o token seguinte em exemplos guardados. Os métodos abaixo alteram a informação de retorno: um professor fornece probabilidades, um par de preferências indica qual a melhor resposta ou uma recompensa avalia respostas amostradas durante o treino. Uma política é simplesmente o modelo que gera respostas. Todos os logaritmos abaixo são naturais.

A Parte 1 explica como ler uma equação e inclui uma referência de notação. Aqui, cada secção explica os termos de que precisa e pode ser lida de forma independente.

Destilação clássica: uma temperatura nas duas funções softmax

Uma etiqueta de treino identifica o resultado correto: na previsão do token seguinte, é o próximo token num exemplo guardado. Um modelo professor fornece mais informação: as suas probabilidades para cada token candidato, incluindo alternativas plausíveis. A destilação treina um aluno mais pequeno para reproduzir essas probabilidades. O treino reduz uma perda numérica alterando os parâmetros do aluno; os do professor mantêm-se fixos.

O artigo sobre destilação de Hinton e colaboradores, §2, suaviza as probabilidades dos dois modelos antes de as comparar. Divida cada logit — a pontuação bruta antes da função softmax — por uma temperatura TT:

qi=exp⁡(zi/T)∑jexp⁡(zj/T).q_i=\frac{\exp(z_i/T)}{\sum_j\exp(z_j/T)}.

Aqui, ziz_i é a pontuação do candidato ii e qiq_i a sua probabilidade. Suponha que um modelo simplificado tem apenas dois tokens seguintes possíveis, «cat» e «dog», e lhes atribui pontuações (2,0)(2,0) depois de ler «The animal is a». Com T=1T=1, as probabilidades são aproximadamente (0.88,0.12)(0.88,0.12); com T=2T=2, passam a (0.73,0.27)(0.73,0.27). A pontuação menor contribui agora mais para a comparação. O professor e o aluno usam a mesma temperatura.

As barras mostram como as mesmas duas pontuações dão uma distribuição menos concentrada à medida que a temperatura sobe.

Para os tokens seguintes do exemplo, cat e dog, os logits 2 e 0 dão probabilidades 0,88 e 0,12 à temperatura 1 e 0,73 e 0,27 à temperatura 2. Os dois gráficos usam a mesma escala de zero a um. A probabilidade de dog aumenta.Para os tokens seguintes do exemplo, cat e dog, os logits 2 e 0 dão probabilidades 0,88 e 0,12 à temperatura 1 e 0,73 e 0,27 à temperatura 2. Os dois gráficos usam a mesma escala de zero a um. A probabilidade de dog aumenta.

A perda de treino combina a perda habitual face à etiqueta com uma perda de correspondência à distribuição suavizada do professor. Representamos por p(T)p^{(T)} as probabilidades do professor e por q(T)q^{(T)} as do aluno à temperatura TT. Para uma entrada etiquetada:

L=(1−λ)(−log⁡qy(1))+λT2DKL(p(T)∥q(T)).\begin{aligned} \mathcal L&=(1-\lambda)\bigl(-\log q_y^{(1)}\bigr)\\ &\quad+\lambda T^2 D_{\mathrm{KL}}\bigl(p^{(T)}\Vert q^{(T)}\bigr). \end{aligned}

Aqui, L\mathcal L é a perda, yy é o token seguinte correto e λ∈[0,1]\lambda\in[0,1] define a mistura. Os índices superiores entre parênteses indicam temperaturas, não potências. Leia o primeiro termo como «penalizar uma probabilidade baixa para o token correto com T=1T=1». Leia o segundo como «reproduzir as probabilidades suavizadas do professor». O treino calcula a média destas perdas nas entradas guardadas e altera apenas o aluno.

DKL(p∥q)D_{\mathrm{KL}}(p\Vert q) é a divergência KL do professor pp para o aluno qq. Mede a diferença entre duas distribuições de probabilidade: vale zero quando coincidem. A primeira distribuição fornece os pesos da comparação, pelo que os resultados prováveis segundo o professor recebem mais peso. Hinton e colaboradores descrevem um termo de correspondência por entropia cruzada; esta forma KL subtrai uma constante que depende apenas do professor e dá os mesmos gradientes para o aluno.

O fator T2T^2 compensa aproximadamente os gradientes menores a temperaturas mais altas. Esta é uma configuração de treino; o aluno em produção normalmente volta a T=1T=1 nesta função softmax.

Um prefixo é o texto já disponível antes do token seguinte: o prompt e todos os tokens da resposta gerados até então. Por exemplo, «The animal is a» é o prefixo antes de «cat». Na figura, os dois modelos leem o mesmo prefixo e produzem probabilidades para o token seguinte. À esquerda, os prefixos vêm de exemplos guardados. À direita, vêm de respostas que o aluno gera durante o treino. Ambos os percursos usam a perda de comparação para atualizar apenas o aluno.

A destilação clássica envia entradas fixas a um professor congelado e a um aluno treinável, comparando depois as suas probabilidades. A destilação on-policy começa por amostrar texto do aluno; professor e aluno comparam depois as probabilidades do token seguinte nos prefixos desse texto. Só o aluno é atualizado.A destilação clássica envia entradas fixas a um professor congelado e a um aluno treinável, comparando depois as suas probabilidades. A destilação on-policy começa por amostrar texto do aluno; professor e aluno comparam depois as probabilidades do token seguinte nos prefixos desse texto. Só o aluno é atualizado.

Também existe destilação sem correspondência de probabilidades. Os modelos destilados do DeepSeek-R1, §2.4, foram sujeitos a fine-tuning com 800 000 amostras previamente selecionadas com o DeepSeek-R1. Usaram uma perda supervisionada sobre texto guardado; não era necessário executar um professor durante esse treino.

A análise detalhada da destilação explica a perda mista e o escalamento por temperatura.

Destilação on-policy: o aluno vem primeiro na KL

Um aluno que gera a sua própria resposta pode chegar a prefixos — o prompt e a resposta até esse momento — que nunca ocorreram no dataset de treino. A destilação on-policy obtém informação de retorno sobre texto que o aluno realmente produz. Dado um prompt, o aluno amostra uma resposta. Um professor congelado avalia depois os mesmos prefixos, pelo que o treino compara os dois modelos onde o aluno precisa de orientação.

On-policy descreve essa origem do texto de treino. Por si só, não determina uma perda específica. Os exemplos aqui usam a KL inversa, com o aluno primeiro:

DKL(qθ∥p)=Ey∼qθ[log⁡qθ(y∣x)p(y∣x)].D_{\mathrm{KL}}(q_\theta\Vert p) =\mathbb E_{y\sim q_\theta}\left[\log\frac{q_\theta(y\mid x)}{p(y\mid x)}\right].

Para um prompt fixo xx, qθq_\theta é o aluno com parâmetros treináveis θ\theta, pp é o professor e yy uma resposta amostrada do aluno. A expressão compara a probabilidade que o aluno atribuiu à sua resposta com a probabilidade do professor. Na média das respostas do aluno, penaliza-o por atribuir probabilidade alta a texto que o professor considera improvável.

Isto difere de pedir ao aluno que abranja todos os resultados que o professor poderia produzir. Quando um aluno pequeno não consegue reproduzir a distribuição completa do professor, a KL inversa pode favorecer a concentração em alguns dos seus resultados prováveis. O MiniLLM, §2.1, equação (1), usa este objetivo. O seu procedimento de treino também mistura amostras do professor na geração e ajusta o gradiente para reduzir a variância e o enviesamento de comprimento; o diagrama mostra a configuração on-policy básica, não todas as alterações do MiniLLM.

No exemplo simplificado abaixo, professor e aluno atribuem probabilidades diferentes a «cat» e «dog» após o mesmo prefixo. A KL multiplica o logaritmo do rácio de cada token pelo respetivo peso e soma os dois termos. Mudar o primeiro argumento transfere o peso maior de «cat» para «dog». As barras mostram os pesos, não as contribuições completas para a perda.

Após o mesmo prefixo, as probabilidades do professor para cat e dog são 0,8 e 0,2; as do aluno são 0,4 e 0,6. A KL direta pondera os logaritmos dos rácios professor/aluno por 0,8 e 0,2. A KL inversa pondera os logaritmos dos rácios aluno/professor por 0,4 e 0,6.Após o mesmo prefixo, as probabilidades do professor para cat e dog são 0,8 e 0,2; as do aluno são 0,4 e 0,6. A KL direta pondera os logaritmos dos rácios professor/aluno por 0,8 e 0,2. A KL inversa pondera os logaritmos dos rácios aluno/professor por 0,4 e 0,6.

Da KL de sequências à KL de tokens

A probabilidade de uma resposta é construída a partir das probabilidades dos seus tokens seguintes. Em cada prefixo de uma resposta do aluno, os dois modelos preveem o token seguinte. As diferenças podem, por isso, ser comparadas posição a posição e depois acumuladas ao longo da resposta. O DeepSeek-V4, §5.1.2, equação (29), usa destilação por KL inversa de vários professores especializados para um único aluno. Estes professores são modelos separados, não as sub-redes de especialistas dentro de uma camada mixture-of-experts.

Na posição tt, seja qt(v)=qθ(v∣x,y<t)q_t(v)=q_\theta(v\mid x,y_{<t}) a probabilidade do aluno para o token candidato vv. O prefixo contém o prompt xx e os tokens anteriores da resposta y<ty_{<t}; pt(v)p_t(v) é a probabilidade do professor nesse mesmo prefixo. Então:

dt=∑v∈Vqt(v)log⁡qt(v)pt(v),DKL(qθ∥p)=Ey∼qθ[∑tdt].\begin{aligned} d_t&=\sum_{v\in V}q_t(v)\log\frac{q_t(v)}{p_t(v)},\\ D_{\mathrm{KL}}(q_\theta\Vert p) &=\mathbb E_{y\sim q_\theta}\left[\sum_t d_t\right]. \end{aligned}

VV é o vocabulário e dtd_t a KL do token seguinte num prefixo. Leia a soma interior como «comparar cada token candidato, ponderado pela probabilidade do aluno». Some estas comparações nas várias posições e calcule depois a média nas respostas que o aluno gera. A esperança exterior continua a amostrar texto, mesmo quando cada dtd_t soma todo o vocabulário.

Um token amostrado ou o vocabulário completo

O professor pode avaliar apenas o token que o aluno escolheu ou devolver probabilidades para todo o vocabulário. A primeira opção transfere menos informação; a segunda compara todos os tokens seguintes possíveis nesse prefixo. O DeepSeek-V4 relata treino instável com a sua estimativa de um token e usa a comparação do vocabulário completo. Isto torna a comparação de tokens exata num dado prefixo; os prefixos continuam a vir de respostas amostradas.

Os dois modelos leem «The animal is a» e devolvem as probabilidades abaixo. As linhas destacadas entram na perda usada para atualizar o aluno. A versão de vocabulário completo inclui «dog» e «fox», embora o aluno tenha escolhido «cat»; a versão de um token estima essa comparação apenas a partir do token escolhido.

No prefixo «The animal is a», o aluno amostra cat. Uma estimativa de um token compara probabilidades apenas para cat. A KL do vocabulário completo inclui cat, dog e fox neste vocabulário de exemplo, ponderando cada logaritmo de rácio pela probabilidade do aluno. O prefixo continua a ser amostrado.No prefixo «The animal is a», o aluno amostra cat. Uma estimativa de um token compara probabilidades apenas para cat. A KL do vocabulário completo inclui cat, dog e fox neste vocabulário de exemplo, ponderando cada logaritmo de rácio pela probabilidade do aluno. O prefixo continua a ser amostrado.

Usando as três linhas, dt=0.5log⁡(0.5/0.6)+0.2log⁡(0.2/0.3)+0.3log⁡(0.3/0.1)≈0.157d_t=0.5\log(0.5/0.6)+0.2\log(0.2/0.3)+0.3\log(0.3/0.1)\approx0.157. O logaritmo do rácio apenas para o «cat» amostrado é cerca de −0.182-0.182. Uma amostra pode ser negativa, embora a KL completa seja não negativa.

A análise detalhada de on-policy apresenta a derivação de sequências para tokens, as correções de amostragem e as estimativas do gradiente.

DPO: uma perda logística sobre dois logaritmos de rácios

O DPO começa com um par de preferências guardado: um prompt, uma resposta preferida e uma resposta rejeitada. O par pode vir de avaliações humanas de respostas anteriores de modelos. Durante o treino, o modelo lê cada resposta guardada token a token e regista a sua probabilidade dado o prompt e os tokens anteriores. A soma desses logaritmos de probabilidades dá o logaritmo da probabilidade da resposta. Isto avalia a probabilidade do texto segundo o modelo; a etiqueta de preferência guardada indica qual a melhor resposta.

Num procedimento RLHF convencional, os pares de preferências treinam primeiro um modelo de recompensa separado, e a aprendizagem por reforço treina depois o modelo de linguagem com essa recompensa. O DPO, §4, equação (7), treina antes o modelo de linguagem diretamente a partir dos pares. Um modelo de referência congelado avalia as mesmas respostas para comparação. O treino altera apenas o modelo atual; nenhum dos modelos precisa de gerar novas respostas neste passo.

Para cada resposta, subtraia o logaritmo da sua probabilidade de referência ao logaritmo da sua probabilidade atual. Chamamos ganho a esta alteração. O DPO compara o ganho da resposta preferida com o da resposta rejeitada:

g(y)=log⁡πθ(y∣x)πref(y∣x),Δ=g(yw)−g(yl),LDPO=E(x,yw,yl)∼D[−log⁡σ(βΔ)].\begin{aligned} g(y)&=\log\frac{\pi_\theta(y\mid x)}{\pi_{\mathrm{ref}}(y\mid x)},\\ \Delta&=g(y_w)-g(y_l),\\ \mathcal L_{\mathrm{DPO}} &=\mathbb E_{(x,y_w,y_l)\sim\mathcal D} \bigl[-\log\sigma(\beta\Delta)\bigr]. \end{aligned}

Aqui, xx é o prompt, ywy_w e yly_l são as respostas preferida e rejeitada, e πθ\pi_\theta e πref\pi_{\mathrm{ref}} são os modelos atual e de referência. A sigmoide σ\sigma transforma um número num valor em (0,1)(0,1), e β\beta é uma escala positiva. Leia a última linha como «calcular a média da perda do par entre parênteses retos nos pares guardados do dataset D\mathcal D». Aumentar Δ\Delta reduz essa perda; o treino minimiza LDPO\mathcal L_{\mathrm{DPO}} alterando os parâmetros θ\theta do modelo atual.

Por exemplo, se a resposta preferida ganha 2 no logaritmo da probabilidade e a rejeitada perde 1, então Δ=2−(−1)=3\Delta=2-(-1)=3. A preferência mudou no sentido pretendido em relação à referência. A perda não tem um termo KL separado e não impõe uma distância máxima à referência.

A diferença, por si só, pode ocultar um problema: a resposta preferida pode tornar-se menos provável enquanto a rejeitada se torna menos provável ainda mais depressa. A perda continua a melhorar. O Smaug estuda esta falha, pelo que deve inspecionar as probabilidades de cada resposta, além da perda de preferências.

Os dois casos abaixo dão o mesmo Δ=3\Delta=3 e, portanto, a mesma perda do par para um β\beta fixo. Só o caso da esquerda torna a resposta preferida mais provável do que era na referência.

Dois casos partilham um eixo de alteração do logaritmo da probabilidade. Preferida mais 2 e rejeitada menos 1 dão uma diferença de ganhos de 3. Preferida menos 1 e rejeitada menos 4 também dão 3, embora as probabilidades das duas respostas tenham diminuído face à referência.Dois casos partilham um eixo de alteração do logaritmo da probabilidade. Preferida mais 2 e rejeitada menos 1 dão uma diferença de ganhos de 3. Preferida menos 1 e rejeitada menos 4 também dão 3, embora as probabilidades das duas respostas tenham diminuído face à referência.

Na figura seguinte, a informação de retorno do DPO está associada a um par guardado. O GRPO gera quatro respostas a «2 + 2?» durante o treino. Um verificador atribui 1 a «4» e 0 às restantes respostas. A comparação de cada recompensa com a média do grupo produz uma vantagem: a informação positiva favorece os tokens da resposta amostrada, e a negativa desfavorece-os. A secção seguinte mostra esse cálculo e os limites do seu efeito.

O DPO usa os modelos atual e de referência congelado para avaliar duas respostas guardadas e atualiza depois o modelo atual. O GRPO amostra 3, 4, 4 e 5 para a pergunta 2 mais 2. Um verificador atribui recompensas 0, 1, 1 e 0. Vantagens relativas ao grupo de menos 1, mais 1, mais 1 e menos 1 orientam as atualizações do modelo atual.O DPO usa os modelos atual e de referência congelado para avaliar duas respostas guardadas e atualiza depois o modelo atual. O GRPO amostra 3, 4, 4 e 5 para a pergunta 2 mais 2. Um verificador atribui recompensas 0, 1, 1 e 0. Vantagens relativas ao grupo de menos 1, mais 1, mais 1 e menos 1 orientam as atualizações do modelo atual.

A análise detalhada do DPO deriva a perda a partir do objetivo com regularização da recompensa e analisa o seu gradiente.

GRPO: o objetivo do PPO com uma referência de grupo

A Group Relative Policy Optimization amostra várias respostas à mesma pergunta, avalia-as e compara cada pontuação com a média do grupo. Uma resposta correta entre respostas maioritariamente incorretas recebe informação positiva; uma resposta incorreta entre corretas recebe informação negativa. Para matemática ou código, a avaliação pode usar um verificador de respostas ou testes. Outras tarefas podem usar um modelo de recompensa.

O DeepSeekMath, §4.1.1, introduziu o GRPO como uma variante da Proximal Policy Optimization (PPO). O DeepSeek-R1, §2.2.1, usou-o posteriormente. A alteração principal está na forma de calcular a vantagem, a recompensa relativa que orienta a atualização:

Ai=ri−mean⁡(r1,…,rG)std⁡(r1,…,rG).A_i=\frac{r_i-\operatorname{mean}(r_1,\ldots,r_G)}{\operatorname{std}(r_1,\ldots,r_G)}.

rir_i é a recompensa da resposta ii e GG o número de respostas a uma pergunta. Subtrair a média indica quais as respostas com pontuação acima ou abaixo do grupo. Dividir pelo desvio-padrão ajusta a escala dessas diferenças. No grupo ilustrado (0,1,1,0)(0,1,1,0), a média é 0.50.5 e o desvio-padrão populacional é 0.50.5, dando vantagens (−1,1,1,−1)(-1,1,1,-1).

O que muda em relação ao PPO

O PPO treina habitualmente um modelo de valor separado para estimar a recompensa futura a partir de uma resposta parcial. O GRPO usa antes as pontuações do grupo como referência, pelo que não treina esse modelo de valor. Continua a precisar de recompensas, e o seu objetivo original continua a usar um modelo de referência para uma penalização KL. Remover o modelo de valor não elimina essas outras funções.

A comparação abaixo identifica o modelo de valor substituído. A linha inferior mostra duas outras entradas do treino. O modelo antigo ou de amostragem é a versão que gerou este lote de respostas; as probabilidades de tokens registadas mantêm-se fixas enquanto o modelo atual treina com esse lote. Um modelo de referência separado, também fixo durante estas atualizações, fornece probabilidades para a comparação KL. As duas comparações avaliam o mesmo token após o mesmo prefixo.

O PPO usa recompensas e um modelo de valor treinado para estimar vantagens. O GRPO normaliza antes a recompensa de cada resposta face às recompensas da mesma pergunta. O rácio de probabilidades atual/amostragem e a KL atual/referência desempenham funções distintas no treino.O PPO usa recompensas e um modelo de valor treinado para estimar vantagens. O GRPO normaliza antes a recompensa de cada resposta face às recompensas da mesma pergunta. O rácio de probabilidades atual/amostragem e a KL atual/referência desempenham funções distintas no treino.

O GRPO mantém o objetivo do PPO com recorte do rácio de probabilidades. Se um token amostrado tinha probabilidade 0.200.20 e o modelo atual lhe atribui agora 0.240.24 no mesmo prefixo, o rácio é 0.24/0.20=1.20.24/0.20=1.2. O objetivo pondera este rácio pela vantagem da resposta. O treino altera o modelo atual para aumentar este objetivo, com uma penalização KL separada que desencoraja o afastamento da referência.

Para uma resposta amostrada, representamos por sts_t o prompt e os tokens da resposta anteriores à posição tt, e por yty_t o token nessa posição. A parte da equação (3) do DeepSeekMath mostrada no gráfico é:

ρt=πθ(yt∣st)πold(yt∣st),Ct=min⁡ ⁣(ρtA,clip⁡(ρt,1−ε,1+ε)A).\begin{aligned} \rho_t&=\frac{\pi_\theta(y_t\mid s_t)}{\pi_{\mathrm{old}}(y_t\mid s_t)},\\ C_t&=\min\!\bigl(\rho_t A,\\ &\qquad\operatorname{clip}(\rho_t,1-\varepsilon,1+\varepsilon)A\bigr). \end{aligned}

πθ\pi_\theta é o modelo atual, πold\pi_{\mathrm{old}} a cópia de amostragem e AA a vantagem desta resposta no grupo. A largura ε\varepsilon define o intervalo de recorte. Leia clip⁡\operatorname{clip} como «substituir um rácio fora do intervalo pelo extremo mais próximo» e depois min⁡\min como «tomar o menor dos dois termos ponderados pela vantagem». CtC_t é uma contribuição a maximizar. O GRPO subtrai a sua penalização KL e calcula a média nos tokens de cada resposta, nas respostas de cada grupo e nas perguntas amostradas.

Com A=1A=1, ε=0.2\varepsilon=0.2 e ρt=1.5\rho_t=1.5, os dois termos são 1.51.5 e 1.21.2, pelo que Ct=1.2C_t=1.2. Com A=−1A=-1 e ρt=0.5\rho_t=0.5, são −0.5-0.5 e −0.8-0.8, pelo que Ct=−0.8C_t=-0.8. Estas são as duas partes horizontais do gráfico.

O gráfico isola a contribuição de um token, mantendo a sua vantagem fixa. Uma vantagem positiva favorece um rácio maior; uma negativa favorece um rácio menor. O recorte torna a linha horizontal onde uma alteração favorável deixa de melhorar este termo. Não impõe um limite rígido às probabilidades reais do modelo.

Com largura de recorte 0,2 e vantagem mais 1, o objetivo recortado sobe com o rácio até 1,2 e mantém-se depois constante. Com vantagem menos 1, mantém-se constante abaixo de 0,8 e desce quando o rácio aumenta acima de 0,8. O rácio real de probabilidades pode ultrapassar qualquer um dos limites.Com largura de recorte 0,2 e vantagem mais 1, o objetivo recortado sobe com o rácio até 1,2 e mantém-se depois constante. Com vantagem menos 1, mantém-se constante abaixo de 0,8 e desce quando o rácio aumenta acima de 0,8. O rácio real de probabilidades pode ultrapassar qualquer um dos limites.

A cópia de amostragem e a referência podem começar com os mesmos pesos, mas servem comparações diferentes. A cópia de amostragem é renovada ao recolher um novo lote; as suas probabilidades registadas continuam a ser o denominador das atualizações nesse lote.

Se todas as respostas recebem a mesma recompensa, não existe preferência relativa para aprender. A fórmula da vantagem divide então zero por zero. As implementações precisam de uma regra para este caso, como produzir vantagens nulas; o DAPO, §3.2, exclui antes estes grupos e amostra substitutos.

A análise detalhada do GRPO apresenta o objetivo completo, os casos de recorte, os gradientes, o estimador KL amostrado e o efeito de calcular médias por resposta ou por token.

Análises opcionais das equações

As análises detalhadas indicadas incluem derivações e verificações com números pequenos. Foram produzidas com as competências para agentes de programação em paper-math-skills e estão reunidas em paper-math-readings.

Fontes e versões