Qual è la differenza tra l'apprendimento per rinforzo senza modelli e basato su modelli?


29

Qual è la differenza tra l'apprendimento per rinforzo senza modelli e basato su modelli?

Mi sembra che qualsiasi studente privo di modelli, imparando attraverso prove ed errori, possa essere riformulato come basato su modelli. In tal caso, quando sarebbero appropriati gli studenti liberi da modelli?


Vedi anche questa risposta: qr.ae/TUtHbv .
nbro,

Come intendi dire che potresti riformulare uno studente privo di modelli come modello?
Ciao arrivederci

Risposte:


14

L'apprendimento per rinforzo basato su modelli ha un agente che cerca di capire il mondo e creare un modello per rappresentarlo. Qui il modello sta cercando di catturare 2 funzioni, la funzione di transizione da stati e la funzione di ricompensa . Da questo modello, l'agente ha un riferimento e può pianificare di conseguenza.TR

Tuttavia, non è necessario apprendere un modello e l'agente può invece apprendere direttamente una politica utilizzando algoritmi come Q-learning o gradiente di politica.

Un semplice controllo per vedere se un algoritmo RL è basato su modello o privo di modello è:

Se, dopo aver appreso, l'agente può fare previsioni su quale sarà lo stato e la ricompensa successivi prima di compiere ogni azione, si tratta di un algoritmo RL basato su modello.

In caso contrario, è un algoritmo senza modelli.


2
nelle tue parole, "non è necessario imparare un modello", e la mia domanda è: perché qualcuno dovrebbe mai adottare un approccio basato sul modello?
vin

4
Un grande esempio a cui riesco a pensare è quando vuoi che un agente apprenda ciò che lo circonda senza effettivamente ottimizzare nulla. Questo è parte del problema dell'apprendimento continuo, è necessario costruire un modello interno come "Colpisco i muri quando il mio sensore di distanza legge un muro vicino", quindi l'agente può generalizzare tali informazioni a più attività se si presentano.
Jaden Travnik

2
grazie @Jaden Travnik. capisco perché sarebbe utile imparare una rappresentazione dell'ambiente ("Colpisco i muri quando la mia distanza legge un muro è vicino") senza risolvere alcuni compiti (es. navigare in cucina). ma perché questo dovrebbe essere considerato RL senza modello e non un compito di apprendimento supervisionato alla vaniglia?
vin l'

2
Questo non sarebbe un apprendimento supervisionato perché non ci sono dati etichettati. L'agente non avrebbe idea di cosa significhino i segnali, quindi non poteva distinguere un sensore di distanza da un termometro. Ciò che l'agente sta imparando sono le previsioni dei segnali basate su altri segnali, che è esso stesso un modello del suo mondo.
Jaden Travnik

2
con un approccio basato sul modello, l'agente impara a prevedere lo stato successivo, secondo la spiegazione originale. lo fa imparando <x, y>, dove x è (s1, azione) e y è (s2, ricompensa). scusate se sto interpretando male, ma non è questo apprendimento supervisionato?
vin

12

Qual è la differenza tra l'apprendimento per rinforzo senza modelli e basato su modelli?

Nell'apprendimento per rinforzo, i termini "basato sul modello" e "senza modello" non si riferiscono all'uso di una rete neurale o di un altro modello di apprendimento statistico per prevedere i valori, o anche per prevedere lo stato successivo (sebbene quest'ultimo possa essere usato come parte di un algoritmo basato su modello ed essere chiamato "modello" indipendentemente dal fatto che l'algoritmo sia basato su modello o privo di modello).

Invece, il termine si riferisce rigorosamente al fatto che, durante l'apprendimento o la recitazione, l'agente usi le previsioni della risposta ambientale. L'agente può utilizzare una singola previsione dal modello della ricompensa successiva e dello stato successivo (un campione), oppure può chiedere al modello la ricompensa successiva prevista o la distribuzione completa dei prossimi stati e ricompense successive. Queste previsioni possono essere fornite completamente al di fuori dell'agente didattico, ad esempio tramite un codice informatico che comprende le regole di un gioco di dadi o da tavolo. Oppure possono essere appresi dall'agente, nel qual caso saranno approssimativi.

