繁体   English   中英

Xception Model 转移学习输入图像 - Tensorflow

[英]Xception Model Transfer Learning Input Image - Tensorflow

我正在尝试使用xception model 进行迁移学习任务。 我知道在使用选项include_top=False下载图像时,它需要图像的最小输入形状为(71, 71, 3)

我面临的问题是,当我尝试将数据从(48,48,3)重塑为(71,71,3)时,我会遇到 RAM 问题并且我的系统会重新启动。 我没有在外部重塑数据,而是在网络架构中对其进行重塑。 当我尝试这样做时,出现以下错误..

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-44-a448922440e7> in <module>()
      1 model = Sequential()
      2 #model.add(Input(shape=(48,48,3)))
----> 3 model.add(tf.keras.layers.Reshape((71,71,3), input_shape=(48,48,3)))
      4 #model.add(ReformatImage(71,71))
      5 model.add(conv_base)

8 frames
/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/layers/core.py in _fix_unknown_dimension(self, input_shape, output_shape)
    534       output_shape[unknown] = original // known
    535     elif original != known:
--> 536       raise ValueError(msg)
    537     return output_shape
    538 

ValueError: total size of new array must be unchanged, input_shape = [48, 48, 3], output_shape = [71, 71, 3]

我的代码如下


from tensorflow.keras.applications import Xception
conv_base = Xception(weights='imagenet',include_top=False,input_shape=(71,71,3))

conv_base.trainable = False

model = Sequential()
#model.add(Input(shape=(48,48,3)))
model.add(tf.keras.layers.Reshape((71,71,3), input_shape=(48,48,3)))
#model.add(ReformatImage(71,71))
model.add(conv_base)
model.add(Flatten())
model.add(Dense(1024, activation='relu'))
model.add(Dense(1024, activation='relu'))
model.add(BatchNormalization())
model.add(Dense(10, activation='softmax'))

model.summary()

有人可以指出我正确的方向,以便我可以解决这个问题吗?

Reshape将输入数据从其 inut 形状“排列”为 output 形状,因此它不会创建新数据。 在这里,您要求将(48x48x3)张量排列成(71x71x3)张量,所以这是不可能的。

为此,您必须使用调整大小函数对图像进行预处理: cv2.resizeskimage.transform.resizetf.keras.preprocessing.ImageDataGenerator ...

您可以使用tf.keras.layers.experimental.preprocessing.Resizing

tf.keras.layers.experimental.preprocessing.Resizing(48, 48)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM