Inteligência artificial
EUREKA: Desenho de Recompensa de Nível Humano via Codificação de Grandes Modelos de Linguagem

Com os avanços que os Grandes Modelos de Linguagem têm feito nos últimos anos, não é surpreendente que esses frameworks de LLM sejam excelentes como planejadores semânticos para tarefas de tomada de decisão sequencial de alto nível. No entanto, os desenvolvedores ainda encontram desafiadores utilizar o potencial total dos frameworks de LLM para aprender tarefas de manipulação complexas de baixo nível. Apesar de sua eficiência, os Grandes Modelos de Linguagem atuais requerem considerável conhecimento de domínio e especialização para aprender até mesmo habilidades simples ou construir prompts textuais, criando uma lacuna significativa entre seu desempenho e a destreza humana.
Para bridar essa lacuna, desenvolvedores da Nvidia, CalTech, UPenn e outros introduziram o EUREKA, um algoritmo de design de nível humano alimentado por LLM. O EUREKA visa aproveitar várias capacidades dos frameworks de LLM, incluindo codificação, melhoria no contexto e geração de conteúdo zero-shot, para realizar uma otimização sem precedentes de códigos de recompensa. Esses códigos de recompensa, combinados com aprendizado por reforço, permitem que os frameworks aprendam habilidades complexas ou realizem tarefas de manipulação.
Neste artigo, examinaremos o framework EUREKA de uma perspectiva de desenvolvimento, explorando sua estrutura, funcionamento e os resultados que alcança na geração de funções de recompensa. Essas funções, como alegam os desenvolvedores, superam as geradas por humanos. Também exploraremos como o framework EUREKA abre caminho para uma nova abordagem de RLHF (Aprendizado por Reforço com Feedback Humano) ao permitir o aprendizado no contexto sem gradiente. Vamos começar.
EUREKA: Uma Introdução
Hoje, frameworks de LLM de ponta como GPT-3 e GPT-4 entregam resultados excepcionais ao servir como planejadores semânticos para tarefas de tomada de decisão sequencial de alto nível, mas os desenvolvedores ainda buscam maneiras de melhorar seu desempenho quando se trata de aprender tarefas de manipulação de baixo nível, como a destreza de girar uma caneta. Além disso, os desenvolvedores observaram que o aprendizado por reforço pode ser usado para alcançar resultados sustentáveis em condições ágeis e em outros domínios, desde que as funções de recompensa sejam cuidadosamente construídas por designers humanos e essas funções de recompensa sejam capazes de fornecer sinais de aprendizado para comportamentos favoráveis. Quando comparado a tarefas de aprendizado por reforço do mundo real que aceitam recompensas esparsas, torna-se difícil para o modelo aprender os padrões, moldando essas recompensas fornece os sinais de aprendizado incrementais necessários. Além disso, as funções de recompensa, apesar de sua importância, são extremamente desafiadoras para projetar, e projetos sub-ótimos dessas funções frequentemente levam a comportamentos não intencionais.

Para enfrentar esses desafios e maximizar a eficiência desses tokens de recompensa, o EUREKA ou Evolução-dirigida Universal REcompensa Kit para Agente visa fazer as seguintes contribuições.
- Alcançar desempenho de nível humano para projetar Funções de Recompensa.
- Resolver tarefas de manipulação sem usar engenharia de recompensa manual.
- Gerar funções de recompensa mais alinhadas com humanos e mais performáticas, introduzindo uma nova abordagem de aprendizado no contexto sem gradiente, em vez do método tradicional de RLHF ou Aprendizado por Reforço com Feedback Humano.
Existem três escolhas de design algorítmico principais que os desenvolvedores optaram para melhorar a generalidade do EUREKA: busca evolutiva, ambiente como contexto e reflexão de recompensa. Primeiramente, o framework EUREKA usa o código-fonte do ambiente como contexto para gerar funções de recompensa executáveis em um ambiente zero-shot. Em seguida, o framework realiza uma busca evolutiva para melhorar a qualidade de suas recompensas substancialmente, propõe lotes de candidatos a recompensa a cada iteração ou época e refina os que considera mais promissores. Na terceira e última etapa, o framework usa a reflexão de recompensa para tornar a melhoria no contexto das recompensas mais eficaz, um processo que, em última análise, ajuda o framework a permitir edição de recompensa direcionada e automatizada, usando um resumo textual da qualidade dessas recompensas com base em estatísticas de treinamento de política. A figura a seguir fornece uma visão geral de como o framework EUREKA funciona, e na seção seguinte, discutiremos a arquitetura e o funcionamento em maior detalhe.

