Home topics rlhf Cos'è l'apprendimento per rinforzo con feedback umano (RLHF)?
Esplora la soluzione RLHF di IBM Abbonati per ricevere gli aggiornamenti sull'AI
Illustrazione con collage di pittogrammi di nuvole, grafico a torta, pittogrammi grafici

Pubblicato: 10 novembre 2023
Collaboratori: Dave Bergmann

Che cos'è l'RLHF?

L'apprendimento per rinforzo con feedback umano (RLHF) è una tecnica di machine learning in cui viene addestrato un "modello di ricompensa" con feedback umano diretto, quindi utilizzato per ottimizzare le prestazioni di un agente di intelligenza artificiale attraverso l'apprendimento per rinforzo.

L'RLHF, chiamato anche apprendimento per rinforzo dalle preferenze umane, è particolarmente adatto per compiti con obiettivi complessi, mal definiti o difficili da specificare. Per esempio, sarebbe poco pratico (o addirittura impossibile) per una soluzione algoritmica definire "divertente" in termini matematici, ma facile per gli esseri umani valutare le battute generate da un modello linguistico di grandi dimensioni (LLM). Il feedback umano, filtrato in una funzione di ricompensa, potrebbe essere utilizzato per migliorare le capacità di scrittura delle battute di un LLM.

In un articolo del 2017, Paul F. Christiano di OpenAI, insieme ad altri ricercatori di OpenAI e DeepMind, ha descritto nel dettaglio il successo dell'RLHF nell'addestramento di modelli AI per l'esecuzione di compiti complessi come i giochi Atari e la locomozione robotica simulata.Andando oltre questa scoperta, i videogiochi hanno continuato a essere un importante banco di prova per l'RLHF: nel 2019, i sistemi di AI addestrati tramite l'RLHF come OpenAI Five e AlphaStar di DeepMind avevano sconfitto i migliori giocatori professionisti umani rispettivamente nei ben più complessi Dota 22 e StarCraft3.

Forse l'aspetto più importante è che il documento di OpenAI del 2017 ha osservato che la sua metodologia, in particolare l’introduzione dell’algoritmo di ottimizzazione delle politiche prossimali (PPO) per l’aggiornamento dei pesi dei modelli, ha ridotto notevolmente il costo di raccolta e filtrazione del feedback umano necessario. Questo aspetto ha spianato la strada all'integrazione dell'RLHF con il campo dell'elaborazione del linguaggio naturale (NLP), con i conseguenti progressi che hanno contribuito a portare sia gli LLM che l'RLHF all'avanguardia della ricerca sull'AI.

La prima versione del codice che descrive in dettaglio l'uso dell'RLHF sui modelli linguistici è arrivata nel 2019 da OpenAI4, che ha poi rilasciato InstructGPT addestrato con RLHF all'inizio del 2022.5 Questo è stato un passo cruciale per colmare il divario tra GPT-3 e GPT-3.5, i turbo modelli su cui si è basato il lancio di ChatGPT.

L'RLHF è da allora utilizzato nella formazione degli LLM all'avanguardia di OpenAI, DeepMind, Google6 e Anthropic.7

Crea flussi di lavoro AI responsabili con la governance AI

Scopri gli elementi costitutivi e le best practice per aiutare i tuoi team ad accelerare l'AI responsabile.

Contenuti correlati

Registrati per la guida sui foundation model

Come funziona l'apprendimento per rinforzo

Concettualmente, l'apprendimento per rinforzo (RL) mira a emulare il modo in cui imparano gli esseri umani: gli agenti di AI apprendono in modo olistico attraverso tentativi ed errori, motivati da forti incentivi per avere successo.

Per mettere in pratica questa strategia, un framework matematico mirato all’apprendimento per rinforzo comprende i seguenti componenti:

Spazio degli stati

Lo spazio degli stati contiene tutte le informazioni disponibili sull'attività in corso che sono rilevanti per le decisioni che l'agente AI potrebbe prendere, comprese le variabili note e sconosciute. Lo spazio degli stati solitamente cambia con ogni decisione presa dall'agente.

Spazio d'azione

Lo spazio d'azione contiene tutte le decisioni che l'agente AI potrebbe prendere. Nel contesto di un gioco da tavolo, ad esempio, lo spazio d'azione è discreto e ben definito: consiste in tutte le mosse legali disponibili per il giocatore dell'AI in un determinato momento. Nel contesto della generazione del testo, lo spazio di azione è enorme e comprende l'intero "vocabolario" di token a disposizione di un LLM.

