toco O que é Aprendizagem por Reforço? - Unite.AI
Entre em contato
Masterclass de IA:

AI 101

O que é Aprendizado por Reforço?

mm
Atualização do on

O que é Aprendizado por Reforço?

Simplificando, o aprendizado por reforço é uma técnica de aprendizado de máquina que envolve o treinamento de um agente de inteligência artificial por meio da repetição de ações e recompensas associadas. Um agente de aprendizagem por reforço experimenta em um ambiente, realizando ações e sendo recompensado quando as ações corretas são executadas. Com o tempo, o agente aprende a realizar as ações que maximizarão sua recompensa. Essa é uma definição rápida de aprendizado por reforço, mas examinar mais de perto os conceitos por trás do aprendizado por reforço ajudará você a obter uma compreensão melhor e mais intuitiva dele.

O termo “aprendizagem por reforço” é adaptado do conceito de reforço em psicologia. Por essa razão, vamos dedicar um momento para entender o conceito psicológico de reforço. No sentido psicológico, o termo reforço refere-se a algo que aumenta a probabilidade de ocorrência de uma determinada resposta/ação. Esse conceito de reforçamento é uma ideia central da teoria do condicionamento operante, proposta inicialmente pelo psicólogo BF Skinner. Neste contexto, o reforço é qualquer coisa que faz com que a frequência de um determinado comportamento aumente. Se pensarmos em possíveis reforços para os humanos, podem ser coisas como elogios, aumento no trabalho, doces e atividades divertidas.

No sentido psicológico tradicional, existem dois tipos de reforço. Há reforço positivo e reforço negativo. O reforço positivo é a adição de algo para aumentar um comportamento, como dar uma guloseima ao seu cão quando ele se comporta bem. O reforço negativo envolve a remoção de um estímulo para provocar um comportamento, como desligar ruídos altos para persuadir um gato arisco.

Reforço positivo e negativo

O reforço positivo aumenta a frequência de um comportamento, enquanto o reforço negativo diminui a frequência. Em geral, o reforço positivo é o tipo de reforço mais comum usado no aprendizado por reforço, pois ajuda os modelos a maximizar o desempenho em uma determinada tarefa. Não apenas isso, mas o reforço positivo leva o modelo a fazer mudanças mais sustentáveis, mudanças que podem se tornar padrões consistentes e persistir por longos períodos de tempo.

Em contraste, embora o reforço negativo também torne um comportamento mais provável de ocorrer, ele é usado para manter um padrão mínimo de desempenho em vez de atingir o desempenho máximo de um modelo. O reforço negativo no aprendizado por reforço pode ajudar a garantir que um modelo seja mantido longe de ações indesejáveis, mas não pode realmente fazer um modelo explorar as ações desejadas.

Treinando um Agente de Reforço

Quando um agente de aprendizado por reforço é treinado, são quatro ingredientes diferentes or estados usados ​​no treinamento: estados iniciais (estado 0), novo estado (estado 1), ações e recompensas.

Imagine que estamos treinando um agente de reforço para jogar um videogame de plataforma em que o objetivo da IA ​​é chegar ao final do nível movendo-se pela tela. O estado inicial do jogo é extraído do ambiente, ou seja, o primeiro quadro do jogo é analisado e entregue ao modelo. Com base nessas informações, o modelo deve decidir sobre uma ação.

Durante as fases iniciais do treinamento, essas ações são aleatórias, mas à medida que o modelo é reforçado, certas ações se tornarão mais comuns. Depois que a ação é executada, o ambiente do jogo é atualizado e um novo estado ou quadro é criado. Se a ação realizada pelo agente produziu um resultado desejável, digamos neste caso que o agente ainda está vivo e não foi atingido por um inimigo, alguma recompensa é dada ao agente e torna-se mais provável que ele faça o mesmo em o futuro.

Esse sistema básico está constantemente em loop, acontecendo de novo e de novo, e a cada vez o agente tenta aprender um pouco mais e maximizar sua recompensa.

Tarefas Episódicas x Contínuas

As tarefas de aprendizado por reforço geralmente podem ser colocadas em uma de duas categorias diferentes: tarefas episódicas e tarefas contínuas.

Tarefas episódicas realizarão o loop de aprendizado/treinamento e melhorarão seu desempenho até que alguns critérios finais sejam atendidos e o treinamento seja encerrado. Em um jogo, isso pode significar chegar ao final do nível ou cair em um perigo como espinhos. Por outro lado, as tarefas contínuas não têm critérios de término, basicamente continuando a treinar para sempre até que o engenheiro opte por encerrar o treinamento.

Monte Carlo vs Diferença Temporal

Existem duas formas principais de aprender, ou treinar, um agente de aprendizado por reforço. Em a abordagem de Monte Carlo, as recompensas são entregues ao agente (sua pontuação é atualizada) somente ao final do episódio de treinamento. Em outras palavras, somente quando a condição de término é atingida é que o modelo aprende como foi seu desempenho. Ele pode então usar essas informações para atualizar e quando a próxima rodada de treinamento for iniciada, ele responderá de acordo com as novas informações.

A método de diferença temporal difere do método de Monte Carlo em que a estimativa de valor, ou a estimativa de pontuação, é atualizada durante o curso do episódio de treinamento. Uma vez que o modelo avança para a próxima etapa de tempo, os valores são atualizados.

Exploração x Exploração

O treinamento de um agente de aprendizado por reforço é um ato de equilíbrio, envolvendo o equilíbrio de duas métricas diferentes: exploração e exploração.

A exploração é o ato de coletar mais informações sobre o ambiente circundante, enquanto a exploração está usando as informações já conhecidas sobre o ambiente para ganhar pontos de recompensa. Se um agente apenas explorar e nunca explorar o ambiente, as ações desejadas nunca serão realizadas. Por outro lado, se o agente apenas explorar e nunca explorar, o agente aprenderá apenas a realizar uma ação e não descobrirá outras possíveis estratégias de obtenção de recompensas. Portanto, equilibrar exploração e exploração é fundamental ao criar um agente de aprendizado por reforço.

Casos de uso para aprendizado por reforço

O aprendizado por reforço pode ser usado em uma ampla variedade de funções e é mais adequado para aplicativos em que as tarefas exigem automação.

A automação de tarefas a serem executadas por robôs industriais é uma área em que o aprendizado por reforço se mostra útil. O aprendizado por reforço também pode ser usado para problemas como mineração de texto, criando modelos capazes de resumir longos corpos de texto. Os pesquisadores também estão experimentando o uso de aprendizado por reforço no campo da saúde, com agentes de reforço lidando com trabalhos como a otimização de políticas de tratamento. O aprendizado por reforço também pode ser usado para personalizar o material educacional para os alunos.

Resumo do Aprendizado por Reforço

O aprendizado por reforço é um método poderoso de construção de agentes de IA que pode levar a resultados impressionantes e às vezes surpreendentes. Treinar um agente por meio de aprendizado por reforço pode ser complexo e difícil, pois requer muitas iterações de treinamento e um equilíbrio delicado da dicotomia explorar/explorar. No entanto, se bem-sucedido, um agente criado com aprendizado por reforço pode realizar tarefas complexas em uma ampla variedade de ambientes diferentes.

Blogueiro e programador com especialidades em Machine Learning e Aprendizagem profunda tópicos. Daniel espera ajudar outras pessoas a usar o poder da IA ​​para o bem social.