我正在尝试通过以下代码在此处创建CNN +回归模型:
# Create the base model from the pre-trained model MobileNet V2
cnn_model = keras.applications.MobileNetV2(input_shape=IMG_SHAPE,
include_top=False,
weights='imagenet')
# The Regression Model
regression_model = keras.Sequential([
keras.layers.Dense(64, activation='relu',
input_shape=cnn_model.output_shape),
keras.layers.Dense(64, activation='relu')
])
prediction_layer = tf.keras.layers.Dense(1)
# Final Model
model = keras.Sequential([
cnn_model,
regression_model,
prediction_layer
])
现在的问题是,我收到以下警告:
警告:tensorflow:模型是用形状构造的 Tensor(“ dense_12_input:0”,shape =(None,None,7,7,1280), dtype = float32)用于输入(无,无,7、7、1280),但是 在形状不兼容的Tensor上重新调用(无,7、7、1280)。
有没有人知道为什么会出现此警告,以及如何与之抗衡,除非它是无害的。
答案 0 :(得分:4)
在CNN解决了我的问题之后,似乎添加了一个拼合。由于我们想将展平的矢量传递给完全连接的层。该模型应如下所示:
model = keras.Sequential([
cnn_model, keras.layers.Flatten(),
regression_model,
prediction_layer
])