di Shweta Bhatt, Youplus.

L’apprendimento per rinforzo è uno degli argomenti di ricerca più caldi attualmente e la sua popolarità sta solo crescendo giorno dopo giorno. Vediamo 5 cose utili da sapere su RL.

  1. Che cos’è il reinforcement learning? Come si relaziona con altre tecniche di ML?

L’apprendimento per rinforzo (RL) è un tipo di tecnica di apprendimento automatico che permette ad un agente di imparare in un ambiente interattivo per tentativi ed errori usando il feedback delle sue azioni ed esperienze.

Anche se sia l’apprendimento supervisionato che quello di rinforzo usano la mappatura tra input e output, a differenza dell’apprendimento supervisionato dove il feedback fornito all’agente è un insieme corretto di azioni per eseguire un compito, l’apprendimento di rinforzo usa premi e punizioni come segnali per comportamenti positivi e negativi.

In confronto all’apprendimento non supervisionato, l’apprendimento di rinforzo è diverso in termini di obiettivi. Mentre l’obiettivo nell’apprendimento non supervisionato è quello di trovare somiglianze e differenze tra i punti dati, nell’apprendimento di rinforzo l’obiettivo è quello di trovare un modello di azione adatto che massimizzi la ricompensa cumulativa totale dell’agente. La figura qui sotto rappresenta l’idea di base e gli elementi coinvolti in un modello di apprendimento per rinforzo.

Figura 1

  1. Come formulare un problema base di apprendimento per rinforzo?

Alcuni termini chiave che descrivono gli elementi di un problema RL sono:

Ambiente: Mondo fisico in cui l’agente opera

Stato: Situazione attuale dell’agente

Reward: Feedback dall’ambiente

Policy: Metodo per mappare lo stato dell’agente alle azioni

Valore: Ricompensa futura che un agente riceverebbe compiendo un’azione in un particolare stato

Un problema di apprendimento per rinforzo può essere spiegato meglio attraverso dei giochi. Prendiamo il gioco di PacMan dove l’obiettivo dell’agente (PacMan) è quello di mangiare il cibo nella griglia evitando i fantasmi sulla sua strada. Il mondo della griglia è l’ambiente interattivo per l’agente. PacMan riceve una ricompensa per aver mangiato il cibo e una punizione se viene ucciso da un fantasma (perde la partita). Gli stati sono la posizione di PacMan nel mondo della griglia e la ricompensa cumulativa totale è la vittoria di PacMan nel gioco.

Per costruire una politica ottimale, l’agente affronta il dilemma di esplorare nuovi stati e allo stesso tempo massimizzare la sua ricompensa. Questo è chiamato Exploration vs Exploitation trade-off.

I processi decisionali di Markov (MDP) sono framework matematici per descrivere un ambiente nel reinforcement learning e quasi tutti i problemi di RL possono essere formalizzati usando gli MDP. Un MDP consiste in un insieme di stati finiti dell’ambiente S, un insieme di possibili azioni A(s) in ogni stato, una funzione di ricompensa con valore reale R(s) e un modello di transizione P(s’, s | a). Tuttavia, è più probabile che gli ambienti del mondo reale non abbiano alcuna conoscenza preliminare delle dinamiche ambientali. I metodi RL senza modello sono utili in questi casi.

Q-learning è un approccio senza modello comunemente usato che può essere usato per costruire un agente PacMan che gioca da solo. Ruota intorno alla nozione di aggiornamento dei valori Q che denota il valore di fare un’azione a nello stato s. La regola di aggiornamento dei valori è il nucleo dell’algoritmo di Q-learning.

Figura 2: Regola di aggiornamento dell’apprendimento per rinforzo

Figura 3: PacMan

Ecco un video di un agente PacMan in apprendimento per rinforzo profondo

  1. Quali sono alcuni algoritmi di apprendimento per rinforzo più usati?

