Ссылаясь на пример из https://medium.com/tensorflow/training-and-serving-ml-models-with-tf-keras-fd975cc0fa27
Я пытаюсь адаптировать код для обеспечения единого вывода, но не могу понять, почему отсутствует столбец «Подключен к» при удалении одногоиз двух выходных слоев.
Исходный код работает, и модели сходятся к оптимальному, но когда один из двух выходов удален, модель, похоже, ничего не добивается, что заставляет меня искать неисправности и зацикливаться на том, почему «Подключен»столбец пропадает.
import tensorflow as tf
IM_SIZE = 128 # image size
BATCH_SIZE = 32 # batch size
image_input = tf.keras.Input(shape=(IM_SIZE, IM_SIZE, 3), name='input_layer')
# Some convolutional layers
conv_1 = tf.keras.layers.Conv2D(32, kernel_size=(3, 3), padding='same', activation='relu')(image_input)
conv_1 = tf.keras.layers.MaxPooling2D(padding='same')(conv_1)
# Flatten the output of the convolutional layers
conv_flat = tf.keras.layers.Flatten()(conv_1)
# Some dense layers with two separate outputs
fc_1 = tf.keras.layers.Dense(128, activation='relu')(conv_flat)
fc_1 = tf.keras.layers.Dropout(0.2)(fc_1)
# Output layers: separate outputs for the weather and the ground labels
weather_output = tf.keras.layers.Dense(4, activation='softmax', name='weather')(fc_1)
#ground_output = tf.keras.layers.Dense(13, activation='sigmoid', name='ground')(fc_1)
model = tf.keras.Model(inputs=image_input, outputs=weather_output)
#model = tf.keras.Model(inputs=image_input, outputs=[weather_output, ground_output])
print(model.summary())
Справа должен быть столбец "Подключен к", но он не появляется, и модель не достигает какого-либо улучшения точности во время тренировки.
Model: "model_11"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_layer (InputLayer) [(None, 128, 128, 3)] 0
_________________________________________________________________
conv2d_16 (Conv2D) (None, 128, 128, 32) 896
_________________________________________________________________
max_pooling2d_16 (MaxPooling (None, 64, 64, 32) 0
_________________________________________________________________
flatten_11 (Flatten) (None, 131072) 0
_________________________________________________________________
dense_18 (Dense) (None, 128) 16777344
_________________________________________________________________
dropout_16 (Dropout) (None, 128) 0
_________________________________________________________________
weather (Dense) (None, 4) 516
=================================================================
Total params: 16,778,756
Trainable params: 16,778,756
Non-trainable params: 0
_________________________________________________________________
None