Esistono applicazioni dell'apprendimento per rinforzo oltre ai giochi?


13

Esiste un modo per insegnare l'apprendimento per rinforzo in applicazioni diverse dai giochi?

Gli unici esempi che posso trovare su Internet sono degli agenti di gioco. Capisco che i VNC controllano l'ingresso ai giochi tramite la rete di rinforzo. È possibile configurarlo con un software CAD?


3
Sì, è possibile ma la vera domanda dovrebbe essere se è più efficiente di altri algoritmi o meno. Se hai un obiettivo specifico puoi pensarlo e modellarlo come un gioco (anche la vita è un gioco;)). In effetti, molte IA di successo sfruttano più di una tecnica. Dai un'occhiata a questo: datascience.stackexchange.com/questions/11126/…
TasosGlrs

2
Il punto su AlphaGo è che un certo tipo di gioco (informazioni non banali , non casuali, perfette) in particolare fornisce un eccellente banco di prova per l'IA perché questi giochi hanno parametri molto semplici, ma la complessità simile alla natura. I giochi, da una certa prospettiva, sono i tipi più utili di artefatti perché insegnano il pensiero astratto e strategico. Per comprendere l'importanza dei giochi, guarda l' impatto della teoria dei giochi sull'informatica .
DukeZhou

Ciò potrebbe essere dovuto agli accordi di non divulgazione. Le migliori app di apprendimento sono proprietarie, così come il miglior software di tower tower o il miglior riconoscimento vocale o i migliori centri commerciali online. Questa è ingegneria in generale.
FauChristian,

Giusto. Se tutti hanno una teoria dei giochi, il mondo diventa un gioco.
FelicityC

Risposte:


2

Uno dei fantastici esempi di apprendimento del rinforzo è un elicottero volante autonomo. Ho avuto la possibilità di imparare alcune delle cose fatte da Andrew Ng e altri di recente. Ecco l'articolo di ricerca della carta . Ci sono anche altri documenti simili. Puoi cercarli su Google se vuoi saperne di più.

Puoi anche vederlo in azione in questo video di YouTube .

Ecco apparentemente un'altra applicazione completamente diversa nella finanza.


2

Vedrai molti esempi di giochi nella letteratura sull'apprendimento per rinforzo, perché gli ambienti di gioco possono spesso essere codificati in modo efficiente e funzionare velocemente su un singolo computer che può quindi contenere l'ambiente e l'agente. Per i giochi classici, come backgammon, dama, scacchi, gioco, ci sono esperti umani con cui possiamo confrontare i risultati. Alcuni giochi o ambienti simil-gioco sono comunemente usati per confrontare approcci diversi, proprio come le cifre scritte a mano MNIST sono usate per confrontare approcci di apprendimento supervisionato.

Esiste un modo per insegnare l'apprendimento per rinforzo in applicazioni diverse dai giochi?

Sì. Informalmente, è possibile applicare approcci di apprendimento di rinforzo ogni volta che è possibile inquadrare un problema come agente che agisce in un ambiente in cui può essere informato dello stato e di un valore di ricompensa che influenza gli obiettivi. Più formalmente, la teoria dell'apprendimento per rinforzo si basa su soluzioni ai processi decisionali di Markov , quindi se è possibile adattare la descrizione del problema a un MDP, è possibile applicare le varie tecniche utilizzate in RL - come Q-learning, SARSA, REINFORCE. Questo adattamento alla teoria non deve essere perfetto per il funzionamento del sistema risultante, ad esempio è spesso possibile considerare lo stato sconosciuto o osservato in modo imperfetto come effettivamente casuale per l'agente e considerare questa parte di un ambiente stocastico.

