Apprendimento automatico rapido tramite la composizione di comportamenti

'Rapido apprendimento automatico tramite comportamenti compositi.'

La natura compositiva dell’intelligenza

Immagina se dovessi imparare di nuovo come tagliare, sbucciare e mescolare ogni volta che vuoi imparare una nuova ricetta. In molti sistemi di apprendimento automatico, gli agenti spesso devono imparare completamente da zero quando si trovano di fronte a nuove sfide. È chiaro, però, che le persone imparano in modo più efficiente: possono combinare abilità apprese in precedenza. Allo stesso modo in cui un dizionario finito di parole può essere riassemblato in frasi con significati quasi infiniti, le persone riutilizzano e ricombinano abilità che già possiedono per affrontare sfide nuove.

Nella natura, l’apprendimento si sviluppa quando un animale esplora e interagisce con il suo ambiente per raccogliere cibo e altre ricompense. Questo è il paradigma catturato dall’apprendimento per rinforzo (RL): le interazioni con l’ambiente rinforzano o inibiscono particolari modelli di comportamento a seconda della ricompensa (o della penalità) ottenuta. Di recente, la combinazione di RL con l’apprendimento profondo ha portato a risultati impressionanti, come agenti che possono imparare a giocare a giochi da tavolo come Go e scacchi, l’intero spettro dei giochi Atari e anche giochi video moderni e complessi come Dota e StarCraft II.

Una limitazione principale nell’RL è che i metodi attuali richiedono un’enorme quantità di esperienza di allenamento. Ad esempio, per imparare a giocare a un singolo gioco Atari, un agente RL consuma tipicamente una quantità di dati corrispondente a diverse settimane di gioco ininterrotto. Uno studio condotto da ricercatori del MIT e di Harvard ha indicato che, in alcuni casi, gli esseri umani sono in grado di raggiungere lo stesso livello di prestazioni in soli quindici minuti di gioco.

Una possibile ragione di questa discrepanza è che, a differenza degli esseri umani, gli agenti RL di solito imparano un nuovo compito da zero. Vorremmo che i nostri agenti sfruttassero le conoscenze acquisite in compiti precedenti per imparare più rapidamente un nuovo compito, allo stesso modo in cui un cuoco avrà più facilità nell’imparare una nuova ricetta rispetto a qualcuno che non ha mai preparato un piatto prima. In un articolo pubblicato di recente nelle Proceedings of the National Academy of Sciences (PNAS), descriviamo un framework volto a dotare i nostri agenti RL di questa capacità.

Due modi di rappresentare il mondo

Per illustrare il nostro approccio, esploreremo un esempio di un’attività che è (o almeno era) una routine quotidiana: il tragitto per andare al lavoro. Immagina il seguente scenario: un agente deve andare al lavoro ogni giorno da casa sua all’ufficio e prendere sempre un caffè lungo il percorso. Ci sono due caffetterie tra la casa dell’agente e l’ufficio: una ha un caffè ottimo ma si trova su un percorso più lungo, e l’altra ha un caffè decente ma un tragitto più breve (Figura 1). A seconda di quanto l’agente valuta la qualità del caffè rispetto alla fretta che ha in un determinato giorno, potrebbe scegliere una delle due strade (i percorsi giallo e blu sulla mappa mostrata nella Figura 1).

Figura 1: Una mappa di un tragitto illustrativo per il lavoro.

Tradizionalmente, gli algoritmi RL si dividono in due categorie principali: agenti basati su modelli e agenti senza modelli (Figure 2 e 3). Un agente basato su modelli (Figura 2) costruisce una rappresentazione di molti aspetti dell’ambiente. Un agente di questo tipo potrebbe sapere come sono collegati i diversi luoghi, la qualità del caffè in ogni caffetteria e tutto ciò che è considerato rilevante. Un agente senza modelli (Figura 3) ha una rappresentazione molto più compatta del suo ambiente. Ad esempio, un agente senza modelli basato sui valori avrebbe associato a ciascun possibile percorso che esce da casa sua un singolo numero; questo è il “valore” atteso di ciascun percorso, che riflette una specifica ponderazione tra qualità del caffè e lunghezza del tragitto. Prendiamo ad esempio il percorso blu mostrato nella Figura 1. Supponiamo che questo percorso abbia una lunghezza di 4 e che il caffè che l’agente ottiene seguendo questo percorso sia valutato 3 stelle. Se all’agente interessa la distanza del tragitto il 50% in più rispetto alla qualità del caffè, il valore di questo percorso sarà (-1,5 x 4) + (1 x 3) = -3 (usiamo un peso negativo associato alla distanza per indicare che i tragitti più lunghi sono indesiderabili).