Funzione di ricompensa

La ricompensa è la misura del successo o del progresso che incentiva l'agente AI. In alcuni casi, come nei giochi da tavolo, definire il successo (in questo caso, vincere la partita) è oggettivo e diretto. Ma quando la definizione di " successo " è nebulosa, progettare una funzione di ricompensa efficace può essere una sfida significativa. In un framework matematico, questo feedback deve essere tradotto in un segnale di ritorno: una quantificazione scalare del feedback positivo (o negativo).

Vincoli

Una funzione di ricompensa potrebbe essere integrata da sanzioni, ovvero ricompense negative per azioni ritenute controproducenti rispetto al compito da svolgere. Ad esempio, un'azienda potrebbe voler vietare a un chatbot di usare bestemmie o altro linguaggio volgare; un modello di auto a guida autonoma potrebbe essere penalizzato in caso di collisioni o di uscita dalla corsia.

Politica

Una politica è, essenzialmente, la strategia o il “processo di pensiero” che guida il comportamento di un agente AI. In termini matematici, una politica (“π”) è una funzione che accetta uno stato (“s”) come input e restituisce un'azione (“a”): π(s)→a.

L'obiettivo di un algoritmo RL è ottimizzare una politica per ottenere la massima ricompensa. Nell'apprendimento per rinforzo profondo, la politica è rappresentata come una rete neurale che viene continuamente aggiornata, in base alla funzione di ricompensa, durante il processo di formazione. L’agente AI impara dall’esperienza, proprio come fanno gli esseri umani.

Sebbene l'RL convenzionale abbia ottenuto risultati impressionanti nel mondo reale in molti campi, può avere difficoltà a costruire in modo efficace una funzione di ricompensa per compiti complessi in cui è difficile stabilire una definizione chiara di successo. Il vantaggio principale dell’RLHF è la sua capacità di catturare sfumature e soggettività utilizzando feedback umani positivi al posto di obiettivi formalmente definiti.

RLHF per modelli linguistici di grandi dimensioni

Una delle applicazioni più importanti dell'RLHF è stata quella di migliorare la rilevanza, l'accuratezza e l'etica dei LLM, in particolare per il loro utilizzo come chatbot.

Gli LLM, come tutti i modelli di AI generativa, mirano a replicare la distribuzione di probabilità dei dati della formazione. Sebbene i recenti progressi abbiano favorito l'uso degli LLM come motori per chatbot o anche come motori di ragionamento per l'AI generica, questi modelli linguistici utilizzano semplicemente modelli appresi dai dati di addestramento per prevedere le parole successive in una determinata sequenza avviata da un prompt. A livello fondamentale, questi modelli non rispondono effettivamente a un prompt: vi aggiungono del testo. 

Senza istruzioni molto specifiche, i modelli linguistici hanno scarsa capacità di comprendere le intenzioni dell’utente. Sebbene la Prompt Engineering possa contribuire a fornire il contesto necessario affinché un LLM possa soddisfare la sua risposta alle esigenze di un utente, non è pratico richiedere la Prompt Engineering per ogni singolo scambio con un chatbot.

Inoltre, mentre gli LLM pronti all’uso sono stati addestrati con metodi convenzionali per produrre output grammaticalmente coerenti, addestrare i LLM a produrre “buoni” risultati è un problema di non facile soluzione. Concetti come la verità, l'utilità, la creatività o persino ciò che rende eseguibile uno snippet di codice sono molto più dipendenti dal contesto rispetto ai significati delle parole e alla struttura linguistica.

Per migliorare i modelli linguistici nell'interazione umana, i data scientist si sono rivolti all'apprendimento per rinforzo con feedback umano. I modelli InstructGPT potenziati dall'RLHF hanno notevolmente superato i predecessori GPT-3, in particolare in termini di rispetto delle istruzioni, di mantenimento della precisione dei fatti e di evitare le allucinazioni del modello. 5 Allo stesso modo, la ricerca pubblicata da OpenAI al momento del lancio di GPT-4 ha mostrato che l'RLHF ha raddoppiato la precisione nelle domande del contraddittorio.8  

I vantaggi dell'RLHF possono persino sostituire il valore di set di dati di addestramento più grandi, consentendo uno sviluppo dei modelli più efficiente in termini di dati: OpenAI ha notato che i suoi etichettatori preferivano gli output della versione con parametri 1.3B di InstructGPT rispetto agli output pari della versione con parametri 175B di GPT-3.5