Ecco alcuni esempi di possibili usi dell'apprendimento per rinforzo al di fuori dei giochi ricreativi:

  • Logica di controllo per robot motorizzati, come imparare a capovolgere i pancake e altri esempi . Qui le misurazioni ambientali vengono eseguite da sensori fisici sul robot. Le ricompense vengono fornite per il completamento di un obiettivo, ma possono anche essere regolate per fluidità, uso economico dell'energia, ecc. L'agente sceglie azioni di basso livello come la coppia del motore o la posizione del relè. In teoria ci possono essere agenti nidificati in cui quelli di livello superiore scelgono gli obiettivi per quelli di livello inferiore - ad esempio, il robot potrebbe decidere ad alto livello tra uno dei tre compiti che richiedono il trasferimento in luoghi diversi, e ad un livello inferiore potrebbe essere decisioni su come controllare i motori per spostare il robot verso l'obiettivo prefissato.

  • Auto a guida autonoma. Sebbene sia molto focalizzato sull'interpretazione dei sensori - vedere segnaletica orizzontale, pedoni, ecc., È necessario un sistema di controllo per selezionare acceleratore, freno e sterzo.

  • Trading finanziario automatizzato. Forse un gioco per alcuni, ci sono chiare conseguenze nel mondo reale. Il segnale di ricompensa è tuttavia abbastanza semplice e RL può essere regolato per preferire guadagni a lungo o breve termine.

è possibile configurarlo con un software CAD?

In teoria sì, ma non so cosa potrebbe essere disponibile per farlo in pratica. Inoltre hai bisogno di uno o più obiettivi in ​​mente che codifichi nell'agente (come valori di ricompensa che può osservare) prima di assegnargli un mouse virtuale e impostare un'attività per disegnare qualcosa. I giochi per computer sono dotati di uno schema di ricompensa integrato come sistema di punteggio e forniscono feedback frequenti, in modo che un agente possa acquisire rapidamente informazioni sulle decisioni positive e negative. Dovresti sostituire questo componente di punteggio con qualcosa che rappresenti i tuoi obiettivi per il sistema basato su CAD.

Il CAD non ha nulla di adatto incorporato, sebbene gli strumenti CAD con simulazioni, come vari motori fisici o analisi agli elementi finiti, possano consentire di assegnare punteggi ai progetti basati su una misura fisica simulata. Altre possibilità includono l'analisi della deformazione, l'uso non dispendioso del materiale, qualunque sia la metrica che il sistema CAD / CAM può fornire per una progettazione parziale o completa. La parte difficile consiste nel vincolare un progetto al suo obiettivo o scopo e nell'organizzare che questo venga ricompensato o nel costruire i vincoli nell'ambiente; dare a un agente RL il pieno controllo senza vincoli del processo CAD e premiare con la minima sollecitazione risulterà probabilmente in qualcosa di poco interessante come un piccolo cubo.


Un sacco di cose adatte: Auto-dimensionamento per la massima chiarezza visiva, ricerche di interferenza per parti in movimento sotto sforzo (senza FEA), ottimizzazione dell'output CAM, rendering dell'accelerazione utilizzando informazioni approssimative sulla profondità z, ecc, ecc.
FauChristian

@FauChristian: Non sono sicuro che tutti possano essere inseriti come segnale di ricompensa semplicemente come punteggio di gioco. L'ottimizzazione di un progetto per ridurre lo sforzo, ad esempio, implica che il tuo progetto abbia uno scopo : devi anche aggiungere alcuni vincoli / regole per tenere traccia di tale scopo e ciò potrebbe essere più difficile a meno che tu non abbia anche qualche analisi ergonomica. Tuttavia, il commento aggiunge alcune cose che potrei menzionare e aggiungerà alla risposta.
Neil Slater,

Sì. Vero. Ci proverò. Scusa la serie di commenti che dovrò fare. In ogni caso sopra il mio obiettivo sarà quello di aggregare le preoccupazioni di un progettista meccanico in un unico segnale di benessere che possa guidare le iterazioni, con la verità in mente che potrebbero esserci più organi di NN, ognuno dei quali può essere alimentato con una diversa aggregazione. Ma per semplicità, aggregherò ogni caso su uno scalare. Avere un elemento stocastico sarà necessario per la maggior parte di questi perché la maggior parte dei casi in CAD ha più punti critici nella superficie del valore aggregato.
FauChristian,