EUREKA: Arquitetura do Modelo e Configuração do Problema
O objetivo principal do formato de recompensa é retornar uma função de recompensa moldada ou curada para uma função de recompensa de verdade, o que pode ser difícil de otimizar diretamente, como recompensas esparsas. Além disso, os designers só podem usar consultas para acessar essas funções de recompensa de verdade, o que é a razão pela qual o framework EUREKA opta por geração de recompensa, um ambiente de síntese de programa baseado no RDP ou Problema de Design de Recompensa.
O Problema de Design de Recompensa ou RDP é um tuplo que contém um modelo de mundo com um espaço de estado, espaço para funções de recompensa, uma função de transição e um espaço de ação. Um algoritmo de aprendizado, em seguida, otimiza as recompensas gerando uma política que resulta em um MDP ou Processo de Design Markoviano, que produz a evolução escalar de qualquer política e só pode ser acessado usando consultas de política. O objetivo principal do RDP é produzir uma função de recompensa de tal forma que a política seja capaz de alcançar a pontuação de fitness máxima. Na configuração do problema do EUREKA, os desenvolvedores especificaram cada componente no Problema de Design de Recompensa usando código. Além disso, para uma string dada que especifica os detalhes da tarefa, o objetivo principal do problema de geração de recompensa é gerar um código de função de recompensa para maximizar a pontuação de fitness.
Em seguida, no núcleo, existem três componentes algorítmicos fundamentais no framework EUREKA. Busca evolutiva (propondo e refinando candidatos iterativamente), ambiente como contexto (gerando recompensas executáveis em um ambiente zero-shot) e reflexão de recompensa (para permitir a melhoria fina das recompensas). O pseudocódigo para o algoritmo é ilustrado na figura a seguir.

Ambiente como Contexto
Atualmente, os frameworks de LLM precisam de especificações de ambiente como entradas para projetar recompensas, enquanto o framework EUREKA propõe alimentar o código-fonte do ambiente diretamente como contexto, sem o código de recompensa, permitindo que os frameworks de LLM usem o modelo de mundo como contexto. A abordagem seguida pelo EUREKA tem dois benefícios principais. Primeiramente, os frameworks de LLM para codificação são treinados em conjuntos de código nativos escritos em linguagens de programação existentes, como C, C++, Python, Java e mais, o que é a razão fundamental pela qual eles são melhores em produzir saídas de código quando são permitidos compor código na sintaxe e estilo em que foram originalmente treinados. Em segundo lugar, usar o código-fonte do ambiente geralmente revela os ambientes envolvidos semanticamente e as variáveis que são adequadas para uso em uma tentativa de produzir uma função de recompensa de acordo com a tarefa especificada. Com base nesses insights, o framework EUREKA instrui o LLM a retornar um código Python mais executável diretamente com a ajuda de apenas dicas de formatação e projetos de recompensa genéricos.
Busca Evolutiva
A inclusão da busca evolutiva no framework EUREKA visa apresentar uma solução natural para os desafios de sub-otimalidade e erros ocorridos durante a execução, como mencionado anteriormente. Com cada iteração ou época, o framework gera várias saídas independentes do Modelo de Linguagem Grande e, desde que as gerações sejam todas i.i.d, reduz exponencialmente a probabilidade de funções de recompensa durante as iterações serem defeituosas, dado o número de amostras aumentando com cada época.
Na próxima etapa, o framework EUREKA usa as funções de recompensa executáveis da iteração anterior para realizar uma mutação de recompensa no contexto e, em seguida, propõe uma nova e melhorada função de recompensa com base em feedback textual. O framework EUREKA, quando combinado com a melhoria no contexto e as capacidades de seguir instruções dos Modelos de Linguagem Grande, é capaz de especificar o operador de mutação como um prompt textual e sugere um método para usar o resumo textual do treinamento de política para modificar códigos de recompensa existentes.
Reflexão de Recompensa
Para fundamentar as mutações de recompensa no contexto, é essencial avaliar a qualidade das recompensas geradas e, mais importante, colocá-las em palavras, e o framework EUREKA aborda isso usando a estratégia simples de fornecer pontuações numéricas como avaliação de recompensa. Quando a função de fitness da tarefa serve como uma métrica holística para a verdade, falta atribuição de crédito e não fornece nenhuma informação valiosa sobre por que a função de recompensa funciona ou por que não funciona. Portanto, em uma tentativa de fornecer um diagnóstico de recompensa mais direcionado e intricado, o framework propõe usar feedbacks automatizados para resumir a dinâmica de treinamento de política em textos. Além disso, no programa de recompensa, as funções de recompensa no framework EUREKA são solicitadas a expor seus componentes individualmente, permitindo que o framework rastreie os valores escalares de cada componente de recompensa único em pontos de verificação de política durante toda a fase de treinamento.

