(2024,CLIP-MMD,高斯 RBF 核,分布自由的无偏估计)重新思考 FID:寻找更好的图像生成评估指标

Rethinking FID: Towards a Better Evaluation Metric for Image Generation

公众号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群)

目录

0. 摘要

3. FID 的局限性

3.1. Fr´echet 距离

3.2. 错误正态假设的影响

3.3. 正态假设的不正确性

4. CMMD 指标

5. 人类评估

6. 性能对比

6.1. 渐进式图像生成模型 

6.2. 图像扭曲

6.3. 采样效率

6.4. 计算成本


0. 摘要

由于许多机器学习问题,图像生成方法的进展取决于良好的评估指标。其中最流行的之一是 Fr´echet Inception Distance(FID)。FID 估计真实图像的 Inception-v3 特征分布与算法生成图像的特征之间的距离。我们强调了 FID 的重要缺点:Inception 对现代文本到图像模型生成的丰富多样内容的表示不足,不正确的正态假设以及样本复杂性不足。我们呼吁重新评估将 FID 作为生成图像的主要质量度量标准的使用。我们通过实验证明,FID 与人工评分者相矛盾,它不能反映迭代文本到图像模型逐渐改进的情况,它不能捕捉失真水平,并且在变化样本大小时产生不一致的结果。我们还提出了一种新的替代指标 CMMD,基于更丰富的 CLIP 嵌入和带有高斯 RBF 核最大均值差异(Maximum Mean Discrepancy,MMD)距离。它是一个无偏估计器,不对嵌入的概率分布做任何假设,并且具有样本效率。通过广泛的实验证明和分析,我们展示了基于 FID 的文本到图像模型的评估可能是不可靠的,而 CMMD 提供了对图像质量更稳健和可靠的评估。

3. FID 的局限性

在这一部分,我们强调 FID 的一些关键局限性。我们从度量标准的背景讨论开始,以更好地了解其限制。Fr´echet Inception Distance(FID)用于衡量两个图像集 I 和 I' 之间的差异。通常,其中一个图像集是真实的(例如来自 COCO 数据集),另一个图像集是使用要评估的图像生成模型生成的。为了计算 FID,首先使用在 ImageNet 分类任务上训练的 Inception-v3 模型提取两个图像集的 Inception-v3 嵌入[25]。然后,FID 被定义为这两组 Inception 嵌入之间的 Fr´echet 距离。

3.1. Fr´echet 距离

对于任意两个具有有限一阶和二阶矩的在Rd上的概率分布 P 和 Q,Fr´echet 距离由 [6, 17] 定义为:

其中 Γ(P,Q) 是 P 和 Q 的所有耦合的集合。这也等同于 R^d 上的 Wasserstein-2 距离。通常,获得Fr´echet 距离的封闭形式解是困难的。然而,[6] 的作者表明,对于多变量正态分布,存在封闭形式解:

其中 μ_P,μ_Q 是两个多变量正态分布 P 和 Q 的均值,Σ_P,Σ_Q 是它们的协方差。 请注意,这个简化的公式仅在 P 和 Q 都是多变量正态分布时严格有效 [6]。

对于 FID,我们需要使用两个相应的样本估计两个 Inception 嵌入分布之间的 Fr´echet 距离。由于 Inception 嵌入的高维性,d = 2048,这是具有挑战性的。假设 Inception 嵌入是从正态分布中抽取的,简化了问题,使我们能够使用从两个样本 I 和 I' 估计的 μP,μQ 和 ΣP,ΣQ,使用方程(2)。在这个过程中存在两种错误:

  • 正如我们在第 3.3 节中所示,典型图像集的 Inception 嵌入远非正态分布。当计算 Fr´echet 距离时,这个不准确的假设的影响在第 3.2 节中讨论。
  • 从小样本中估计(2048 × 2048)维协方差矩阵可能导致较大的误差,如第 6.3 节所讨论。

3.2. 错误正态假设的影响

