基于 PyTorch 的扩散模型库,提供预训练模型、噪声调度器和组件,用于图像、视频和音频生成。
lucidrains/denoising-diffusion-pytorch
基于 PyTorch 实现的去噪扩散概率模型,用于训练图像及一维序列生成模型。
- Star
- 10,710
- Fork
- 1,283
- 未关闭 Issue
- 169
- 最近提交
- 23天前
这是什么?
本项目是去噪扩散概率模型(DDPM)的 PyTorch 实现。该模型通过学习逆转逐步加噪的过程来生成数据。项目提供 U-Net 主干网络,以及 GaussianDiffusion 类,用于处理前向加噪、训练损失计算和采样生成。
Trainer 类可以直接接收一个图片文件夹,负责数据加载、训练循环、定期保存样本与模型检查点,并可选计算 FID 指标。训练支持 Hugging Face Accelerate 进行多 GPU 训练,也支持混合精度(amp)。采样方面支持 DDIM 方式,以更少的步数加速推理。
项目还包含一维 U-Net 与一维扩散模型,可用于序列数据;XMWrapper 则提供多候选损失计算。该库可通过 PyPI 安装,适合希望研究或改造扩散模型、需要可读性强的参考实现的研究者和开发者。
核心功能
- 01以 PyTorch 实现 DDPM 的训练目标与采样流程。
- 02提供可配置的 U-Net 主干网络,并可启用 flash attention。
- 03Trainer 类负责基于文件夹的图片数据集、检查点保存与样本记录。
- 04通过 Hugging Face Accelerate 支持多 GPU 训练和混合精度。
- 05支持 DDIM 方式的少步数采样,并可在训练中计算 FID。
- 06提供用于序列数据的一维 U-Net 与扩散模型。
适用场景
- 在自定义图片文件夹上训练小型图像生成模型。
- 学习或修改扩散模型的核心训练与采样代码。
- 为一维序列数据原型验证扩散模型。
- 结合 Accelerate 进行多 GPU 扩散模型训练实验。
快速上手
- 1
从 PyPI 安装该包
pip install denoising_diffusion_pytorch - 2
构建模型和扩散对象,然后使用 Trainer 类在图片文件夹上训练
- 3
开始训练
trainer.train()
使用前须知
- 训练真实尺寸的图片需要 GPU 并耗费大量时间(示例使用 700000 步)。
标签
常见问题
- denoising-diffusion-pytorch 是什么?
- 基于 PyTorch 实现的去噪扩散概率模型,用于训练图像及一维序列生成模型。 本项目是去噪扩散概率模型(DDPM)的 PyTorch 实现。该模型通过学习逆转逐步加噪的过程来生成数据。项目提供 U-Net 主干网络,以及 GaussianDiffusion 类,用于处理前向加噪、训练损失计算和采样生成。
- denoising-diffusion-pytorch 可以免费使用吗?用的什么许可证?
- denoising-diffusion-pytorch 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- denoising-diffusion-pytorch 还在维护吗?
- 活跃维护中。denoising-diffusion-pytorch 最近一次提交是在 2026年9月29日。
- denoising-diffusion-pytorch 适合用来做什么?
- 在自定义图片文件夹上训练小型图像生成模型。 学习或修改扩散模型的核心训练与采样代码。 为一维序列数据原型验证扩散模型。 结合 Accelerate 进行多 GPU 扩散模型训练实验。
- denoising-diffusion-pytorch 怎么安装和运行?
- 从 PyPI 安装该包: pip install denoising_diffusion_pytorch 构建模型和扩散对象,然后使用 Trainer 类在图片文件夹上训练 开始训练: trainer.train()
- 在哪里获取 denoising-diffusion-pytorch?
- 源代码和安装说明在 GitHub 上:https://github.com/lucidrains/denoising-diffusion-pytorch
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
3.5万7411PythonApache-2.0更新于 前天
基于节点图的扩散模型图形界面、API 与后端,可在本地生成图像、视频、音频和 3D 内容。
14.1万1.7万PythonGPL-3.0更新于 前天
面向图像、视频和音频生成的开源 Diffusion 模型引擎,支持低显存推理与训练。
1.3万1318PythonApache-2.0更新于 前天
开源 50 亿参数文生图扩散模型,擅长精准文字渲染、JSON 版面控制和微调。
127864PythonApache-2.0更新于 前天
基于 PyTorch 实现的 Vision Transformer(ViT)及多种变体,用于图像分类等视觉任务。
2.6万3497PythonMIT更新于 9天前
一个用 C++ 编写的高性能神经网络推理框架,用于在手机、嵌入式和桌面设备上运行深度学习模型。
2.4万4532C++Other更新于 前天