Figura 2: Come un agente basato su modelli rappresenta il mondo. Nella rappresentazione sono catturati solo i dettagli rilevanti per l'agente (da confrontare con la Figura 1). Tuttavia, la rappresentazione è considerevolmente più complessa rispetto a quella utilizzata da un agente senza modelli (da confrontare con la Figura 3).

Possiamo interpretare il peso relativo della qualità del caffè rispetto alla distanza del tragitto come le preferenze dell’agente. Per un determinato insieme di preferenze fisse, un agente senza modello e un agente basato sul modello sceglierebbero la stessa rotta. Perché quindi avere una rappresentazione più complicata del mondo, come quella utilizzata da un agente basato sul modello, se il risultato finale è lo stesso? Perché imparare così tanto sull’ambiente se alla fine l’agente finisce per sorseggiare lo stesso caffè?

Le preferenze possono cambiare di giorno in giorno: un agente potrebbe tener conto di quanto è affamato o se è in ritardo per una riunione, nella pianificazione del suo percorso per l’ufficio. Un modo per un agente senza modello di gestire ciò è imparare il miglior percorso associato a ogni possibile insieme di preferenze. Questo non è ideale perché imparare ogni possibile combinazione di preferenze richiederebbe molto tempo. È anche impossibile imparare un percorso associato a ogni possibile insieme di preferenze se ce ne sono un numero infinito.

Al contrario, un agente basato sul modello può adattarsi a qualsiasi insieme di preferenze, senza alcun apprendimento, “immaginando” tutti i possibili percorsi e chiedendosi quanto bene soddisferebbero la sua attuale mentalità. Tuttavia, questo approccio ha anche degli svantaggi. In primo luogo, generare “mentalmente” ed valutare tutte le possibili traiettorie può richiedere molto tempo di calcolo. In secondo luogo, costruire un modello dell’intero mondo può essere molto difficile in ambienti complessi.

Gli agenti senza modello apprendono più velocemente ma sono fragili ai cambiamenti. Gli agenti basati sul modello sono flessibili ma possono essere lenti nell’apprendimento. Esiste una soluzione intermedia?

Caratteristiche successive: un punto intermedio

Uno studio recente in scienze comportamentali e neuroscienze suggerisce che in determinate situazioni, gli esseri umani e gli animali prendono decisioni basate su un modello algoritmico che rappresenta un compromesso tra gli approcci senza modello e basati sul modello ( qui e qui ). L’ipotesi è che, come gli agenti senza modello, gli esseri umani calcolino anche il valore delle strategie alternative sotto forma di un numero. Tuttavia, anziché riassumere una singola quantità, gli esseri umani riassumono molte diverse quantità che descrivono il mondo circostante, in modo simile agli agenti basati sul modello.

È possibile dotare un agente di apprendimento per rinforzo della stessa capacità. Nel nostro esempio, un tale agente avrebbe, per ogni percorso, un numero che rappresenta la qualità attesa del caffè e un numero che rappresenta la distanza dall’ufficio. Potrebbe anche avere numeri associati a cose che l’agente non sta cercando deliberatamente di ottimizzare ma che sono comunque disponibili per riferimenti futuri (ad esempio, la qualità del cibo in ogni caffetteria). Gli aspetti del mondo a cui l’agente tiene conto e tiene traccia sono talvolta definiti come “caratteristiche”. Per questo motivo, questa rappresentazione del mondo è chiamata caratteristiche successive (precedentemente definita “rappresentazione successiva” nella sua incarnazione originale ).

Le caratteristiche successive possono essere considerate come un punto intermedio tra le rappresentazioni senza modello e basate sul modello. Come quest’ultime, le caratteristiche successive riassumono molte diverse quantità, catturando il mondo oltre un singolo valore. Tuttavia, come nella rappresentazione senza modello, le quantità che l’agente tiene traccia sono statistiche semplici che riassumono le caratteristiche che gli interessano. In questo modo, le caratteristiche successive sono come una versione “scomposta” dell’agente senza modello. La Figura 4 illustra come un agente che utilizza le caratteristiche successive vedrebbe il nostro ambiente di esempio.

Utilizzo delle caratteristiche successorie: composizione di nuovi piani da un dizionario di politiche