在计算两个分布之间的 Fr´echet 距离时,进行错误的正态假设可能导致灾难性的结果。我们使用一个以原点为参考分布的二维各向同性高斯分布,并测量它与一系列混合高斯分布之间的距离来说明这一点,生成的方式如下所述。结果总结在表 2 中。

为了生成第二个分布系列,我们从一个包含四个高斯分布的混合分布开始,每个高斯分布的均值和协方差与参考高斯分布相同。由于这个混合分布与参考分布相同,我们期望任何合理的距离都会测量这个混合分布与参考分布之间的零距离(表 2 的第一列)。然后,我们让第二个分布的四个组分彼此远离,同时保持总体均值和协方差不变(表 2 的第一行)。当这发生时,第二个分布显然会越来越远离参考分布。然而,使用正态假设计算的 Fr´echet 距离(请注意,这不是真正的 Fr´echet 距离,不能轻松计算)仍然误导性地为零。这是因为第二个分布只在开始时是正态的,因此正态假设只对表的第一列是合理的。由于在此之后第二个分布不再是正态的,因此使用正态假设计算的 Fr´echet距离会给出完全不正确的结果。请注意,如表 2 的第三行所示,FID_∞,即在 [5] 中提出的 FID 的无偏版本,也受到了这个缺点的影响,因为它也依赖于正态假设。相比之下,第 4 节中描述的 MMD 距离(表 2 的底行)能够捕捉第二个分布逐渐远离参考分布的情况。实验设置的更多细节见附录 B。

3.3. 正态假设的不正确性

在估计 Fr´echet 距离时,假设每个图像集(真实和生成的)的 Inception 嵌入来自多元正态分布。在本节中,我们展示了这一假设是错误的。正如在第 3.2 节中讨论的,对底层分布做出错误的正态假设可能导致完全错误的结果。

对于典型的图像集,Inception 嵌入不具有多元正态分布和单一模式并不奇怪。Inception 嵌入是从 Inception-v3 网络的倒数第二层提取的激活。在训练过程中,这些激活通过线性分类器(Inception-v3 网络的最后一个全连接层)分类为 1000 个类别之一。因此,由于 Inception-v3 网络在ImageNet 分类任务上取得了良好的分类结果,人们预期 Inception 嵌入至少应该具有 1,000 个簇或模式。如果是这样,它们就不可能是正态分布的。

图 2 显示了COCO 30K 数据集的 Inception 嵌入的二维 t-SNE [26] 可视化,通常用作文本到图像FID 基准中的参考(真实)图像集。显然,低维可视化具有多个模式,因此原始的 2048 维分布也显然不接近多元正态分布。

最后,我们应用了三种不同的广泛接受的统计测试:Mardia 的偏斜度(skewness)测试,Mardia 的峰度(kurtosis)测试和 Henze-Zirkler 测试来测试 COCO 30K 数据集 Inception 嵌入的正态性。它们都强烈反驳了 Inception 嵌入来自多元正态分布的假设,p 值几乎为零(表明在拒绝正态性的零假设方面有极大的信心)。这些测试的详细信息可以在附录 A 中找到。

明确一点,我们也不期望 CLIP 嵌入是正态分布的。我们反对的是 FID 对非正态 Inception 特征应用 Fr´echet 距离的正态假设。事实上,COCO 30K 的 CLIP 嵌入也未通过正态测试,p 值几乎为零,表明在 CLIP 嵌入上假设正态性也是不合理的。

4. CMMD 指标

在本节中,我们提出了一种使用 CLIP 嵌入和最大均值差异(Maximum Mean Discrepancy,MMD)距离(带有高斯RBF核)评估图像生成模型的新指标。CMMD(代表 CLIP-MMD)指标是参考(真实)图像集和生成图像集的 CLIP 嵌入之间的平方 MMD 距离。