Solo perché esiste un modello dell'ambiente implementato, non significa che un agente RL sia "basato sul modello". Per qualificarsi come "basato sul modello", gli algoritmi di apprendimento devono fare esplicito riferimento al modello:

  • Gli algoritmi che si basano esclusivamente su esperienze come Monte Carlo Control, SARSA, Q-learning, Actor-Critic sono algoritmi RL "senza modello". Si basano su campioni reali provenienti dall'ambiente e non usano mai le previsioni generate del prossimo stato e della prossima ricompensa per modificare il comportamento (anche se potrebbero campionare dalla memoria dell'esperienza, che è quasi un modello).

  • Gli algoritmi basati su modelli archetipici sono Programmazione dinamica (Iterazione delle politiche e Iterazione del valore), che utilizzano tutte le previsioni o le distribuzioni del modello del prossimo stato e ricompensa per calcolare azioni ottimali. In particolare nella programmazione dinamica, il modello deve fornire probabilità di transizione di stato e ricompensa prevista da qualsiasi stato, coppia di azioni. Nota che raramente si tratta di un modello appreso.

  • L'apprendimento TD di base, usando solo i valori di stato, deve anche essere basato su modello per funzionare come sistema di controllo e selezionare azioni. Per scegliere l'azione migliore, è necessario eseguire una query su un modello che preveda cosa accadrà ad ogni azione e implementare una politica come dove è la probabilità di ricevere la ricompensa e il prossimo stato quando si intraprende un'azione nello stato . Quella funzione è essenzialmente il modello.π(s)=argmaxas,rp(s,r|s,a)(r+v(s))p(s,r|s,a)rsasp(s,r|s,a)

La letteratura RL distingue tra "modello" come modello dell'ambiente per l'apprendimento "basato sui modelli" e "senza modelli" e l'uso di discenti statistici, come le reti neurali.

In RL, le reti neurali sono spesso impiegate per apprendere e generalizzare funzioni di valore, come il valore Q che prevede il rendimento totale (somma dei premi scontati) data una coppia di stato e di azione. Una rete neurale così allenata viene spesso definita un "modello", ad esempio nell'apprendimento supervisionato. Tuttavia, nella letteratura RL, vedrai il termine "approssimatore di funzioni" usato per una tale rete per evitare ambiguità.

Mi sembra che qualsiasi studente privo di modelli, imparando attraverso prove ed errori, possa essere riformulato come basato su modelli.

Penso che tu stia usando la comprensione generale della parola "modello" per includere qualsiasi struttura che faccia previsioni utili. Ciò si applicherebbe ad esempio alla tabella dei valori Q in SARSA.

Tuttavia, come spiegato sopra, non è così che il termine viene utilizzato in RL. Pertanto, sebbene la comprensione del fatto che RL costruisce utili rappresentazioni interne sia corretta, non è tecnicamente corretto che questo possa essere utilizzato per ri-inquadrare tra "privo di modelli" come "basato su modelli", poiché tali termini hanno un significato molto specifico in RL .

In tal caso, quando sarebbero appropriati gli studenti liberi da modelli?

Generalmente con l'attuale stato dell'arte in RL, se non si dispone di un modello accurato fornito come parte della definizione del problema, gli approcci senza modello sono spesso superiori.

