Skip to content

评价指标

约 857 字大约 3 分钟

2024-08-11

生成模型的几种评价指标

PSNR

PSNR (Peak Signal-to-Noise Ratio) 峰值信噪比。

给定一个大小为 m×nm×n 的干净图像 II 和噪声图像 KK,均方误差(MSE)定义为:

MSE=1mni=0m1j=0n1[I(i,j)K(i,j)]2MSE=\frac{1}{mn}\sum_{i=0}^{m-1}\sum_{j=0}^{n-1} [I(i,j)-K(i,j)]^2

然后 PSNR(dB)PSNR(dB) 就定义为:

PSNR=10log10(MAXI2MSE)PSNR = 10\cdot log_{10}(\frac{MAX_{I}^{2}}{MSE} )

其中MAXI2MAX_I^{2}为图片可能的最大像素值

SSIM

SSIM (Structural SIMilarity) 结构相似性。

基于样本 x 和 y 之间的三个比较衡量:亮度 (luminance)、对比度 (contrast) 和结构 (structure)。

l(x,y)=2μxμy+c1μx2+μy2+c1c(x,y)=2σxσy+c2σx2+σy2+c2s(x,y)=σxy+c3σxσy+c3\large \begin{equation} \begin{split} l(x,y) & = \frac{2\mu _x\mu_y+c_1}{\mu_x^{2}+\mu_y^{2}+c_1}\\ c(x,y)&=\frac{2\sigma _x\sigma _y+c_2}{\sigma _x^{2}+\sigma_y^{2}+c_2}\\ s(x,y)&=\frac{\sigma _{xy}+c_3}{\sigma _x\sigma _y+c_3} \end{split} \end{equation}

一般取 c3=c2/2c_3=c_2/2

  • μx\mu_xxx 的均值

  • μy\mu_yyy 的均值

  • σx2\sigma_x^2xx 的方差

  • σy2\sigma_y^2yy 的方差

  • σxy\sigma_{xy}xxyy 的协方差

  • c1=(k1L)2,c2=(k2L)2c_1=(k_1L)^2,c_2=(k_2L)^2 为两个常数,避免除零

  • LL 为像素值的范围,2B12^B-1

  • k1=0.01,k2=0.03k_1 = 0.01,k_2=0.03 为默认值

    SSIM(x,y)=[l(x,y)αc(x,y)βs(x,y)γ]\Large {SSIM(x,y)=[l(x,y)^{\alpha }·c(x,y)^\beta·s(x,y)^\gamma]}

Inception Score

Inception Score使用图片类别分类器来评估生成图片的质量。其中使用的图片类别分类器为Inception Net-V3。

直观感受,IS是对生成图片清晰度和多样性的衡量,IS值越大越好。具体公式如下:

IS(G)=exp(ExpgDKL(p(yx)p(y)))\large{IS(G)=\exp (\mathbb{E}_{x\sim p_g}D_{KL}(p(y|x)||p(y)) )}

  • Expg\mathbb{E}_{x\sim p_g}:遍历所有的生成样本,求平均值。

  • DKLD_{KL}:KL散度,DKL(PQ)D_{KL}(P||Q)用于衡量分布 P 和 Q 之间的近似程度。

  • p(yx)p(y|x):对于图片x,属于所有类别的概率分布。对于给定图片x,表示为一个1000维数向量。

  • p(y)p(y):边缘概率,具体实现为对所有的验证图片x,计算得到p(yx)p(y|x),再求所有向量平均值。

Inception Score的问题 (1)数据集问题 (2)Inception Score敏感性问题 (3)Inception Score高的图片不一定真实 (4)Inception Score低的图片不一定差 (6)Inception Score的多样性检验有局限性 (6)Inception Score不能反映过拟合

总结:Inception Score得分过于依赖分类器,是一种间接的对图片质量评估的方法,没有考虑真实数据与生成数据的具体差异。Inception Score是基于ImageNet得到的,在IS看来,凡是不像ImageNet的数据,都是不真实的。

Fréchet Inception Distance

直接考虑生成数据和真实数据在feature层次的距离,不再额外的借助分类器。因此来衡量生成图片和真实图片的距离。

FID=μrμg2+Tr(Σr+Σg2(ΣrΣg)1/2)\large{FID=||\mu_r-\mu_g||^2+T_r(\Sigma_r+\Sigma_g-2(\Sigma_r\Sigma_g)^{1/2})}

  • μr\mu_r:真实图片的特征均值
  • μg\mu_g:生成图片的特征均值
  • Σr\Sigma_r:真实图片的协方差矩阵
  • Σg\Sigma_g:生成图片的协方差矩阵
  • TrT_r:迹

优点:

  • 生成模型的训练集可以和 Inception Net-V3 不同
  • 刷分不会导致生成图片的质量变差

缺点:

  • FID是衡量多元正态分布,直接按的距离。但是提取的图片特征不一定是符合多元正态分布的。
  • 无法解决过拟合问题,如果生成模型只能生成和训练集一模一样的数据无法检测。