CLIP 嵌入 [20] 通过在联合空间中学习图像和文本表示的方式改变了我们对图像和文本表示的看法。CLIP 通过包含复杂场景的 4 亿图像文本对来联合训练图像编码器和文本编码器。相比之下,Inception-v3 是在 ImageNet 上训练的,该数据集包含数量约为 100 万的图像,限制为 1000 个类别,每个图像只有一个显著对象。因此,CLIP 嵌入更适用于表示现代图像生成算法生成的图像中所见到的多样化和复杂内容,以及文本到图像模型接收到的几乎无限种类的提示。

为了计算两个分布之间的距离,我们使用 MMD 距离 [10, 11]。MMD 最初是作为两个样本统计测试的一部分开发的,用于确定两个样本是否来自同一分布。在这个测试中计算的 MMD 统计量也可以用来测量两个分布之间的差异。对于两个在 R^d 上的概率分布 P 和 Q,关于正定核(positive definite) k 的 MMD 距离定义如下:

其中 x 和 x' 是由 P 独立分布的,而 y 和 y' 是由 Q 独立分布的。已知 MMD 是特征核 k 的度量 [8, 11]。

给定两组向量 X = {x1, x2, . . . , xm} 和 Y = {y1, y2, . . . , yn},分别从 P 和 Q 中抽取,一个无偏估计量 d^2_MMD(P,Q) 如下所示:

MMD 相对于 Fr´echet 距离的一些优势包括:

  • MMD 度量,当与特征核 [8] 一起使用时,是分布自由的。也就是说,它不对分布 P 和 Q 做出任何假设。相比之下,方程(2)中的 Fr´echet 距离假设正态性,当违反这一假设时容易产生错误的结果。
  • 如 [5] 所示,从有限样本估计的 FID 具有依赖于正在评估的模型的偏差,样本大小可能导致对正在评估的模型的不同排名。消除这种偏差需要一个计算昂贵的过程,涉及计算多个 FID 估计 [5]。相比之下,方程(4)中的 MMD 估计器是无偏的。
  • 在处理高维向量(如图像嵌入)时,MMD 具有较高的样本效率。另一方面,Fr´echet 距离需要大样本来可靠地估计 d × d 协方差矩阵。在第 6.3 节中将进一步详细说明。

在 MMD 计算中,我们使用了高斯 RBF 核 k(x, y) = exp(∥x − y∥^2 / σ^2),这是一个特征核,其中带宽参数设置为 σ = 10。经验上,我们观察到带宽参数对度量的整体趋势影响不大。然而,我们建议将其固定在 10 以获得度量的一致值。由于具有高斯核的 MMD 度量在最大差异时上限为 2(当两个分布最大程度不同时),因此它对于一般分布给出较小的值。因此,我们通过将方程(4)中的值放大 1000 倍来获得更易读的值。对于 CLIP 嵌入模型,我们使用公开可用的 ViT-L/14@336px 模型,这是最大且性能最好的 CLIP 模型 [20]。还请注意,在文本到图像评估的方程(4)中,由于我们评估生成的图像与共享相同标题/提示的真实图像,我们有 m = n。我们的计算CMMD 的代码将公开提供。

5. 人类评估

模型 A:完整的 Muse 模型,如 [3] 中所述,包含 24 个基本模型迭代和 8 个超分辨率模型迭代。

模型 B:一个提前停止的 Muse 模型,仅包含 20 个基本模型迭代和 3 个超分辨率模型迭代。

CMMD 指标正确地与人类偏好对齐。 

6. 性能对比

6.1. 渐进式图像生成模型 

图 4 显示了渐进 Muse 迭代的 FID、FID∞ 和 CMMD 值。FID 和 FID∞ 错误地表明图像质量下降,而如图 3 所示,质量的改善是明显的。相反,CMMD 在 Muse 迭代的过程中正确地识别了质量的改善。如图 4 所示,我们在实验中始终观察到,尽管绝对值不同,但 FID 和 FID∞ 具有相同的行为。这并不奇怪,因为 FID∞ 是从 FID 导出的,并继承了许多其缺点。

