Apprendimento per rinforzo in ML: come funziona, modelli e tipi di apprendimento

Pubblicato: 2021-06-11

Sommario

Che cos'è l'apprendimento per rinforzo?

L'apprendimento per rinforzo si riferisce al processo di prendere decisioni adeguate attraverso modelli di apprendimento automatico adeguati. Si basa sul processo di addestramento di un metodo di apprendimento automatico. È una tecnica di apprendimento automatico basata sul feedback, in base alla quale un agente impara a comportarsi in un ambiente osservando i propri errori ed eseguendo le azioni.

L'apprendimento per rinforzo applica il metodo di apprendimento tramite interazione e feedback. Alcune delle terminologie utilizzate nell'apprendimento per rinforzo sono:

  • Agente : è lo studente o il decisore che esegue azioni per ricevere una ricompensa.
  • Ambiente : è lo scenario in cui un agente apprende ed esegue attività future.
  • Azione : azioni eseguite dall'agente.
  • Stato : situazione attuale
  • Politica : funzione decisionale di un agente in base alla quale l'agente decide l'azione futura in base allo stato attuale.
  • Ricompensa : Restituzione fornita dall'ambiente a un agente per l'esecuzione di ogni azione.
  • Valore : Rispetto alla ricompensa è il rendimento atteso a lungo termine con uno sconto.
  • Funzione valore : indica il valore di uno stato, ovvero l'importo totale del rendimento.
  • Approssimatore di funzioni : Induzione di una funzione da esempi di addestramento.
    Modello dell'ambiente: è un modello che imita l'ambiente reale per prevedere le inferenze.
  • Metodi basati su modelli: usati per risolvere modelli basati su armature.
  • Valore Q o valore dell'azione : simile al valore ma i parametri aggiuntivi sono considerati come l'azione corrente.
  • Processo decisionale di Markov : un modello probabilistico del problema decisionale sequenziale.
  • Programmazione dinamica : Classe di metodi per la risoluzione di problemi decisionali sequenziali.

    L'apprendimento per rinforzo riguarda principalmente il modo in cui gli agenti software dovrebbero intraprendere azioni in un ambiente. L'apprendimento basato su reti neurali permette di raggiungere un obiettivo complesso.

Come funziona l'apprendimento per rinforzo?

Di seguito viene mostrato un esempio di apprendimento per rinforzo che mostra come funziona l'apprendimento per rinforzo.

  • I gatti non capiscono nessuna forma di linguaggio e quindi è necessario seguire una strategia diversa per comunicare con il gatto.
  • Si crea una situazione in cui il gatto agisce in vari modi. Il gatto viene ricompensato con il pesce se è il modo desiderato. Pertanto il gatto si comporta allo stesso modo ogni volta che affronta quella situazione aspettandosi più cibo come ricompensa.
  • Lo scenario definisce il processo di apprendimento dalle esperienze positive.
  • Infine, il gatto impara anche cosa non fare attraverso esperienze negative.

Questo porta alla seguente spiegazione

  • Il gatto agisce come l'agente in quanto è esposto a un ambiente. Nell'esempio sopra citato, la casa è l'ambiente. Gli stati potrebbero essere qualcosa come il gatto seduto o che cammina.
  • L'agente compie un'azione transitando da uno stato all'altro come passare da una posizione seduta a una posizione deambulante.
  • L'azione è la reazione dell'agente. La politica include il metodo per selezionare un'azione in uno stato particolare aspettandosi un risultato migliore nello stato futuro.
  • La transizione degli stati potrebbe fornire una ricompensa o una sanzione.

Pochi punti da notare nell'apprendimento per rinforzo

  • Dovrebbe essere fornito uno stato iniziale di input da cui partirà il modello.
  • Molti possibili risultati sono generati attraverso varie soluzioni a un problema particolare.
  • L'allenamento del metodo RL si basa sull'input. Dopo la generazione dell'output, il modello deciderà se premiare il modello. Pertanto, il modello continua ad allenarsi.
  • Il modello continua ad apprendere.
  • La migliore soluzione per un problema è decisa sulla ricompensa massima che riceve.

Algoritmo di apprendimento per rinforzo

Esistono tre approcci per implementare un metodo di apprendimento per rinforzo.

