我正在使用tensorflow slim加载预先训练好的模型,比如vgg和resnet-50。因此,对于vgg,tf-slim提供了加载RGB平均值的方法,如下所示:
from preprocessing.vgg_preprocessing import (_mean_image_subtraction,
_R_MEAN, _G_MEAN, _B_MEAN)我找不到任何与resnet类似的东西。它还没有实现吗?此外,我还知道一些库,如py-torch,为每个模型提供全局平均值。tf-slim也是这样吗?
发布于 2019-01-14 18:58:37
实际上,尽管preprocessing_factory说restnetv2使用vgg_preprocessing,但事实并非如此。
发布于 2018-09-04 14:39:36
前面的答案实际上并不完全正确。看一看https://github.com/tensorflow/models/blob/master/research/slim/preprocessing/preprocessing_factory.py
您可以看到,Resnet-V1和ResNet-V2都使用VGG预处理
preprocessing_fn_map = {
'cifarnet': cifarnet_preprocessing,
'inception': inception_preprocessing,
'inception_v1': inception_preprocessing,
'inception_v2': inception_preprocessing,
'inception_v3': inception_preprocessing,
'inception_v4': inception_preprocessing,
'inception_resnet_v2': inception_preprocessing,
'lenet': lenet_preprocessing,
'mobilenet_v1': inception_preprocessing,
'mobilenet_v2': inception_preprocessing,
'mobilenet_v2_035': inception_preprocessing,
'mobilenet_v2_140': inception_preprocessing,
'nasnet_mobile': inception_preprocessing,
'nasnet_large': inception_preprocessing,
'pnasnet_mobile': inception_preprocessing,
'pnasnet_large': inception_preprocessing,
'resnet_v1_50': vgg_preprocessing,
'resnet_v1_101': vgg_preprocessing,
'resnet_v1_152': vgg_preprocessing,
'resnet_v1_200': vgg_preprocessing,
'resnet_v2_50': vgg_preprocessing,
'resnet_v2_101': vgg_preprocessing,
'resnet_v2_152': vgg_preprocessing,
'resnet_v2_200': vgg_preprocessing,
'vgg': vgg_preprocessing,
'vgg_a': vgg_preprocessing,
'vgg_16': vgg_preprocessing,
'vgg_19': vgg_preprocessing,}
发布于 2020-09-02 15:15:41
我在ImageNet验证数据集上测试了Resnet_v1_50和Resnet_v2_50的Slim检查点,结果是Resnet_v1_50使用VGG预处理,而Resnet_v2_50使用初始预处理。
Github issue还指出了source code中的误导性信息。
https://stackoverflow.com/questions/45678483
复制相似问题