【发布时间】:2018-07-18 12:42:41
【问题描述】:
在针对我们自己的数据微调 keras.applications 中的预训练模型的同时,在 Keras 中预处理数据的正确方法是什么?
Keras 提供以下preprocess_input 函数
keras.applications.imagenet_utils.preprocess_input
keras.applications.inception_v3.preprocess_input
keras.applications.xception.preprocess_input
keras.applications.inception_resnet_v2.preprocess_input
从内部看,对于 inception_v3、xception 和 inception_resnet_v2,它使用 mode='tf' 调用 keras.applications.imagenet_utils.preprocess_input。而对于其他模型,它设置mode='caffe',每个模型执行不同的转换。
在 Francois chollet 的关于迁移学习的博文中——https://blog.keras.io/building-powerful-image-classification-models-using-very-little-data.html——通过除以 255 将其归一化为 [0, 1]。难道不应该使用 Keras 中的 preprocess_input 函数吗?
还不清楚输入图像应该是RGB还是BGR?这方面是否有任何一致性,还是特定于所使用的预训练模型?
【问题讨论】:
-
你使用的是什么预训练模型?
-
你好 Daneile,我并不专注于某个特定的预训练模型。我想根据我的数据对所有这些进行微调,并找出哪一个表现最好。
标签: python machine-learning deep-learning keras