当前位置: 首页 > article >正文

深度学习之GAN的生成能力评价

1.1 如何客观评价GAN的生成能力?

​ 最常见评价GAN的方法就是主观评价。主观评价需要花费大量人力物力,且存在以下问题:

  • 评价带有主管色彩,有些bad case没看到很容易造成误判

  • 如果一个GAN过拟合了,那么生成的样本会非常真实,人类主观评价得分会非常高,可是这并不是一个好的GAN。

因此,就有许多学者提出了GAN的客观评价方法。

1.2 Inception Score

​ 对于一个在ImageNet训练良好的GAN,其生成的样本丢给Inception网络进行测试的时候,得到的判别概率应该具有如下特性:

  • 对于同一个类别的图片,其输出的概率分布应该趋向于一个脉冲分布。可以保证生成样本的准确性。
  • 对于所有类别,其输出的概率分布应该趋向于一个均匀分布,这样才不会出现mode dropping等,可以保证生成样本的多样性。

​ 因此,可以设计如下指标:
KaTeX parse error: Can't use function '$' in math mode at position 76: …,如果是一个训练良好的GAN,$̲p_M(y|x)​$趋近于脉冲…
​ 根据前面分析,如果是一个训练良好的GAN, p M ( y ∣ x ) p_M(y|x) pM(yx)趋近于脉冲分布, p M ( y ) p_M(y) pM(y)趋近于均匀分布。二者KL散度会很大。Inception Score自然就高。实际实验表明,Inception Score和人的主观判别趋向一致。IS的计算没有用到真实数据,具体值取决于模型M的选择。

特点:可以一定程度上衡量生成样本的多样性和准确性,但是无法检测过拟合。Mode Score也是如此。不推荐在和ImageNet数据集差别比较大的数据上使用。

1.3 Mode Score

​ Mode Score作为Inception Score的改进版本,添加了关于生成样本和真实样本预测的概率分布相似性度量一项。具体公式如下:
M S ( P g ) = e E x ∼ P g [ K L ( p M ( y ∣ x ) ∥ p M ( y ) ) − K L ( p M ( y ) ∥ p M ( y ∗ ) ) ] MS(P_g)=e^{E_{x\sim P_g}[KL(p_M(y|x)\Vert{p_M(y)})-KL(p_M(y)\Vert p_M(y^*))]} MS(Pg)=eExPg[KL(pM(yx)pM(y))KL(pM(y)pM(y))]

1.4 Kernel MMD (Maximum Mean Discrepancy)

计算公式如下:
M M D 2 ( P r , P g ) = E x r ∼ P r , x g ∼ P g [ ∥ Σ i = 1 n 1 k ( x r ) − Σ i = 1 n 2 k ( x g ) ∥ ] MMD^2(P_r,P_g)=E_{x_r\sim{P_r},x_g\sim{P_g}}[\lVert\Sigma_{i=1}^{n1}k(x_r)-\Sigma_{i=1}^{n2}k(x_g)\rVert] MMD2(Pr,Pg)=ExrPr,xgPg[∥Σi=1n1k(xr)Σi=1n2k(xg)∥]
​ 对于Kernel MMD值的计算,首先需要选择一个核函数 k k k,这个核函数把样本映射到再生希尔伯特空间(Reproducing Kernel Hilbert Space, RKHS) ,RKHS相比于欧几里得空间有许多优点,对于函数内积的计算是完备的。将上述公式展开即可得到下面的计算公式:
M M D 2 ( P r , P g ) = E x r , x r ′ ∼ P r , x g , x g ′ ∼ P g [ k ( x r , x r ′ ) − 2 k ( x r , x g ) + k ( x g , x g ′ ) ] MMD^2(P_r,P_g)=E_{x_r,x_r{'}\sim{P_r},x_g,x_g{'}\sim{P_g}}[k(x_r,x_r{'})-2k(x_r,x_g)+k(x_g,x_g{'})] MMD2(Pr,Pg)=Exr,xrPr,xg,xgPg[k(xr,xr)2k(xr,xg)+k(xg,xg)]
MMD值越小,两个分布越接近。

特点:可以一定程度上衡量模型生成图像的优劣性,计算代价小。推荐使用。

1.5 Wasserstein distance

