Diffusers documentation

Planejamento guiado por valor

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Planejamento guiado por valor

🧪 Este é um pipeline experimental para aprendizado por reforço!

Este pipeline é baseado no artigo Planning with Diffusion for Flexible Behavior Synthesis, de Michael Janner, Yilun Du, Joshua B. Tenenbaum e Sergey Levine.

O resumo do artigo é:

Métodos de aprendizado por reforço baseados em modelos frequentemente utilizam o aprendizado apenas para estimar um modelo de dinâmica aproximado, delegando o restante do trabalho de tomada de decisão a otimizadores clássicos de trajetórias. Embora conceitualmente simples, essa combinação apresenta diversas limitações empíricas, sugerindo que os modelos aprendidos podem não ser adequados para a otimização padrão de trajetórias. Neste artigo, consideramos como seria incorporar o máximo possível do pipeline de otimização de trajetórias no problema de modelagem, de modo que a amostragem do modelo e o planejamento com ele se tornem quase idênticos. O núcleo de nossa abordagem técnica reside em um modelo probabilístico de difusão que planeja por meio da desruidificação iterativa de trajetórias. Mostramos como a amostragem guiada por classificador e o inpainting de imagens podem ser reinterpretados como estratégias de planejamento coerentes, exploramos as propriedades incomuns e úteis dos métodos de planejamento baseados em difusão e demonstramos a eficácia de nossa estrutura em configurações de controle que enfatizam a tomada de decisão de longo prazo e a flexibilidade no momento da execução.

Você pode encontrar informações adicionais sobre o modelo na página do projeto, no repositório de código original ou experimentá-lo em um notebook de demonstração.

O script para executar o modelo está disponível aqui.

Certifique-se de consultar o guia de Schedulers para aprender a explorar o compromisso entre a velocidade e a qualidade do scheduler, e veja a seção reutilização de componentes entre pipelines para aprender a carregar eficientemente os mesmos componentes em vários pipelines.

ValueGuidedRLPipeline

classe diffusers.experimental.ValueGuidedRLPipeline

< >

( value_function: UNet1DModelunet: UNet1DModelscheduler: DDPMSchedulerenv )

Parâmetros

  • value_function (UNet1DModel) — Um UNet especializado para ajuste fino de trajetórias com base na recompensa.
  • unet (UNet1DModel) — Arquitetura UNet para desruidar as trajetórias codificadas.
  • scheduler (SchedulerMixin) — Um scheduler a ser usado em combinação com unet para desruidar as trajetórias codificadas. O padrão para esta aplicação é DDPMScheduler.
  • env () — Um ambiente seguindo a API do OpenAI gym para agir. Por enquanto, apenas o Hopper possui modelos pré-treinados.

Pipeline para amostragem guiada por valores a partir de um modelo de difusão treinado para prever sequências de estados.

Este modelo herda de DiffusionPipeline. Consulte a documentação da superclasse para os métodos genéricos implementados para todos os pipelines (download, salvamento, execução em um dispositivo específico, etc.).

Update on GitHub