Q-learning e SARSA (State-Action-Reward-State-Action) sono due algoritmi RL senza modello comunemente usati. Essi differiscono in termini di strategie di esplorazione, mentre le loro strategie di sfruttamento sono simili. Mentre Q-learning è un metodo off-policy in cui l’agente impara il valore basato sull’azione a* derivata da un’altra politica, SARSA è un metodo on-policy in cui impara il valore basato sulla sua azione attuale derivata dalla sua politica attuale. Questi due metodi sono semplici da implementare ma mancano di generalità in quanto non hanno la capacità di stimare i valori per gli stati non visti.

Questo può essere superato da algoritmi più avanzati come i Deep Q-Networks che usano reti neurali per stimare i valori Q. Ma le DQN possono gestire solo spazi d’azione discreti e di bassa dimensione. DDPG (Deep Deterministic Policy Gradient) è un algoritmo senza modello, off-policy, actor-critic che affronta questo problema imparando politiche in spazi d’azione continui ad alta dimensione.

Figura 4: architettura actor-critic per Reinforcement Learning

  1. Quali sono le applicazioni pratiche del Reinforcement Learning?

Poiché, RL richiede molti dati, quindi è più applicabile in domini dove i dati simulati sono facilmente disponibili come il gioco, la robotica.

  • RL è abbastanza usato nella costruzione di IA per i giochi per computer. AlphaGo Zero è il primo programma per computer a sconfiggere un campione del mondo nell’antico gioco cinese di Go. Altri includono i giochi ATARI, Backgammon, ecc
  • Nella robotica e nell’automazione industriale, RL è usato per permettere al robot di creare un efficiente sistema di controllo adattivo per se stesso che impara dalla propria esperienza e comportamento.Il lavoro di DeepMind sul Deep Reinforcement Learning per la manipolazione robotica con aggiornamenti asincroni della politica è un buon esempio dello stesso.
  • Guarda questo interessante video di dimostrazione.
  • Altre applicazioni di RL includono motori di riassunto del testo, agenti di dialogo (testo, discorso) che possono imparare dalle interazioni dell’utente e migliorare con il tempo, l’apprendimento di politiche di trattamento ottimali nell’assistenza sanitaria e agenti basati su RL per il trading azionario online.
  1. Come posso iniziare con il Reinforcement Learning?

Per capire i concetti di base della RL,

  • Reinforcement Learning-An Introduction, un libro del padre del Reinforcement Learning- Richard Sutton e del suo consigliere di dottorato Andrew Barto. Una bozza online del libro è disponibile qui http://incompleteideas.net/book/the-book-2nd.html
  • Il materiale didattico di David Silver, incluse le lezioni video, è un ottimo corso introduttivo sulla RL
  • Ecco un altro tutorial tecnico sulla RL di Pieter Abbeel e John Schulman (Open AI/ Berkeley AI Research Lab).
  • Per iniziare a costruire e testare agenti RL,
  • Questo blog su come addestrare un agente di Rete Neurale ATARI Pong con Policy Gradients da pixel grezzi di Andrej Karpathy vi aiuterà ad avere il vostro primo agente di Deep Reinforcement Learning attivo e funzionante in sole 130 righe di codice Python.
  • DeepMind Lab è una piattaforma open source 3D game-like creata per la ricerca AI basata su agenti con ricchi ambienti simulati.
  • Project Malmo è un’altra piattaforma di sperimentazione AI per supportare la ricerca fondamentale in AI.
  • OpenAI gym è un toolkit per costruire e confrontare algoritmi di apprendimento per rinforzo.

Bio: Shweta Bhatt è ricercatrice AI con esperienza nel settore privato e pubblico, appassionata dell’impatto e delle applicazioni di derivazione della conoscenza dai dati per risolvere problemi difficili. Le piace raccontare storie con i dati e risiede a Londra.

Related:

  • Risorgimento dell’IA durante il 1983-2010
  • Esclusivo: Intervista con Rich Sutton, il padre dell’apprendimento per rinforzo
  • Quando l’apprendimento per rinforzo non dovrebbe essere usato?
  • Making Machine Learning Simple

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.