EUREKA Progettazione del premio a livello umano tramite la codifica di modelli di linguaggio di grandi dimensioni

EUREKA Progettazione di premi umanizzati attraverso la codifica di modelli di linguaggio di ampia portata

Con i progressi fatti negli ultimi anni dai Large Language Models, non sorprende che questi framework LLM eccellano come pianificatori semantici per compiti sequenziali decisionali ad alto livello. Tuttavia, gli sviluppatori trovano ancora difficile sfruttare appieno il potenziale dei framework LLM per imparare compiti di manipolazione a basso livello complessi. Nonostante la loro efficienza, i Large Language Models odierni richiedono una considerevole esperienza nel dominio e nel campo specifico per imparare anche abilità semplici o creare prompt testuali, creando un divario significativo tra le loro prestazioni e la destrezza umana.

Per colmare questo divario, sviluppatori di Nvidia, CalTech, UPenn e altri hanno introdotto EUREKA, un algoritmo di progettazione di livello umano alimentato da LLM. EUREKA mira ad utilizzare le varie capacità dei framework LLM, inclusi la scrittura di codice, il miglioramento in contesto e la generazione di contenuto senza bisogno di prompt, per effettuare una ottimizzazione senza precedenti dei codici di ricompensa. Questi codici di ricompensa, combinati con il reinforcement learning, consentono ai framework di imparare abilità complesse o svolgere compiti di manipolazione.

In questo articolo, esamineremo il framework EUREKA da una prospettiva di sviluppo, esplorando la sua struttura, il suo funzionamento e i risultati che riesce a ottenere nella generazione di funzioni di ricompensa. Queste funzioni, come affermato dagli sviluppatori, superano quelle generate dagli esseri umani. Approfondiremo anche come il framework EUREKA apre la strada a un nuovo approccio al RLHF (Reinforcement Learning using Human Feedback) consentendo un apprendimento in contesto senza gradienti. Iniziamo.

EUREKA: Una introduzione

Oggi, i framework LLM all’avanguardia come GPT-3 e GPT-4 producono risultati eccezionali quando agiscono come pianificatori semantici per compiti decisionali ad alto livello, ma gli sviluppatori sono ancora alla ricerca di modi per migliorare le loro prestazioni quando si tratta di imparare compiti di manipolazione a basso livello come la destrezza nel girare la penna. Inoltre, gli sviluppatori hanno osservato che il reinforcement learning può essere utilizzato per ottenere risultati sostenibili in condizioni di destrezza, e in altri ambiti, a condizione che le funzioni di ricompensa siano costruite attentamente da designer umani, e queste funzioni di ricompensa siano in grado di fornire segnali di apprendimento per comportamenti favorevoli. Rispetto a compiti di reinforcement learning del mondo reale che accettano ricompense sparse, risulta difficile per il modello apprendere i pattern. Modellare queste ricompense fornisce i segnali di apprendimento incrementali necessari. Inoltre, le funzioni di ricompensa, nonostante la loro importanza, sono estremamente difficili da progettare, e una progettazione sub-ottimale di queste funzioni spesso porta a comportamenti indesiderati.

Per affrontare queste sfide e massimizzare l’efficienza di questi token di ricompensa, EUREKA o Evolution-driven Universal REward Kit for Agent si propone di apportare i seguenti contributi:

  1. Raggiungere le prestazioni di livello umano per la progettazione delle Funzioni di Ricompensa.
  2. Risolvere efficacemente compiti di manipolazione senza utilizzare l’ingegneria delle ricompense manuale.
  3. Generare funzioni di ricompensa più allineate con l’essere umano e con migliori prestazioni, introducendo un nuovo approccio di apprendimento in contesto senza gradienti anziché il tradizionale metodo RLHF o Reinforcement Learning from Human Feedback.