Le caratteristiche successorie sono una rappresentazione utile perché consentono di valutare un percorso in base a differenti insiemi di preferenze. Prendiamo il percorso blu nella Figura 1 come esempio. Utilizzando le caratteristiche successorie, l’agente avrebbe associati a questo percorso tre numeri: la sua lunghezza (4), la qualità del caffè (3) e la qualità del cibo (5). Se l’agente ha già fatto colazione, probabilmente non si preoccuperà molto del cibo; inoltre, se è tardi, potrebbe preoccuparsi più della distanza del tragitto rispetto alla qualità del caffè, diciamo il 50% in più, come prima. In questo scenario, il valore del percorso blu sarebbe (-1,5 x 4) + (1 x 3) + (0 x 5) = -3, come nell’esempio precedente. Ma ora, in un giorno in cui l’agente ha fame e quindi si preoccupa del cibo tanto quanto del caffè, può aggiornare immediatamente il valore di questo percorso a (-1,5 x 4) + (1 x 3) + (1 x 5) = 2. Utilizzando la stessa strategia, l’agente può valutare qualsiasi percorso secondo qualsiasi insieme di preferenze.

Nel nostro esempio, l’agente sta scegliendo tra percorsi. In generale, l’agente cercherà una politica: una prescrizione su cosa fare in ogni possibile situazione. Politiche e percorsi sono strettamente correlati: nel nostro esempio, una politica che sceglie di prendere la strada per il café A da casa e poi sceglie la strada per l’ufficio dal café A percorrerà il percorso blu. Quindi, in questo caso, possiamo parlare di politiche e percorsi in modo interscambiabile (questo non sarebbe vero se ci fosse qualche casualità nell’ambiente, ma tralasciamo questo dettaglio). Abbiamo discusso di come le caratteristiche successorie consentano di valutare un percorso (o politica) secondo diversi insiemi di preferenze. Chiamiamo questo processo valutazione generalizzata della politica, o GPE.

Perché GPE è utile? Supponiamo che l’agente abbia un dizionario di politiche (ad esempio, percorsi conosciuti per l’ufficio). Data un insieme di preferenze, l’agente può utilizzare GPE per valutare immediatamente quanto bene ogni politica nel dizionario si comporterebbe secondo tali preferenze. Ora la parte davvero interessante: basandosi su questa valutazione rapida delle politiche conosciute, l’agente può creare politiche completamente nuove al volo. Il modo in cui lo fa è semplice: ogni volta che l’agente deve prendere una decisione, pone la seguente domanda: “se dovessi prendere questa decisione e poi seguire la politica con il valore massimo successivamente, quale decisione porterebbe al valore massimo complessivo?” Sorprendentemente, se l’agente sceglie la decisione che porta al massimo valore complessivo in ogni situazione, finisce per avere una politica che spesso è migliore delle politiche individuali utilizzate per crearla.

Questo processo di “assemblare insieme” un insieme di politiche per creare una politica migliore è chiamato miglioramento generalizzato della politica, o GPI. La Figura 5 illustra come funziona il GPI utilizzando il nostro esempio in corso.

Le prestazioni di una politica creata attraverso GPI dipenderanno da quante politiche conosce l’agente. Ad esempio, nel nostro esempio in corso, finché l’agente conosce i percorsi blu e giallo, troverà il percorso migliore per qualsiasi preferenza sulla qualità del caffè e sulla durata del tragitto. Ma la politica GPI non sempre troverà il percorso migliore. Nella Figura 1, l’agente non visiterebbe mai il caffè A e poi il caffè B se non conoscesse già una politica che li collegasse in questo modo (come il percorso arancione nella figura).

Un esempio semplice per mostrare GPE e GPI in azione

Per illustrare i vantaggi di GPE e GPI, ora forniamo uno sguardo su uno degli esperimenti della nostra recente pubblicazione (vedere il documento per tutti i dettagli). L’esperimento utilizza un ambiente semplice che rappresenta in modo astratto il tipo di problema in cui il nostro approccio può essere utile. Come mostrato nella Figura 6, l’ambiente è una griglia 10 x 10 con 10 oggetti distribuiti su di essa. L’agente riceve una ricompensa diversa da zero solo se raccoglie un oggetto, in tal caso un altro oggetto compare in una posizione casuale. La ricompensa associata a un oggetto dipende dal suo tipo. I tipi di oggetti sono pensati per rappresentare concetti concreti o astratti; per collegarci al nostro esempio in corso, considereremo che ogni oggetto sia o “caffè” o “cibo” (questi sono i caratteristiche che l’agente tiene traccia).

