A Aprendizagem por Reforço com Feedback Humano (RLHF em inglês ou ARFH em português) é um tópico em destaque para todos nós que atuamos na área de Inteligência Artificial (IA). Em essência, todos que já tiveram alguma exposição a treinamentos de tradução automática, seja em modo offline ou online, estão bastante familiarizados com o conceito e os procedimentos. Isso resultou em uma transferência expressiva de talentos que utilizam sua experiência em tradução automática como uma tarefa de PLN para o ajuste refinado de grandes modelos linguísticos (LLMs). Neste artigo, descreveremos de forma simplificada o que é a Aprendizagem por Reforço com Feedback Humano (ARFH) e como ele opera, traçando paralelos com a tradução automática e destacando algumas aplicações práticas do mundo real.
A aprendizagem por reforço é um ramo da aprendizagem de máquina no qual um algoritmo ("o agente") aprende a se comportar de determinada maneira em um ambiente, executando certas ações e recebendo recompensas ou punições em resposta a essas ações. A aprendizagem por reforço visa resolver um problema de vários níveis por tentativa e erro. O objetivo é que o agente aprenda a tomar decisões para maximizar uma recompensa cumulativa ao longo do tempo. A aprendizagem por reforço visa resolver um problema multinível por tentativa e erro. O objetivo é que o agente aprenda a tomar decisões para maximizar uma recompensa cumulativa ao longo do tempo. Se pensarmos bem, é assim que nós, humanos, aprendemos, instintivamente. Chamamos-lhe "aprender com a experiência" ou "tentativa e erro" e por isso sabemos aos seis ou sete anos que uma frigideira, um radiador ou um forno estão quentes e não devemos tocá-los de todo sem nos certificarmos de que estão desligados ou, pelo menos, que não queimam.
Sabemos que, estando à beira de algo, podemos cair. As máquinas são treinadas em cenários da vida real para tomar uma sequência de decisões.
Por exemplo, imagine um jogo em que um pequeno robô (que por definição não é uma máquina pensante) deve encontrar uma saída para um labirinto. Toda vez que o robô toma uma decisão correta e se aproxima da saída, ele recebe uma recompensa positiva. Porém, se ele toma uma decisão que o afasta da saída, ele recebe uma penalização (recompensa negativa). Cedo ou tarde, o robô aprenderá a estratégia ótima para sair do labirinto com base nas recompensas ou penalizações que experimentou. Imagine que este robô possua um aspirador acoplado e diversos dispositivos de detecção de proximidade para mapear sua casa enquanto a limpa. Dê tempo suficiente e ele conhecerá sua casa, suas paredes e a rota de limpeza mais eficiente.
Esse é o conceito básico da aprendizagem por Reforço: aprender através da experiência e feedback.
Para tornar o conceito mais familiar para os profissionais da indústria de serviços de tradução, pense em um motor de tradução automática que é alimentado constantemente (ou frequentemente) com mais dados de traduções de videogames. Pode ser que ele seja razoavelmente bom no primeiro dia, mas talvez não encontre a terminologia ou o estilo que preferimos, cometendo alguns erros no processo. Com material suficiente, começará a aprender nossas preferências. A Aprendizagem por Reforço é aplicado a muitas outras áreas dentro da Aprendizagem Automática, como visão computacional, OCR, classificação de dados, entre outros.
Agora que entendemos o que é a Aprendizagem por Reforço, incluamos os seres humanos no processo de feedback. Uma definição padrão de RLHF é que a Aprendizagem por Reforço a partir do Feedback Humano (RLHF, na sigla em inglês) é uma abordagem de aprendizagem automático que combina técnicas de aprendizagem por reforço, como recompensas e penalizações, com orientação humana para treinar um agente de Inteligência Artificial (IA).
O RLHF opera primeiro treinando um "modelo de recompensa" diretamente a partir dos feedbacks humanos. O modelo de recompensa é uma função que avalia o resultado de um agente (o output do algoritmo) e prevê o quão bom ou ruim ele é, ou seja, estima sua qualidade. Uma vez treinado o modelo de recompensa, ele pode ser usado para treinar o agente por meio da aprendizagem por reforço.
Este "modelo de recompensa", que é treinado diretamente a partir do feedback humano, é responsável por determinar a função de recompensa para otimizar a política do agente utilizando algoritmos de aprendizagem por reforço, como a Otimização de Políticas Proximais.
Portanto, agora temos um sistema que usa as escolhas humanas e as preferências humanas para orientar como e o que o agente vai aprender. Isso potencialmente fornece mais "peso" a escolhas semelhantes às humanas.
Trata-se, de facto, de uma questão de tentativa e erro através da interação com o ambiente e da observação das recompensas ou penalizações recebidas por suas ações (e biscoito/não biscoito se for um cachorro!).
Leia mais: AutoML e auto-treinamento de LLM: Manter a privacidade dos dados na revolução da IA
Vamos recapitular os conceitos-chave antes de nos aprofundarmos no funcionamento do RLHF:
Agente: O algoritmo ou máquina que executa ações que afetam o ambiente. Por exemplo, se você estiver construindo uma máquina para jogar Go, pôquer ou xadrez, a máquina que aprende a jogar é o agente.
Estado: A observação do ambiente pelo agente.
Ação: A decisão ou ação tomada pelo agente no ambiente com base em sua observação.
Ambiente: Toda ação tomada pelo agente de RF afeta diretamente o ambiente. Neste caso, o tabuleiro de Go é um ambiente. O baralho de cartas ou o tabuleiro de xadrez são ambientes.
Isso é muito importante porque o ambiente pode ter mudado como resultado da ação do agente.
Por exemplo, a carta jogada ou retirada pelo sistema, a peça movida em Go ou em uma partida de xadrez, a detecção de uma bola ou de uma criança em um carro autônomo, isso necessariamente muda a situação e terá um efeito negativo/positivo em toda a situação. Potencialmente, o jogo pode ter mudado, assim como a disposição das peças no tabuleiro. Uma bola ou uma criança na estrada deveria desencadear uma série de decisões. Na verdade, o movimento e a presença determinarão a próxima ação e estado no caminho, no jogo ou no tabuleiro.
Recompensa: É o feedback recebido pelo agente do ambiente após realizar uma ação. As recompensas podem ser positivas ou negativas (para ações indesejadas) e não necessariamente vêm de humanos. Há muitos cenários em que podemos querer que a máquina aprenda sozinha. Nesses casos, o único fator crítico que orienta o processo de aprendizado é o feedback/recompensa que ele recebe. As recompensas podem ser positivas ou negativas (para ações indesejadas).
Política: uma estratégia que define como o agente seleciona as ações de acordo com seu estado atual, com o objetivo de maximizar a recompensa cumulativa total.
Fator de desconto: Com o tempo, o fator de desconto altera a importância dos incentivos. Dada a incerteza do futuro, é melhor adicionar variância às estimativas de valor. O fator de desconto ajuda a reduzir o impacto das recompensas futuras em nossas estimativas de função de valor.
Valor-Q: O Valor-Q (Q-Value) é uma medida da recompensa total esperada se o agente estiver em um estado e realizar uma ação e, em seguida, jogar até o final do episódio de acordo com alguma política.
Como você pode começar a ver, pode haver numerosas aplicações em ambientes industriais e de desenvolvimento onde a Aprendizagem por Reforço faz todo o sentido e se torna uma opção muito atraente devido à sua capacidade de aprender por conta própria.
Em uma configuração típica de aprendizagem por reforço, primeiro é treinado um "modelo de recompensa" diretamente a partir do feedback humano. O agente começa num estado inicial e realiza acções de acordo com a sua política. O ambiente responde às ações do agente fornecendo-lhe recompensas e atualizando o estado. Este modelo de recompensa é treinado para prever o quanto um humano recompensaria um agente por uma determinada ação ou comportamento. O modelo de recompensa pode ser usado para treinar o agente através da aprendizagem por reforço.
O agente então atualiza sua política com base nas recompensas observadas e no novo estado, e o processo continua até que uma condição de terminação seja atendida.
(o carro chegou ao seu destino, checkmate, condições ótimas para maximizar a venda de ações, etc.)
Uma diferença fundamental na adição de feedback humano na Aprendizagem por Reforço é que o agente aprende a maximizar as recompensas previstas pelo modelo de recompensa. Isso permite que o agente aprenda diretamente com o feedback humano sem ter que definir explicitamente uma função de recompensa, por exemplo, o esforço consiste em combinar preferências e escolhas humanas que podem não ser exatamente as escolhas "ótimas" automaticamente classificadas. O resultado é sempre uma saída e um comportamento mais "humano".
O processo de treinamento da RLHF geralmente consiste em três etapas básicas.
Pré-treinamento de um modelo de linguagem (LM): O modelo inicial é pré-treinado em um extenso corpus de dados textuais.
Coleta de dados e treinamento de um modelo de recompensa: Feedbacks de especialistas humanos são coletados solicitando-lhes que classifiquem instâncias do comportamento do agente. Essas classificações podem ser utilizadas para pontuar os resultados, por exemplo, através do sistema de classificação Elo. Outros tipos de feedback humano que fornecem informações mais ricas são o feedback numérico, o feedback em linguagem natural, o índice de edição, etc.
Ajuste do modelo de linguagem por aprendizagem por reforço: o modelo de linguagem pré-treinado é ajustado usando o modelo de recompensa como uma função de recompensa, otimizando a política do agente.
A RLHF foi aplicada a várias áreas de processamento de linguagem natural, como agentes de conversação, resumo de texto e compreensão de linguagem natural. Ela permitiu que os modelos linguísticos se alinhassem com valores humanos complexos e melhorassem seu desempenho em tarefas especificadas pelo usuário.
Há vários algoritmos de aprendizagem por reforço, como Q-Learning, SARSA e Deep Q Network (DQN), que diferem em suas abordagens para aprender a política ideal, mas esses são o assunto de outro artigo!
Agora sabemos que o aprendizagem por reforço permite que os agentes (algoritmos) aprendam a se comportar em um ambiente por tentativa e erro. Esses agentes de IA podem executar uma ampla gama de tarefas, incluindo:
Tarefas de processamento de linguagem natural, como tradução automática, resumo de texto e resposta a perguntas.
Tarefas de robótica, como agarrar objetos e navegar em ambientes complexos.
Tarefas de jogos
A RLHF é uma técnica poderosa que pode ser usada para treinar agentes de IA para executar uma ampla gama de tarefas e provavelmente desempenhará uma função cada vez mais importante no desenvolvimento de sistemas de IA no futuro.
Vamos dar uma olhada em dois exemplos de como a RLHF pode ser usada para tarefas muito simples.
Um modelo de recompensa é treinado para prever o quanto um ser humano recompensaria o chatbot por uma determinada resposta. O modelo de recompensa é treinado em um conjunto de dados de feedback humano, em que os humanos avaliam a qualidade das respostas do chatbot.
O chatbot é inicializado com uma política aleatória.
O chatbot interage com o usuário humano e recebe feedback sobre suas respostas.
O chatbot usa o modelo de recompensa para atualizar sua política com base no feedback recebido.
As etapas 3 e 4 são repetidas até que o chatbot seja capaz de gerar respostas de alta qualidade de forma consistente.
Um grande conjunto de dados de formatos de texto criativos é coletado. Podem ser livros, romances, documentos específicos da profissão jurídica ou documentação técnica.
Um modelo de recompensa é treinado nesse conjunto de dados para prever se um determinado formato de texto criativo é bom ou ruim.
O chatbot é inicializado com uma política aleatória para gerar formatos de texto criativos.
O chatbot interage com o modelo de recompensa gerando formatos de texto criativos e recebendo recompensas.
A política do chatbot é atualizada usando a aprendizagem por reforço para maximizar a recompensa esperada.
As etapas 4 e 5 são repetidas até que o chatbot seja capaz de gerar formatos de texto criativos que sejam consistentemente classificados como de alta qualidade por humanos.
A Aprendizagem por Reforço é uma ferramenta poderosa que pode ser usada para resolver uma ampla variedade de problemas do mundo real. Embora ainda seja uma tecnologia relativamente nova, está se desenvolvendo rapidamente e tem o potencial de revolucionar muitas indústrias e a maneira como treinamos agentes de IA.
Manufatura industrial: A Aprendizagem por Reforço é usada para treinar robôs a realizar tarefas complexas em ambientes industriais, como trabalhar em linhas de montagem e operação de máquinas. Isso pode ajudar a reduzir custos trabalhistas, melhorar a qualidade do produto e diminuir o tempo de inatividade.
Carros autônomos: A Aprendizagem por Reforço é usada para treinar carros autônomos para navegar nas estradas e tomar decisões em tempo real. Isso pode contribuir para melhorar a segurança e eficiência.
Comércio e finanças: A Aprendizagem por Reforço é empregada para treinar algoritmos para tomar decisões de negociação. Isso pode ajudar a melhorar os retornos e reduzir o risco.
Processamento de linguagem natural (PLN): A Aprendizagem por Reforço é usada para treinar modelos de PLN para realizar tarefas como responder perguntas (como os chatbots mencionados anteriormente), resumir e traduzir. Isso pode melhorar o desempenho de chatbots e outras aplicações de PLN.
Saúde: A Aprendizagem por Reforço está sendo usada para desenvolver novos métodos para diagnosticar e tratar doenças. Por exemplo, está sendo usada para treinar robôs para realizar cirurgias e desenvolver planos de tratamento personalizados para pacientes.
O ARFH é uma técnica poderosa para treinar agentes de IA, mas possui algumas limitações. Uma delas é que requer feedback humano para treinar o modelo de recompensa. Coletar essas informações pode ser caro e demorado. Escalar o processo para treinar modelos maiores e mais sofisticados é muito intensivo em termos de tempo e recursos devido à dependência do feedback humano.
Além disso, o ARFH pode ser difícil de implementar e ajustar. As técnicas para automatizar ou semi-automatizar o processo de feedback podem ajudar a enfrentar esse desafio.