diffusion demo
1.0.0
リポジトリには、ノイズ除去拡散モデルの簡単な PyTorch ベースのデモンストレーションが含まれています。この生成モデリング アプローチについての最初の理解を提供することだけを目的としています。
標準 DDPM の理論的な簡単な説明は、ここにあります。加速されたサンプリングのための DDIM については、関連するノートブックで説明されています。 2 つのサンプル アプリケーションは、小さな実験の遊び場を確立します。これらは、簡単に変更および拡張できるように準備されています。
DDPM の概要
DDIM の概要
スイスロールの例
MNIST の無条件モデル
MNIST の条件付きモデル
最初の例として、生成 DDPM は 2D スイス ロール分布でトレーニングされます。メインのトレーニング スクリプトは、問題の設定とモデルの定義を調整できる構成ファイルを使用して呼び出すことができます。
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 でアクセスできるようになります。