Chiaramente, la migliore strategia per l’agente dipende dalle sue preferenze attuali per caffè o cibo. Ad esempio, nella Figura 6, un agente che si interessa solo al caffè può seguire il percorso in rosso, mentre un agente focalizzato esclusivamente sul cibo seguirebbe il percorso blu. Possiamo anche immaginare situazioni intermedie in cui l’agente desidera caffè e cibo con pesi diversi, compreso il caso in cui l’agente voglia evitare uno dei due. Ad esempio, se l’agente vuole caffè ma non vuole assolutamente cibo, il percorso grigio nella Figura 6 potrebbe essere un’alternativa migliore rispetto a quello rosso.

La sfida di questo problema è adattarsi rapidamente a un nuovo insieme di preferenze (o un “compito”). Nei nostri esperimenti abbiamo mostrato come si possa fare utilizzando GPE e GPI. Il nostro agente ha imparato due politiche: una che cerca il caffè e una che cerca il cibo. Abbiamo quindi testato le prestazioni della politica calcolata da GPE e GPI su compiti associati a preferenze diverse. Nella figura 7 confrontiamo il nostro metodo con un agente senza modello sul compito di cercare il caffè evitando il cibo. Osserviamo come l’agente che utilizza GPE e GPI sintetizzi istantaneamente una politica ragionevole, anche se non ha mai imparato come evitare deliberatamente gli oggetti. Naturalmente, la politica calcolata da GPE e GPI può essere utilizzata come soluzione iniziale da perfezionare successivamente mediante l’apprendimento, il che significa che sarebbe equivalente alle prestazioni finali di un agente senza modello ma probabilmente ci arriverebbe più velocemente.

Figura 7: Un agente GPE-GPI impara a svolgere bene il compito con molte meno informazioni di addestramento rispetto a un metodo senza modello (Q-learning). Qui il compito è cercare il caffè evitando il cibo. L'agente GPE-GPI ha imparato due politiche, una che cerca il caffè e una che cerca il cibo. Riesce ad evitare il cibo anche se non è mai stato addestrato ad evitare un oggetto. Le regioni ombreggiate sono una deviazione standard su 100 esecuzioni.

La figura 7 mostra le prestazioni di GPE e GPI su un compito specifico. Abbiamo anche testato lo stesso agente su molti altri compiti. La figura 8 mostra cosa succede alle prestazioni degli agenti senza modello e GPE-GPI quando cambiamo l’importanza relativa del caffè e del cibo. Si noti che, mentre l’agente senza modello deve imparare ogni compito separatamente, da zero, l’agente GPE-GPI impara solo due politiche e si adatta rapidamente a tutti i compiti.

Figura 8: Prestazioni dell'agente GPE-GPI su diversi compiti. Ogni barra corrisponde a un compito indotto da un insieme di preferenze sul caffè e sul cibo. Le sfumature di colore sotto il grafico rappresentano gli insiemi di preferenze: il blu indica un peso positivo, il bianco indica un peso zero e il rosso indica un peso negativo. Quindi, ad esempio, agli estremi del grafico abbiamo compiti in cui l'obiettivo è essenzialmente evitare un tipo di oggetto ignorando l'altro, mentre al centro il compito è cercare entrambi i tipi di oggetti con uguale impulso. Le barre di errore corrispondono a una deviazione standard su 10 esecuzioni.

Gli esperimenti sopra hanno utilizzato un ambiente semplice progettato per mostrare le proprietà necessarie per GPE e GPI senza fattori di confusione superflui. Ma GPE e GPI sono stati applicati anche su larga scala. Ad esempio, in lavori precedenti ( qui e qui ) abbiamo mostrato come la stessa strategia funzioni anche quando sostituiamo un mondo a griglia con un ambiente tridimensionale in cui l’agente riceve osservazioni da una prospettiva in prima persona (vedi video illustrativi qui e qui ). Abbiamo anche utilizzato GPE e GPI per consentire a un robot simulato a quattro zampe di navigare in qualsiasi direzione dopo aver imparato a farlo solo lungo tre direzioni (vedi articolo qui e video qui ).

GPE e GPI nel contesto

