Recentemente, i ricercatori di Intel Lab e della University of Southern California hanno introdotto un sistema di intelligenza artificiale noto come Sample Factory in grado di ottimizzare l’efficienza degli algoritmi di apprendimento del rinforzo su un’impostazione a macchina singola. Sample Factory è un sistema di training ad alta produttività ottimizzato per un’impostazione a macchina singola che combina un campionatore altamente efficiente, asincrono, basato su GPU con tecniche di correzione off-policy.
I ricercatori di organizzazioni e università hanno ottenuto diversi risultati pionieristici sia nell’addestramento di agenti sofisticati per i videogiochi sia nel trasferimento sim-to-real per la robotica negli ultimi anni. I risultati sono stati raggiunti aumentando la scala degli esperimenti di apprendimento di rinforzo .
Tuttavia, tali esperimenti si basano su grandi sistemi distribuiti e richiedono costose configurazioni hardware. Esperimenti su scala miliardaria con ambienti complessi sono diventati all’ordine del giorno per queste ricerche e gli sforzi più avanzati consumano trilioni di transizioni ambientali in una singola sessione di allenamento. Ciò, di conseguenza, limita l’accesso più ampio a questa eccitante area di ricerca.
Qui entra in gioco la Sample Factory. Secondo i ricercatori, Sample Factory mitiga questo problema ottimizzando l’efficienza e l’utilizzo delle risorse degli algoritmi di apprendimento del rinforzo invece di fare affidamento su calcoli distribuiti.
Dietro la fabbrica del campione
Sample Factory è un’architettura per l’ apprendimento del rinforzo ad alto rendimento su uno scenario a macchina singola. È costruito attorno a un algoritmo APPO (Asximchronous Proximal Policy Optimization ), che è un’architettura di apprendimento di rinforzo che consente di parallelizzare in modo aggressivo la raccolta di esperienze e raggiungere un throughput fino a 130000 FPS (frame di ambiente al secondo) su un singolo nodo di calcolo multi-core con una sola GPU.
Un tipico scenario di apprendimento per rinforzo coinvolge tre principali carichi di lavoro computazionali, che sono la simulazione dell’ambiente, l’inferenza del modello e la backpropagation. La motivazione chiave di questa ricerca è stata quella di costruire un sistema in cui il più lento dei tre carichi di lavoro non debba mai attendere altri processi per fornire i dati necessari per eseguire il calcolo successivo poiché il throughput complessivo dell’algoritmo è in definitiva definito dal carico di lavoro con il rendimento più basso.
FISSALO
Per ridurre al minimo il tempo di inattività per tutti i calcoli chiave, i ricercatori hanno associato ciascun carico di lavoro computazionale con uno dei tre tipi di componenti dedicati. Questi componenti comunicano tra loro utilizzando un protocollo rapido basato su code FIFO e memoria condivisa.
Qui, il meccanismo di accodamento fornisce la base per l’esecuzione continua e asincrona, in cui il prossimo passo di calcolo può essere avviato immediatamente fintanto che c’è qualcosa nella coda da elaborare. La decisione di assegnare ciascun carico di lavoro a un tipo di componente dedicato ha inoltre permesso ai ricercatori di parallelizzarli in modo indipendente, ottenendo così un equilibrio delle risorse ottimizzato.
I ricercatori hanno ulteriormente valutato l’algoritmo su una serie di ambienti 3D impegnativi. Hanno usato tre domini di apprendimento di rinforzo per il benchmarking, che sono Atari, VizDoom e DeepMind Lab.
Attraverso questa ricerca, i ricercatori hanno mirato a democratizzare l’apprendimento approfondito dei rinforzi e a rendere possibile la formazione di intere popolazioni di agenti su miliardi di transizioni ambientali usando l’hardware ampiamente disponibile delle materie prime. Può beneficiare di qualsiasi progetto che sfrutti l’ apprendimento di rinforzo senza modelli .
Sample Factory può essere utilizzato come singolo nodo in una configurazione distribuita, in cui ogni macchina ha un campionatore e uno studente. Hanno esteso la Sample Factory per supportare l’auto-gioco e la formazione basata sulla popolazione. I ricercatori hanno fissato: “Con la nostra architettura di sistema, i ricercatori possono ripetere le loro idee più velocemente, accelerando così i progressi nel campo”.
Riassumendo
In questa ricerca, i ricercatori hanno presentato un’architettura di apprendimento di rinforzo efficiente ad alto rendimento . L’architettura combina un campionatore asincrono e altamente efficiente basato su GPU con tecniche di correzione off-policy, che consente di raggiungere un throughput superiore a 10 ^ 5 frame di ambiente / secondo su problemi di controllo non banali in 3D senza sacrificare l’efficienza del campione.