Diffusers 文档

价值引导规划

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

价值引导规划

🧪 这是一个用于强化学习的实验性管道!

这个管道基于 Michael Janner, Yilun Du, Joshua B. Tenenbaum, Sergey Levine 的 用扩散进行规划实现灵活行为合成 论文。

论文摘要如下:

基于模型的强化学习方法通常仅将学习用于估计近似动力学模型,而将其余的决策工作交给经典的轨迹优化器。尽管概念简单,但这种组合存在一些经验上的缺点,表明学习到的模型可能不适合标准的轨迹优化。在本文中,我们考虑如何将尽可能多的轨迹优化管道折叠到建模问题中,从而使从模型采样和用模型规划变得几乎相同。我们技术方法的核心在于一个扩散概率模型,它通过迭代去噪轨迹来规划。我们展示了如何将分类器引导采样和图像修复重新解释为连贯的规划策略,探索了基于扩散的规划方法的不寻常和有用特性,并证明了我们的框架在强调长时程决策和测试时灵活性的控制设置中的有效性。

您可以在 项目页面原始代码库 或在 演示笔记本 中试用该模型,了解更多信息。

运行模型的脚本可在此处找到。

务必查阅调度器指南,了解如何权衡调度器速度和质量,并参阅跨管道重用组件部分,了解如何高效地将相同组件加载到多个管道中。

ValueGuidedRLPipeline

class diffusers.experimental.ValueGuidedRLPipeline

< >

( value_function: UNet1DModel unet: UNet1DModel scheduler: DDPMScheduler env )

参数

  • value_function (UNet1DModel) — 一个专门用于根据奖励微调轨迹的 UNet。
  • unet (UNet1DModel) — 用于对编码轨迹进行去噪的 UNet 架构。
  • scheduler (SchedulerMixin) — 一个与 unet 结合使用的调度器,用于对编码轨迹进行去噪。此应用程序的默认值是 DDPMScheduler
  • env () — 一个遵循 OpenAI gym API 的环境,用于执行动作。目前只有 Hopper 有预训练模型。

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

该模型继承自 DiffusionPipeline。请查看超类文档,了解所有管道通用的方法(下载、保存、在特定设备上运行等)。

< > 在 GitHub 上更新