Ci sono tre scelte progettuali chiave che gli sviluppatori hanno fatto per migliorare la generalità di EUREKA: la ricerca evolutiva, l’ambiente come contesto e la riflessione delle ricompense. In primo luogo, il framework EUREKA utilizza il codice sorgente dell’ambiente come contesto per generare funzioni di ricompensa eseguibili in un contesto a zero domande. Successivamente, il framework esegue una ricerca evolutiva per migliorare in modo significativo la qualità delle sue ricompense, propone batch di candidati a ricompensa ad ogni iterazione o epoca, e affina quelli che ritiene più promettenti. Nella terza e ultima fase, il framework utilizza l’approccio della riflessione delle ricompense per rendere più efficace il miglioramento in contesto delle ricompense, un processo che alla fine aiuta il framework a consentire la modifica mirata e automatizzata delle ricompense utilizzando un riepilogo testuale della qualità di queste ricompense basato sulle statistiche dell’addestramento delle politiche. La figura seguente offre una breve panoramica di come funziona il framework EUREKA, e nella sezione successiva parleremo dell’architettura e del funzionamento in maggiore dettaglio.

EUREKA: Architettura del modello e impostazione del problema

Lo scopo principale della modellazione delle ricompense è restituire una funzione di ricompensa modellata o curata per una funzione di ricompensa di riferimento che potrebbe presentare difficoltà quando viene ottimizzata direttamente, come nel caso di ricompense sparse. Inoltre, i designer possono accedere solo a queste funzioni di ricompensa di riferimento tramite query, ed è per questo motivo che il framework EUREKA opta per la generazione delle ricompense, una impostazione di sintesi di programmi basata su RDP o il Problema di Progettazione delle Ricompense.

Il problema del design delle ricompense o RDP è una tupla che contiene un modello del mondo con uno spazio degli stati, uno spazio per le funzioni di ricompensa, una funzione di transizione e uno spazio delle azioni. Un algoritmo di apprendimento ottimizza quindi le ricompense generando una policy che produce un MDP o un processo di progettazione di Markov, che produce l’evoluzione scalare di qualsiasi policy e può essere accessibile solo tramite query sulla policy. Lo scopo principale del RDP è restituire una funzione di ricompensa in modo tale che la policy sia in grado di raggiungere il punteggio di fitness massimo. Nel contesto del problema di EUREKA, gli sviluppatori hanno specificato ogni componente nel problema di progettazione delle ricompense utilizzando il codice. Inoltre, per una stringa data che specifica i dettagli del compito, l’obiettivo principale del problema di generazione delle ricompense è generare un codice di funzione di ricompensa per massimizzare il punteggio di fitness.

Inoltre, al suo nucleo, ci sono tre componenti algoritmiche fondamentali nel framework EUREKA. La ricerca evolutiva (proposizione e affinamento iterativo dei candidati), l’ambiente come contesto (generazione di ricompense eseguibili in una configurazione zero-shot) e la riflessione sulla ricompensa (per consentire un miglioramento dettagliato delle ricompense). Il codice pseudo per l’algoritmo è illustrato nell’immagine seguente.

Ambiente come contesto

Attualmente, i framework LLM hanno bisogno delle specifiche dell’ambiente come input per progettare le ricompense, mentre il framework EUREKA propone di inserire direttamente il codice dell’ambiente grezzo come contesto, senza il codice di ricompensa, permettendo ai framework LLM di assumere il modello del mondo come contesto. L’approccio seguito da EUREKA ha due benefici principali. In primo luogo, i framework LLM a scopo di codifica sono addestrati su insiemi di codice nativo scritti in linguaggi di programmazione esistenti come C, C++, Python, Java e altri, motivo fondamentale per cui sono migliori nel produrre output di codice quando possono comporre direttamente il codice nella sintassi e nello stile su cui sono stati originariamente addestrati. In secondo luogo, l’uso del codice sorgente dell’ambiente rivela di solito gli ambienti coinvolti semanticamente e le variabili che sono adatte o ideali per l’uso nel tentativo di produrre una funzione di ricompensa in conformità con il compito specificato. Sulla base di queste informazioni, il framework EUREKA istruisce il LLM a restituire un codice Python più eseguibile direttamente con l’aiuto solo di suggerimenti di formattazione e progetti di ricompensa generici.

L’inclusione della ricerca evolutiva nel framework EUREKA mira a presentare una soluzione naturale alle sfide di sottottimalità e agli errori che si sono verificati durante l’esecuzione, come già menzionato. Ad ogni iterazione o epoca, il framework restituisce diverse uscite indipendenti dal Large Language Model e, a condizione che le generazioni siano tutte i.i.d., riduce in modo esponenziale la probabilità che le funzioni di ricompensa durante le iterazioni presentino difetti, dato il numero di campioni che aumenta ad ogni epoca.