Come funziona l'RLHF?

L'addestramento di un LLM con l'RLHF avviene in genere in quattro fasi:

Modelli di pre-formazione

L'RLHF viene generalmente utilizzato per mettere a punto e ottimizzare un modello pre-addestrato, piuttosto che come metodo di formazione end-to-end. Ad esempio, InstructGPT ha utilizzato l'RLHF per migliorare il modello GPT preesistente, ovvero il modello Generative Pre-trained Transformer. Nel suo annuncio di rilascio di InstructGPT, OpenAI ha affermato che "un modo di pensare a questo processo è che 'sblocca' le funzionalità che GPT-3 già aveva, ma che era difficile da ottenere solo attraverso l'ingegneria dei prompt."5  

La pre-formazione rimane di gran lunga la fase più dispendiosa in termini di risorse dell'RLHF. OpenAI ha osservato che il processo di formazione dell'RLHF per InstructGPT comportava meno del 2% dei calcoli e dei dati necessari per il pre-addestramento di GPT-3.

Messa a punto supervisionata

Prima dell’inizio dell’apprendimento per rinforzo esplicito, viene utilizzata la messa a punto supervisionata (SFT) per preparare il modello a generare le risposte nel formato atteso dagli utenti.

Come accennato in precedenza, il processo di pre-addestramento LLM ottimizza i modelli per il completamento: prevedere le parole successive in una sequenza iniziata con la richiesta dell'utente replicando i modelli linguistici appresi durante il pre-addestramento del modello. A volte, i LLM non completano una sequenza nel modo desiderato dall'utente: ad esempio, se il messaggio di un utente è "insegnami come creare un curriculum ", il LLM potrebbe rispondere con "usando Microsoft Word. " È un modo valido per completare la frase, ma non è allineato con l'obiettivo dell'utente.

SFT utilizza quindi l'apprendimento supervisionato per addestrare i modelli a rispondere in modo appropriato a diversi tipi di richieste. Gli esperti umani creano esempi etichettati, seguendo il formato (prompt, risposta), per dimostrare come rispondere ai prompt per diversi casi d'uso, come risposta alle domande, riepilogo o traduzione.

La generazione di questi dati dimostrativi, sebbene potente, richiede tempo e denaro. Anziché creare nuovi esempi personalizzati, DeepMind ha introdotto l'approccio di "applicazione di un'euristica di filtraggio basata su un comune formato di dialogo scritto (il cosiddetto stile di trascrizione da intervista)" per isolare le coppie di esempio di prompt/risposta adatte dal proprio dataset MassiveWeb.9

Formazione sul modello di ricompensa

Affinché il feedback umano possa alimentare una funzione di ricompensa nell'apprendimento per rinforzo, è necessario un modello di ricompensa che traduca la preferenza umana in un segnale numerico di ricompensa. Progettare un modello di ricompensa efficace è un passo cruciale nell'RLHF, poiché non esiste una formula matematica o logica semplice per definire in modo fattibile i valori umani soggettivi.

Lo scopo principale di questa fase è fornire al modello di ricompensa dati di addestramento sufficienti, composti da feedback diretti da parte di valutatori umani, per aiutare il modello a imparare a imitare il modo in cui le preferenze umane assegnano le ricompense ai diversi tipi di risposte del modello. In questo modo l'addestramento può continuare offline senza il coinvolgimento di un essere umano.

Un modello di ricompensa deve accettare una sequenza di testo e produrre un valore di ricompensa scalare in grado di predire, numericamente, quanto un utente umano ricompenserebbe (o penalizzerebbe) quel testo. Questo output, essendo un valore scalare, è essenziale affinché l'output del modello di ricompensa sia integrato con altri componenti dell'algoritmo RL.

Sebbene possa sembrare più intuitivo chiedere semplicemente a valutatori umani di esprimere la loro opinione su ciascuna risposta del modello in forma scalare, ad esempio valutando la risposta su una scala da uno (peggiore) a dieci (migliore), è difficilissimo allineare tutti i valutatori umani sul valore relativo di un dato punteggio, tanto meno allinearli su ciò che costituisce una risposta “buona” o “cattiva” nel vuoto. Questi aspetti possono rendere la valutazione scalare diretta rumorosa e difficile da calibrare.

