几何表示与生成建模¶
这一页解决什么
模型怎样"生成"新数据,以及数据本身有怎样的几何结构。流形和潜空间描述数据与表示,扩散和流匹配是生成方法;它们也是机器人扩散策略、π0 类 VLA 动作头的数学基础。专题选修:不作为 LLM 或机器人入门的统一前置。
核心专题¶
核心机制 · 生成方法全貌¶
所有生成模型都在回答同一个问题:怎样从一个简单分布(通常是高斯噪声)得到符合数据分布的样本。区别在于"怎么搬运":
| 方法族 | 核心思路 | 优点 | 代价 |
|---|---|---|---|
| 自回归 | 把联合分布拆成逐个条件分布,按顺序生成 | 训练简单、似然精确 | 生成慢、只能顺序 |
| VAE | 编码到潜变量、再解码,优化证据下界 ELBO | 有显式潜空间 | 样本偏模糊 |
| GAN | 生成器骗过判别器 | 样本清晰、生成快 | 训练不稳定、模式坍塌 |
| Normalizing flow | 可逆变换,精确计算密度变化 | 精确似然 | 架构受可逆约束 |
| 扩散 / score | 学习逐步去噪(或对数密度梯度) | 质量高、训练稳定、能表示多峰 | 采样步数多 |
| 流匹配 | 直接回归从噪声到数据的速度场 | 训练更简单、路径更直、步数可更少 | 同样需要数值积分 |
Transformer 是网络架构,扩散和流匹配是生成方法——Transformer 可以作为其中的去噪网络(如 DiT)。流形假设是理解数据的视角,不是生成算法。
精选资源¶
针对你的背景:线性代数、信号、系统与几何经验有助于理解向量场和时间演化;概率、随机过程与 PyTorch 仍需通过例子核对。课程要求线性代数、多元微积分、基础概率和 PyTorch,不是零门槛入门课。
| 阶段 | 只做这些 | 完成标准 |
|---|---|---|
| 扫盲 | 本页的方法对比、课程第 1 讲图示 | 区分表示、架构与生成方法 |
| 几何体验 | G1:Swiss roll 降维 | 区分环境维数、内在维数与嵌入 |
| 数值基础 | Lab 1:ODE / SDE,先看轨迹再看推导 | 理解步长、确定性与随机性 |
| 学习与采样 | Lab 2:G2 与 G3 | 区分训练目标与采样过程,比较二维样本 |
| 方向深入 | 第 3-B / 4 讲与 Lab 3:条件、DiT、VAE | 在同一代码体系中完成一个图像实验 |
概念阅读可以先做;编码放在 F1 或等价 PyTorch 能力之后。
三个跟随实验¶
先完成原例,每个实验只改一个因素。
自测¶
扩散模型和 GAN 各自的主要问题是什么?
GAN 训练不稳定、容易模式坍塌(只生成少数几种样本);扩散模型训练稳定、覆盖全面,但采样需要几十到上千步,生成慢。
为什么机器人动作生成会用扩散或流匹配,而不是直接回归?
同一状态下可能有多种合理动作(多峰分布),直接回归会输出它们的平均;扩散 / 流匹配能从多峰分布中采样出其中一个合理动作。
潜空间扩散(如 Stable Diffusion)为什么要先编码到潜空间?
像素空间维度高、计算昂贵;先用 VAE 压缩到低维潜空间,在那里做扩散,再解码回图像,计算量大幅下降。