Nel passo successivo, il framework EUREKA utilizza le funzioni di ricompensa eseguibili dalle iterazioni precedenti per effettuare una mutazione delle ricompense in contesto e propone quindi una nuova e migliorata funzione di ricompensa sulla base dei feedback testuali. Il framework EUREKA, combinato con il miglioramento in contesto e le capacità di seguire le istruzioni dei Large Language Models, è in grado di specificare l’operatore di mutazione come un prompt di testo e suggerisce un metodo per utilizzare il riepilogo testuale dell’addestramento della policy per modificare i codici di ricompensa esistenti.

Riflessione sulla ricompensa

Per basare le mutazioni delle ricompense in contesto, è essenziale valutare la qualità delle ricompense generate e, ancora più importante, metterle in parole. Il framework EUREKA affronta questo problema utilizzando la semplice strategia di fornire i punteggi numerici come valutazione delle ricompense. Quando la funzione di fitness del compito serve come metrica olistica per il vero valore, manca l’assegnazione di credito e non è in grado di fornire informazioni preziose su perché la funzione di ricompensa funzioni o non funzioni. Pertanto, nel tentativo di fornire una diagnosi delle ricompense più mirata e dettagliata, il framework propone di utilizzare feedback automatizzati per riassumere la dinamica dell’addestramento della policy in forma di testo. Inoltre, nel programma di ricompensa, le funzioni di ricompensa nel framework EUREKA sono invitate a esporre i propri componenti individualmente, consentendo al framework di tracciare i valori scalari di ogni componente di ricompensa univoco nei checkpoint della policy durante l’intera fase di addestramento.

Anche se la procedura di funzione di ricompensa seguita dal framework EUREKA è semplice da costruire, è essenziale grazie alla natura dipendente dall’algoritmo dell’ottimizzazione delle ricompense. Ciò significa che l’efficacia di una funzione di ricompensa è influenzata direttamente dalla scelta di un algoritmo di apprendimento per rinforzo e con un cambio negli iperparametri, la ricompensa può comportarsi in modo diverso anche con lo stesso ottimizzatore. Pertanto, il framework EUREKA è in grado di modificare i record in modo più efficace e selettivo mentre sintetizza funzioni di ricompensa che sono in sinergia migliorata con l’algoritmo di apprendimento per rinforzo.

Formazione e linea di base

Ci sono due componenti di formazione principali nel framework EUREKA: Apprendimento delle politiche e Metriche di valutazione del premio.

Apprendimento delle politiche

Le funzioni di premio finali per ogni singolo compito vengono ottimizzate con l’aiuto dello stesso algoritmo di apprendimento per rinforzo utilizzando lo stesso insieme di iperparametri che vengono ottimizzati per far funzionare bene le funzioni di premio progettate dagli umani.

Metriche di valutazione del premio

Poiché la metrica del compito varia in termini di scala e significato semantico con ogni compito, il framework EUREKA riporta il punteggio normalizzato umano, una metrica che fornisce una misura olistica per confrontare le prestazioni del framework rispetto ai premi generati dagli esperti umani in accordo con le metriche di riferimento.

Procedendo, ci sono tre basi primarie: L2R, umano, e sparsi.

L2R

L2R è una soluzione di suggerimenti del Large Language Model a doppio stadio che aiuta a generare premi con modelli predefiniti. Innanzitutto, un framework LLM riempie un modello di lingua naturale per l’ambiente e il compito specificato in lingua naturale, e quindi un secondo framework LLM converte questa “descrizione del movimento” in un codice che scrive una funzione di premio richiamando un insieme di primitive API di premio scritte manualmente.

Umano

La base umana sono le funzioni di premio originali scritte dai ricercatori di apprendimento per rinforzo, rappresentando così i risultati dell’ingegneria premi umani a un livello senza precedenti.

Sparsi

La base sparso assomiglia alle funzioni di fitness e viene utilizzata per valutare la qualità dei premi generati dal framework.

Risultati ed esiti

Per analizzare le prestazioni del framework EUREKA, valuteremo diversi parametri, tra cui le prestazioni rispetto ai premi umani, il miglioramento dei risultati nel tempo, la generazione di premi innovativi, il miglioramento mirato, e il lavoro con il feedback umano.

EUREKA supera i premi umani