​ Wasserstein distance在最优传输问题中通常也叫做推土机距离。这个距离的介绍在WGAN中有详细讨论。公式如下:
W D ( P r , P g ) = m i n ω ∈ R m × n Σ i = 1 n Σ i = 1 m ω i j d ( x i r , x j g ) WD(P_r,P_g)=min_{\omega\in\mathbb{R}^{m\times n}}\Sigma_{i=1}^n\Sigma_{i=1}^m\omega_{ij}d(x_i^r,x_j^g) WD(Pr,Pg)=minωRm×nΣi=1nΣi=1mωijd(xir,xjg)

s . t . Σ i = 1 m w i , j = p r ( x i r ) , ∀ i ; Σ j = 1 n w i , j = p g ( x j g ) , ∀ j s.t. \Sigma_{i=1}^mw_{i,j}=p_r(x_i^r), \forall i;\Sigma_{j=1}^nw_{i,j}=p_g(x_j^g), \forall j s.t.Σi=1mwi,j=pr(xir),i;Σj=1nwi,j=pg(xjg),j

​ Wasserstein distance可以衡量两个分布之间的相似性。距离越小,分布越相似。

特点:如果特征空间选择合适,会有一定的效果。但是计算复杂度为 O ( n 3 ) ​ O(n^3)​ O(n3)太高

1.6 Fréchet Inception Distance (FID)

​ FID距离计算真实样本,生成样本在特征空间之间的距离。首先利用Inception网络来提取特征,然后使用高斯模型对特征空间进行建模。根据高斯模型的均值和协方差来进行距离计算。具体公式如下:
KaTeX parse error: Can't use function '$' in math mode at position 83: …C_rC_g)^{1/2}) $̲\mu,C$分别代表协方差和均…
μ , C ​ \mu,C​ μ,C分别代表协方差和均值。

特点:尽管只计算了特征空间的前两阶矩,但是鲁棒,且计算高效。

1.7 -Nearest Neighbor classifier

​ 使用留一法,结合1-NN分类器(别的也行)计算真实图片,生成图像的精度。如果二者接近,则精度接近50%,否则接近0%。对于GAN的评价问题,作者分别用正样本的分类精度,生成样本的分类精度去衡量生成样本的真实性,多样性。

  • 对于真实样本 x r x_r xr,进行1-NN分类的时候,如果生成的样本越真实。则真实样本空间 R \mathbb R R将被生成的样本 x g x_g xg包围。那么 x r x_r xr的精度会很低。
  • 对于生成的样本 x g ​ x_g​ xg,进行1-NN分类的时候,如果生成的样本多样性不足。由于生成的样本聚在几个mode,则 x g ​ x_g​ xg很容易就和 x r ​ x_r​ xr区分,导致精度会很高。

特点:理想的度量指标,且可以检测过拟合。

1.8 其他评价方法

​ AIS,KDE方法也可以用于评价GAN,但这些方法不是model agnostic metrics。也就是说,这些评价指标的计算无法只利用:生成的样本,真实样本来计算。


http://www.kler.cn/a/399510.html

相关文章:

  • 【免越狱】iOS砸壳 可下载AppStore任意版本 旧版本IPA下载
  • 蓝队基础之网络七层杀伤链
  • Python 正则表达式使用指南
  • 深入理解 C++ 二叉树
  • 【目标检测】【Ultralytics-YOLO系列】Windows11下YOLOV5人脸目标检测
  • mysql中mvcc如何处理纯读事务的?
  • Windows C++ TCP/IP 两台电脑上互相传输字符串数据
  • 【Linux学习】【Ubuntu入门】1-4 ubuntu终端操作与shell命令1
  • 数据驱动的期货市场决策:民锋科技的量化分析创新
  • Python 小高考篇(4)循环语句
  • web——upload-labs——第三关——后缀黑名单绕过
  • main中的int argc, char* argv[],命令行调用函数时输入参数用的
  • Ubuntu24.04LTS在线安装Docker引擎
  • Qt---双缓冲绘图
  • Golang | Leetcode Golang题解之第565题数组嵌套
  • 读写锁分离设计模式详解
  • 文件 fd
  • Python 在人工智能与大数据中的应用
  • 【ubuntu】Geogebra
  • 微服务day10-Redis面试篇
  • Rust:原子操作 AtomicBool
  • 基本数据类型和包装类型的区别、缓存池、自动拆箱装箱(面试题)
  • JVM堆(1.6、1.7、1.8)
  • 【route】route add命令详解
  • 2023年MathorCup数学建模B题城市轨道交通列车时刻表优化问题解题全过程文档加程序
  • PHP 语法基础