Connect with us

IA 101

O que é Aprendizado por Reforço?

mm

O que é Aprendizado por Reforço?

Em resumo, 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 aprendizado por reforço experimenta em um ambiente, tomando ações e sendo recompensado quando as ações corretas são tomadas. Com o tempo, o agente aprende a tomar as ações que maximizarão sua recompensa. Essa é uma definição rápida de aprendizado por reforço, mas uma olhada mais atenta nos conceitos por trás do aprendizado por reforço ajudará a obter uma compreensão melhor e mais intuitiva dele.

O termo “aprendizado por reforço” é adaptado do conceito de reforço na psicologia. Por esse motivo, vamos tomar um momento para entender o conceito psicológico de reforço. No sentido psicológico, o termo reforço se refere a algo que aumenta a probabilidade de que uma resposta ou ação específica ocorra. Esse conceito de reforço é uma ideia central da teoria do condicionamento operante, inicialmente proposta pelo psicólogo B.F. Skinner. Nesse contexto, o reforço é qualquer coisa que cause o aumento da frequência de um comportamento específico. Se pensarmos em possíveis reforços para humanos, esses podem ser coisas como elogios, um aumento no trabalho, doces e atividades divertidas.

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

Reforço Positivo & 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 mais comum de reforço usado no aprendizado por reforço, pois ajuda os modelos a maximizar o desempenho em uma tarefa específica. Além disso, 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 de desempenho mínimo, em vez de alcançar o desempenho máximo do modelo. O reforço negativo no aprendizado por reforço pode ajudar a garantir que um modelo seja mantido longe de ações indesejadas, mas não pode realmente fazer com que o modelo explore ações desejadas.

Treinamento de um Agente de Reforço

Quando um agente de aprendizado por reforço é treinado, existem quatro ingredientes ou 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 jogo de plataforma onde o objetivo da IA é chegar ao final do nível movendo-se para a direita na tela. O estado inicial do jogo é extraído do ambiente, significando que o primeiro quadro do jogo é analisado e dado ao modelo. Com base nessa informação, o modelo deve decidir sobre uma ação.

Durante as fases iniciais de 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 é tomada, o ambiente do jogo é atualizado e um novo estado ou quadro é criado. Se a ação tomada pelo agente produziu um resultado desejável, digamos que, nesse caso, o agente ainda está vivo e não foi atingido por um inimigo, alguma recompensa é dada ao agente e ele se torna mais provável de fazer o mesmo no futuro.

Esse sistema básico é constantemente repetido, acontecendo novamente e novamente, e cada vez o agente tenta aprender um pouco mais e maximizar sua recompensa.

Tarefas Episódicas vs Tarefas Contínuas

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

As tarefas episódicas executarão o loop de treinamento e melhorarão seu desempenho até que alguns critérios de término sejam atendidos e o treinamento seja encerrado. Em um jogo, isso pode ser alcançar o final do nível ou cair em um perigo, como espinhos. Em contraste, as tarefas contínuas não têm critérios de término, essencialmente continuando a treinar para sempre até que o engenheiro escolha encerrar o treinamento.

Monte Carlo vs Diferença Temporal

Existem duas maneiras principais de treinar, ou aprender, um agente de aprendizado por reforço. Na abordagem de Monte Carlo, as recompensas são entregues ao agente (sua pontuação é atualizada) apenas no final do episódio de treinamento. Para colocar de outra forma, apenas quando a condição de término é atingida, o modelo aprende como se saiu. Ele pode então usar essa informação para atualizar e, quando o próximo round de treinamento for iniciado, ele responderá de acordo com as novas informações.

O método de diferença temporal difere do método de Monte Carlo, pois 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 o próximo passo de tempo, os valores são atualizados.

Exploração vs Exploração

Treinar 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 é usar as informações já conhecidas sobre o ambiente para ganhar pontos de recompensa. Se um agente apenas explora e nunca explora, as ações desejadas nunca serão realizadas. Por outro lado, se o agente apenas explora e nunca explora, o agente aprenderá a realizar apenas uma ação e não descobrirá outras estratégias possíveis de ganhar recompensas. Portanto, equilibrar a exploração e a exploração é crítico 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 variedade de funções e é mais adequado para aplicações em que as tarefas exigem automação.

A automação de tarefas a serem realizadas por robôs industriais é uma área em que o aprendizado por reforço se prova útil. O aprendizado por reforço também pode ser usado para problemas como mineração de texto, criando modelos que possam resumir longos corpos de texto. 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 tarefas como a otimização de políticas de tratamento. O aprendizado por reforço também pode ser usado para personalizar material educacional para estudantes.

Resumo do Aprendizado por Reforço

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

Blogueiro e programador com especialidades em Machine Learning e Deep Learning tópicos. Daniel espera ajudar os outros a usar o poder da IA para o bem social.