Diffusers documentation

基于价值的规划

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

基于价值的规划

🧪 这是一个用于强化学习的实验性流水线!

该流水线基于 Michael Janner、Yilun Du、Joshua B. Tenenbaum 和 Sergey Levine 的论文 Planning with Diffusion for Flexible Behavior Synthesis。

该论文的摘要如下:

基于模型的强化学习方法通常仅将学习用于估计近似动力学模型,而将决策过程的其他部分交给经典的轨迹优化器。尽管这种组合在概念上很简单,但它在实践中存在诸多不足,这表明学习得到的模型可能并不适合标准的轨迹优化。在本文中,我们探讨了如何将尽可能多的轨迹优化流程整合到建模问题中,使得从模型中采样和基于模型进行规划变得几乎相同。我们技术方法的核心是一个扩散概率模型,它通过迭代地对轨迹去噪来进行规划。我们展示了如何将基于分类器的采样和图像修复重新解释为连贯的规划策略,探讨了基于扩散的规划方法所具有的独特且有用的特性,并在强调长时程决策和测试时灵活性的控制场景中验证了我们框架的有效性。

您可以在项目页面、原始代码库中查找有关该模型的更多信息,或者在演示notebook中试用。

运行模型的脚本可在此处获取。

请务必参阅 调度器指南,了解如何探索调度器速度与质量之间的权衡,并查看 跨流水线复用组件 部分,了解如何高效地将相同组件加载到多个流水线中。

ValueGuidedRLPipeline

class diffusers.experimental.ValueGuidedRLPipeline

< >

( value_function: UNet1DModelunet: UNet1DModelscheduler: DDPMSchedulerenv )

参数

  • value_function (UNet1DModel) — 一种专门用于基于奖励微调轨迹的 UNet。
  • unet (UNet1DModel) — 用于对编码后的轨迹进行去噪的 UNet 架构。
  • scheduler (SchedulerMixin) — 用于与 unet 配合,对编码后的轨迹进行去噪的调度器。此应用的默认值为 DDPMScheduler。
  • env () — 遵循 OpenAI gym API 的环境,用于在其中执行操作。目前只有 Hopper 拥有预训练模型。

用于从训练以预测状态序列的扩散模型中进行价值引导采样的 Pipeline。

该模型继承自 DiffusionPipeline。有关为所有 pipeline 实现的通用方法(下载、保存、在特定设备上运行等),请参阅父类文档。

Update on GitHub