Quotatura automatica - w = sqrt (Σ min (s_clear, s_nice)) + k n_jumps, ... dove ... w è l'aggregato di qualità dello stato del dimensionamento del disegno, dal quale è possibile derivare un segnale di feedback normalizzato, s_clear è la distanza tra una linea di quotatura e l'altra linea più vicina escluse le linee di salto, s_nice è un metaparametro che rappresenta una bella distanza di spazio tra le linee per il tipo di disegno quotato, k è una costante e n_jumps è il numero di linee di salto ( dove le linee si incrociano ma una delle due ha uno spazio vuoto per indicare che sta saltando dietro l'altra linea).
FauChristian,

Ricerche di interferenze - w = n, ... dove ... w è l'aggregato di qualità della ricerca di interferenze e n è il numero di interferenze rilevate dopo aver immesso le ipotesi di iterazioni in una simulazione dinamica dell'ipotesi. Questo è proprio come un gioco in quanto più l'interferenza corretta indovina più alto è il punteggio.
FauChristian,

1

Esiste sicuramente un modo per introdurre ciò che molti chiamano apprendimento rinforzato in applicazioni Web, mobili e workstation reali.

Le organizzazioni militari lo fanno, l'industria cinematografica lo fa, le aziende incentrate sul software lo stanno facendo, e l'ho fatto sia per le aziende Fortune 500 che per le piccole imprese. Esistono componenti di apprendimento adattivo in tutti i tipi di componenti di sistema incorporati in sistemi più grandi, che vanno dai robot di riconoscimento facciale FaceBook a Google Translate ai sistemi di riconoscimento di codici postali USPS ai sistemi di volo e controllo del traffico autonomi. Il software di progettazione assistita da computer (CAD) è certamente un obiettivo praticabile.

La base per il rinforzo

Considera una serie di vettori che descrivono eventi. Immagina che siano divisi in due sotto-serie A e B. Una rete neurale (artificiale o biologica) potrebbe essere allenata usando A.

La formazione potrebbe essere supervisionata, il che significa che una delle dimensioni del vettore è considerata l'etichetta e quindi la variabile dipendente da prevedere in modo ottimale. Le altre dimensioni diventano quindi i fatti o i segnali di input e quindi le variabili indipendenti da utilizzare per la previsione. La formazione potrebbe non essere supervisionata utilizzando l'estrazione delle funzionalità.

Ad ogni modo, quando viene fornito con A prima di B e si prevede che si esibirà in produzione (uso reale) prima dell'arrivo di B, l'arrivo successivo di B presenta una scelta.

  1. Cancella i pesi e tutte le regolazioni dei meta-parametri effettuate durante l'allenamento con A e riesegui l'allenamento con le serie concatenate di A e B.
  2. Continua l'allenamento con B, nel qual caso la rete sarebbe distorta con A e il risultato differirebbe dal risultato ottenuto dall'allenamento con B quindi A.
  3. Trova un modo per limitare il pregiudizio di esserti allenato per la prima volta con A evitando il consumo di risorse necessario per la scelta n. 1 sopra.

La scelta n. 3 è la scelta migliore in molti casi perché contiene i vantaggi delle scelte n. 1 e n. 2. Matematicamente, il n. 3 viene fatto facilitando in qualche modo la anticipazione di ciò che è stato appreso dalla serie A. I pesi della rete neurale e le regolazioni dei meta-parametri devono essere suscettibili alla correzione poiché nuove esperienze indicano la necessità di farlo. Un approccio ingenuo può essere formulato matematicamente la funzione esponenziale inversa, che modella il decadimento naturale in molti fenomeni di fisica, chimica e scienze sociali.

P = e -nt , dove P è la probabilità che il fatto sia ancora efficace, n è il tasso di decadimento delle informazioni apprese in passato e t è una misura del progresso in avanti, come timestamp, numero di sotto-sequenza (batch), numero sequenza fatti o numero evento.

Nel caso delle sottoserie A e B, quando la formula sopra è implementata in qualche modo nel meccanismo di apprendimento, l'allenamento di A porrà meno distorsione sul risultato finale dopo l'allenamento continuato usando B perché la t per A è inferiore rispetto alla t per B, dicendo al meccanismo che B è più probabilmente pertinente.

Se dividiamo ricorsivamente A e B a metà, creando sotto-serie sempre più granulari, l'idea di cui sopra di lasciare gradualmente il decadimento delle informazioni precedenti rimane valida e preziosa. La distorsione della rete alle prime informazioni utilizzate per l'allenamento è l'equivalente dei concetti psicologici di ristrettezza mentale. I sistemi di apprendimento che si sono evoluti nel cervello dei mammiferi sembrano dimenticare o perdere interesse per le cose passate per incoraggiare l'apertura mentale, che non è altro che lasciare che il nuovo apprendimento a volte impedisca l'apprendimento precedente se la nuova informazione contiene modelli più forti per l'apprendimento.

Esistono DUE motivi per consentire ai dati di esempio più recenti di superare progressivamente i dati di esempio più vecchi.

  • La rimozione di cui sopra della propensione dell'apprendimento precedente a ponderare adeguatamente gli eventi più recenti nell'ulteriore apprendimento ha senso se tutti gli eventi vissuti (addestrati) rappresentano fatti ragionevoli sul mondo esterno che il sistema sta tentando di apprendere.
  • Il mondo esterno potrebbe cambiare e l'apprendimento più vecchio potrebbe effettivamente diventare irrilevante o addirittura fuorviante.

Questa necessità di far decadere gradualmente l'importanza della precedente informazione man mano che l'apprendimento continua è uno dei due aspetti principali del rafforzamento. Il secondo aspetto è un insieme di concetti correttivi basati sull'idea della segnalazione di feedback.

Feedback e rinforzo

Un segnale di feedback nell'apprendimento rafforzato è l'apprendimento automatico equivalente a concetti psicologici familiari come dolore, piacere, appagamento e benessere. Al sistema di apprendimento vengono fornite informazioni per guidare la formazione oltre l'obiettivo dell'estrazione delle caratteristiche, l'indipendenza dei gruppi o la ricerca di una matrice di peso netto neurale che approssima la relazione tra le caratteristiche degli eventi di input e le loro etichette.

Le informazioni fornite possono provenire internamente dal riconoscimento di schemi pre-programmati o esternamente da ricompensa e punizione, come nel caso dei mammiferi. Le tecniche e gli algoritmi sviluppati nell'ambito dell'apprendimento automatico potenziato utilizzano frequentemente questi segnali aggiuntivi (utilizzando la suddivisione del tempo nell'elaborazione) o utilizzando continuamente l'indipendenza delle unità di elaborazione delle architetture di elaborazione parallele.

Questo lavoro è stato lanciato al MIT da Norbert Wiener e presentato nel suo libro Cybernetics (MIT Press 1948). La parola cibernetica deriva da una parola più antica che significa guidare le navi . Il movimento automatico di un timone per rimanere in rotta potrebbe essere stato il primo sistema di feedback meccanico. Il motore del tuo tosaerba probabilmente ne ha uno.

Applicazioni e apprendimento adattivi

Il semplice adattamento in tempo reale per una posizione del timone o un acceleratore del rasaerba non sta imparando. Tale adattamento è generalmente una forma di controllo PID lineare. La tecnologia di machine learning che si sta espandendo oggi abbraccia la valutazione e il controllo di sistemi complessi e non lineari che i matematici chiamano caotici.

Per caotico, non significano che i processi descritti siano frenetici o disorganizzati. I caotici hanno scoperto decenni fa che semplici equazioni non lineari possono portare a comportamenti altamente organizzati. Ciò che significano è che il fenomeno è troppo sensibile a lievi modifiche per trovare un algoritmo o una formula fissi per prevederli.

La lingua è così. La stessa affermazione affermata con una dozzina di diverse inflessioni vocali può significare una dozzina di cose diverse. La frase inglese "Davvero" è un esempio. È probabile che le tecniche di rinforzo consentiranno alle macchine future di distinguere con elevate probabilità di successo tra i vari significati di tale affermazione.

Perché Games First?

I giochi hanno un set molto semplice e facilmente definibile di possibili scenari. Uno dei maggiori contributori all'avvento del computer, John von Neumann, ha sostenuto Teoria dei giochi e del comportamento economico , un libro che ha scritto insieme a Oskar Morgenstern, secondo il quale tutta la pianificazione e il processo decisionale sono in realtà giochi di varie complessità.

Considera i giochi come l'insieme di esempi di addestramento della raccolta di cervelli che, nel tempo, creeranno sistemi in grado di determinare il significato di un'affermazione che le persone istruite possono trarre da tre fonti di suggerimenti.

  1. Contesto all'interno di una conversazione o di uno scenario sociale
  2. Le inflessioni vocali di chi parla
  3. Le espressioni facciali e il linguaggio del corpo di chi parla

Beyond Chess e The Game of Go

Lungo il percorso dai giochi ai sistemi linguistici con una comprensione accurata e capacità di ascolto più profondo, ci sono diverse applicazioni di apprendimento rinforzato che sono di importanza molto maggiore per la terra e l'esperienza umana.

  • Sistemi che imparano a spegnere o attenuare luci, elettrodomestici, sistemi digitali, HVAC e altri dispositivi che consumano energia - L'energia è forse la merce più influente geo-politicamente nella storia umana a causa dell'esaurimento delle risorse di combustibili fossili nel tempo.)
  • Sviluppo di veicoli autonomi - La tendenza pericolosa del funzionamento di attrezzature pesanti, come aeromobili, camper, camion, autobus e rimorchi per trattori da parte di persone in stati d'animo sconosciuti su strade aperte, sarà probabilmente considerata dalla gente futura come pazzia.
  • La valutazione dell'affidabilità delle informazioni - Le informazioni sono ovunque e oltre il 99% è in errore, parzialmente o completamente. Pochissimo è autenticato da ricerche reali, o studi randomizzati in doppio cieco adeguatamente progettati e interpretati o prove e analisi di laboratorio confermabili.
  • Applicazioni sanitarie che diagnosticano meglio, adattano i rimedi all'individuo e aiutano con cure continue per evitare la ricorrenza.

Questi quattro e molti altri sono molto più importanti dell'accumulo di ricchezza attraverso il trading automatico ad alta velocità o le competizioni di gioco vincenti, due interessi auto-centrati sull'apprendimento automatico che incidono semplicemente su una o due generazioni della famiglia di una sola persona.

Ricchezza e fama sono ciò che nella teoria dei giochi è chiamato un gioco a somma zero . Producono tante perdite quante sono le vincite se si considera la più alta filosofia della Regola d'oro secondo cui gli altri e le loro famiglie sono ugualmente importanti per noi.

Apprendimento rinforzato per software CAD (Computer Aided Design)

Il design assistito dal computer è il precursore naturale del design del computer (senza aiuti umani), così come le rotture antibloccaggio portano naturalmente a veicoli completamente autonomi.

Considera il comando "Creami un portasapone per la mia doccia che massimizzi la probabilità che la mia famiglia possa afferrare il sapone al primo tentativo senza aprire gli occhi e minimizza la difficoltà di mantenere il sapone e le superfici della doccia pulite. Ecco le altezze di i miei familiari e alcune foto dello spazio della doccia ". Quindi una stampante 3D fa fuoriuscire il dispositivo, pronto per essere collegato, insieme alle istruzioni di installazione.

Ovviamente, un tale sistema CD (CAD senza A) dovrebbe essere addestrato per le pulizie, il comportamento umano senza visione, i modi di attaccare gli oggetti alle piastrelle, gli strumenti e le capacità di manutenzione della casa del consumatore medio, le capacità della stampante 3D e molte altre cose.

Tali sviluppi nell'automazione della produzione probabilmente inizierebbero con l'apprendimento rafforzato di comandi più semplici come "Collegare queste due parti usando dispositivi di fissaggio e buone pratiche prodotti in serie". Il programma CAD avrebbe quindi scelto l'hardware tra viti, rivetti, adesivi e altre opzioni, forse ponendo domande al progettista sulla temperatura operativa e sui campi di vibrazione. La scelta, la posizione e l'angolo verrebbero quindi aggiunti all'insieme appropriato di parti CAD, disegni di assemblaggio e distinte materiali.


Normalmente non farei un commento critico sulla risposta, ben scritto, ma poiché hai chiesto una critica: penso che le sezioni La base per il rinforzo , il feedback e il rinforzo e le applicazioni adattive e l'apprendimento mentre interessanti, potrebbero essere abbattute considerevolmente, poiché il La domanda di OP implica già una certa conoscenza di RL e impieghi molto tempo a impostare questa discussione di fondo correlata prima di affrontare la domanda originale.
Neil Slater,

Il fatto che l'OP abbia posto la domanda indica buchi o lo stato attuale della ricerca indicativo di qualcuno che non conosce il campo e potrebbe aver bisogno del primer nelle sezioni precedenti. L'ultima sezione risponde più direttamente alla domanda.
FauChristian,
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.