相关疑难解决方法(0)

Keras VGG16预处理输入模式

我正在使用Keras VGG16模型

我已经看到,有一个preprocess_input方法可以与VGG16模型结合使用。该方法似乎在imagenet_utils.py中调用preprocess_input方法,方法(取决于大小写)在imagenet_utils.py中调用_preprocess_numpy_input方法

preprocess_inputmode哪些期待“朱古力”,“TF”,或“火炬”的说法。如果我在带有TensorFlow后端的Keras中使用模型,我应该绝对使用mode="tf"吗?

如果是,这是否是因为Keras加载的VGG16模型受过经过相同预处理(即,将输入图像的范围从[0,255]更改为输入范围[-1,1])的图像进行了训练?

另外,用于测试模式的输入图像也应进行此预处理吗?我相信最后一个问题的答案是肯定的,但我希望得到保证。

我希望Francois Chollet能够正确地做到这一点,但是看他是不是https://github.com/fchollet/deep-learning-models/blob/master/vgg16.py,或者我使用错了mode="tf"

更新信息

@FalconUA将我带到牛津VGG,那里有一个模型部分,其中包含16层模型的链接。通过以下模型 16层模型中的链接可以找到有关将preprocessing_input mode参数tf缩放为-1到1并caffe减去一些平均值的信息信息页面。在“说明”部分中,它说:

“在本文中,模型表示为经过比例抖动训练的配置D。输入图像应通过均值像素(而不是均值图像)相减为零。即,应减去以下BGR值:[103.939, 116.779,123.68]。”

deep-learning keras tensorflow image-preprocessing vgg-net

8
推荐指数
2
解决办法
3622
查看次数