1. Basato sul valore

Il metodo basato sul valore implica la massimizzazione della funzione valore V(s). L'aspettativa di un ritorno a lungo termine dello stato attuale è prevista in una politica. SARSA e Q Learning sono alcuni degli algoritmi basati sui valori. Gli approcci basati sul valore sono abbastanza stabili in quanto non sono in grado di modellare un ambiente continuo. Entrambi gli algoritmi sono semplici da implementare, ma non possono stimare i valori di uno stato invisibile.

2. Basato sulla politica

Questo tipo di metodo comporta lo sviluppo di una politica che aiuti a restituire la massima ricompensa attraverso l'esecuzione di ogni azione.

Esistono due tipi di metodi basati su criteri:

  • Deterministico: significa che in qualsiasi stato la politica produce la stessa azione.
  • Stocastico: esiste una probabilità per ogni azione definita dall'equazione

n{a\s) = P\A, = a\S, =S]

Gli algoritmi basati su criteri sono il gradiente politico Monte Carlo (REINFORCE) e il gradiente politico deterministico (DPG). Gli approcci di apprendimento basati sulle politiche generano instabilità poiché soffrono di un'elevata varianza.

Un algoritmo "attore critico" viene sviluppato attraverso una combinazione di approcci basati sul valore e basati su politiche. La parametrizzazione sia della funzione valore (critico) che della politica (attore) consente una convergenza stabile attraverso un uso efficace dei dati di addestramento.

3. Basato su modello

Viene creato un modello virtuale per ogni ambiente e l'agente apprende in base a tale modello. La costruzione del modello include le fasi di campionamento degli stati, l'adozione di azioni e l'osservazione delle ricompense. In ogni stato di un ambiente, il modello prevede lo stato futuro e la ricompensa prevista. Con la disponibilità del modello basato su RL, un agente può pianificare le azioni. L'agente ottiene la capacità di apprendere quando il processo di pianificazione è intrecciato con la stima delle politiche.

L'apprendimento per rinforzo mira a raggiungere un obiettivo attraverso l'esplorazione di un agente in un ambiente sconosciuto. Un'ipotesi di RL afferma che gli obiettivi possono essere descritti come LA massimizzazione delle ricompense. L'agente deve poter ricavare la massima ricompensa attraverso la perturbazione degli stati sotto forma di azioni. Gli algoritmi RL possono essere ampiamente classificati in basati su modelli e senza modelli.

Modelli di apprendimento nel rinforzo

1. Processo decisionale di Markov

L'insieme dei parametri utilizzati in un processo decisionale di Markov sono

Insieme di azioni-A

Insieme di stati-S

Ricompensa-R

Polizza-n

Valore-V

Il processo decisionale di Markov è l'approccio matematico per mappare una soluzione nell'apprendimento per rinforzo.

2. Apprendimento Q

Questo processo fornisce informazioni all'agente informando su quale azione procedere. È una forma di approccio senza modelli. I valori Q continuano ad aggiornarsi, denotando il valore di fare un'azione “a” nello stato “s”.

Differenza tra apprendimento per rinforzo e apprendimento supervisionato

L'apprendimento supervisionato è un processo di apprendimento automatico in base al quale un supervisore è tenuto a inserire la conoscenza in un algoritmo di apprendimento. La funzione principale del supervisore comprende la raccolta dei dati di allenamento come immagini, clip audio, ecc.

Mentre in RL il set di dati di addestramento include principalmente l'insieme della situazione e delle azioni. L'apprendimento per rinforzo nell'apprendimento automatico non richiede alcuna forma di supervisione. Inoltre, la combinazione di apprendimento per rinforzo e apprendimento profondo produce il sottocampo di apprendimento per rinforzo profondo.

Le differenze chiave tra RL e apprendimento supervisionato sono elencate di seguito.

