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


# 每张都漂亮，为什么这一批仍然不够好？

王德泉 · Coding with AI · Lecture 04


<a id="n22-00797db1ed82"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N22.html#n22-00797db1ed82)

上一页的反馈帮助生成器改进外观。现在先看一张马克杯：杯沿、杯柄和光照都很自然。这个判断有价值，却只涉及一张结果。把它放回六张候选中，新的问题出现了——这一批都是相似的马克杯，而参考数据还包含茶杯和玻璃杯。


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

如果任务是探索杯子设计，A 组虽然每张都成立，却没有提供那两类选择。B 组在相同六张预算里包含更多类别，因此在这次展示中覆盖得更广。但不能把“六张里没看到玻璃杯”改写成“模型生成玻璃杯的概率为零”。有限样本会有波动，展示者也可能挑图。需要预先固定条件、采样数量与选择办法，保留失败和重复，才有可以比较的证据。


[课程图解] 同样六张预算，单张自然度、类型覆盖与是否记忆参考，是不同的检查。；图中标签与关系：参考中的三类 马克杯 带碟茶杯 玻璃杯 A 组 · 六个候选 B 组 · 六个候选 另问：记住了参考图？ 参考局部 候选局部
同样六张预算，单张自然度、类型覆盖与是否记忆参考，是不同的检查。


<a id="n22-8e1772be3740"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N22.html#n22-8e1772be3740)

**学生问：“判别器已经分不出真假，准确率只有一半，还用看这些吗？”** 要看。一个学习不足、只会随机猜的判别器，也能得到约一半准确率。判别器变弱与两种分布真的接近，会产生相似的数字。训练中的这个指标不能同时认证单张质量、类型覆盖和模型没有记忆训练样本。


<a id="n22-59c2d9bee29c"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N22.html#n22-59c2d9bee29c)

记忆是第三个问题。若模型反复交出训练集里那几张照片，外观可以非常漂亮，有限展示也可能覆盖多类，却没有证明它能生成新的组合。应在同一检查协议下寻找训练集近邻，比较结构与细节，并检查未见条件下的表现。课堂局部对照只是教我们提出这个问题，不能据此宣称某个模型抄袭。


<a id="n22-237655aaa85c"></a>
[区块原文](https://codingai-lec04.pages.dev/course/N22.html#n22-237655aaa85c)

怎样让训练反馈更有用，也是 GAN 研究的一条路线。Wasserstein 的直觉是：把生成分布看成一堆需要搬到参考分布位置的质量，既看要搬多少，也看搬多远。即使两堆点完全分开，距离仍可能提示移动方向。这个距离依赖选用的空间和度量；在像素里距离近，不一定就是人看来语义近。WGAN 用受约束的 critic 近似相关目标，约束是理论关系成立的一部分，不能任意把判别器分数命名为 Wasserstein 距离。早期权重裁剪是一种实现，后续还有其他约束方法。


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

因此可以分别问：这一张像不像？这一批覆盖了什么？是否只是复现记忆？反馈数字又是在什么假设下得到的？没有一个漂亮终图或单一训练损失能一次回答四个问题。


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

下一页继续拆开“像真的”：模型给低清墙面补上清晰砖缝，这些细节究竟是恢复出来的事实，还是有说服力的猜测？


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


## 画面怎样推进


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

一张马克杯自然，只支持这张图的外观判断。

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


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

六张候选如果只出现马克杯，尚未展示茶杯与玻璃杯的可能性。

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


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

同预算比较批量覆盖，同时另查训练样本记忆；有限展示缺失不等于零概率。

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


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


## 继续阅读与实验


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


## 更密集的样本，一定覆盖得更好吗？


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

LAB08先规定：2048点中，距某中心不超过0.36且至少有21点，才算覆盖该模式。相同4000次G更新后，D:G=1:1覆盖8/8、近模式比例54.25%；3:1覆盖6/8、近模式比例85.64%。后一批更靠近几个中心，却有两个区域未达覆盖阈值；其中仍有10和16点，并非严格没有样本。两项观察没有互相替代。


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

甚至把八个簇全压成各自中心，也能取得很漂亮的覆盖和距离，却丢掉簇内真实变化。因此还要看占用和方差。这里两臂G预算相同，D计算量不同；一次固定种子结果说明这次发生了什么，不能推出多训D总会坍塌。


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

接着读：[覆盖的计算口径](https://codingai-lec04.pages.dev/lecture.html#ch04-metrics-definition)与[质量和覆盖的不同责任](https://codingai-lec04.pages.dev/lecture.html#ch04-quality-coverage)。


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


### [CLS 04 · 对抗反馈与图像翻译](https://codingai-lec04.pages.dev/lecture.html#ch04)

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

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


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


### [LAB 08 · 生成器与判别器的真实反馈](https://codingai-lec04.pages.dev/course/notebooks/f16324b960a446e2aa03168c17e9fc0b.html)

固定生成起点比较训练前中后；改变 D:G 更新比，分别读近模式比例与模式覆盖。

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


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


### [LAB 03 · CycleGAN：可逆不等于语义正确](https://codingai-lec04.pages.dev/course/notebooks/caf19cffbd744fafb371912863a03e30.html)

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

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


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


### [Generative Adversarial Networks](https://mit-6s978.github.io/assets/pdfs/lec4_gan.pdf)

先比较质量、覆盖与训练信号，再读Wasserstein的运输几何和critic约束；不要把训练损失当图像质量证书。

先看：第30–43、47–78页