C'è molto interesse per gli agenti che costruiscono modelli predittivi dell'ambiente e farlo come un "effetto collaterale" (pur essendo un algoritmo privo di modelli) può ancora essere utile - può regolarizzare una rete neurale o aiutare a scoprire i principali fattori predittivi funzionalità che possono essere utilizzate anche in reti di policy o di valore. Tuttavia, gli agenti basati su modelli che apprendono i propri modelli per la pianificazione hanno il problema che inesattezze in questi modelli possono causare instabilità (le imprecisioni si moltiplicano ulteriormente nel futuro che l'agente osserva). Alcuni percorsi promettenti vengono realizzati utilizzando agenti e / o meccanismi basati sull'immaginazione per decidere quando e quanto fidarsi del modello appreso durante la pianificazione.

In questo momento (nel 2018), se hai un problema nel mondo reale in un ambiente senza un modello noto esplicito all'inizio, la scommessa più sicura è quella di utilizzare un approccio privo di modelli come DQN o A3C. Ciò potrebbe cambiare in quanto il campo si sta muovendo rapidamente e nuove architetture più complesse potrebbero essere la norma in pochi anni.


1
Una piccola correzione, normalmente i termini "model based" o "model free" non vengono utilizzati per la pianificazione di algoritmi come MCTS. Viene utilizzato solo per classificare gli algoritmi di apprendimento.
Miguel Saraiva,

@MiguelSaraiva: non ne sono sicuro al 100%, ma ho rimosso il riferimento a MCTS. Per interesse, dove posizioneresti DynaQ riguardo a questa limitazione dell'uso dei termini? Penso che diventi difficile, quando tutti gli algoritmi condividono una visione così comune del modello MDP e del miglioramento delle politiche, per dire dove sono i limiti tra pianificazione e apprendimento.
Neil Slater

Potrei sbagliarmi, sono un novizio nella zona. Ricordo solo un insegnante del campo che faceva quel commento dopo che avevo fatto la stessa osservazione.
Miguel Saraiva,

5

Nell'apprendimento per rinforzo (RL), esiste un agente che interagisce con un ambiente (in fasi temporali). Ad ogni fase, l'agente decide ed esegue un'azione , , su un ambiente, e l'ambiente risponde all'agente passando dallo stato corrente (dell'ambiente), , allo stato successivo (dell'ambiente), , e emettendo un segnale scalare, chiamato ricompensa , . In linea di principio, questa interazione può continuare per sempre o fino a quando l'agente non muore.assr

L'obiettivo principale dell'agente è quello di raccogliere la maggior quantità di ricompensa "a lungo termine". Per fare ciò, l'agente deve trovare una politica ottimale (approssimativamente, la strategia ottimale per comportarsi nell'ambiente). In generale, una politica è una funzione che, dato lo stato attuale dell'ambiente, genera un'azione (o una distribuzione di probabilità sulle azioni, se la politica è stocastica ) da eseguire nell'ambiente. Una politica può quindi essere considerata la "strategia" utilizzata dall'agente per comportarsi in questo ambiente. Una politica ottimale (per un determinato ambiente) è una politica che, se seguita, farà sì che l'agente raccolga la più grande quantità di ricompensa a lungo termine (che è l'obiettivo dell'agente). In RL, siamo quindi interessati a trovare politiche ottimali.

L'ambiente può essere deterministico (ovvero, approssimativamente, la stessa azione nello stesso stato porta allo stesso stato successivo, per tutti i passaggi temporali) o stocastico (o non deterministico), ovvero se l'agente esegue un'azione in un certo stato, il successivo stato ambientale risultante potrebbe non essere necessariamente sempre lo stesso: esiste la probabilità che sia un certo stato o un altro. Naturalmente, queste incertezze renderanno più difficile il compito di trovare la politica ottimale.

In RL, il problema è spesso matematicamente formulato come un processo decisionale di Markov (MDP). Un MDP è un modo di rappresentare la "dinamica" dell'ambiente, ovvero il modo in cui l'ambiente reagirà alle possibili azioni che l'agente potrebbe intraprendere in un determinato stato. Più precisamente, un MDP è dotato di una funzione di transizione (o "modello di transizione"), che è una funzione che, dato lo stato attuale dell'ambiente e un'azione (che l'agente potrebbe intraprendere), genera una probabilità di spostarsi verso qualsiasi dei prossimi stati. Una funzione di ricompensaè anche associato a un MDP. Intuitivamente, la funzione di ricompensa genera una ricompensa, dato lo stato attuale dell'ambiente (e, possibilmente, un'azione intrapresa dall'agente e il successivo stato dell'ambiente). Collettivamente, le funzioni di transizione e ricompensa sono spesso chiamate modello di ambiente. Per concludere, MDP è il problema e la soluzione al problema è una politica. Inoltre, le "dinamiche" dell'ambiente sono regolate dalle funzioni di transizione e ricompensa (ovvero, il "modello").

