Перезвонил на Тензор с несовместимой формой - PullRequest
0 голосов
/ 16 января 2020

Я пытаюсь создать модель регрессии 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
        ])

Теперь проблема в том, что я получаю ПРЕДУПРЕЖДЕНИЕ ниже:

ПРЕДУПРЕЖДЕНИЕ : tenorsflow: Модель была построена с использованием формы Tensor («dens_12_input: 0», shape = (None, None, 7, 7, 1280), dtype = float32) для ввода (None, None, 7, 7, 1280), но был повторно вызван на Тензор с несовместимой формой (None, 7, 7, 1280).

Кто-нибудь знает, почему появляется это предупреждение и как я могу с ним бороться, если оно не безопасно? ,

1 Ответ

0 голосов
/ 20 января 2020

Кажется, что добавление сглаживания после того, как CNN решил мою проблему. Поскольку мы хотим передать сплющенный вектор в полностью связанный слой. Модель должна выглядеть так:

model = keras.Sequential([
            cnn_model, keras.layers.Flatten(),
            regression_model,
            prediction_layer
        ])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...