De policy gradient a GRPO (el corazón teórico)
poder derivar el objetivo de GRPO desde los primeros principios del policy gradient, explicar por qué elimina el crítico de PPO, y entender qué es RLVR y por qué de él emerge el razonamiento. Si entiendes esta lección, el código de L7–L8 es trivial. Es la lección más densa del curso; tómatela en dos pases.
6.1RL para LLMs: el encuadre
Un LLM generando texto es una política de RL:
- Estado
s: el prompt + los tokens generados hasta ahora. - Acción
a: el siguiente token. - Política
π_θ(a|s): la distribución del modelo sobre el vocabulario. - Recompensa
R: una señal (verificable o de un RM) que evalúa la secuencia completa generada.
Objetivo: ajustar θ para maximizar la recompensa esperada J(θ) = E_{y∼π_θ}[ R(x, y) ]. El reto: R solo llega al final (recompensa terminal, escasa), y el espacio de secuencias es gigantesco.
6.2Policy gradient: la base de todo
¿Cómo subir J(θ) por gradiente si muestrear y no es diferenciable? El REINFORCE / policy gradient theorem da la respuesta:
∇_θ J(θ) = E_{y∼π_θ} [ R(x, y) · ∇_θ log π_θ(y|x) ]
Lectura intuitiva: sube la probabilidad de las secuencias que dieron recompensa alta, baja la de las que dieron baja, ponderando por la recompensa. El truco del "log-derivative" convierte un gradiente sobre un muestreo en una esperanza que sí podemos estimar con muestras.
Problema 1: alta varianza. R puede ser grande y ruidoso → gradientes inestables. Solución: restar una baseline b (un valor de referencia) sin sesgar el gradiente:
∇_θ J ≈ E[ (R − b) · ∇_θ log π_θ(y|x) ]
A (R − b) se le llama ventaja A: cuánto mejor que lo esperado fue esta secuencia. Toda la familia de algoritmos se diferencia en cómo estiman la ventaja.
6.3PPO: ventaja con crítico + clipping
PPO (Schulman et al. 2017), el estándar del RLHF clásico, hace dos cosas:
-
Estima la ventaja con un "crítico" (value model): una segunda red
V_φ(s)que predice la recompensa esperada desde cada estado. La ventaja por token sale de comparar la recompensa real con la predicha (GAE). Esto requiere entrenar y mantener en memoria un segundo modelo del tamaño de la política → caro (en una 5090, prohibitivo para modelos no triviales). -
Clipping para estabilidad: limita cuánto puede cambiar la política en cada paso, usando el ratio
ρ = π_θ / π_θ_old:
L_PPO = E[ min( ρ·A , clip(ρ, 1−ε, 1+ε)·A ) ]
El clip evita pasos enormes que colapsen la política. PPO funciona, pero el crítico es su talón de Aquiles: dobla la memoria y añade un modelo más que entrenar y que puede fallar.
6.4GRPO: matar al crítico con estadística de grupo
GRPO (Group Relative Policy Optimization, DeepSeekMath, Shao et al. 2024) hace una observación brillante: si para cada prompt genero un grupo de G respuestas, puedo usar la media del grupo como baseline — no necesito un crítico que la prediga.
Mecánica exacta:
- Para un prompt
x, muestrea G respuestas{y_1, ..., y_G}con la política actual. - Puntúa cada una:
{r_1, ..., r_G}(con RLVR o un RM). - Ventaja normalizada por grupo (esta es la idea central):
Â_i = (r_i − mean({r_1..r_G})) / std({r_1..r_G})
Cada respuesta se juzga relativa a sus hermanas del mismo prompt. Las mejores del grupo tienen ventaja positiva, las peores negativa. La media del grupo es la baseline → adiós crítico.
- Optimiza con el surrogate clipeado de PPO, aplicando
Â_ia todos los tokens de la respuestai, más una penalización KL hacia la referencia:
L_GRPO = E[ (1/G) Σ_i min( ρ_i·Â_i , clip(ρ_i,1−ε,1+ε)·Â_i ) ] − β·KL(π_θ ‖ π_ref)
Consecuencias prácticas que tienes que internalizar:
- Sin value model → la mitad de memoria que PPO → entrenable en tu 5090.
- La señal es relativa: GRPO no necesita que las recompensas estén bien calibradas en magnitud, solo que ordenen bien dentro del grupo.
G(número de generaciones por prompt,num_generationsen TRL) controla la calidad de la estimación: más alto = mejor baseline, más cómputo. Típico 4–16.- La KL hacia π_ref evita que la política se aleje tanto que pierda capacidades o haga reward hacking (L5.3).
Variantes 2026: DAPO (mejoras de estabilidad: clip asimétrico, dynamic sampling), GSPO (Qwen, normalización a nivel de secuencia). Son refinamientos del mismo esquema; entiende GRPO y los demás son ajustes.
6.5RLVR: la recompensa que cambió el juego
RLVR (RL with Verifiable Rewards) = GRPO (u otro PG) donde R viene de un verificador determinista, no de un RM neuronal (L5.2):
- Matemáticas:
R = 1si la respuesta final es exacta,0si no. - Código:
R = fracción de tests que pasan. - Tool-calling:
R = 1si la tool-call parsea y devuelve lo correcto. - Formato:
R += 0.1si la respuesta tiene la estructura pedida (<think>...</think><answer>...).
Por qué es tan potente: la recompensa es barata, infinita (la generas a voluntad) e imposible de hackear trivialmente. No hay RM que explotar. Tülu 3 lo formalizó; DeepSeek-R1 lo llevó a la fama.
6.6El "aha moment": por qué emerge el razonamiento
El resultado que tienes que entender (y reproducirás en L7): DeepSeek-R1-Zero se entrenó con GRPO + RLVR puro (sin SFT previo) sobre problemas con respuesta verificable. Sin que nadie le enseñara a "pensar paso a paso", el modelo descubrió por sí solo que generar cadenas de razonamiento más largas subía la recompensa (resolvía más problemas). Durante el entrenamiento:
- La longitud media de respuesta crece sola.
- Aparecen comportamientos como re-evaluarse ("espera, revisemos esto"), explorar varias vías, verificar.
Esto es profundo: el razonamiento no se imita (SFT), emerge del refuerzo de un objetivo verificable. Es la diferencia cualitativa entre SFT y RL de L1. Cuando en L7 veas tu curva de longitud de respuesta subir mientras sube el reward, estarás viendo el mismo fenómeno en tu 5090.
6.7Ejercicios (conceptuales — escríbelos en tu lab notebook)
E1. Deriva en tu cuaderno el policy gradient desde ∇_θ E[R] usando el truco log-derivative. ¿Por qué necesitamos el truco (qué no es diferenciable)?
E2. Explica por qué la normalización por grupo de GRPO actúa como baseline y reduce varianza sin introducir sesgo. ¿Qué pasaría si G=1? (Pista: std indefinida, ventaja nula → no hay señal.)
E3. ¿Por qué PPO necesita un crítico y GRPO no? ¿Qué ganas y qué pierdes al sustituir el crítico por la media del grupo? (Pista: ganas memoria/simplicidad; pierdes una estimación de ventaja por-token más fina.)
E4. Argumenta por qué la penalización KL es necesaria en RLVR aunque la recompensa sea "perfecta". (Pista: sin KL, la política puede degenerar a salidas raras que maximizan el verificador pero pierden fluidez/capacidades.)
6.8Trampas conceptuales comunes
- Creer que GRPO "no tiene baseline": sí la tiene, es la media del grupo.
- Pensar que RLVR enseña a razonar como SFT: no lo enseña, lo hace emerger.
- Olvidar la KL → reward hacking / colapso.
- Confundir
G(generaciones por prompt) con el batch size.
6.9Referencias
- Sutton & Barto, Reinforcement Learning (policy gradient, cap. 13). PPO (Schulman et al. 2017). GRPO/DeepSeekMath (Shao et al. 2024). DeepSeek-R1 (Guo et al. 2025). Tülu 3/RLVR (Lambert et al. 2024). DAPO (ByteDance 2025). HF Deep RL Course (fundamentos).