В настоящее время у меня есть модель с тензорным потоком, которую я сделал и предварительно обучил (и она хорошо предсказывает :)); это выглядит так:
Model: "model_3"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_6 (InputLayer) [(None, 2)] 0
_________________________________________________________________
Custom_Layer_1 (None, 2) 8
_________________________________________________________________
lambda (Lambda) (None, 1) 0
=================================================================
Total params: 8
Trainable params: 8
Non-trainable params: 0
_________________________________________________________________
Это называется «модель». Я хочу передать эту модель в следующую модель:
input_layer_temp = tf.keras.Input(shape=[d+D])
current_layer_temp = Custom_layer()
current_layer_temp = current_layer_temp(input_layer_temp)
# Build Model
model_new_temp = tf.keras.Model(inputs = [input_layer_temp],outputs = [current_layer_temp])
# Compile Model
model_new_temp.compile(loss = 'mse',
optimizer = optimizer_on,
metrics = ['mse'])
Где Custom_layer () принимает входные данные (None,2)
и выводит (None,2)
.
# Compile new Model
#-------------------#
# Define Optimizer
optimizer_on = tf.keras.optimizers.SGD(learning_rate=10**(-2), momentum=0.01, nesterov=True)
# Compile Model
model_new.compile(loss = 'mse',
optimizer = optimizer_on,
metrics = ['mse'])
Model: "model_116"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_158 (InputLayer) [(None, 2)] 0
_________________________________________________________________
Custom_layer_1 (None, 2) 12
=================================================================
Total params: 12
Trainable params: 0
Non-trainable params: 12
_________________________________________________________________
Однако, когда я передаю ему input_layer формы (None,2)
, он дает мне выходную форму (None,1)
, как будто я не вытолкнул последний слой (что я и сделал) ...
<tf.Tensor 'model_116/Identity:0' shape=(None, 1) dtype=float32>