AI Hero Club
← 课程介绍

LEARNING PLAN / 进阶

扩散模型与 Flow Matching

从概率与噪声出发,逐步推导 DDPM、score 与 Flow Matching,再真实训练二维速度网络,用数值积分和统计检验发现生成失败。

从问题出发,推导机制,再把实现交给新的输入检验。

扩散模型与 Flow Matching课程封面
8 章 / 同一个完整项目章节学习建议 22 小时 40 分钟独立练习与项目预留 17 小时 20 分钟

时长为编写者建议,包含推演与练习,未经学习者计时验证;可按小节分次完成。

WHAT YOU WILL BUILD

完成之后,拿什么证明理解?

  • 推导 DDPM 前向边缘与反向高斯后验
  • 连接噪声预测、score 与概率流 ODE
  • 从条件期望证明 Flow Matching 目标
  • 全参数训练二维速度网络并审计梯度
  • 比较 Euler/Heun 的精度、调用成本与分布失败
开始前,需要掌握什么?
  • 会读写 Python 与张量运算
  • 掌握均值、协方差和条件概率
  • 理解导数、梯度和基本积分

先修用于选择起点,不限制阅读;遇到缺口可返回相应章节。

THE LEARNING ROUTE

每一步,都有去处。

已自行标记完成0 / 8

仅保存在当前浏览器;完成标记不代表通过项目验收。

01

目标与扩散机制

从二维分布推导 DDPM 前向及反向后验。

01

概率目标、混合分布与噪声路径

随机程序画出了四个簇,怎样判断它学到了簇内分布,而不只是输出四个中心?

150 分钟 ↗
02

DDPM前向链、累计噪声与训练标签

连续加许多次高斯噪声后,怎样直接写出任意一步的样本分布和训练标签?

160 分钟 ↗
03

DDPM后验、变分目标与反向采样边界

已知带噪样本和干净端点,怎样算出前一步的高斯后验,并连接训练目标?

180 分钟 ↗
02

连续路径与求解

连接 score、概率流与 Flow Matching,比较积分误差。

04

Score、去噪恒等式与概率流ODE

同一密度演化为什么对应两种 score 系数:概率流 ODE 中的二分之一与反向 SDE 中的一?

180 分钟 ↗
05

条件Flow Matching与边缘速度场

每条条件直线路径都有自己的速度,只回归这些标签为什么能得到总体分布的速度场?

180 分钟 ↗
06

Euler、Heun与可分离的采样误差

同一个正确速度场换用粗步长后生成失败,怎样区分网络误差与积分误差?

170 分钟 ↗
03

训练与分布检查

实际训练二维速度网络,以同一检查点检验生成与失败。

07

训练二维速度网络与数值梯度验收

回归随机端点差时,怎样知道所有网络参数都在学习,并解释损失不会降到零?

170 分钟 ↗
08

统计验证、故意失败与共同版本验收

同一冻结模型有时看起来不错,怎样用多个种子和互补指标找出它仍然失败的分布特征?

170 分钟 ↗

BUILD / TEST / TRANSFER

四簇二维神经生成流实验台

用 PyTorch 2.6 在 CPU 单线程训练二维 Flow Matching 网络,以同一冻结检查点比较解析教师、Euler/Heun 网格和失败基线。

运行环境
建议 Python 3.12,PyTorch 2.6.0;CPU 即可,完整安装步骤见项目 README。

下载课程项目 ↓

解压后先读 README,再按其中环境与命令运行。完整参考实现与学习任务分开提供。

项目完成核对

这是个人核对清单,不是自动评分。保留输入、结果、失败与复现命令。