La seguente figura illustra i risultati aggregati su diversi benchmark e come può essere chiaramente osservato, il framework EUREKA supera o si comporta allo stesso livello dei premi a livello umano sia per i compiti di destrezza che per quelli di Issac. In confronto, la base L2R fornisce prestazioni simili per compiti a bassa dimensionalità, ma quando si tratta di compiti ad alta dimensionalità, il divario nelle prestazioni è piuttosto sostanziale.

Miglioramento costante nel tempo

Uno dei principali punti di forza del framework EUREKA è la sua capacità di migliorare e potenziare costantemente le sue prestazioni nel tempo con ogni iterazione, e i risultati sono dimostrati nella figura seguente.

Come si può chiaramente vedere, il framework genera costantemente premi migliori con ogni iterazione e migliora e alla fine supera le prestazioni dei premi umani, grazie al suo approccio di ricerca premi evolutiva in contesto.

Generazione di premi innovativi

La novità dei premi del framework EUREKA può essere valutata calcolando la correlazione tra i premi umani e quelli di EUREKA nell’intero insieme di compiti di Issac. Queste correlazioni vengono quindi rappresentate su un grafico a dispersione o mappa in relazione ai punteggi normalizzati umani, con ogni punto sul grafico che rappresenta un premio EUREKA individuale per ogni singolo compito. Come si può chiaramente vedere, il framework EUREKA genera principalmente funzioni di premio poco correlate che superano le funzioni di premio umane.

Abilitare un miglioramento mirato

Per valutare l’importanza dell’aggiunta di una riflessione sulle ricompense nel feedback delle ricompense, gli sviluppatori hanno valutato una ablazione, un framework EUREKA senza riflessione sulle ricompense che riduce le istruzioni di feedback a valori istantanei. Durante l’esecuzione delle attività Issac, gli sviluppatori hanno osservato che senza riflessione sulle ricompense, il framework EUREKA ha subito una diminuzione del 29% nel punteggio normalizzato medio.

Lavorare con i feedback degli utenti

Per incorporare facilmente una vasta gamma di input per generare funzioni di ricompensa allineate con gli utenti e più performanti, il framework EUREKA, oltre ai disegni di ricompensa automatizzati, introduce anche un nuovo approccio di apprendimento senza gradienti in contesto per l’apprendimento a rinforzo dai feedback degli utenti, e ci sono stati due osservazioni significative.

  1. EUREKA può beneficiare e migliorare da funzioni di ricompensa degli utenti.
  2. L’utilizzo dei feedback degli utenti per le riflessioni sulle ricompense induce comportamenti allineati.

La figura sopra mostra come il framework EUREKA dimostri un notevole miglioramento delle prestazioni e dell’efficienza utilizzando l’inizializzazione delle ricompense umane indipendentemente dalla qualità delle ricompense umane, suggerendo che la qualità delle ricompense di base non ha un impatto significativo sulle capacità di miglioramento delle ricompense in contesto del framework.

La figura sopra illustra come il framework EUREKA possa non solo indurre politiche più allineate agli utenti, ma anche modificare le ricompense incorporando i feedback degli utenti.

Considerazioni finali

In questo articolo abbiamo parlato di EUREKA, un algoritmo di progettazione a livello umano alimentato da LLM, che cerca di sfruttare varie capacità dei framework LLM, tra cui la scrittura del codice, le capacità di miglioramento in contesto e la generazione di contenuti a tiro zero per eseguire un’ottimizzazione senza precedenti dei codici di ricompensa. Il codice di ricompensa insieme all’apprendimento a rinforzo può quindi essere utilizzato da questi framework per apprendere abilità complesse o svolgere compiti di manipolazione. Senza intervento umano o ingegnerizzazione di prompt specifici, il framework fornisce capacità di generazione di ricompensa a livello umano su una vasta gamma di compiti, e la sua maggiore forza risiede nell’apprendimento di compiti complessi con un approccio di apprendimento curricolare.

In generale, le ottime prestazioni e la versatilità del framework EUREKA indicano il potenziale della combinazione di algoritmi evolutivi con modelli linguistici di grandi dimensioni che potrebbero risultare in un approccio scalabile e generale per la progettazione di ricompense, e questa intuizione potrebbe essere applicabile ad altri problemi di ricerca a circuito aperto.