Insegnamento rafforzativo Apprendimento supervisionato
Le decisioni vengono prese in sequenza. L'uscita del processo dipende dallo stato dell'ingresso corrente. L'input successivo dipenderà dall'output dell'input precedente e così via. La decisione viene presa sull'input iniziale o sull'input immesso all'inizio del processo.
Le decisioni dipendono. Pertanto, l'etichettatura viene eseguita su sequenze di decisioni dipendenti. Le decisioni sono indipendenti l'una dall'altra. Quindi, l'etichettatura di tutte le decisioni viene eseguita.
L'interazione con l'ambiente avviene in RL. Nessuna interazione con l'ambiente. Il processo funziona sul set di dati esistente.
Il processo decisionale di un RL è simile al processo decisionale di un cervello umano. Il processo decisionale è simile alla decisione presa da un cervello umano sotto la supervisione di una guida.
Nessun set di dati etichettato. Set di dati etichettato.
La formazione precedente non è richiesta all'agente di apprendimento. Viene fornita una formazione precedente per la previsione dell'output.
RL è supportato al meglio con l'IA, dove c'è una prevalenza di interazione umana. L'apprendimento supervisionato viene gestito principalmente con applicazioni o sistemi software interattivi.
Esempio: partita a scacchi Esempio: riconoscimento di oggetti

Tipi di rinforzo

Esistono due tipi di apprendimento per rinforzo

1. Positivo

L'apprendimento per rinforzo positivo è definito come un evento generato da un comportamento specifico. Ciò ha un impatto positivo sull'agente poiché aumenta la forza e la frequenza dell'apprendimento. Di conseguenza, le prestazioni sono massimizzate. Pertanto, i cambiamenti sono sostenuti per un periodo di tempo più lungo. Ma un'eccessiva ottimizzazione degli stati può influenzare i risultati dell'apprendimento. Pertanto, l'apprendimento per rinforzo non dovrebbe essere troppo.

I vantaggi del rinforzo positivo sono:

  • Massimizzazione delle prestazioni.
  • Cambiamenti sostenuti per un periodo più lungo.

2. Negativo

Il rinforzo negativo è definito quando in circostanze di condizione negativa, il comportamento è rafforzato. Lo standard minimo di prestazione è definito attraverso il rinforzo negativo

I vantaggi dell'apprendimento per rinforzo negativo sono:

  • Aumenta il comportamento.
  • Fornire sfida a uno standard minimo di prestazioni

Svantaggio dell'apprendimento per rinforzo

  • Fornisce solo quanto basta per soddisfare il comportamento minimo.

Sfide nell'apprendimento per rinforzo

L'apprendimento per rinforzo, sebbene non richieda la supervisione del modello, non è un tipo di apprendimento non supervisionato. Tuttavia, è una parte diversa dell'apprendimento automatico.

Alcune sfide associate all'apprendimento per rinforzo sono:

  • Preparazione dell'ambiente di simulazione. Questo dipende dall'attività che deve essere eseguita. La creazione di un simulatore realistico è un compito impegnativo. Il modello deve capire ogni minuto e dettaglio importante dell'ambiente.
  • Il coinvolgimento del design delle funzionalità e delle ricompense è estremamente importante.
  • La velocità di apprendimento può essere influenzata dai parametri.
  • Trasferimento del modello nell'ambiente di formazione.
  • Il controllo dell'agente attraverso le reti neurali è un'altra sfida poiché l'unica comunicazione con le reti neurali avviene attraverso il sistema di ricompense e sanzioni. A volte ciò può comportare una catastrofica dimenticanza, ad esempio la cancellazione di vecchie conoscenze mentre si acquisiscono nuove conoscenze.
  • Raggiungere un minimo locale è una sfida per l'apprendimento per rinforzo.
  • In condizioni di un ambiente reale, potrebbe essere presente un'osservazione parziale.
  • L'applicazione dell'apprendimento per rinforzo dovrebbe essere regolamentata. Una quantità eccessiva di RL porta al sovraccarico degli stati. Ciò potrebbe portare a una diminuzione dei risultati.
  • Gli ambienti reali non sono stazionari.

Applicazioni di rinforzo

  • Nel settore della Robotica per l'automazione industriale.
  • RL può essere utilizzato nella pianificazione strategica delle imprese.
  • RL può essere utilizzato nelle tecniche di elaborazione dati che coinvolgono algoritmi di apprendimento automatico.
  • Può essere utilizzato per la preparazione personalizzata di materiali di formazione per gli studenti secondo le loro esigenze.
  • RL può essere applicato nel controllo di aeromobili e nel movimento di robot.

