O que é aprendizagem de reforço?

25 de março de 2024

Autores

Jacob Murel Ph.D.

Senior Technical Content Creator

Eda Kavlakoglu

Program Manager

No aprendizado por reforço, um agente aprende a tomar decisões interagindo com um ambiente.za É utilizado em robótica e outros contextos de tomada de decisão.

O aprendizado por reforço (RL) é um tipo de processo de aprendizado de máquina que foca na tomada de decisões por agentes autônomos. Um agente autônomo é qualquer sistema que pode tomar decisões e agir em resposta ao seu ambiente, independentemente de instruções diretas de um usuário humano. Robôs e carros autônomos são exemplos de agentes autônomos. No aprendizado por reforço, um agente autônomo aprende a realizar uma tarefa por tentativa e erro na ausência de qualquer orientação de um usuário humano.1 Ele lida particularmente com problemas sequenciais de tomada de decisões em ambientes incertos e é promissor no desenvolvimento de inteligência artificial.

Aprendizado supervisionado e não supervisionado

A literatura frequentemente compara o aprendizado por reforço com o aprendizado supervisionado e não supervisionado. O aprendizado supervisionado utiliza dados rotulados manualmente para produzir previsões ou classificações. O aprendizado não supervisionado visa descobrir e aprender padrões ocultos a partir de dados não rotulados. Ao contrário do aprendizado supervisionado, o aprendizado por reforço não usa exemplos rotulados de comportamentos corretos ou incorretos. Mas o aprendizado por reforço também se diferencia do aprendizado não supervisionado ao aprender por tentativa e erro e por meio de uma função de recompensas, em vez de extrair informações de padrões ocultos.2

Os métodos de aprendizado supervisionado e não supervisionado partem do princípio de que cada registro no conjunto de dados é independente dos outros, mas todos seguem o mesmo padrão de distribuição subjacente. Esses métodos são treinados para otimizar a precisão das previsões, que serve como base para medir o desempenho do modelo.

Por outro lado, o aprendizado por reforço aprende a agir. Ele pressupõe que os dados de input sejam tuplas interdependentes, ou seja, uma sequência ordenada de dados organizada como estado-ação-recompensa. Muitas aplicações de algoritmos de aprendizado por reforço visam imitar métodos de aprendizado biológico do mundo real através de reforço positivo.

Observe que, embora os dois não sejam frequentemente comparados na literatura, o aprendizado por reforço também é distinto do aprendizado autossupervisionado . Este último é uma forma de aprendizado não supervisionado que usa pseudo rótulos derivados de dados de treinamento não rotulados como verdade fundamental para medir a precisão do modelo. O aprendizado por reforço, no entanto, não produz pseudo rótulos nem mede em relação a uma verdade fundamental; ele não é um método de classificação, mas um aprendiz de ações. No entanto, os dois foram combinados com resultados promissores.3

Projeto 3D de bolas rolando em uma pista

As últimas notícias e insights sobre IA 


Descubra insights selecionadas por especialistas sobre IA, nuvem e outros assuntos no boletim informativo semanal Think. 

Processo de aprendizado por reforço

O aprendizado por reforço consiste essencialmente na relação entre um agente, ambiente e objetivo. A literatura formula amplamente essa relação em termos do processo de decisão de Markov (MDP).

Processo de decisão de Markov

O agente de aprendizado por reforço aprende sobre um problema ao interagir com seu ambiente. O ambiente fornece informações sobre seu estado atual. Em seguida, o agente usa essas informações para determinar qual(is) ação(ões) adotar. Se essa ação obtiver um sinal de recompensa do ambiente ao redor, o agente é incentivado a adotar essa ação novamente quando estiver em um estado futuro semelhante. Esse processo se repete para cada novo estado subsequente. Com o tempo, o agente aprende com recompensas e punições a adotar ações dentro do ambiente que atendem a um objetivo específico.4

