L’apprendimento per rinforzo, chiamato anche Reinforcement Learning, è un metodo sempre più popolare di Machine Learning. Consiste nel lasciare che i computer imparino dalle loro esperienze attraverso un sistema di ricompensa o penalità automatico.
Questa tipologia di apprendimento automatico, dunque, potrebbe anche essere la chiave per l’avvento di un’intelligenza artificiale generale paragonabile a quella umana.
Dopo gli approfondimenti sull’apprendimento supervisionato e non supervisionato, analizziamo l’apprendimento per rinforzo e le sue implicazioni.
Apprendimento per rinforzo: cos’è?
Nel mondo del Machine Learning e del Deep Learning esistono diversi metodi e implicazioni, e uno tra questi in ascesa è proprio l’apprendimento per rinforzo.
L’apprendimento per rinforzo differisce dall’apprendimento supervisionato e non supervisionato in quanto migliora continuamente il suo modello basato sul feedback delle esperienze. La macchina impara per tentativi ed errori, dalle conseguenze della sua azione e da nuove scelte.
Quando viene intrapresa un’azione, dunque, il successo del risultato viene valutato e la macchina per questo riceve un punteggio positivo o negativo. L’algoritmo cerca di ricevere punteggi positivi e il modello è addestrato su feedback continui in base anche all’interazione con l’ambiente.
Un esempio concettuale di questo tipo di apprendimento automatico potrebbe essere un’auto a guida autonoma per la quale spostarsi da un luogo all’altro senza fare incidenti significherebbe ricevere un punteggio (feedback) positivo.
Le tipologie di apprendimento per rinforzo
Esistono due tipi principali di apprendimento per rinforzo.
– L’apprendimento per rinforzo positivo
Coinvolge un evento che si verifica a causa di un comportamento specifico. Questo evento rafforza l’importanza e la frequenza del comportamento in questione e ha un impatto positivo sulle azioni e sul processo decisionale dell’agente AI. Il rinforzo massimizza le prestazioni e sostiene il cambiamento per un lungo periodo di tempo.
– L’apprendimento per rinforzo negativo
Consiste nel rafforzare un comportamento che si verifica a causa di una condizione che avrebbe dovuto essere interrotta o evitata. Questo approccio consente di definire una soglia minima di prestazione.
Reinforcement learning: come funziona?
Per capire come funziona l’apprendimento per rinforzo, possiamo confrontarlo con l’addestramento di un animale domestico. Il processo ha effettivamente alcune somiglianze. Ecco gli step per impostare un apprendimento per rinforzo:
- L’animale non capisce il linguaggio umano, quindi è impossibile insegnargli trucchi dicendogli verbalmente cosa fare. Invece, è possibile provocare una reazione dell’animale creando una situazione pratica;
- Se la reazione dell’animale è quella giusta, può essere ricompensato. Ad esempio, un cane che scuote una zampa o si mette in mostra può ricevere un biscotto come ricompensa;
- Grazie alle ricompense, di conseguenza, l’animale verrà gradualmente condizionato;
- Non appena si trova di fronte alla stessa situazione, dunque, può compiere la stessa azione permettendogli di ricevere un altro croccantino. E così via.
Ad esempio, un cane imparerà a stare in piedi sulle zampe posteriori non appena gli viene detto di ‘mettersi in mostra’, anche se non capisce davvero il significato di queste parole. Allo stesso modo, possiamo insegnargli a non fare cose indesiderate punendolo quando le fa.
Pertanto, possiamo confrontare l’animale domestico con un agente di intelligenza artificiale. L’ambiente a cui è esposto è la casa e le parole pronunciate fungono da innesco per spostarlo da uno stato all’altro. A questo innesco, infine, possono seguire le ricompense (comportamento accettato) e punizioni (comportamento scartato).
Apprendimento per rinforzo: serve l’intervento umano?
L’agente di intelligenza artificiale del reinforcement learning, come abbiamo visto, deve imparare a raggiungere un obiettivo all’interno di un ambiente incerto e potenzialmente complesso. Per raggiungere questo obiettivo, il computer prova tutti i modi possibili e impara dai suoi errori.
Ad ogni tentativo, l’IA riceve una ricompensa o una punizione a seconda delle azioni eseguite. Dato che è programmata per massimizzare la sua ricompensa, dunque, la macchina cercherà di trovare il metodo che le permetta di farlo sempre.
Il data analyst, pertanto, è responsabile dell’impostazione delle condizioni di ricompensa. È quindi incaricato di stabilire le ‘regole del gioco’. D’altra parte, nessuna istruzione e nessun indizio specifico vengono forniti all’agente AI per suggerire come portare a termine il compito richiesto. Sta a lei capire come massimizzare la sua ricompensa, iniziando da tentativi totalmente casuali e terminando con tattiche estremamente sofisticate.
Per fare questo, un Data Analyst deve padroneggiare linguaggi di programmazione come Python per il Machine Learning.
Dove viene applicato l’apprendimento per rinforzo?
Uno dei punti focali per comprendere cosa caratterizza l’apprendimento per rinforzo è evidenziare le sue applicazioni. Per molto tempo, gli utilizzi pratici dell’apprendimento per rinforzo sono stati limitati dalla mancanza di potenza dell’infrastruttura informatica. Ci sono voluti fino agli anni ’90 per vedere emergere la prima applicazione concreta di questo metodo di Machine Learning, quando venne utilizzata tra i giocatori di backgammon per sconfiggersi tra di loro.
Ecco tutti gli esempi dell’apprendimento per rinforzo.
– Veicoli autonomi
I modelli di IA che controllano questi veicoli rivoluzionari possono essere addestrati attraverso questo metodo. Idealmente, il computer non dovrebbe ricevere istruzioni su come guidare un’auto e imparare dai suoi errori. Sarà premiato, comunque, se garantisce sicurezza, riduce al minimo i tempi di viaggio, riduce l’inquinamento e rispetta le regole della strada.
– Automazione industriale
Nel campo dell’automazione industriale, i robot possono apprendere per rinforzo: sono in grado di svolgere compiti pericolosi per l’uomo e spesso in modo più efficiente.
Ad esempio, Google utilizza agenti di intelligenza artificiale per raffreddare i suoi data center. Ciò ha consentito all’azienda di ridurre del 40% i propri consumi energetici. La AI, in pratica, prevede in che modo diverse combinazioni avranno un impatto sul consumo energetico futuro.
– Finanza e Trading
Nel settore finanza e trading, l’apprendimento per rinforzo consente a un agente di prendere la decisione di vendere, acquistare o detenere le azioni in base al prezzo. Per garantire che le sue prestazioni siano ottimali, il modello può essere valutato utilizzando standard di riferimento concreti.
Ad esempio, IBM ha una piattaforma basata sul Reinforcement Learning in grado di dedicarsi al trading, con un sistema di premi che ha permesso alla macchina di imparare a massimizzare i guadagni.
– Medicina
In medicina, i sistemi formati attraverso l’apprendimento per rinforzo si basano sulle esperienze precedenti al fine di automatizzare la diagnosi.
Questo approccio è particolarmente efficace per le malattie croniche. Inoltre, l’apprendimento per rinforzo consente una migliore anticipazione degli effetti collaterali a lungo termine.
I ricercatori della Stanford University hanno insegnato a un’IA a funzionare utilizzando l’apprendimento per rinforzo in una protesi di nuova generazione in grado di riconoscere i movimenti di una persona e adattarsi a questa per facilitarne la deambulazione.
– Ingegneria
L’apprendimento per rinforzo può essere utilizzato nel campo dell’ingegneria. Ad esempio, Facebook ha creato una piattaforma open source chiamata Horizon, che consente di ottimizzare i sistemi di produzione su larga scala attraverso l’apprendimento per rinforzo.
Vantaggi e svantaggi dell’apprendimento per rinforzo
Il vantaggio dell’apprendimento per rinforzo è che c’è un equilibrio tra provare ciò che ha funzionato in passato e tentare strade nuove per cercare un ulteriore miglioramento. Ciò significa che è probabile che l’algoritmo provi nuove azioni o classificazioni in forma incrementale e scopra nuove intuizioni e modi di fare le cose fino a quel momento sconosciuti. Gli algoritmi di apprendimento supervisionato standard, ad esempio, non possono raggiungere questo equilibrio.
Per tale ragione, l’apprendimento per rinforzo sta attualmente emergendo come il metodo più efficace per sfruttare la creatività delle macchine. A differenza di un essere umano, del resto, un’intelligenza artificiale può fare migliaia di tentativi contemporaneamente.
Un potenziale svantaggio potrebbe essere che non è possibile incorporare regole esplicite in un secondo momento come è possibile con l’apprendimento supervisionato e che potrebbero essere necessari molti input di dati affinché la macchina riceva il feedback appropriato. L’apprendimento per rinforzo può anche essere piuttosto difficile da implementare e richiede molta esperienza (che può essere però appresa con corsi specifici).
Quali sono gli altri tipi di apprendimento automatico?
Oltre all’apprendimento per rinforzo, come abbiamo visto in altri approfondimenti dedicati del blog, nel Machine Learning si distinguono l’apprendimento supervisionato e l’apprendimento non supervisionato.
Nel caso dell’apprendimento automatico supervisionato, un programmatore ha il compito di assegnare un’etichetta a ogni ‘input’ di formazione immesso nel sistema.
Nel caso di machine learning non supervisionato, invece, la macchina riceve solo dati di input senza un’etichetta esplicita. Sarà la macchina stessa ad esplorare i dati per trovare la struttura nascosta o le relazioni tra di loro.
FAQ
L’apprendimento per rinforzo è un tipo di apprendimento automatico utilizzato nel Machine Learning. Nell’apprendimento per rinforzo o reinforcement learning, solo il sistema di ricompensa può indirizzare l’agente AI (la macchina) nella giusta direzione. Imparando da tentativi seguiti da ricompensa e punizione, la macchina registra le migliori strategie per leggere e immagazzinare i dati e, soprattutto, per restituire output di successo.
Si può confrontare l’apprendimento per rinforzo con l’addestramento di un animale domestico. Il processo ha effettivamente alcune somiglianze. Ricevendo ricompense, il cane imparerà a stare in piedi sulle zampe posteriori non appena gli viene detto di ‘mettersi in mostra’, anche se non capisce davvero il significato di queste parole. Allo stesso modo, possiamo insegnargli a non fare cose indesiderate punendolo quando le fa.
Sono sostanzialmente due: l’apprendimento per rinforzo positivo e l’apprendimento per rinforzo negativo.
Nel primo caso, si rafforzano l’intensità e la frequenza del comportamento in questione, impattando positivamente sulle azioni della macchina. Nel secondo caso, si rafforza un comportamento che si verifica a causa di una condizione che avrebbe dovuto essere interrotta o evitata.
Risposte