# Aprenentatge de reforç profund

L'aprenentatge de reforç profund (deep RL) és un subcamp de l'aprenentatge automàtic que combina l'aprenentatge de reforç (RL) i l'aprenentatge profund. RL considera el problema d'un agent computacional que aprengui a prendre decisions per assaig i error. Deep RL incorpora l'aprenentatge profund a la solució, permetent als agents prendre decisions a partir de dades d'entrada no estructurades sense enginyeria manual de l'espai d'estat. Els algorismes de RL profund són capaços de rebre entrades molt grans (per exemple, cada píxel representat a la pantalla en un videojoc) i decidir quines accions realitzar per optimitzar un objectiu (per exemple, maximitzar la puntuació del joc). L'aprenentatge de reforç profund s'ha utilitzat per a un conjunt divers d'aplicacions que inclouen, entre d'altres, robòtica, videojocs, processament del llenguatge natural, visió per ordinador, educació, transport, finances i assistència sanitària.

## Visió general
### Aprenentatge profund

L'aprenentatge profund és una forma d'aprenentatge automàtic que utilitza una xarxa neuronal per transformar un conjunt d'entrades en un conjunt de sortides mitjançant una xarxa neuronal artificial. S'ha demostrat que els mètodes d'aprenentatge profund, que sovint utilitzen l'aprenentatge supervisat amb conjunts de dades etiquetats, resolen tasques que impliquen el maneig de dades d'entrada en brut complexes i de gran dimensió (com ara imatges) amb menys enginyeria manual de característiques que els mètodes anteriors, la qual cosa permet un progrés significatiu en diversos camps, com ara visió per computador i processament del llenguatge natural. En l'última dècada, Deep RL ha aconseguit resultats notables en una sèrie de problemes, des de jocs per a un sol i multijugador com Go, Atari Games i Dota 2 fins a la robòtica.

### Aprenentatge de reforç

L'aprenentatge per reforç és un procés en el qual un agent aprèn a prendre decisions mitjançant assaig i error. Aquest problema sovint es modela matemàticament com un procés de decisió de Markov (MDP), on un agent en cada pas de temps es troba en un estat $s$, pren mesures $a$, rep una recompensa escalar i passa al següent estat $s'$ segons la dinàmica ambiental $p(s'|s,a)$. L'agent intenta aprendre una política $\pi (a|s)$, o mapa d'observacions a accions, per tal de maximitzar els seus rendiments (suma esperada de recompenses). En l'aprenentatge de reforç (a diferència del control òptim ), l'algoritme només té accés a la dinàmica $p(s'|s,a)$ mitjançant el mostreig.

### Aprenentatge de reforç profund

En molts problemes pràctics de presa de decisions, els estats $s$ dels MDP són d'alta dimensió (per exemple, imatges d'una càmera o el flux de sensor en brut d'un robot) i no es poden resoldre mitjançant algorismes RL tradicionals. Els algorismes d'aprenentatge de reforç profund incorporen aprenentatge profund per resoldre aquests MDP, sovint representant la política $\pi (a|s)$ o altres funcions apreses com a xarxa neuronal i desenvolupant algorismes especialitzats que funcionen bé en aquest entorn.

## Història

