Sommario[Nascondere][Spettacolo]
Immaginiamo che tu stia cercando di insegnare a un robot come camminare. A differenza di insegnare a un computer come prevedere i prezzi delle azioni o classificare le immagini, non abbiamo davvero un grande set di dati che possiamo usare per addestrare il nostro robot.
Anche se può venirti naturale, camminare è in realtà un'azione molto complessa. Fare un passo in genere coinvolge dozzine di muscoli diversi che lavorano insieme. Lo sforzo e le tecniche utilizzate per camminare da un luogo all'altro dipendono anche da una varietà di fattori, incluso se stai trasportando qualcosa o se c'è una pendenza o altri tipi di ostacoli.
In scenari come questi, possiamo utilizzare un metodo noto come apprendimento per rinforzo o RL. Con RL, puoi definire un obiettivo specifico che vuoi che il tuo modello risolva e lasciare che gradualmente il modello impari da solo come raggiungerlo.
In questo articolo, esploreremo le basi dell'apprendimento per rinforzo e come possiamo applicare il framework RL a una varietà di problemi diversi nel mondo reale.
Cos'è l'apprendimento per rinforzo?
L'apprendimento per rinforzo si riferisce a un particolare sottoinsieme di machine learning che si concentra sulla ricerca di soluzioni premiando i comportamenti desiderati e punendo i comportamenti indesiderati.
A differenza dell'apprendimento supervisionato, il metodo di apprendimento per rinforzo in genere non dispone di un set di dati di addestramento che fornisca l'output corretto per un dato input. In assenza di dati di addestramento, l'algoritmo deve trovare la soluzione attraverso tentativi ed errori. L'algoritmo, che in genere chiamiamo an agente, deve trovare la soluzione da solo interagendo con il ambiente.
I ricercatori decidono su quali risultati particolari premiare e cosa è in grado di fare l'algoritmo. Ogni azione l'algoritmo prende riceverà una qualche forma di feedback che valuta quanto bene sta andando l'algoritmo. Durante il processo di addestramento, l'algoritmo alla fine troverà la soluzione ottimale per risolvere un determinato problema.
Un semplice esempio: griglia 4×4
Diamo un'occhiata a un semplice esempio di un problema che possiamo risolvere con l'apprendimento per rinforzo.
Supponiamo di avere una griglia 4×4 come nostro ambiente. Il nostro agente viene posizionato casualmente in una delle piazze insieme ad alcuni ostacoli. La griglia conterrà tre ostacoli "fossa" che devono essere evitati e una singola ricompensa "diamante" che l'agente deve trovare. La descrizione completa del nostro ambiente è nota come dell'ambiente stato.
Nel nostro modello RL, il nostro agente può spostarsi in qualsiasi casella adiacente purché non ci siano ostacoli che lo bloccano. L'insieme di tutte le azioni valide in un dato ambiente è noto come spazio di azione. L'obiettivo del nostro agente è trovare la via più breve per la ricompensa.
Il nostro agente utilizzerà il metodo di apprendimento per rinforzo per trovare il percorso verso il diamante che richiede il minor numero di passaggi. Ogni passo giusto darà al robot una ricompensa e ogni passo sbagliato sottrarrà la ricompensa del robot. Il modello calcola la ricompensa totale una volta che l'agente raggiunge il diamante.
Ora che abbiamo definito l'agente e l'ambiente, dobbiamo anche definire le regole da utilizzare per determinare l'azione successiva che l'agente intraprenderà dato il suo stato attuale e l'ambiente.
Politiche e premi
In un modello di apprendimento per rinforzo, a politica si riferisce alla strategia utilizzata da un agente per raggiungere i propri obiettivi. La politica dell'agente è ciò che decide cosa deve fare l'agente dopo dato lo stato corrente dell'agente e il suo ambiente.
L'agente deve valutare tutte le politiche possibili per vedere quale politica è ottimale.
Nel nostro semplice esempio, l'atterraggio su uno spazio vuoto restituirà un valore di -1. Quando l'agente atterra su uno spazio con la ricompensa di diamanti, riceverà un valore di 10. Usando questi valori, possiamo confrontare le diverse politiche usando un funzione utile U.
Confrontiamo ora l'utilità delle due politiche viste sopra:
U(A) = -1 – 1 -1 + 10 = 7
U(B) = -1 – 1 – 1 – 1 – 1 + 10 = 5
I risultati mostrano che la politica A è il percorso migliore per trovare la ricompensa. Pertanto, l'agente utilizzerà il percorso A rispetto alla politica B.
Esplorazione contro sfruttamento
Il problema del compromesso tra esplorazione e sfruttamento nell'apprendimento per rinforzo è un dilemma che un agente deve affrontare durante il processo decisionale.
Gli agenti dovrebbero concentrarsi sull'esplorazione di nuovi percorsi o opzioni o dovrebbero continuare a sfruttare le opzioni che già conoscono?
Se l'agente sceglie di esplorare, c'è la possibilità per l'agente di trovare un'opzione migliore, ma potrebbe anche rischiare di sprecare tempo e risorse. D'altra parte, se l'agente sceglie di sfruttare la soluzione che già conosce, potrebbe perdere un'opzione migliore.
Applicazioni pratiche
Ecco alcuni modi Ricercatori di intelligenza artificiale hanno applicato modelli di apprendimento per rinforzo per risolvere problemi del mondo reale:
Apprendimento per rinforzo nelle auto a guida autonoma
L'apprendimento per rinforzo è stato applicato alle auto a guida autonoma per migliorare la loro capacità di guidare in modo sicuro ed efficiente. La tecnologia consente alle auto autonome di imparare dai propri errori e di adattare continuamente il proprio comportamento al fine di ottimizzare le proprie prestazioni.
Ad esempio, la società di intelligenza artificiale con sede a Londra Wayve ha applicato con successo un modello di apprendimento per rinforzo profondo per la guida autonoma. Nel loro esperimento, hanno utilizzato una funzione di ricompensa che massimizza la quantità di tempo in cui il veicolo funziona senza che il conducente a bordo fornisca input.
I modelli RL aiutano anche le auto a prendere decisioni basate sull'ambiente, come evitare ostacoli o immettersi nel traffico. Questi modelli devono trovare un modo per convertire l'ambiente complesso che circonda un'auto in uno spazio di stato rappresentativo che il modello possa comprendere.
Apprendimento per rinforzo in robotica
I ricercatori hanno anche utilizzato l'apprendimento per rinforzo per sviluppare robot in grado di apprendere compiti complessi. Attraverso questi modelli RL, i robot sono in grado di osservare il loro ambiente e prendere decisioni in base alle loro osservazioni.
Ad esempio, sono state condotte ricerche sull'utilizzo di modelli di apprendimento per rinforzo per consentire ai robot bipedi di imparare a farlo camminare da soli.
I ricercatori considerano RL un metodo chiave nel campo della robotica. L'apprendimento per rinforzo offre agli agenti robotici una struttura per apprendere azioni sofisticate che potrebbero essere altrimenti difficili da progettare.
Apprendimento per rinforzo nei giochi
I modelli RL sono stati utilizzati anche per imparare a giocare ai videogiochi. Gli agenti possono essere impostati per imparare dai loro errori e migliorare continuamente le loro prestazioni nel gioco.
I ricercatori hanno già sviluppato agenti in grado di giocare a giochi come scacchi, go e poker. Nel 2013, DeepMind ha utilizzato il Deep Reinforcement Learning per consentire a un modello di imparare a giocare ai giochi Atari da zero.
Molti giochi da tavolo e videogiochi hanno uno spazio d'azione limitato e un obiettivo concreto ben definito. Questi tratti funzionano a vantaggio del modello RL. I metodi RL possono iterare rapidamente su milioni di giochi simulati per apprendere le strategie ottimali per ottenere la vittoria.
Conclusione
Che si tratti di imparare a camminare o imparare a giocare ai videogiochi, i modelli RL hanno dimostrato di essere utili framework di intelligenza artificiale per risolvere problemi che richiedono un processo decisionale complesso.
Mentre la tecnologia continua ad evolversi, sia i ricercatori che gli sviluppatori continueranno a trovare nuove applicazioni che sfruttano la capacità di autoapprendimento del modello.
Con quali applicazioni pratiche pensi che l'apprendimento per rinforzo possa aiutare?
Lascia un Commento