同一数据集(相同路径)的 FID 为负数

公众号:EDPJ

先说结论:这是算法中对复数取实部的结果,对 FID 的影响不大。

FID是从原始图像的计算机视觉特征的统计方面,来衡量两组图像的相似度,是计算真实图像和生成图像的特征向量之间距离的一种度量。
这种视觉特征是使用 Inception v3 图像分类模型提取特征并计算得到的。FID 在最佳情况下的得分为 0.0,表示两组图像相同。分数越低代表两组图像越相似,或者说二者的统计量越相似

FID 计算公式如下:

同一数据集(相同路径)的 FID 为负数_第1张图片

协方差矩阵计算如下: 

covmean, _ = linalg.sqrtm(sigma1.dot(sigma2), disp=False)

if np.iscomplexobj(covmean):
    if not np.allclose(np.diagonal(covmean).imag, 0, atol=1e-3):
        m = np.max(np.abs(covmean.imag))
        raise ValueError('Imaginary component {}'.format(m))
    covmean = covmean.real

data_size = 1 时,FID = 0

data_size = 100 时:方差矩阵与协方差矩阵的差值非常小

同一数据集(相同路径)的 FID 为负数_第2张图片

data_size = 1000 时:这个差值进一步缩小

同一数据集(相同路径)的 FID 为负数_第3张图片

data_size = 5000 时:这个差值又进一步缩小

同一数据集(相同路径)的 FID 为负数_第4张图片

结论:出现负数其实对结果影响不大 

你可能感兴趣的:(代码,算法,人工智能)