Diffusion Forge · 扩散模型实验室 · DDPM / DDIM / Flow Matching

从零手写三大生成范式:闭式前向加噪 + MLP 噪声/速度预测网络(AdamW)+ DDPM / DDIM / Flow 采样,纯 JS 零依赖。x_t = √ᾱ_t·x₀ + √(1−ᾱ_t)·ε,网络学的是「怎么把噪声减回去」;Flow 则直接回归速度场 v = ε − x₀。

训练参数

未训练

Loss 曲线(噪声预测 MSE)

噪声调度 β_t / ᾱ_t

训练数据

x₀ 分布

DDPM 采样

全链随机去噪

DDIM 采样

η=0 时确定性:同种子同结果

Flow Matching 采样

点「训练 Flow 模型」后可用

采样控制

W1 距离(1D 排序闭式,对 x/y 取平均):训练+采样后显示

前向扩散演示(加噪过程)

从左到右:x₀ → x₁₂ → x₂₅ → x₃₇ → x_T ≈ 纯噪声。数据信号逐步被高斯噪声淹没,这就是训练时网络看到的输入。

🧪 不变量自检(引擎级,与 Node _smoke2.js 同一套 18 项)

点击运行 —— 判定逻辑全部来自引擎内 DIFF.invariants,Node 无头复跑同一套(连同 _smoke.js 共 36 项)。