Tuttavia, spesso non abbiamo l'MDP, ovvero non abbiamo le funzioni di transizione e ricompensa (dell'MDP associato all'ambiente). Quindi, non possiamo stimare una politica dall'MDP, perché non è nota. Si noti che, in generale, se avessimo le funzioni di transizione e ricompensa dell'MDP associate all'ambiente, potremmo sfruttarle e recuperare una politica ottimale (usando algoritmi di programmazione dinamica).

In assenza di queste funzioni (ovvero, quando l'MDP non è noto), per stimare la politica ottimale, l'agente deve interagire con l'ambiente e osservare le risposte dell'ambiente. Questo viene spesso definito "problema dell'apprendimento per rinforzo", poiché l'agente dovrà stimare una politica rafforzando le proprie convinzioni sulla dinamica dell'ambiente. Nel tempo, l'agente inizia a capire come l'ambiente risponde alle sue azioni e può quindi iniziare a stimare la politica ottimale. Pertanto, nel problema RL, l'agente stima la politica ottimale per comportarsi in un ambiente sconosciuto (o parzialmente noto) interagendo con esso (usando un approccio "prova ed errore").

In questo contesto, basato su un modelloalgoritmo è un algoritmo che utilizza la funzione di transizione (e la funzione di ricompensa) al fine di stimare la politica ottimale. L'agente potrebbe avere accesso solo a un'approssimazione della funzione di transizione e delle funzioni di ricompensa, che può essere appresa dall'agente mentre interagisce con l'ambiente o può essere data all'agente (ad esempio da un altro agente). In generale, in un algoritmo basato su modello, l'agente può potenzialmente prevedere la dinamica dell'ambiente (durante o dopo la fase di apprendimento), poiché ha una stima della funzione di transizione (e della funzione di ricompensa). Tuttavia, si noti che le funzioni di transizione e ricompensa utilizzate dall'agente per migliorare la stima della politica ottimale potrebbero essere solo approssimazioni delle funzioni "vere". Quindi, la politica ottimale potrebbe non essere mai trovata (a causa di queste approssimazioni).

Un algoritmo senza modelli è un algoritmo che stima la politica ottimale senza utilizzare o stimare le dinamiche (funzioni di transizione e ricompensa) dell'ambiente. In pratica, un algoritmo privo di modelli stima una "funzione di valore" o la "politica" direttamente dall'esperienza (cioè l'interazione tra l'agente e l'ambiente), senza usare né la funzione di transizione né la funzione di ricompensa. Una funzione di valore può essere pensata come una funzione che valuta uno stato (o un'azione intrapresa in uno stato), per tutti gli stati. Da questa funzione di valore, è quindi possibile derivare una politica.

In pratica, un modo per distinguere tra algoritmi basati su modelli o privi di modelli è quello di esaminare gli algoritmi e vedere se usano la funzione di transizione o ricompensa.

Ad esempio, diamo un'occhiata alla regola di aggiornamento principale dell'algoritmo Q-learning :

Q(St,At)Q(St,At)+α(Rt+1+γmaxaQ(St+1,a)Q(St,At))

Come possiamo vedere, questa regola di aggiornamento non utilizza alcuna probabilità definita da MDP. Nota: è solo la ricompensa ottenuta al passaggio successivo (dopo aver intrapreso l'azione), ma non è necessariamente noto in anticipo. Quindi, Q-learning è un algoritmo senza modelli.Rt+1

Ora diamo un'occhiata alla regola di aggiornamento principale dell'algoritmo di miglioramento delle politiche :

Q(s,a)sS,rRp(s,r|s,a)(r+γV(s))

Possiamo immediatamente osservare che usa , una probabilità definita dal modello MDP. Pertanto, l' iterazione delle politiche (un algoritmo di programmazione dinamica), che utilizza l'algoritmo di miglioramento delle politiche, è un algoritmo basato su modello.p(s,r|s,a)


2

RL senza modello

In RL senza modelli, l'agente non ha accesso a un modello dell'ambiente. Per ambiente intendo una funzione che prevede la transizione di stato e le ricompense.

Al momento in cui scriviamo, i metodi senza modello sono più popolari e sono stati ampiamente studiati.

RL basato sul modello

In RL basato su modello, l'agente ha accesso a un modello dell'ambiente.

Il vantaggio principale è che ciò consente all'agente di pianificare in anticipo pensando in anticipo. Gli agenti distillano i risultati dalla pianificazione in anticipo in una politica appresa. Un famoso esempio di RL basato su modello è AlphaZero .

Il principale svantaggio è che molte volte una rappresentazione della verità dell'ambiente non è solitamente disponibile.


Di seguito è riportata una tassonomia non esaustiva degli algoritmi RL, che può aiutarti a visualizzare meglio il panorama RL.

inserisci qui la descrizione dell'immagine


1

Secondo OpenAI - Kinds of RL Algorithms , gli algoritmi che utilizzano un modello dell'ambiente, ovvero una funzione che prevede transizioni di stato e ricompense, sono chiamati metodi basati su modelli e quelli che non lo sono si chiamano senza modelli . Questo modello può essere stato fornito all'agente o appreso dall'agente.

L'uso di un modello consente all'agente di pianificare pensando in anticipo, vedendo cosa accadrebbe per una gamma di possibili scelte e decidendo esplicitamente tra le sue opzioni. Questo può essere utile di fronte a problemi che richiedono un pensiero più a lungo termine. Un modo per eseguire la pianificazione consiste nell'utilizzare una sorta di ricerca dell'albero, ad esempio la ricerca dell'albero di Monte Carlo (MCTS), o - che sospetto possa essere utilizzata anche - varianti dell'albero casuale a rapida esplorazione (RRT). Vedi ad esempio agenti che immaginano e pianificano .

L'agente può quindi distillare i risultati dalla pianificazione in anticipo in una politica appresa, nota come iterazione di esperti.

Un modello può anche essere utilizzato per creare un ambiente simulato o "immaginato" in cui lo stato viene aggiornato utilizzando il modello e per far apprendere l'agente all'interno di quell'ambiente, come in World Model .

In molti scenari del mondo reale, il modello di verità dell'ambiente non è disponibile per l'agente. Se un agente desidera utilizzare un modello in questo caso, deve imparare il modello, che può essere impegnativo per diversi motivi.

Vi sono tuttavia casi in cui l'agente utilizza un modello già noto e di conseguenza non deve apprendere il modello, come ad esempio in AlphaZero , in cui il modello si presenta sotto forma di regole del gioco.


1

Sebbene ci siano molte buone risposte, voglio aggiungere questo paragrafo da Reinforcement Learning: An Introduction , pagina 303, per una visione più psicologica della differenza.

La distinzione tra algoritmi di apprendimento di rinforzo senza modelli e basati su modelli corrisponde alla distinzione che gli psicologi fanno tra il controllo abituale e diretto agli obiettivi dei modelli comportamentali appresi. Le abitudini sono schemi comportamentali innescati da stimoli appropriati e quindi eseguiti più o meno automaticamente. Il comportamento diretto dagli obiettivi, secondo come gli psicologi usano la frase, è intenzionale nel senso che è controllato dalla conoscenza del valore degli obiettivi e dalla relazione tra le azioni e le loro conseguenze. A volte si dice che le abitudini sono controllate da stimoli antecedenti, mentre si dice che il comportamento diretto agli obiettivi sia controllato dalle sue conseguenze (Dickinson, 1980, 1985). Il controllo diretto dagli obiettivi ha il vantaggio di poter cambiare rapidamente il comportamento di un animale quando l'ambiente cambia il suo modo di reagire alle azioni dell'animale. Mentre il comportamento abituale risponde rapidamente all'input da un ambiente abituato, non è in grado di adattarsi rapidamente ai cambiamenti nell'ambiente.

Continua da lì e ha un buon esempio in seguito.

Penso che il punto principale che non è stato sempre spiegato nelle altre risposte, sia che in un approccio privo di modelli hai ancora bisogno di un qualche tipo di ambiente per dirti qual è la ricompensa associata alla tua azione. La grande differenza è che NON è necessario memorizzare alcuna informazione sul modello. Dai all'ambiente l'azione scelta, aggiorni la tua politica stimata e te ne dimentichi. D'altra parte, negli approcci basati su modelli, è necessario conoscere la cronologia delle transizioni di stato come nella Programmazione dinamica, oppure è necessario essere in grado di calcolare tutti i possibili stati successivi e i relativi premi, dallo stato attuale.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.