web-dev-qa-db-ja.com

互換性のない形状のTensorで再度呼び出されました

以下のコードを使用して、ここで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)でモデルが構築されましたが(None、None、7、7、1280)、ただし互換性のない形状のTensorで再度呼び出されました(なし、7、7、1280)。

無害でない限り、この警告が出てくる理由と私がどのようにそれを戦うことができるかについて誰かが知っていますか?.

1

CNNが私の問題を解決した後、フラットを追加するようです。完全に接続されたレイヤーにフラット化されたベクトルを渡したいので。モデルは次のようになります。

model = keras.Sequential([
            cnn_model, keras.layers.Flatten(),
            regression_model,
            prediction_layer
        ])
3