Embora o procedimento de função de recompensa seguido pelo framework EUREKA seja simples de construir, é essencial devido à natureza algorítmica dependente da otimização de recompensas. Isso significa que a eficácia de uma função de recompensa é diretamente influenciada pela escolha de um algoritmo de Aprendizado por Reforço e, com uma mudança nos hiperparâmetros, a recompensa pode se comportar de forma diferente, mesmo com o mesmo otimizador. Portanto, o framework EUREKA é capaz de editar os registros mais efetiva e seletivamente, enquanto sintetiza funções de recompensa que estão em sinergia aprimorada com o algoritmo de Aprendizado por Reforço.
Treinamento e Linha de Base
Existem dois principais componentes de treinamento do framework EUREKA: Aprendizado de Política e Métricas de Avaliação de Recompensa.
Aprendizado de Política
As funções de recompensa finais para cada tarefa individual são otimizadas com a ajuda do mesmo algoritmo de aprendizado por reforço, usando o mesmo conjunto de hiperparâmetros que são ajustados para fazer as funções de recompensa projetadas por humanos funcionarem bem.
Métricas de Avaliação de Recompensa
Como a métrica da tarefa varia em termos de escala e significado semântico com cada tarefa, o framework EUREKA relata a pontuação normalizada humana, uma métrica que fornece uma medida holística para o framework comparar como se sai em relação às recompensas geradas por humanos especializados, de acordo com as métricas de verdade.
Em seguida, existem três linhas de base principais: L2R, Humano, e Esparsa.
L2R
L2R é uma solução de modelo de linguagem grande de dois estágios que ajuda a gerar recompensas modeladas. Primeiramente, um framework de LLM preenche um modelo de linguagem natural para ambiente e tarefa especificados em linguagem natural e, em seguida, um segundo framework de LLM converte essa “descrição de movimento” em um código que escreve uma função de recompensa, chamando um conjunto de primitivas de API de recompensa escritas manualmente.
Humano
A linha de base Humana são as funções de recompensa originais escritas por pesquisadores de aprendizado por reforço, representando, portanto, os resultados da engenharia de recompensa humana em um nível sem precedentes.
Esparsa
A linha de base Esparsa assemelha-se às funções de fitness e é usada para avaliar a qualidade das recompensas que o framework gera.
Resultados e Desfechos
Para analisar o desempenho do framework EUREKA, avaliaremos seu desempenho em relação a recompensas humanas, melhoria nos resultados ao longo do tempo, geração de recompensas novas, permitindo melhoria direcionada, e trabalhando com feedback humano.
EUREKA Supera Recompensas Humanas
A figura a seguir ilustra os resultados agregados sobre diferentes benchmarks e, como pode ser claramente observado, o framework EUREKA supera ou se sai igual às recompensas de nível humano em ambas as tarefas Dexterity e Issac. Em comparação, a linha de base L2R entrega um desempenho semelhante em tarefas de baixa dimensionalidade, mas quando se trata de tarefas de alta dimensionalidade, a lacuna no desempenho é bastante substancial.