In ambienti di grandi dimensioni, il rinforzo può essere applicato nelle seguenti situazioni

  • Se una soluzione analitica non è disponibile per un modello noto dell'ambiente.
  • Se viene fornito solo un modello di simulazione dell'ambiente.
  • Quando c'è un solo modo per raccogliere i dati che è quello di interagire con l'ambiente.

A cosa serve l'apprendimento per rinforzo?

  • L'apprendimento per rinforzo aiuta a identificare la situazione che richiede un'azione.
  • L'applicazione di RL aiuta a sapere quale azione sta producendo la ricompensa più alta.
  • L'utilità di RL sta nel fornire all'agente una funzione di ricompensa.
  • Infine, l'RL aiuta a identificare il metodo che porta a maggiori ricompense.

Conclusione

RL non può essere applicato a tutte le situazioni. Ci sono alcune limitazioni nel suo utilizzo.

  • La disponibilità di dati sufficienti consente l'uso di un approccio di apprendimento supervisionato piuttosto che un metodo RL.
  • Il calcolo di RL richiede molto tempo, specialmente nei casi in cui si considera un ambiente di grandi dimensioni.

Se sei interessato a saperne di più sull'apprendimento automatico, dai un'occhiata al programma Executive PG di IIIT-B e upGrad in Machine Learning e AI, progettato per i professionisti che lavorano e offre oltre 450 ore di formazione rigorosa, oltre 30 casi di studio e incarichi, IIIT -B Status di Alumni, oltre 5 progetti pratici pratici e assistenza sul lavoro con le migliori aziende.

Come sarà il futuro per i lavori di machine learning?

Oggi l'adozione dell'apprendimento automatico è aumentata rapidamente in diversi verticali del settore. A partire dai settori della finanza e degli investimenti fino all'intrattenimento, ai media, all'automobile, all'assistenza sanitaria e ai giochi, è difficile trovare oggi un settore che non utilizzi l'IA e l'apprendimento automatico. Di conseguenza, l'ambito dei lavori di apprendimento automatico è significativamente più elevato rispetto a molti altri lavori tecnologici. Secondo i rapporti di Gartner, entro la fine del 2022 sul mercato saranno disponibili circa 2,3 milioni di lavori di apprendimento automatico e intelligenza artificiale. Inoltre, si prevede che anche il compenso offerto ai professionisti in questo campo sarà significativamente più alto, con stipendi iniziali che vanno a INR 9 lakh all'anno.

Che cos'è un cloud AI?

Il cloud AI è un concetto relativamente nuovo che le organizzazioni hanno iniziato a sfruttare di recente. Questo concetto combina intelligenza artificiale e cloud computing ed è guidato da due fattori. Il software e gli strumenti di intelligenza artificiale stanno fornendo un valore aggiunto nuovo e migliorato al cloud computing, che ora sta svolgendo un ruolo sempre più significativo nell'adozione dell'intelligenza artificiale. Il cloud AI comprende un'infrastruttura condivisa per casi d'uso specifici che vengono sfruttati contemporaneamente da vari progetti e carichi di lavoro. Il più grande vantaggio del cloud AI è che unisce con successo hardware AI e software open source per fornire ai clienti (aziende) AI SaaS su una configurazione di cloud ibrido.

Dove viene utilizzato l'algoritmo di apprendimento per rinforzo?

Gli algoritmi di apprendimento per rinforzo vengono forniti con varie applicazioni come la pianificazione della strategia aziendale, la robotica per l'automazione dei processi industriali, il controllo degli aeromobili e il controllo del movimento robotico, l'apprendimento automatico, lo sviluppo di un sistema di formazione personalizzato per gli studenti, l'elaborazione dei dati e molto altro. L'uso di un algoritmo di apprendimento per rinforzo è particolarmente efficiente in questi casi poiché può facilmente aiutare a scoprire le situazioni che richiedono effettivamente un'azione e le azioni che comportano le ricompense più elevate in un periodo. Tuttavia, l'apprendimento per rinforzo non dovrebbe essere applicato quando sono disponibili dati ampi per offrire una soluzione utilizzando un metodo di apprendimento supervisionato.