diffusion demo
1.0.0
该存储库包含一个基于 PyTorch 的简单的去噪扩散模型演示。它只是旨在提供对这种生成建模方法的初步理解。
可以在此处找到标准 DDPM 的简短理论介绍。用于加速采样的 DDIM 在配套笔记本中进行了讨论。两个示例应用程序建立了一个小型实验场。它们的准备方式使得它们可以轻松修改和扩展。
DDPM 简介
DDIM 简介
瑞士卷示例
MNIST 上的无条件模型
MNIST 上的条件模型
作为第一个示例,生成式 DDPM 在 2D Swiss roll 分布上进行训练。为此,可以使用配置文件调用主训练脚本,该文件允许调整问题设置和模型定义:
python scripts/main.py fit --config config/swissroll.yaml
训练完成后,可以在此笔记本中测试和分析最终模型。
为了监控实验,可以通过tensorboard --logdir run/swissroll/
在本地运行 TensorBoard 服务器。您可以在浏览器中默认在 localhost:6006 下访问它。作为一种替代方案,可以使用 MLfLow 来管理实验。在这种情况下,可以使用适当的设置启动训练,并通过mlflow server --backend-store-uri file:./run/mlruns/
设置跟踪服务器。然后可以在 localhost:5000 下访问它。