Em processos de decisão de Markov, o espaço de estados refere-se a todas as informações fornecidas pelo estado de um ambiente. O espaço de ações denota todas as ações possíveis que o agente pode executar dentro de um estado.5

Dilema entre exploração e invasão

Como um agente de RL não possui dados de input manualmente rotulados para guiar seu comportamento, ele deve explorar seu ambiente, tentando novas ações para descobrir quais recebem recompensas. A partir desses sinais de recompensa, o agente aprende a preferir ações que foram recompensadas para maximizar seu ganho. Mas o agente também deve continuar explorando novos estados e ações. Ao fazer isso, ele pode usar essa experiência para melhorar sua tomada de decisão.

Assim, os algoritmos de RL exigem que um agente explore e aproveite o conhecimento de ações de estado previamente recompensadas. O agente não pode perseguir exclusivamente a exploração ou a invasão. Ele deve tentar continuamente novas ações, ao mesmo tempo em que prefere ações isoladas (ou cadeias de ações) que geram a maior recompensa cumulativa.6

Componentes do aprendizado por reforço

Além do trio agente-ambiente-objetivo, quatro subelementos principais caracterizam os problemas de aprendizado por reforço:

- Política. Define o comportamento do agente de RL mapeando estados ambientais percebidos para ações específicas que o agente deve tomar nesses estados. Pode assumir a forma de uma função rudimentar ou de um processo computacional mais complexo. Por exemplo, uma política que orienta um veículo autônomo pode mapear a detecção de pedestres para uma ação de parar.

- Sinal de recompensa. Designa o objetivo do problema de RL. Cada ação do agente de RL recebe ou não uma recompensa do ambiente. O único objetivo do agente é maximizar suas recompensas acumuladas do ambiente. Para veículos autônomos, o sinal de recompensa pode ser a redução do tempo de viagem, diminuição de colisões, permanência na estrada e na faixa correta, evitando desacelerações ou acelerações extremas, entre outros. Esse exemplo mostra que o RL pode incorporar múltiplos sinais de recompensa para guiar um agente.

- Função de valor. O sinal de recompensa difere da função de valor na medida em que o primeiro denota benefício imediato, enquanto o segundo especifica benefício a longo prazo. Valor refere-se à desejabilidade de um estado em relação a todos os estados (com suas recompensas incumbentes) que provavelmente o seguirão. Um veículo autônomo pode reduzir o tempo de viagem saindo de sua faixa, dirigindo na calçada e acelerando rapidamente, mas essas três ações podem reduzir sua função de valor geral. Assim, o veículo como agente de RL pode trocar um tempo de viagem marginalmente maior para aumentar sua recompensa nessas três áreas.

- Modelo. Esse é um subelemento opcional dos sistemas de aprendizado por reforço. Os modelos permitem que agentes prevejam o comportamento do ambiente para possíveis ações. Então, os agentes usam as previsões do modelo para determinar possíveis cursos de ação com base nos resultados potenciais. Esse modelo pode guiar o veículo autônomo, auxiliando na previsão das melhores rotas e na previsão dos comportamentos dos veículos ao redor, considerando sua posição e velocidade, entre outros aspectos.7 Algumas abordagens baseadas em modelo usam feedback humano direto no aprendizado inicial e, depois, mudam para o aprendizado autônomo.

Mistura de Especialistas | Podcast

Decodificando a IA: resumo semanal das notícias

Junte-se a nosso renomado painel de engenheiros, pesquisadores, líderes de produtos e outros enquanto filtram as informações sobre IA para trazerem a você as mais recentes notícias e insights sobre IA.

Aprendizado online versus offline

Existem dois métodos gerais pelos quais um agente coleta dados para aprender políticas:

- Online. Aqui, um agente coleta dados diretamente interagindo com seu ambiente ao redor. Esses dados são processados e coletados de forma iterativa à medida que o agente continua interagindo com o ambiente.

