fid
值得一看,总结了IS和FID的历史发展
原文地址
在对抗生成网络中,判别器和生成器的目标函数通常都是用来衡量它们各自做的怎么样的。例如,生成器的目标函数用来衡量生成的图片能骗过分类器的性能。
但是这并不能很好的衡量生成图片的质量和多样性。
通常,我们使用IS(inception score)和FID(Fréchet Inception distance)这两个指标来评价不同的GAN模型。
IS(inception score)
IS用来衡量GAN网络的两个指标:
1. 生成图片的质量 和
2. 多样性
熵(entropy)可以用来描述随机性:如果一个随机变量是高度可预测的,那么它就有较低的熵;相反,如果它是高度不可预测,那么它就用较高的熵。
如下图,我们有两个概率分布,p2 比 p1 有更高的熵值,因为 p2 是一个均匀分布,我们很难预测 x 的值。
在GAN中,我们希望条件概率 P(y∣x) 可以被高度预测(x 表示给定的图片,y 表示这个图片包含的主要物体,看到后面你会更加清楚这个概率是什么意思),也就是希望它的熵值较低。例如,给定一个图片,我们很容易的知道其中包含什么物体。
因此,我们使用inception network(可以理解这是一个固定的分类网络)来对生成的图像进行分类。(这里都是针对ImageNet数据集而言)然后预测 P(y∣x), 这里的 y 就是标签。用这个概率来反应图片的质量。
简单来说,假如inception network能够以较高的概率预测图片中包含的物体,也就是有很高的把握对其进行正确分类,这就说明图片质量较高。相反,比如我们人眼并无法看出这张图片是什么,就说明这个图片质量不高。当然这里的人是我改的。
综上,我们知道概率 P(y∣x) 代表了图片的质量,概率越大,质量则越高。接下来说说如何评价多样性。
我们用下面的公式计算边缘概率:
∫zp(y∣x=G(z))dz
G(z) 就是生成器用噪声 z 得到的输出图像。
如果生成的图像多样化很好,那么预测的标签 y 的分布则会有较高的熵,因为数量多了,我们就能准确预测 y 的结果就更难。
下图就表现了这样的概念:
为了综合两个指标,我们使用KL-pergence 并用下面的公式计算得到IS的值:
IS(G)=eEx∈pDKL(p(y∣x)∣∣p(y))
其中 DKL 就是KL-pergence的计算公式。
补充:如何计算KL-pergence链接
IS缺点:当只产生一种物体的图像时,我们仍会认为这是均匀分布,而导致评价不正确。当模型坍塌时,结果就可能产生同样的图片。
FID(Fréchet Inception Distance )
在IS中,我们使用inception network对生成的图像进行预测分类,但是在FID中我们用相同的inception network来提取中间层的特征。然后我们使用一个均值为 μ 方差为 Σ 的正态分布去模拟这些特征的分布。
我们使用这样的公式来计算FID:
公式中,Tr 表示矩阵对角线上元素的总和,矩阵论中俗称“迹”(trace)
较低的FID意味着较高图片的质量和多样性。
FID对模型坍塌更加敏感。相比较IS来说,FID对噪声有更好的鲁棒性。因为假如只有一种图片时,FID这个距离将会相当的高。因此,FID更适合描述GAN网络的多样性。
同样的,FID和IS都是基于特征提取,也就是依赖于某些特征的出现或者不出现。但是他们都无法描述这些特征的空间关系。如下图:
这里我们我们人不会认为这是一张好的人脸图片。但是根据FID和IS,他们就是一个很好的人脸图片。因为它有人脸必要的特征,虽然这些特征的空间关系不好。
遗留问题
为什么使用KL-pergence 和 FID这样的计算方法就能够评价,这是数学上的一些知识,还有待进一步探讨。
相关阅读
滴滴出行-滴滴一下 马上出行 大姨妈:和你一起在乎你 微博:随时随地发现新鲜事 咪咕阅读:听有趣阅不同 京东阅读:阅世界 越自己 书旗小
简介 在DCGAN的基础上,介绍WGAN的原理和实现,并在LFW和CelebA两个数据集上进一步实践问题 GAN一直面临以下问题和挑战 训练困难,需要
不管何种模型,其损失函数(Loss Function)选择,将影响到训练结果质量,是机器学习模型设计的重要部分。对于判别模型,损失函数是容易定义
从长安福特的“进无止境”,到东风本田的“越,无止境”;从奔驰新C的“Game Changer驾驭改变”,到捷豹XE的“The Game Changer拥‘豹’
今天让我们来聊聊品牌如何写Slogan的问题,要讨论这一点,看起来一点儿也不比讨论如何为品牌命名轻松,关于Slogan的写法和它背后的逻辑