Il lavoro su GPE e GPI si trova all’incrocio di due rami separati di ricerca relativi a queste operazioni individualmente. Il primo, relativo a GPE, è il lavoro sulla rappresentazione successiva, iniziato con il seminale articolo di Dayan del 1993. L’articolo di Dayan ha inaugurato una linea di lavoro in neuroscienze che è ancora molto attiva oggi (vedi ulteriori letture: “La rappresentazione successiva in neuroscienze”). Recentemente, la rappresentazione successiva è riemersa nel contesto dell’RL (link qui e qui ), dove è anche chiamata “successor features”, ed è diventata anche una linea di ricerca attiva lì (vedi ulteriori letture: “GPE, successor features e approcci correlati”). Le successor features sono anche strettamente legate alle funzioni di valore generali , un concetto basato sull’ipotesi di Sutton et al. secondo cui le conoscenze rilevanti possono essere espresse sotto forma di molte previsioni sul mondo (discusso anche qui ). La definizione delle successor features è emersa indipendentemente in altri contesti all’interno dell’RL ed è anche correlata ad approcci più recenti normalmente associati all’RL profondo.

Il secondo ramo di ricerca alle origini di GPE e GPI, relativo a quest’ultimo, si occupa della composizione dei comportamenti per creare nuovi comportamenti. L’idea di un controllore decentralizzato che esegue sub-controllori è emersa più volte nel corso degli anni (ad esempio, Brooks, 1986 ), e la sua implementazione utilizzando funzioni di valore può essere fatta risalire almeno al 1997, con le tesi di dottorato di Humphrys e Karlsson. GPI è anche strettamente legato all’RL gerarchico, le cui basi sono state gettate negli anni ’90 e nei primi anni 2000 nei lavori di Dayan e Hinton , Parr e Russell , Sutton, Precup e Singh e Dietterich . Sia la composizione dei comportamenti che l’RL gerarchico sono oggi aree di ricerca dinamiche (vedi ulteriori letture: “GPI, RL gerarchico e approcci correlati”).

Mehta et al . sono probabilmente stati i primi a utilizzare congiuntamente GPE e GPI, anche se nello scenario da loro considerato GPI si riduce a una singola scelta all’inizio (vale a dire, non c’è “cucitura” delle politiche). La versione di GPE e GPI discussa in questo post del blog è stata proposta per la prima volta nel 2016 come meccanismo per promuovere l’apprendimento trasferito . Il trasferimento nell’RL risale al lavoro di Singh nel 1992 ed ha recentemente vissuto una rinascita nel contesto dell’RL profondo, dove continua ad essere un’area di ricerca attiva (vedi ulteriori letture: “GPE + GPI, apprendimento trasferito e approcci correlati”).

Vedi ulteriori informazioni su questi lavori di seguito, dove forniamo anche un elenco di suggerimenti per ulteriori letture.

Un approccio compositivo all’apprendimento per rinforzo

In sintesi, un agente privo di modelli non può facilmente adattarsi a nuove situazioni, ad esempio per adattarsi a insiemi di preferenze che non ha mai sperimentato prima. Un agente basato su modelli può adattarsi a qualsiasi nuova situazione, ma per farlo deve prima imparare un modello dell’intero mondo. Un agente basato su GPE e GPI offre una soluzione intermedia: sebbene il modello del mondo che impara sia considerevolmente più piccolo rispetto a quello di un agente basato su modelli, può adattarsi rapidamente a determinate situazioni, spesso con buone prestazioni.

Abbiamo discusso istanze specifiche di GPE e GPI, ma queste sono in realtà concetti più generali. A un livello astratto, un agente che utilizza GPE e GPI procede in due fasi. In primo luogo, quando si trova di fronte a un nuovo compito, si chiede: “Quanto bene si comporterebbero le soluzioni ai compiti conosciuti su questo nuovo compito?” Questo è GPE. Quindi, in base a questa valutazione, l’agente combina le soluzioni precedenti per costruire una soluzione per il nuovo compito, cioè esegue GPI. Le meccaniche specifiche dietro GPE e GPI sono meno importanti del principio stesso, e trovare modi alternativi per svolgere queste operazioni potrebbe essere una direzione di ricerca interessante. Curiosamente, uno nuovo studio nelle scienze comportamentali fornisce prove preliminari che gli esseri umani prendono decisioni in scenari multitasking seguendo un principio che assomiglia molto a GPE e GPI.

La rapida adattabilità fornita da GPE e GPI è promettente per la costruzione di agenti RL con apprendimento più veloce. Più in generale, suggerisce un nuovo approccio per imparare soluzioni flessibili ai problemi. Invece di affrontare un problema come un unico, monolitico compito, un agente può suddividerlo in sottocompiti più piccoli e gestibili. Le soluzioni dei sottocompiti possono quindi essere riutilizzate e ricombine per risolvere il compito complessivo più velocemente. Ciò porta a un approccio compositivo all’RL che potrebbe portare a agenti più scalabili. Almeno, questi agenti non saranno in ritardo a causa di una tazza di caffè.