- Offline. Quando um agente não tem acesso direto a um ambiente, ele pode aprender por meio de dados registrados desse ambiente. Isso é aprendizado offline. Um grande subconjunto de pesquisas tem se voltado para o aprendizado offline devido a dificuldades práticas em treinar modelos por meio de interação direta com ambientes.8

Tipos de aprendizado por reforço

O aprendizado por reforço é uma área de pesquisa dinâmica e em constante evolução, e por isso, desenvolvedores têm criado uma infinidade de abordagens para esse tipo de aprendizado. No entanto, três métodos de aprendizado por reforço amplamente discutidos e fundamentais são programação dinâmica, Monte Carlo e aprendizado por diferença temporal.

Programação dinâmica

A programação dinâmica divide tarefas maiores em tarefas menores. Dessa forma, ela organiza os problemas em fluxos de trabalho de sequências de tomada de decisões em pontos específicos no tempo. Cada decisão é tomada em termos do próximo estado possível resultante. A recompensa de um agente (r) para uma determinada ação é definida como uma função dessa ação (a), do estado ambiental atual (s) e do próximo estado potencial (s'):

Essa função de recompensa pode ser usada como parte da política que governa as ações de um agente. Determinar a política ótima para o comportamento do agente é um componente principal dos métodos de programação dinâmica paro aprendizado por reforço. Entra em cena a equação de Bellman.

A equação de Bellman é:

Em resumo, essa equação define vt(s) como a recompensa total esperada começando no tempo t até o final de um fluxo de trabalho de decisões. Ela assume que o agente começa ocupando o estado s no tempo t. Em última análise, a equação divide a recompensa no tempo t na recompensa imediata rt(s,a) (ou seja, a fórmula de recompensa) e na recompensa total esperada do agente. Assim, um agente maximiza sua função de valor (sendo o valor total da equação de Bellman), ao escolher consistentemente aquela ação que recebe um sinal de recompensa em cada estado.9

Método de Monte Carlo

A programação dinâmica é baseada em modelo, ou seja, constrói um modelo de seu ambiente para perceber recompensas, identificar padrões e navegar no ambiente. Monte Carlo, no entanto, assume um ambiente de caixa-preta, tornando-o sem modelo.

A programação dinâmica faz previsões sobre estados futuros e recompensas para orientar as decisões, enquanto os métodos de Monte Carlo dependem unicamente da experiência, coletando sequências de estados, ações e recompensas através da interação direta com o ambiente. Assim, os métodos de Monte Carlo aprendem por tentativa e erro, em vez de distribuições probabilísticas.

O Monte Carlo também difere da programação dinâmica na determinação da função de valor. A programação dinâmica busca a maior recompensa cumulativa ao selecionar consistentemente ações recompensadas em estados sucessivos. Por outro lado, o Monte Carlo faz a média dos retornos associados a cada combinação de estado e ação. Isso, por sua vez, significa que o método de Monte Carlo deve esperar até que todas as ações em um dado episódio (ou horizonte de planejamento) sejam concluídas antes de calcular sua função de valor e, então, atualizar sua política.10

Aprendizado de diferenças temporais

A literatura descreve amplamente o aprendizado por diferença temporal (TD) como uma combinação de programação dinâmica e Monte Carlo. Assim como na programação dinâmica, o TD atualiza sua política e estimativas para estados futuros após cada etapa, sem esperar por um valor final. Assim como no Monte Carlo, o TD aprende por meio de interação direta com seu ambiente, em vez de usar um modelo dele.11

Pelo nome, o agente de aprendizado TD revisa sua política de acordo com a diferença entre as recompensas previstas e as realmente recebidas em cada estado. Ou seja, enquanto a programação dinâmica e o Monte Carlo consideram apenas a recompensa recebida, o TD também pesa a diferença entre sua expectativa e a recompensa recebida. Usando essa diferença, o agente atualiza suas estimativas para a próxima etapa sem esperar até o horizonte de planejamento do evento, ao contrário do Monte Carlo.12

O TD tem muitas variações. Duas variações principais são Estado–Ação–Recompensa–Estado–Ação (SARSA) e Q-learning. O SARSA é um método TD on-policy, o que significa que ele avalia e tenta melhorar a política que orienta suas decisões. O Q-learning é off-policy. Métodos off-policy são aqueles que utilizam duas políticas: uma para invasão (política-alvo) e outra para exploração e geração de comportamentos (política comportamental).13

Métodos adicionais

Existem inúmeros métodos adicionais de aprendizado por reforço. A programação dinâmica é um método baseado em valor, ou seja, seleciona ações com base em seus valores estimados de acordo com uma política que visa maximizar sua função de valor. Ao contrário, métodos de gradiente de política aprendem uma política parametrizada que pode selecionar ações sem consultar uma função de valor. Estes métodos são conhecidos como baseados em política e são tidos como mais eficientes em ambientes com muitas dimensões.14

Os métodos de ator-crítico utilizam tanto abordagens baseadas em valor quanto em política. O chamado “ator” é um gradiente de política que determina quais ações tomar, enquanto o “crítico” é uma função de valor para avaliar ações. Métodos de ator-crítico são, essencialmente, uma forma de TD. Mais especificamente, o ator-crítico avalia o valor de uma ação dada não apenas com base em sua própria recompensa, mas no valor possível do estado seguinte, que adiciona à recompensa da ação. A vantagem do ator-crítico é que, devido à sua implementação de uma função de valor e política na tomada de decisões, ele efetivamente requer menos interação com o ambiente.15

Exemplos de aprendizado por reforço

Robótica

Como o aprendizado por reforço está centralmente preocupado com a tomada de decisões em ambientes imprevisíveis, tem sido uma área central de interesse em robótica. Para realizar tarefas simples e repetitivas, a tomada de decisões pode ser direta. Mas tarefas mais complicadas, como tentar simular o comportamento humano ou automatizar a condução, envolvem interação com ambientes reais de alta variabilidade e mutáveis. Pesquisas mostram que o aprendizado por reforço profundo com redes neurais profundas auxilia nessas tarefas, especialmente com relação à generalização e mapeamento de entradas sensoriais de alta dimensão para saídas de sistemas controlados.16 Estudos sugerem que o aprendizado por reforço profundo com robôs depende muito de conjuntos de dados coletados e, portanto, trabalhos recentes exploram caminhos para coletar dados do mundo real17 e reaproveitar dados anteriores18 para melhorar os sistemas de aprendizado por reforço.

Processamento de linguagem natural

Pesquisas recentes sugerem que aproveitar técnicas e ferramentas de processamento de linguagem natural, como por exemplo, grandes modelos de linguagem grande (LLMs), pode melhorar a generalização nos sistemas de aprendizado por reforço por meio da representação textual de ambientes do mundo real.19 Muitos estudos mostram como os ambientes textuais interativos oferecem alternativas econômicas aos ambientes tridimensionais ao instruir os agentes de aprendizado em tarefas sucessivas de tomada de decisões.20 O aprendizado por reforço profundo também é a base da tomada de decisões textual em chatbots. De fato, o aprendizado por reforço supera outros métodos para melhorar a resposta de diálogo de chatbots.21

Soluções relacionadas
IBM watsonx.ai

Treine, valide, ajuste e implemente recursos de IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de última geração para construtores de IA. Crie aplicações de IA em uma fração do tempo com uma fração dos dados.

Conheça o watsonx.ai
Soluções de inteligência artificial

Use a IA a serviço de sua empresa com a experiência e o portfólio de soluções líder do setor da IBM à sua disposição.

Explore as soluções de IA
Consultoria e serviços em IA

Reinvente os fluxos de trabalho e operações críticos adicionando IA para maximizar experiências, tomadas de decisão em tempo real e valor de negócios.

Explore os serviços de IA
Dê o próximo passo

Obtenha acesso completo aos recursos que abrangem o ciclo de vida do desenvolvimento da IA. Produza soluções poderosas de IA com interfaces fáceis de usar, fluxos de trabalhos e acesso a APIs e SDKs padrão do setor.

Explore o watsonx.ai Agende uma demonstração em tempo real
Notas de rodapé

1 Ian Goodfellow, Yoshua Bengio, and Aaron Courville, Deep Learning, MIT Press, 2016.

2 Peter Stone, “Reinforcement Learning,” Encyclopedia of Machine Learning and Data Mining, Springer, 2017.

3 Xiang Li, Jinghuan Shang, Srijan Das, Michael Ryoo, "Does Self-supervised Learning Really Improve Reinforcement Learning from Pixels?" Advances in Neural Information Processing Systems, Vol. 35, 2022, pp. 30865-30881, https://proceedings.neurips.cc/paper_files/paper/2022/hash/c75abb33341363ee874a71f81dc45a3a-Abstract-Conference.html.

4 Richard Sutton and Andrew Barto, Introduction to Reinforcement Learning, 2nd edition, MIT Press, 2018. Michael Hu, The Art of Reinforcement Learning: Fundamentals, Mathematics, and Implementations with Python, Apress, 2023.

5 Brandon Brown and Alexander Zai, Deep Reinforcement Learning in Action, Manning Publications, 2020.

6 Richard Sutton and Andrew Barto, Introduction to Reinforcement Learning, 2nd edition, MIT Press, 2018.
Brandon Brown and Alexander Zai, Deep Reinforcement Learning in Action, Manning Publications, 2020.

7 Richard Sutton and Andrew Barto, Introduction to Reinforcement Learning, 2nd edition, MIT Press, 2018. B Ravi Kiran, Ibrahim Sobh, Victor Talpaert, Patrick Mannion, Ahmad A. Al Sallab, Senthil Yogamani, and Patrick Pérez, "Deep Reinforcement Learning for Autonomous Driving: A Survey," IEEE Transactions on Intelligent Transportation Systems, Vol. 23, No. 6, 2022, pp. 4909-4926, https://ieeexplore.ieee.org/document/9351818.

8 Sergey Levine, Aviral Kumar, George Tucker, and Justin Fu, "Offline Reinforcement Learning: Tutorial, Review, and Perspectives on Open Problems," 2020, https://arxiv.org/abs/2005.01643. Julian Schrittwieser, Thomas Hubert, Amol Mandhane, Mohammadamin Barekatain, Ioannis Antonoglou, and David Silver, "Online and Offline Reinforcement Learning by Planning with a Learned Model," Advances in Neural Information Processing Systems, Vol. 34, 2021, pp. 27580-27591, https://proceedings.neurips.cc/paper_files/paper/2021/hash/e8258e5140317ff36c7f8225a3bf9590-Abstract.html.

9 Martin Puterman and Jonathan Patrick, “Dynamic Programming,” Encyclopedia of Machine Learning and Data Mining, Springer, 2017.

10 Richard Sutton and Andrew Barto, Introduction to Reinforcement Learning, 2nd edition, MIT Press, 2018. Phil Winder, Reinforcement Learning: Industrial Applications of Intelligent Agents, O’Reilly, 2020.

11 Richard Sutton and Andrew Barto, Introduction to Reinforcement Learning, 2nd edition, MIT Press, 2018.

12 Michael Hu, The Art of Reinforcement Learning: Fundamentals, Mathematics, and Implementations with Python, Apress, 2023.

13 Richard Sutton and Andrew Barto, Introduction to Reinforcement Learning, 2nd edition, MIT Press, 2018.

14 Richard Sutton and Andrew Barto, Introduction to Reinforcement Learning, 2nd edition, MIT Press, 2018. Michael Hu, The Art of Reinforcement Learning: Fundamentals, Mathematics, and Implementations with Python, Apress, 2023.

15 Richard Sutton and Andrew Barto, Introduction to Reinforcement Learning, 2nd edition, MIT Press, 2018.

16 Julian Ibarz, Jie Tan, Chelsea Finn, Mrinal Kalakrishnan, Peter Pastor, and Sergey Levine, "How to train your robot with deep reinforcement learning: lessons we have learned," The International Journal of Robotics Research, Vol. 40, 2021, pp. 969-721, https://journals.sagepub.com/doi/full/10.1177/0278364920987859.

17 Saminda Wishwajith Abeyruwan, Laura Graesser, David B D’Ambrosio, Avi Singh, Anish Shankar, Alex Bewley, Deepali Jain, Krzysztof Marcin Choromanski, and Pannag R Sanketi, "i-Sim2Real: Reinforcement Learning of Robotic Policies in Tight Human-Robot Interaction Loops," Proceedings of The 6th Conference on Robot Learning, PMLR, No. 205, 2023, pp. 212-224, https://proceedings.mlr.press/v205/abeyruwan23a.html.

18 Homer Rich Walke, Jonathan Heewon Yang, Albert Yu, Aviral Kumar, Jędrzej Orbik, Avi Singh, and Sergey Levine, "Don’t Start From Scratch: Leveraging Prior Data to Automate Robotic Reinforcement Learning," Proceedings of The 6th Conference on Robot Learning, PMLR, No. 205, 2023, 1652-1662, https://proceedings.mlr.press/v205/walke23a.html.

19 Nikolaj Goodger, Peter Vamplew, Cameron Foale, and Richard Dazeley, "Language Representations for Generalization in Reinforcement Learning," Proceedings of The 13th Asian Conference on Machine Learning, PMLR, No. 157, 2021, pp. 390-405, https://proceedings.mlr.press/v157/goodger21a.html. Yuqing Du, Olivia Watkins, Zihan Wang, Cédric Colas, Trevor Darrell, Pieter Abbeel, Abhishek Gupta, and Jacob Andreas, "Guiding Pretraining in Reinforcement Learning with Large Language Models," Proceedings of the 40th International Conference on Machine Learning, PMLR, No. 202, 2023, pp. 8657-8677, https://proceedings.mlr.press/v202/du23f.html. Kolby Nottingham, Prithviraj Ammanabrolu, Alane Suhr, Yejin Choi, Hannaneh Hajishirzi, Sameer Singh, and Roy Fox, "Do Embodied Agents Dream of Pixelated Sheep: Embodied Decision Making using Language Guided World Modelling," Proceedings of the 40th International Conference on Machine Learning, PMLR, 202, 2023, pp. 26311-26325, https://proceedings.mlr.press/v202/nottingham23a.html.

20 Ruoyao Wang and Peter Jansen and Marc-Alexandre Côté and Prithviraj Ammanabrolu, "ScienceWorld: Is your Agent Smarter than a 5th Grader?" Proceedings of the 2022 Conference on Empirical Methods in Natural Language Processing, 2022, pp. 11279-11298, https://aclanthology.org/2022.emnlp-main.775/. Peter Jansen, "A Systematic Survey of Text Worlds as Embodied Natural Language Environments," Proceedings of the 3rd Wordplay: When Language Meets Games Workshop, 2022, pp. 1-15, https://aclanthology.org/2022.wordplay-1.1.

21 Paloma Sodhi, Felix Wu, Ethan R. Elenberg, Kilian Q Weinberger, and Ryan Mcdonald, "On the Effectiveness of Offline RL for Dialogue Response Generation," Proceedings of the 40th International Conference on Machine Learning, PMLR, No. 202, 2023, pp. 32088-32104, https://proceedings.mlr.press/v202/sodhi23a.html. Siddharth Verma, Justin Fu, Sherry Yang, and Sergey Levine, "CHAI: A CHatbot AI for Task-Oriented Dialogue with Offline Reinforcement Learning," Proceedings of the 2022 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, 2022, pp. 4471-4491, https://aclanthology.org/2022.naacl-main.332/.