Por Shweta Bhatt, Youplus.

Aprendizagem de Reforço é um dos tópicos de pesquisa mais quentes atualmente e sua popularidade está apenas crescendo a cada dia. Vamos olhar para 5 coisas úteis para saber sobre RL.

  1. O que é aprendizado de reforço? Como se relaciona com outras técnicas ML?

Reinforcement Learning(RL) é um tipo de técnica de aprendizagem de máquinas que permite a um agente aprender em um ambiente interativo por tentativa e erro usando feedback de suas próprias ações e experiências.

A aprendizagem supervisionada e de reforço usa o mapeamento entre entrada e saída, ao contrário da aprendizagem supervisionada onde o feedback fornecido ao agente é o conjunto correto de ações para realizar uma tarefa, a aprendizagem de reforço usa recompensas e punições como sinais de comportamento positivo e negativo.

Como comparada à aprendizagem não supervisionada, a aprendizagem de reforço é diferente em termos de objetivos. Enquanto o objectivo na aprendizagem não supervisionada é encontrar semelhanças e diferenças entre pontos de dados, na aprendizagem de reforço o objectivo é encontrar um modelo de acção adequado que maximize a recompensa total cumulativa do agente. A figura abaixo representa a ideia básica e elementos envolvidos num modelo de aprendizagem de reforço.

Figure 1

  1. Como formular um problema de aprendizagem de reforço básico?

alguns termos chave que descrevem os elementos de um problema RL são:

Ambiente: Mundo físico em que o agente opera

Estado: Situação actual do agente

Prémio: Feedback do ambiente

Política: Método para mapear o estado do agente às ações

Valor: Recompensa futura que um agente receberia ao tomar uma acção num determinado estado

Um problema de aprendizagem de reforço pode ser melhor explicado através de jogos. Vamos levar o jogo do PacMan onde o objetivo do agente (PacMan) é comer a comida na grade enquanto evita os fantasmas no seu caminho. O mundo da grelha é o ambiente interactivo para o agente. PacMan recebe uma recompensa por comer comida e punição se for morto pelo fantasma (perde o jogo). Os estados são a localização do PacMan no mundo da grade e a recompensa total acumulada é PacMan ganhando o jogo.

Para construir uma política ideal, o agente enfrenta o dilema de explorar novos estados enquanto maximiza sua recompensa ao mesmo tempo. Isto é chamado de Exploration vs Exploitation trade-off.

Markov Decision Processes (MDPs) são frameworks matemáticos para descrever um ambiente de aprendizado de reforço e quase todos os problemas de RL podem ser formalizados usando MDPs. Um MDP consiste de um conjunto de estados S de ambiente finito, um conjunto de possíveis ações A(s) em cada estado, uma função R(s) de recompensa real valorizada e um modelo de transição P(s’, s | a). Contudo, é mais provável que os ambientes do mundo real careçam de qualquer conhecimento prévio da dinâmica do ambiente. Métodos RL livres de modelos são úteis em tais casos.

Q-learning é uma abordagem livre de modelos comumente usada, que pode ser usada para construir um agente PacMan auto-executável. Ele gira em torno da noção de atualização de valores Q que denota o valor de fazer ação a em estado s. A regra de atualização de valores é o núcleo do algoritmo de Q-learning.

Figure 2: Reinforcement Learning Update Rule

Figure 3: PacMan

Hé um vídeo de um agente PacMan de aprendizagem profunda de reforço

  1. Quais são alguns dos algoritmos de aprendizagem de reforço mais utilizados?

Q-learning e SARSA (State-Action-Reward-State-Action) são dois algoritmos de RL livres de modelos comumente utilizados. Eles diferem em termos de suas estratégias de exploração, enquanto suas estratégias de exploração são semelhantes. Enquanto o Q-learning é um método fora da política em que o agente aprende o valor baseado na acção a* derivada da outra política, o SARSA é um método on-policy onde aprende o valor baseado na sua acção actual aderida à sua política actual. Esses dois métodos são simples de implementar mas carecem de generalidade, pois não têm a capacidade de estimar valores para estados invisíveis.

Isso pode ser superado por algoritmos mais avançados como o Deep Q-Networks, que usa Redes Neurais para estimar valores de Q. Mas os DQNs só podem lidar com espaços de ação discretos e de baixa dimensão. DDPG(Deep Deterministic Policy Gradient) é um algoritmo livre de modelos, fora da política, crítico de atores e que aborda este problema através da aprendizagem de políticas em espaços de ação contínua de alta dimensão.

Figure 4: arquitetura crítica de atores para Reinforcement Learning

  1. Quais são as aplicações práticas do Reinforcement Learning?

Desde, RL requer muitos dados, portanto é mais aplicável em domínios onde dados simulados estão prontamente disponíveis como jogabilidade, robótica.

  • RL é bastante utilizado na construção de IA para jogar jogos de computador. AlphaGo Zero é o primeiro programa de computador a derrotar um campeão do mundo no antigo jogo chinês de Go. Outros incluem jogos ATARI, Backgammon, etc
  • Em robótica e automação industrial,RL é usado para permitir que o robô crie um sistema de controle adaptativo eficiente para si mesmo, que aprende com sua própria experiência e comportamento.O trabalho do DeepMind em Deep Reinforcement Learning for Robotic Manipulation with Asynchronous Policy updates é um bom exemplo do mesmo.
  • Veja este interessante vídeo de demonstração.
  • Outras aplicações de RL incluem mecanismos de resumo de texto, agentes de diálogo (texto, fala) que podem aprender com as interações do usuário e melhorar com o tempo, aprendendo ótimas políticas de tratamento em saúde e agentes baseados em RL para negociação de ações online.
  1. Como posso começar com Reinforcement Learning?

Para compreender os conceitos básicos de RL,

  • Reinforcement Learning-An Introduction, um livro do pai de Reinforcement Learning- Richard Sutton e seu conselheiro de doutorado Andrew Barto. Um rascunho online do livro está disponível aqui http://incompleteideas.net/book/the-book-2nd.html
  • Material didático de David Silver, incluindo palestras em vídeo é um ótimo curso introdutório sobre RL
  • Aqui está outro tutorial técnico sobre RL de Pieter Abbeel e John Schulman (Open AI/ Berkeley AI Research Lab).
  • Para começar a construir e testar agentes RL,
  • Este blog sobre como treinar um agente ATARI Pong da Rede Neural com Gradientes de Políticas a partir de pixels brutos por Andrej Karpathy ajudará você a colocar seu primeiro agente de Aprendizagem de Reforço Profundo em funcionamento em apenas 130 linhas de código Python.
  • DeepMind Lab é uma plataforma de código aberto semelhante a jogos 3D criada para pesquisa de IA baseada em agentes com ambientes ricos e simulados.
  • Project Malmo é outra plataforma de experimentação de IA para apoiar pesquisas fundamentais em AI.
  • OpenAI gym é um kit de ferramentas para construir e comparar algoritmos de aprendizagem de reforço.

Bio: Shweta Bhatt é pesquisadora de IA com experiência no setor privado e público, apaixonada pelo impacto e aplicações de derivação de conhecimento de dados para resolver problemas desafiadores. Ela gosta de contar histórias com dados e está baseada em Londres.

Related:

  • Ressurgimento da IA Durante 1983-2010
  • Exclusivo: Entrevista com Rich Sutton, o Pai da Aprendizagem de Reforço
  • Quando a aprendizagem de reforço não deve ser usada?
  • Making Machine Learning Simple

Deixe uma resposta

O seu endereço de email não será publicado.