Invece, un sistema di valutazione viene solitamente costruito confrontando il feedback umano per diversi risultati del modello. Un metodo comune è quello di far confrontare agli utenti due sequenze di testo analoghe, come l'output di due diversi modelli linguistici che rispondono allo stesso prompt, in un testa a testa, quindi utilizzare un sistema di punteggio Elo per generare una classifica aggregata di ciascun testo generato rispetto a un altro. Un sistema semplice potrebbe consentire agli utenti di "alzare il pollice" o "abbassare il pollice" per ogni risultato, che verrebbe poi classificato in base alla relativa preferenza. Sistemi più complessi potrebbero chiedere agli etichettatori di fornire una valutazione complessiva e rispondere a domande categoriche sui difetti di ciascuna risposta, quindi aggregare tramite algoritmi questo feedback in un punteggio di qualità ponderato.

I risultati di qualsiasi sistema di classificazione vengono infine normalizzati in un segnale di ricompensa scalare per informare l'addestramento del modello di ricompensa.

Ottimizzazione delle politiche

L'ultimo ostacolo dell'RLHF è determinare come e quanto il modello di ricompensa debba essere utilizzato per aggiornare la politica dell'agente AI. Uno degli algoritmi di maggior successo utilizzati per la funzione di ricompensa che aggiorna i modelli RL è l'ottimizzazione delle politiche prossimali (PPO).

A differenza della maggior parte delle architetture di modelli di machine learning e reti neurali, che utilizzano la discesa del gradiente per ridurre al minimo la funzione di perdita e produrre il minor errore possibile, gli algoritmi di apprendimento per rinforzo utilizzano spesso l'ascesa del gradiente per massimizzare la ricompensa.

Tuttavia, se la funzione di ricompensa viene utilizzata per addestrare l'LLM senza alcuna protezione, il modello linguistico può modificare drasticamente i pesi fino a produrre parole senza senso nel tentativo di "giocare" con il modello di ricompensa. Il PPO fornisce un mezzo più stabile per aggiornare la politica dell'agente di AI limitando la misura in cui la essa viene aggiornata in ogni iterazione dell'addestramento.

Innanzitutto, viene creata una copia del modello iniziale e i pesi addestrabili vengono congelati. L’algoritmo PPO calcola un intervallo di [1-ε, 1+ε], in cui ε è un iperparametro che determina approssimativamente in quale misura la nuova politica (aggiornata) può allontanarsi dalla vecchia (congelata). Quindi, calcola un rapporto di probabilità: il rapporto tra la probabilità che una determinata azione venga intrapresa dalla vecchia politica e la probabilità che tale azione venga intrapresa dalla nuova politica. Se il rapporto di probabilità è maggiore di 1+ε (o inferiore a 1-ε), l'entità dell'aggiornamento dei criteri può essere ridotta per evitare modifiche ripide che potrebbero destabilizzare l'intero modello.

L'introduzione della PPO ha fornito un'alternativa interessante al suo predecessore, la Trust Region Policy Optimization (TRPO), che offre vantaggi simili ma è più complicata e costosa della PPO dal punto di vista computazionale. Sebbene siano praticabili anche altri framework di ottimizzazione delle politiche come il vantaggio attore-critico (A2C), il PPO è spesso preferito come metodologia semplice ed economicamente vantaggiosa.

Limitazioni dell'RLHF

Sebbene i modelli RLHF abbiano dimostrato risultati impressionanti nell'addestramento di agenti di AI per compiti complessi, dalla robotica e dai videogiochi alla PNL, l'uso di dell'RLHF non è privo di limiti.

  • I dati sulle preferenze umane sono costosi. La necessità di raccogliere input umani di prima mano può creare un costoso collo di bottiglia che limita la scalabilità del processo RLHF. Sia Anthropic10 che Google11 hanno proposto metodi di apprendimento per rinforzo dal feedback AI(RLAIF), sostituendo alcuni o tutti i feedback umani con un altro modello di valutazione LLM, che hanno prodotto risultati paragonabili a quelli dell'RLHF.
  • L'input umano è altamente soggettivo. È difficile, se non impossibile, stabilire un solido consenso su ciò che costituisce un output di "alta qualità", poiché gli annotatori umani spesso non sono d'accordo non solo su fatti presunti, ma anche sul significato di comportamento "appropriato" del modello. Il disaccordo umano preclude quindi la realizzazione di una genuina “verità fondamentale” in base alla quale giudicare la performance del modello.
  • I valutatori umani possono essere fallibili o addirittura intenzionalmente contraddittori e dannosi. Sia che riflettano opinioni genuinamente contrarie o che trollino intenzionalmente il processo di apprendimento, le indicazioni umane al modello non sono sempre fornite in buona fede. In un articolo del 2016, Wolf ed altri hanno ipotizzato che il comportamento tossico dovrebbe essere un’aspettativa fondamentale delle interazioni uomo-bot e hanno suggerito la necessità di un metodo per valutare la credibilità dell’input umano.12 Nel 2022, Meta AI ha pubblicato un documento sull'input umano contraddittorio (link esterno a ibm.com) studiando metodi automatizzati "per ottenere la massima efficienza di apprendimento con dati di alta qualità, pur essendo allo stesso tempo estremamente robusti rispetto a dati contraddittori e di bassa qualità". Il documento identifica vari tipi di archetipi di "troll" e i diversi modi in cui distorcono i dati di feedback.
  • L’RLHF rischia di essere sottoposto a sovradattamenti e distorsioni. Se il feedback umano viene raccolto da un gruppo demografico eccessivamente ristretto, il modello può dimostrare problemi di prestazioni se utilizzato da gruppi diversi o addestrato con prompt su argomenti per i quali i valutatori umani hanno determinati pregiudizi.