Juntament amb el creixent interès per les xarxes neuronals a partir de mitjans dels anys vuitanta, va créixer l'interès per l'aprenentatge de reforç profund, on una xarxa neuronal s'utilitza en l'aprenentatge de reforç per representar polítiques o funcions de valor. Com que en aquest sistema, tot el procés de presa de decisions, des dels sensors fins als motors d'un robot o agent, implica una única xarxa neuronal, de vegades també s'anomena aprenentatge de reforç d'extrem a extrem. Una de les primeres aplicacions reeixides de l'aprenentatge per reforç amb xarxes neuronals va ser TD-Gammon, un programa informàtic desenvolupat el 1992 per jugar al backgammon. Es van utilitzar quatre entrades per al nombre de peces d'un color determinat en una ubicació determinada del tauler, amb un total de 198 senyals d'entrada. Amb el coneixement zero incorporat, la xarxa va aprendre a jugar el joc a un nivell intermedi mitjançant el joc propi i el TD($\lambda$).
Llibres de text fonamentals de Sutton i Barto sobre aprenentatge de reforç, Bertsekas i Tsitiklis sobre programació neurodinàmica, i altres coneixements avançats i interès en el camp.
El grup de Katsunari Shibata va demostrar que en aquest marc sorgeixen diverses funcions, incloent el reconeixement d'imatges, la constància del color, el moviment del sensor (reconeixement actiu), la coordinació ull-mà i el moviment de la mà, l'explicació de les activitats cerebrals, el coneixement. transferència, memòria, atenció selectiva, predicció i exploració.
A partir del 2012, l'anomenada revolució de l'aprenentatge profund va provocar un interès creixent en l'ús de xarxes neuronals profundes com a aproximadors de funcions en diversos dominis. Això va provocar un interès renovat en els investigadors que utilitzen xarxes neuronals profundes per aprendre la política, el valor i/o les funcions Q presents als algorismes d'aprenentatge de reforç existents.
A partir de l'any 2013, DeepMind va mostrar resultats d'aprenentatge impressionants amb RL profund per jugar als videojocs d'Atari. El jugador d'ordinador que va entrenar una xarxa neuronal utilitzant un algorisme RL profund, una versió profunda de l'aprenentatge Q que van anomenar xarxes Q profundes (DQN), amb la puntuació del joc com a recompensa. Van utilitzar una xarxa neuronal convolucional profunda per processar 4 fotogrames de píxels RGB (84x84) com a entrades. Els 49 jocs es van aprendre utilitzant la mateixa arquitectura de xarxa i amb coneixements previs mínims, superant els mètodes de la competència en gairebé tots els jocs i amb un nivell comparable o superior a un provador de jocs humà professional.
L'aprenentatge de reforç profund va assolir una altra fita el 2015 quan AlphaGo, un programa informàtic entrenat amb RL profund per jugar a Go, es va convertir en el primer programa informàtic Go que va vèncer un jugador professional de Go humà sense handicap en un tauler de 19×19 de mida completa. En un projecte posterior el 2017, AlphaZero va millorar el rendiment a Go alhora que va demostrar que podien utilitzar el mateix algorisme per aprendre a jugar als escacs i el shogi a un nivell competitiu o superior als programes informàtics existents per a aquests jocs, i va tornar a millorar el 2019 amb MuZero. Per separat, els investigadors de la Carnegie Mellon University van assolir una altra fita el 2019 desenvolupant Pluribus, un programa informàtic per jugar al pòquer que va ser el primer a vèncer als professionals en jocs multijugador de Texas Hold 'em sense límit. OpenAI Five, un programa per jugar cinc contra cinc Dota 2 va vèncer als anteriors campions del món en un partit de demostració el 2019.
L'aprenentatge de reforç profund també s'ha aplicat a molts dominis més enllà dels jocs. En robòtica, s'ha utilitzat per permetre als robots fer tasques domèstiques senzilles i resoldre un cub de Rubik amb una mà de robot. Deep RL també ha trobat aplicacions de sostenibilitat, utilitzades per reduir el consum d'energia als centres de dades. Deep RL per a la conducció autònoma és una àrea activa de recerca a l'acadèmia i la indústria. Loon va explorar RL profund per navegar de manera autònoma pels seus globus d'altitud.

## Algorismes

