Sobes.tech
Middle — Senior

Cos'è PPO nel contesto di RLHF e come viene calcolata la loss?

sobes.tech AI

Risposta dell'AI

PPO (Proximal Policy Optimization) è un algoritmo di ottimizzazione della politica nel reinforcement learning, ampiamente utilizzato in RLHF (Reinforcement Learning con Feedback Umano) per il fine-tuning di modelli linguistici considerando il feedback umano.

L'idea principale di PPO è aggiornare la politica in modo che non si discosti troppo da quella attuale, prevenendo instabilità nell'apprendimento. A tal fine, si utilizza una funzione di perdita speciale che limita l'entità dell'aggiornamento.

La perdita in PPO viene generalmente calcolata come:

L^{CLIP}(	heta) = \mathbb{E}_t \left[ \min \left( r_t(\theta) \hat{A}_t, \text{clip}(r_t(\theta), 1 - \epsilon, 1 + \epsilon) \hat{A}_t \right) \right]

dove:

  • $r_t(\theta) = \frac{\pi_\theta(a_t|s_t)}{\pi_{\theta_{old}}(a_t|s_t)}$ — rapporto tra le probabilità della nuova e della vecchia politica per l'azione $a_t$ nello stato $s_t$;
  • $\hat{A}_t$ — stima del vantaggio;
  • $\epsilon$ — iperparametro che definisce il range consentito di modifiche.

In questo modo, la perdita penalizza gli aggiornamenti che cambiano troppo la politica, mantenendo stabilità ed efficienza nell'apprendimento. In RLHF, PPO viene usato per ottimizzare il modello considerando le ricompense ottenute dal feedback umano.