Soluzioni correlate
watsonx.ai

Addestra, convalida, adatta e distribuisci AI generativa, foundation model e funzionalità di machine learning con facilità e crea applicazioni AI in un tempo brevissimo con pochissimi dati.

Esplora watsonx.ai

Risorse dell'RLHF Introduzione alle API di apprendimento rinforzato online

Questo percorso di apprendimento fornisce una panoramica sull'apprendimento automatico con rinforzo e dimostra l'uso delle API di AI automatizzata per i processi decisionali al fine di supportare casi d'uso generali di apprendimento con rinforzo online.

Addestrare un agente software a comportarsi in modo razionale con l'apprendimento per rinforzo

Impara la storia e i principi essenziali dell'apprendimento per rinforzo, quindi realizza una semplice dimostrazione utilizzando la tecnica del "Q learning". Include un'implementazione di esempio.

In che modo IBM® Consulting offre un approccio prezioso e responsabile all'AI

Nella prima e nella seconda parte di questa serie in tre parti, abbiamo esaminato le definizioni e i casi d'uso dell'AI generativa. Questa installazione esplora l'approccio adottato da IBM Consulting quando intraprende progetti di AI.

Fasi successive

Addestra, convalida, adatta e implementa le funzionalità di AI generativa, foundation model e machine learning con IBM watsonx.ai, uno studio aziendale di nuova generazione per builder AI. Crea applicazioni AI in tempi ridotti e una minima quantità di dati.

Esplora watsonx.ai Prenota una demo live
Note a piè di pagina

1 "Deep reinforcement learning from human preferences," (link esterno a ibm.com) arXiv, ultima revisione il 17 febbraio 2023
2 "OpenAI Five defeats Dota 2 world champions," (link esterno a ibm.com) OpenAI, 15 aprile 2019.
3 "AlphaStar: Mastering the real-time strategy game StarCraft II," (link esterno a ibm.com) Google DeepMind, 24 gennaio 2019
4 "lm-human-preferences,"(link esterno a ibm.com)  OpenAI (on GitHub), 2019
5 "Aligning language models to follow instructions," (link esterno a ibm.com) OpenAI, 27 Jan 2022
6 "An overview of Bard: an early experiment with generative AI,"(link esterno a ibm.com)  Google AI, ultimo aggiornamento il 19 ottobre 2023
7 "Training a Helpful and Harmless Assistant with Reinforcement Learning from Human Feedback," (link esterno a ibm.com) arXiv, 12 Apr 2022
8 "Research: GPT-4," (link esterno a ibm.com) OpenAI, 14 marzo 2023
9 "Scaling Language Models: Methods, Analysis & Insights from Training Gopher," (link resides outside ibm.com) arXiv, ultimo aggiornamento 22 gennaio 2022
10 "Constitutional AI: Harmlessness from AI Feedback," (link esterno a ibm.com) Anthropic, 15 dicembre 2022
11 "RLAIF: Scaling Reinforcement Learning from Human Feedback with AI Feedback," (link esterno a ibm.com) arXiv, 1 Sep 2023
12 "Why We Should Have Seen That Coming: Comments on Microsoft's Tay 'Experiment' and Wider Implications," (link esterno a ibm.com) The ORBIT journal, 2017