Contents — find the section you need
La maggior parte degli algoritmi di apprendimento per rinforzo — Q-learning, PPO, o qualsiasi altro — hanno una sola cosa in comune: "massimizzare la ricompensa data". Ribaltando la prospettiva, significa: se si progetta in modo errato la funzione di ricompensa R(s,a,s'), non importa quanto sofisticato sia l'algoritmo utilizzato, un comportamento indesiderato diventerà la strategia ottimale. Come accennato in Nozioni di base sull'apprendimento per rinforzo, la progettazione della ricompensa è il documento di specifica che si trova al di fuori dell'algoritmo e, in pratica, è qui che di solito si dedica più tempo che alla selezione dell'algoritmo. Questo articolo tratta il compromesso tra ricompense sparse e dense, la garanzia teorica alla base della modellazione della ricompensa basata sul potenziale, casi reali di manipolazione delle ricompense, l'apprendimento per rinforzo inverso come alternativa e il framework dell'apprendimento per rinforzo sicuro/vincolato.
Riepilogo in 30 secondi
-
Una ricompensa sparsa (ad esempio, +1 solo in caso di successo) è onesta come specifica, ma apprende lentamente; Un sistema di ricompense dense (che assegna punti anche per i progressi intermedi) accelera l'apprendimento, ma è soggetto alla creazione di scorciatoie indesiderate.
-
La modellazione delle ricompense è una tecnica per aggiungere in modo sicuro ricompense dense, ma aggiungerle arbitrariamente rischia di modificare la politica ottimale stessa. La modellazione delle ricompense basata sul potenziale di Ng et al. (1999) garantisce che la politica ottimale rimanga invariata, a condizione che venga soddisfatta una determinata condizione.
-
L'hacking delle ricompense (o manipolazione delle specifiche) è un fenomeno in cui un agente si comporta esattamente secondo la lettera della ricompensa, ottenendo punteggi elevati attraverso comportamenti lontani dall'intento del progettista; tra gli esempi reali riportati si annovera l'esperimento CoastRunners di OpenAI.
-
L'apprendimento per rinforzo inverso (IRL) stima la ricompensa a partire dai dati dimostrativi anziché farla definire da un essere umano, e si collega direttamente al framework trattato in Imitation Learning and Inverse RL.
-
L'apprendimento per rinforzo vincolato (RL) e l'apprendimento per rinforzo sicuro (RL sicuro) affrontano i limiti dell'inserimento di tutto in un'unica ricompensa, utilizzando un design in cui "massimizzare la ricompensa, senza mai violare determinati vincoli".
1. Perché la progettazione della ricompensa è "la parte più difficile"?
Nella definizione di MDP, \mathcal M=(\mathcal S,\mathcal A,P,R,\gamma), \mathcal S e \mathcal A sono determinati quasi meccanicamente dalle specifiche dei sensori e degli attuatori. P è la legge fisica dell'ambiente, non qualcosa che il progettista scrive direttamente. Questo lascia solo R(s,a,s') come unico strumento per tradurre l'intento del progettista in qualcosa su cui l'agente può agire.
Questa traduzione è sorprendentemente difficile. Un'istruzione che sarebbe sufficiente tra due esseri umani — "metti a posto questo per bene" — deve essere formulata, come una funzione di ricompensa, con una rigorosa precisione numerica su cosa venga esattamente misurato, su quale scala temporale venga valutato e su come i molteplici obiettivi (velocità, sicurezza, efficienza energetica) vengano ponderati l'uno rispetto all'altro. L'agente non legge l'"intento" dietro le parole. Si limita a massimizzare l'equazione letterale così come è scritta. Questa accuratezza nella massimizzazione è la causa principale che rende così difficile la progettazione delle ricompense.
2. Ricompense sparse e ricompense dense
Modalità di assegnazione delle ricompense si dividono in due categorie principali: sparse e dense.
| Tipo | Modalità di assegnazione | Vantaggi | Svantaggi |
|---|---|---|---|
| Ricompensa sparsa | Ricompensa solo per un risultato, come successo o fallimento (ad esempio, +1 per il raggiungimento dell'obiettivo, 0 altrimenti) | Difficile distorcere l'intento del progettista; onesta come specifica | Il processo di tentativi ed errori prima di ottenere una ricompensa può essere lungo, rallentando o addirittura bloccando l'apprendimento. |
Ricompensa densa | Ricompensa sequenziale anche per i progressi intermedi (ad esempio, una piccola ricompensa positiva ogni volta che la distanza dall'obiettivo si riduce) | Un segnale di apprendimento arriva frequentemente, accelerando spesso la convergenza | Una scorciatoia che massimizza una metrica intermedia può allontanarsi dall'obiettivo reale.
Ad esempio, se si assegna a un robot mobile solo una ricompensa sparsa — "+1 al raggiungimento dell'obiettivo, 0 altrimenti" — finché la probabilità di imbattersi nell'obiettivo per caso è bassa, non arriverà quasi mai alcun segnale di apprendimento. Quindi si è tentati di aggiungere una ricompensa densa — "assegna una ricompensa ogni volta che la distanza dall'obiettivo si riduce". Ma se la sola distanza è la ricompensa, possono esserci casi in cui evitare un passaggio stretto e prendere una deviazione accumula una maggiore riduzione istantanea della distanza, rendendo la deviazione "ottimale". Una ricompensa densa favorisce l'apprendimento, ma tende anche a incoraggiare la massimizzazione di una metrica che il progettista non aveva previsto.
3. Modellazione della ricompensa basata sul potenziale: un modo per aggiungere ricompensa senza modificare la strategia ottimale
La modellazione della ricompensa basata sul potenziale (PBRS), presentata da Ng, Harada e Russell (1999), è un metodo per aggiungere una ricompensa densa in modo sicuro. Definiamo una funzione potenziale \Phi(s) sugli stati e assegniamo la ricompensa aggiunta come differenza di potenziale prima e dopo una transizione di stato.
Utilizziamo lo stesso sconto γ del rendimento originale. Su T transizioni, la somma di modellazione scontata è:
Impostando Φ a zero negli stati terminali, si ottiene una differenza solo nello stato iniziale, evitando una preferenza aggiuntiva per la durata dell'episodio o per il percorso. Per un orizzonte infinito, 0≤γ<1 e Φ limitato fanno sì che il termine terminale si annulli. Se il termine terminale varia in base al percorso o al tempo di sosta, l'invarianza della politica non è incondizionata. Un potenziale a distanza negativa deve utilizzare lo sconto originale e definizioni di stato/terminale coerenti. L'esempio +2/+1/+2 nella figura utilizza γ=1 e Φ terminale=0.
Figura 1 — Esempio con γ=1 e Φ terminale=0. Per γ generico, utilizzare la somma finita scontata sopra.
4. Reward Hacking: ottenere un punteggio alla lettera, ma non secondo l'intento
Reward hacking, o specification gaming, è un fenomeno in cui un agente soddisfa rigorosamente la lettera della funzione di ricompensa ottenendo un'elevata ricompensa attraverso un comportamento molto distante dall'intento del progettista.
Un esempio ben noto è l'esperimento di OpenAI che ha addestrato un agente nel gioco di corse di barche CoastRunners. Questo gioco aveva una meccanica per cui colpire i bersagli lungo il percorso contribuiva al punteggio. I progettisti hanno impostato la massimizzazione del punteggio come ricompensa con l'intento che l'agente completasse la gara raccogliendo anche i bersagli, ma l'agente addestrato non è avanzato affatto lungo il percorso: è rimasto in un angolo di una laguna, speronando ripetutamente tre bersagli che continuavano a ricomparire lì, incendiando la propria imbarcazione e scontrandosi con altre barche, il tutto accumulando un punteggio superiore a quello di un giocatore umano medio. Questo è il risultato della massimizzazione letterale dell'"obiettivo scritto" - la collisione con i bersagli - piuttosto che dell'"obiettivo previsto" di completare la gara.
Questo tipo di fenomeno si verifica spesso sfruttando una falla nella funzione di ricompensa (un bug, una svista o un comportamento che esiste solo nel simulatore). Le contromisure pratiche includono la scomposizione di ogni termine della ricompensa in un registro per verificare su quale termine la politica addestrata sta calcolando il punteggio, la scrittura dell'intento in una forma leggibile dall'uomo e il rilevamento delle deviazioni da esso, e la verifica delle prestazioni finali in un ambiente di valutazione indipendente dall'ambiente di addestramento. Modificare solo l'algoritmo spesso non risolve il problema: la ricompensa e l'infrastruttura di verifica che la circonda sono al centro del problema. Contromisura.
5. Stima basata su dimostrazioni anziché sulla definizione della ricompensa: l'apprendimento per rinforzo inverso come opzione
Una soluzione alla difficoltà intrinseca della progettazione delle ricompense è semplicemente quella di non farle scrivere a mano da un essere umano. L'apprendimento per rinforzo inverso (IRL) funziona a ritroso a partire dai dati di una dimostrazione, sia umana che di un sistema esistente, per inferire una funzione di ricompensa che spieghi tale comportamento e quindi ottimizzare una politica in base a tale ricompensa.
Più è difficile definire una buona ricompensa per un compito, ad esempio "mettere la tazza sullo scaffale senza farla cadere", maggiore è la motivazione per l'IRL a inferire l'obiettivo dalla dimostrazione. Detto questo, come spiegato in Apprendimento per imitazione e RL inverso, una ricompensa stimata tramite IRL non è univoca e non vi è alcuna garanzia di come si comporterà in situazioni non presenti nelle dimostrazioni. La difficoltà di definire una ricompensa a mano e l'incertezza di una ricompensa stimata a partire da Le dimostrazioni rappresentano i due estremi di un compromesso che non si annulla mai in entrambi i casi, e qualunque sia la scelta, è comunque necessario verificare il comportamento in situazioni non viste con una valutazione indipendente.
6. Non raggruppare tutto in un'unica ricompensa: il framework di apprendimento per rinforzo vincolato
Finora, la discussione ha presupposto di raggruppare ogni obiettivo (completamento del compito, sicurezza, efficienza energetica, comfort) in un'unica ricompensa scalare R(s,a,s') come somma ponderata.
Ma è pericoloso includere un obiettivo come la sicurezza, dove "anche una singola violazione può essere fatale", nella stessa somma ponderata di altri obiettivi. Indipendentemente da quanto si assegni un peso al termine relativo alla sicurezza, teoricamente rimane sempre un caso in cui la ricompensa per il compito è sufficientemente elevata da rendere comunque "vantaggiosa" una violazione. L'apprendimento per rinforzo vincolato (RL sicuro) separa la funzione obiettivo dai vincoli.
Qui C è una funzione di costo (collisione, deviazione, generazione di forza pericolosa, ecc.) e d è il limite superiore consentito. Massimizza la ricompensa trattando il vincolo — ovvero che il costo previsto non deve superare una certa soglia — come un elemento separato. Questo sostituisce il problema di calibrazione che continua ad affliggere i progettisti di sistemi di ricompensa — "quale dovrebbe essere il peso del termine di sicurezza?" — con un parametro diverso e, in molti casi, più interpretabile: la soglia del vincolo.
A livello di implementazione, come accennato anche in Nozioni di base sull'apprendimento per rinforzo e Q-Learning e DQN, posizionare i vincoli di sicurezza — un limite di velocità, un limite flessibile dell'angolo articolare, un arresto di emergenza — all'esterno del sistema di apprendimento (in un sistema di supervisione) è anche un'espressione pratica di questo stesso concetto. L'idea di "non affidarsi a una sola ricompensa". La formulazione dell'apprendimento per rinforzo vincolato e la supervisione della sicurezza esterna all'apprendista realizzano entrambe la stessa filosofia di base: "la sicurezza non dovrebbe essere affidata solo alla ponderazione delle ricompense", a livelli diversi.
7. Checklist per la progettazione delle ricompense
-
Hai scomposto ogni termine della ricompensa in un logaritmo e verificato individualmente su quale termine si basa il punteggio della policy addestrata? Ogni termine di una ricompensa densa è un proxy ragionevole per l'obiettivo effettivo?
-
Quando aggiungi una ricompensa densa, hai verificato se può essere scritta come una differenza di potenziale? In caso contrario, puoi accettare il rischio che la policy ottimale cambi involontariamente?
-
Hai esaminato la ricompensa per individuare eventuali falle (bug, comportamenti specifici del simulatore, condizioni limite) prima dell'addestramento? Hai valutato la policy addestrata rispetto a un criterio indipendente dalla ricompensa (sembra corretta a un essere umano, ha successo nel compito effettivo)?
-
Per i compiti in cui scrivere una buona ricompensa è di per sé difficile, hai considerato alternative come l'apprendimento per rinforzo inverso (IRL) o l'apprendimento per imitazione?
-
Stai mescolando un obiettivo che "deve" "Non deve mai essere violato", come la sicurezza, nella stessa somma ponderata della ricompensa del compito? È possibile separarlo utilizzando una formulazione di apprendimento per rinforzo vincolato o una supervisione della sicurezza esterna all'agente di apprendimento?
- Avete preparato dati di valutazione, indipendenti dall'addestramento, in condizioni diverse dall'ambiente di addestramento (stato iniziale, disturbi, scenari non visti)?
Riepilogo
Nelle implementazioni di apprendimento per rinforzo, la progettazione della ricompensa spesso richiede più tempo della selezione dell'algoritmo. Una ricompensa sparsa è onesta ma apprende lentamente; una ricompensa densa accelera l'apprendimento ma è soggetta a creare scorciatoie che si discostano dall'intento. La modellazione della ricompensa basata sul potenziale è uno dei pochi modi per aggiungere questa ricompensa densa con la garanzia che "non modificherà la politica ottimale". Ciononostante, la manipolazione della ricompensa si verifica realmente: come dimostrano casi come CoastRunners, un agente può massimizzare letteralmente la ricompensa scritta, ma in un modo che è lontano dall'intento. L'apprendimento per rinforzo inverso, che inferisce la ricompensa dalle dimostrazioni invece di farla scrivere da un essere umano, e l'apprendimento per rinforzo vincolato, che separa la sicurezza dalla ponderazione della ricompensa, sono entrambi Opzioni nate dalla stessa lezione: non affidare tutto a un'unica ricompensa.
Cosa può omettere una ricompensa per l'arrivo rapido?
Può omettere collisioni, movimenti bruschi o consumo di energia. Verifica le scappatoie e i vincoli che devono valere indipendentemente dalla ricompensa.
Riferimenti
- Ng, Harada e Russell, Policy Invariance Under Reward Transformations: Theory and Application to Reward Shaping (ICML, 1999)
- OpenAI, Faulty Reward Functions in the Wild
- Victoria Krakovna, Specification Gaming Examples in AI
- [Lilian Weng, Reward Hacking nell'apprendimento per rinforzo
- Le basi dell'apprendimento per rinforzo, Introduzione a Q-Learning e DQN, Apprendimento per imitazione e apprendimento per rinforzo inverso
Commenti
Accedi per continuare.
Nessun dato disponibile.