图 6 展示了 100 次迭代的 Stable Diffusion 模型的最后 5 次迭代的评估结果。我们提出的 CMMD 指标随着迭代的进行单调地改善(减小),而 FID 具有意外的行为。我们关注 Stable Diffusion 最终迭代中更微妙的差异,因为在初始迭代中,FID 和 CMMD 在易于检测的高噪声水平下都表现出单调性。 

6.2. 图像扭曲

在这里,我们提供额外的证据表明 FID 在复杂的图像扭曲下不能准确反映图像质量。在 [13] 中已经证明,FID 能够准确捕捉低级图像处理扭曲,如高斯噪声和高斯模糊。由于 Inception 嵌入是在ImageNet 图像上进行训练的,没有进行极端的数据增强,因此 FID 能够识别这些扭曲并不奇怪。然而,在本节中,我们展示了 FID 无法识别在潜在空间中添加更复杂噪声的情况。

为此,我们取一组由 Muse 生成的图像,并通过在 VQGAN 潜在空间 [7] 中添加噪声来逐渐扭曲它们。对于每个图像,我们获取 VQGAN token,用概率 p 替换它们为随机 token,然后使用 VQGAN 解标记器重新构建图像。图 5 显示了示例扭曲。随着 p 的增加,图像变得越来越扭曲,而随着 p 的增加,质量损失显而易见。然而,如图 7 所示,FID 未能反映随着 p 增加而图像质量下降。相反,我们的 CMMD 指标在扭曲水平 p 增加时单调恶化(增加),正确识别质量的下降。图1 显示,当我们测量 COCO 30K 数据集逐渐扭曲版本(使用相同过程)与该数据集的参考干净版本之间的距离时,FID 的表现也很差。

6.3. 采样效率

如第 4 节所述,计算 FID 需要估计一个具有 400 万条目的 2048 × 2048 协方差矩阵。这需要大量图像,导致 FID 的样本效率较低。这也被 [5] 的作者注意到。由于提出的 CMMD 指标使用了 MMD 距离而不是 Fr´echet 距离,它不会受到这个问题的困扰。

在图 8 中,我们通过评估从 COCO 30K 数据集中随机抽取的不同样本大小(图像数量)的 Stable Diffusion 模型来说明这一点。请注意,我们需要超过 20,000 张图像才能可靠地估计 FID,而CMMD 即使在小图像集上也能提供一致的估计。这对于实际应用有重要的影响:图像生成模型的开发需要快速的在线评估,例如在训练过程中跟踪的度量。另一个相关的场景是比较大的模型。由于可靠地估计 FID 需要生成大量图像,FID 评估是昂贵且耗时的。相反,CMMD 可以通过仅生成少量图像来快速评估。CMMD 评估比 FID 评估更快有两个原因:1)它只需要生成少量图像。2)一旦生成了图像,CMMD 的计算速度比 FID 的计算速度更快,如下一节所讨论的。

6.4. 计算成本

设 n 为图像数量,d 为嵌入长度。计算 Fr´echet 距离(FD)的成本由对 d × d 矩阵进行矩阵平方根运算主导,这是昂贵且不容易并行化的。计算无偏版本 FD∞ 的成本更高,因为它需要使用不同的样本大小多次计算 FD。计算 MMD 的渐近复杂度为 O(d·n^2)。然而,在实践中,MMD 可以计算得非常高效,因为它只涉及矩阵乘法,这在任何深度学习库(如 Tensorflow、PyTorch 和 JAX)中都是易于并行化且高度优化的。

表 4 显示了在 TPUv4 平台上使用 JAX 实现对 n = 30,000、d = 2048 维特征的一组图像计算 FD 和 MMD 的经验运行时比较。对于 FD 计算,我们使用了我们的 JAX 实现以及来自 [19] 和 [5] 的公开可用的 PyTorch/numpy 实现,并报告最佳运行时。在同一表格中,我们还报告了提取 32 张图像的 Inception 和 CLIP 特征的运行时。

  • 19
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值