Group Relative Policy Optimization (GRPO)
Scopri la Group Relative Policy Optimization (GRPO). Impara come questo algoritmo RL efficiente in termini di memoria e senza critico migliori il ragionamento degli LLM e riduca i costi di addestramento.
Group Relative Policy Optimization (GRPO) è un algoritmo di reinforcement learning efficiente in termini di memoria, sviluppato per migliorare le capacità di ragionamento dei Large Language Models (LLMs) e dei sistemi di Artificial Intelligence (AI) più in generale. Presentato per la prima volta nel DeepSeekMath paper del 2024, GRPO migliora i metodi di ottimizzazione tradizionali eliminando la necessità di una rete di valore separata (modello critic). Al contrario, normalizza le ricompense di un gruppo di risposte generate derivate dallo stesso prompt. Valutando le risposte rispetto ai loro pari all'interno del gruppo, GRPO riduce drasticamente il carico computazionale aumentando al contempo le prestazioni su complesse attività di ragionamento nelle moderne architetture di Deep Learning (DL).
In che modo GRPO differisce da PPO#
Sebbene GRPO condivida somiglianze con il Proximal Policy Optimization (PPO), un optimization algorithm standard spesso utilizzato nel reinforcement learning da feedback umano (RLHF), i due differiscono significativamente nell'architettura. PPO richiede un modello "critic" secondario che viene eseguito parallelamente alla rete policy principale per stimare il valore di un determinato stato. Ciò raddoppia quasi la memoria richiesta durante la training phase.
Al contrario, GRPO è un algoritmo privo di critic. Campionando più output per un singolo prompt e assegnando loro un punteggio tramite un rule-based reward system o un verificatore, GRPO calcola il vantaggio normalizzando i punteggi all'interno di quello specifico gruppo. Questo confronto relativo funge da linea di base, risparmiando le enormi quantità di memoria che sarebbero state occupate da una rete di valore e accelerando il model training complessivo.
Applicazioni reali di GRPO#
GRPO ha guidato diversi recenti progressi nel campo della generative AI e del natural language processing. Due applicazioni degne di nota includono:
- Mathematical Reasoning Models: Nel celebre DeepSeek-R1 release e in DeepSeekMath, GRPO è stato utilizzato per incentivare i modelli a sviluppare un lungo ragionamento a chain-of-thought e di auto-verifica, eguagliando le prestazioni di modelli proprietari come OpenAI's o1. Premiando le risposte finali corrette e la formattazione, l'algoritmo ha permesso al modello di scoprire organicamente strategie avanzate di risoluzione dei problemi senza un estensivo fine-tuning su dati annotati da umani.
- Code Generation and Agentic Logic: Per i modelli che scrivono codice o alimentano agentic workflows autonomi, valutare la correttezza assoluta è impegnativo. GRPO consente ai modelli di imparare eseguendo varianti di codice e assegnando loro un punteggio relativo in base al successo della compilazione o ai test case superati, accelerando il rilascio di assistenti di codifica AI altamente affidabili.
Implementazione dei concetti GRPO in PyTorch#
Alla sua base, GRPO calcola il vantaggio relativo delle risposte normalizzando le loro ricompense. Ecco una semplice implementazione di PyTorch che dimostra questa normalizzazione utilizzando le tensor operations standard:
def compute_grpo_advantages(rewards):
# 'rewards' is a tensor of shape (batch_size, group_size)
group_mean = rewards.mean(dim=1, keepdim=True)
group_std = rewards.std(dim=1, keepdim=True)
# Normalize rewards within the group to calculate relative advantages
advantages = (rewards - group_mean) / (group_std + 1e-8)
return advantagesFar avanzare l'AI con l'ottimizzazione intelligente#
Proprio come GRPO ridefinisce l'efficienza per la generazione di testo, le tecniche avanzate di Machine Learning (ML) continuano a ridefinire la visual perception. L'ottimizzazione delle architetture e delle loss functions consente agli sviluppatori di creare modelli più leggeri e veloci in tutti i domini.
Per computer vision tasks all'avanguardia, esplorare ottimizzazioni end-to-end è altrettanto fondamentale. Ad esempio, Ultralytics YOLO26 introduce un'architettura nativamente priva di NMS e hybrid optimizers ispirati alla ricerca sui LLM, migliorando notevolmente il deployment edge. Gli sviluppatori che desiderano sfruttare flussi di lavoro di computer vision efficienti possono creare, addestrare e distribuire modelli senza sforzo utilizzando la Ultralytics Platform. Questo strumento basato su cloud semplifica la complessa gestione dei dataset e l'hyperparameter tuning per applicazioni di visione robuste e in tempo reale.






