
<a id="n39-title"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-title)


# 一步完成，要学面向整段的平均变化

王德泉 · Coding with AI · Lecture 04


<a id="n39-087f880b985c"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-087f880b985c)

上一页让模型学习跨阶段的关系。这里先看一条会转弯的生成路径：起点附近的短箭头回答“此刻往哪里动一点”，而连接整段起终点的箭头回答“跨完这段后，总共改变多少”。两者在直线路径上可能一致，在一般路径上却不是同一个问题。


<a id="n39-955abfe5ec5c"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-955abfe5ec5c)

**“把眼前方向乘十倍，不能代替走十次吗？”** 沿途方向如果发生变化，放大出发时的方向就会越走越偏。区间平均变化需要考虑整个区间的净位移，并与区间跨度相对应；它既不是起点局部方向，也不一般等于两端局部速度的算术平均。


<a id="n39-832c82d5a13e"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-832c82d5a13e)

可以采用不依赖论文时间正反约定的写法理解：对于生成方向上的一段，平均变化乘这段有向跨度，得到终点相对起点的位移。区间端点和方向必须同时说明；只记“平均速度乘时间”而忽略从哪端走向哪端，可能让更新符号反过来。课堂金色箭头始终指向生成终点。


[课程图解] 局部方向与整段平均变化回答不同问题，整段更新还必须明确跨度和生成方向。；图中标签与关系：同一起点 共同终点 整段平均变化 × 跨度 MeanFlow 局部调整 局部方向不等于整段平均变化 当前表示 → 模型预测 → 更新规则 → 下一状态 整段平均变化
局部方向与整段平均变化回答不同问题，整段更新还必须明确跨度和生成方向。


<a id="n39-c1c0c92c0582"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-c1c0c92c0582)

[Mean Flows for One-step Generative Modeling](https://arxiv.org/abs/2505.13447) 由 Zhengyang Geng、Mingyang Deng、Xingjian Bai、J. Zico Kolter 与 Kaiming He 提出，将区间平均速度作为学习对象，利用它与瞬时速度的关系构造训练。生成时让学到的区间量承担完整跨度，面向一步生成。终点是任务中需要预测的结果，不是推理时偷偷交给模型的输入。


<a id="n39-0760eef05271"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-0760eef05271)

**“定义了平均速度，就已经会一步生成了吗？”** 没有。定义清楚目标只说明应该学什么；训练能否准确预测这个区间量、是否覆盖所需条件，仍需实验。课堂的局部箭头与整段箭头解释两种任务，没有测出一步质量或实际加速。


<a id="n39-b88cd1b93da8"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-b88cd1b93da8)

[Improved Mean Flows（iMF）](https://arxiv.org/html/2512.02012v2) 继续研究快速跨段模型的优化问题，包括用预测平均速度的网络重新参数化瞬时速度回归目标，以及把引导强度作为可调条件。原始 MeanFlow 的相关引导设置在训练时固定，iMF 让它成为训练与使用时可变化的输入；这并不保证超出训练覆盖范围的任意引导值都可靠。理解改动时，应看它修正了什么学习困难，而不只记一个新缩写。


<a id="n39-c7907aa39fa9"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-c7907aa39fa9)

到这里，少步生成已经有多种研究切入点：更新计划、学习到的路径、跨阶段约束、区间预测对象。它们不能由“把箭头拉长”统一解释。下一页则不再选边站，看看自回归与扩散怎样在不同层次合作。


<a id="n39-process-key"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-process-key)


## 同一生成循环，本页改变整段平均变化

当前表示 → 模型预测 → 更新规则 → 下一状态 整段平均变化


<a id="n39-states"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-states)


## 画面怎样推进


<a id="n39-b0"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-b0)

局部方向只回答当前位置怎样作小幅更新，沿途可能转向。

[返回这一课堂停点](https://codingai-lec04.pages.dev/classroom/N39.html?step=b0)


<a id="n39-b1"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-b1)

区间平均变化结合有向跨度形成整段更新；MeanFlow学习这项量，iMF继续改善目标与条件接口。

[返回这一课堂停点](https://codingai-lec04.pages.dev/classroom/N39.html?step=b1)


<a id="n39-materials"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-materials)


## 继续阅读与实验


<a id="n39-learning-unit-001"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-learning-unit-001)


## 平均速度乘跨度，更新为什么会有减号？


<a id="n39-learning-unit-002"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-learning-unit-002)

仍用数据端0、噪声端1的时间约定。对r<t，区间平均速度定义为u=(zₜ−zᵣ)/(t−r)，所以向数据侧生成时，zᵣ=zₜ−(t−r)u。教学例取zₜ=0、跨度0.1、u=−3，下一状态就是0.3。平均量按时间增加方向定义，采样却沿时间减小方向走，减号来自这项约定。


<a id="n39-learning-unit-003"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-learning-unit-003)

u描述整个区间的净变化，不一般等于起点切线或两端速度平均。MeanFlow学习这项区间预测；定义出来不等于有限网络已经学准，更不能在采样时提供真实终点。“无需扩散教师”指生成器训练路线，原实验的预训练VAE仍需另计。


<a id="n39-learning-unit-004"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-learning-unit-004)

接着读：[区间量的定义、符号和算例](https://codingai-lec04.pages.dev/lecture.html#ch05-meanflow)与[平均量和瞬时量的联系](https://codingai-lec04.pages.dev/lecture.html#ch05-meanflow-identity)。


<a id="n39-chapter-reading"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-chapter-reading)


### [CLS 05 · 扩散：训练、采样与少步生成](https://codingai-lec04.pages.dev/lecture.html#ch05)

按连续正文理解这条方法的训练信号、使用过程与算例；数学与实践在相关问题旁展开。

先看：第5章，从对象和问题开始


<a id="n39-lab09-practice"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-lab09-practice)


### [LAB 09 · 学得去噪器与完整采样](https://codingai-lec04.pages.dev/course/notebooks/e6fcbdfe3ca2418c9ed09344b4ae2b33.html)

固定初始噪声，仅改采样步数；把网络近似误差与数值步进误差分开。

先看：先看保存结果与读图解释


<a id="n39-lab05-practice"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-lab05-practice)


### [LAB 05 · 扩散的条件均值与流积分](https://codingai-lec04.pages.dev/course/notebooks/be6db259db4f48478c7481ab51129971.html)

先读本册保存结果，再按实现顺序核对一个算例；最后只改一个变量。

先看：先看保存结果与读图解释


<a id="n39-material-1"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-material-1)


### [Mean Flows for One-step Generative Modeling](https://arxiv.org/pdf/2505.13447v1)

先标记区间起终点和时间方向，再阅读平均速度与瞬时速度的关系。

先看：第3节


<a id="n39-material-2"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N39.html#n39-material-2)


### [Improved Mean Flows: On the Challenges of Fastforward Generative Models](https://arxiv.org/html/2512.02012v2)

看训练目标怎样改写、引导强度怎样变成条件；把优化改善与一步生成身份分开。

先看：第4.1与4.2节