Melhorando Consistentemente ao Longo do Tempo
Um dos principais destaques do framework EUREKA é sua capacidade de melhorar constantemente seu desempenho ao longo do tempo com cada iteração e os resultados são demonstrados na figura a seguir.

Como pode ser claramente visto, o framework gera recompensas melhores com cada iteração e também melhora e eventualmente supera o desempenho das recompensas humanas, graças ao uso da abordagem de busca evolutiva de recompensa no contexto.
Gerando Recompensas Novas
A novidade das recompensas do framework EUREKA pode ser avaliada calculando a correlação entre recompensas humanas e EUREKA nas tarefas Issac. Essas correlações são, em seguida, plotadas em um gráfico de dispersão contra as pontuações normalizadas humanas, com cada ponto no gráfico representando uma recompensa EUREKA individual para cada tarefa individual. Como pode ser claramente visto, o framework EUREKA gera predominantemente funções de recompensa fracamente correlacionadas que superam as funções de recompensa humanas.

Permitindo Melhoria Direcionada
Para avaliar a importância de adicionar reflexão de recompensa no feedback de recompensa, os desenvolvedores avaliaram uma ablação, um framework EUREKA sem reflexão de recompensa que reduz os prompts de feedback para consistir apenas de valores de instantâneo. Ao executar as tarefas Issac, os desenvolvedores observaram que, sem reflexão de recompensa, o framework EUREKA testemunhou uma queda de cerca de 29% na pontuação normalizada média.
Trabalhando com Feedbacks Humanos
Para prontamente incorporar uma ampla gama de entradas para gerar funções de recompensa mais alinhadas com humanos e mais performáticas, o framework EUREKA, além de projetos de recompensa automatizados, também introduz uma nova abordagem de aprendizado no contexto sem gradiente para Aprendizado por Reforço com Feedback Humano e houve duas observações significativas.
- EUREKA pode se beneficiar e melhorar a partir de funções de recompensa humanas.
- Usar feedback humano para reflexão de recompensa induz comportamento alinhado.

A figura acima demonstra como o framework EUREKA demonstra um aumento substancial no desempenho e eficiência, usando a inicialização de recompensa humana, independentemente da qualidade das recompensas humanas, sugerindo que a qualidade da recompensa base não tem um impacto significativo nas capacidades de melhoria de recompensa no contexto do framework.

A figura acima ilustra como o framework EUREKA não apenas pode induzir políticas mais alinhadas com humanos, mas também modificar recompensas incorporando feedback humano.
Pensamentos Finais
Neste artigo, discutimos o EUREKA, um algoritmo de design de nível humano alimentado por LLM, que tenta aproveitar várias capacidades dos frameworks de LLM, incluindo codificação, melhoria no contexto e geração de conteúdo zero-shot, para realizar uma otimização sem precedentes de códigos de recompensa. O código de recompensa, junto com aprendizado por reforço, pode então ser usado por esses frameworks para aprender habilidades complexas ou realizar tarefas de manipulação. Sem intervenção humana ou engenharia de prompt específica de tarefa, o framework entrega capacidades de geração de recompensa de nível humano em uma ampla gama de tarefas e sua principal força reside em aprender tarefas complexas com uma abordagem de aprendizado de currículo.
No geral, o desempenho substancial e a versatilidade do framework EUREKA indicam o potencial de combinar algoritmos evolutivos com modelos de linguagem grandes, o que pode resultar em uma abordagem escalável e geral para projetar recompensas, e essa percepção pode ser aplicável a outros problemas de busca abertos.