Existeixen diverses tècniques per entrenar polítiques per resoldre tasques amb algorismes d'aprenentatge de reforç profund, cadascuna amb els seus propis beneficis. Al nivell més alt, hi ha una distinció entre l'aprenentatge de reforç basat en models i l'aprenentatge lliure de models, que fa referència a si l'algoritme intenta aprendre un model avançat de la dinàmica de l'entorn.
En algorismes d'aprenentatge de reforç profund basats en models, s'estima un model avançat de la dinàmica de l'entorn, normalment mitjançant un aprenentatge supervisat mitjançant una xarxa neuronal. A continuació, s'obtenen accions utilitzant el control predictiu del model mitjançant el model après. Atès que la dinàmica real de l'entorn normalment divergirà de la dinàmica apresa, l'agent torna a planificar sovint quan realitza accions en l'entorn. Les accions seleccionades es poden optimitzar mitjançant mètodes de Montecarlo com el mètode d'entropia creuada o una combinació d'aprenentatge de models amb mètodes sense models.
En algorismes d'aprenentatge de reforç profund sense models, una política $\pi (a|s)$ s'aprèn sense modelar explícitament la dinàmica cap endavant. Es pot optimitzar una política per maximitzar els rendiments estimant directament el gradient de la política però pateix una gran variància, la qual cosa fa que no sigui pràctic per a l'ús amb aproximació de funcions en RL profund. S'han desenvolupat algorismes posteriors per a un aprenentatge més estable i aplicats àmpliament. Una altra classe d'algoritmes d'aprenentatge de reforç profund sense models es basen en la programació dinàmica, inspirada en l'aprenentatge per diferència temporal i l'aprenentatge Q. En espais d'acció discrets, aquests algorismes solen aprenen una funció Q de xarxa neuronal $Q(s,a)$ que estima els rendiments futurs prenent mesures $a$ de l'estat $s$. En espais continus, aquests algorismes sovint aprenen tant una estimació de valors com una política.

## Referències

* ↑ Le, Ngan; Rathour, Vidhiwar Singh; Yamazaki, Kashu; Luu, Khoa; Savvides, Marios (en anglès) Artificial Intelligence Review, 55, 4, 01-04-2022, pàg. 2733–2819. arXiv: 2108.11510. DOI: 10.1007/s10462-021-10061-9. ISSN: 1573-7462.
* ↑ Francois-Lavet, Vincent; Henderson, Peter; Islam, Riashat; Bellemare, Marc G.; Pineau, Joelle Foundations and Trends in Machine Learning, 11, 3–4, 2018, pàg. 219–354. arXiv: 1811.12560. Bibcode: 2018arXiv181112560F. DOI: 10.1561/2200000071. ISSN: 1935-8237.
* ↑ Graesser, Laura. «Foundations of Deep Reinforcement Learning: Theory and Practice in Python» (en anglès). Open Library Telkom University. [Consulta: 1r juliol 2023].
* ↑ Tesauro, Gerald Communications of the ACM, 38, 3, 3-1995, pàg. 58–68. DOI: 10.1145/203330.203343 [Consulta: free].
* ↑ Sutton, Richard. Reinforcement Learning: An Introduction (en anglès). Athena Scientific, September 1996.
* ↑ Bertsekas, John. Neuro-Dynamic Programming (en anglès). Athena Scientific, September 1996. ISBN 1-886529-10-8.
* ↑ Miller, W. Thomas. Neural Networks for Control (en anglès), 1990.
* 1 2 Mnih, Volodymyr; etal Nature, 518, 7540, 2015, pàg. 529–533. Bibcode: 2015Natur.518..529M. DOI: 10.1038/nature14236. PMID: 25719670.
* ↑ Schrittwieser, Julian; Antonoglou, Ioannis; Hubert, Thomas; Simonyan, Karen; Sifre, Laurent Nature, 588, 7839, 23-12-2020, pàg. 604–609. arXiv: 1911.08265. Bibcode: 2020Natur.588..604S. DOI: 10.1038/s41586-020-03051-4. PMID: 33361790.
* ↑ Levine, Sergey; Finn, Chelsea; Darrell, Trevor; Abbeel, Pieter JMLR, 17, 1-2016. arXiv: 1504.00702.
* ↑ «OpenAI - Solving Rubik's Cube With A Robot Hand» (en anglès). OpenAI.
* ↑ «DeepMind AI Reduces Google Data Centre Cooling Bill by 40%». DeepMind, 14-05-2024.
* ↑ «Machine Learning for Autonomous Driving Workshop @ NeurIPS 2021» (en anglès). NeurIPS 2021, 01-12-2021.
* ↑ Bellemare, Marc; Candido, Salvatore; Castro, Pablo; Gong, Jun; Machado, Marlos Nature, 588, 7836, 02-12-2020, pàg. 77–82. Bibcode: 2020Natur.588...77B. DOI: 10.1038/s41586-020-2939-8. PMID: 33268863.
* ↑ Williams, Ronald J Machine Learning, 8, 3–4, 1992, pàg. 229–256. DOI: 10.1007/BF00992696 [Consulta: free].