您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
fid是什么意思(物联网rfid是什么意思)
图像,分数,向量fid是什么意思(物联网rfid是什么意思)
发布时间:2020-12-06加入收藏来源:互联网点击:
接下来,我们可以测试这个函数来计算一些人造特征向量的 Inception 分数。
特征向量可能包含小的正值,长度为 2,048 个元素。我们可以用包含小随机数的特征向量构建两组图像(每组 10 幅),如下所示:
act1 = random(102048)act1 = act1.reshape((10,2048))act2 = random(102048)act2 = act2.reshape((10,2048))一个测试是计算一组激活与其自身之间的 FID,我们期望分数为 0.0。
然后计算两组随机激活之间的距离,我们期望它们是一个很大的数字。
fid = calculate_fid(act1, act1)print('FID (same): %.3f' % fid)fid = calculate_fid(act1, act2)print('FID (different): %.3f' % fid)将所有这些结合在一起,完整的示例如下:
import numpyfrom numpy import covfrom numpy import tracefrom numpy import iscomplexobjfrom numpy.random import randomfrom scipy.linalg import sqrtmdef calculate_fid(act1, act2): # calculate mean and covariance statistics mu1, sigma1 = act1.mean(axis=0), cov(act1, rowvar=False) mu2, sigma2 = act2.mean(axis=0), cov(act2, rowvar=False) # calculate sum squared difference between means ssdiff = numpy.sum((mu1 - mu2)*2.0) # calculate sqrt of product between cov covmean = sqrtm(sigma1.dot(sigma2)) # check and correct imaginary numbers from sqrt if iscomplexobj(covmean): covmean = covmean.real # calculate score fid = ssdiff + trace(sigma1 + sigma2 - 2.0 covmean) return fidact1 = random(102048)act1 = act1.reshape((10,2048))act2 = random(102048)act2 = act2.reshape((10,2048))fid = calculate_fid(act1, act1)print('FID (same): %.3f' % fid)fid = calculate_fid(act1, act2)print('FID (different): %.3f' % fid)运行这段代码示例,首先会显示出激活函数值「act1」和它自己之间的 FID 分数,正如我们所预想的那样,该值为 0.0(注:该分数的符号可以忽略)
同样,正如我们所预料的,两组随机激活函数值之间的距离是一个很大的数字,在本例中为 358
FID (same): -0.000FID (different): 358.927原文链接:https://machinelearningmastery.com/how-to-implement-the-frechet-inception-distance-fid-from-scratch/
本文到此结束,希望对大家有所帮助呢。
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |