Popping Last Layer, но до тех пор, пока не будет получен "неотрезанный" вывод - PullRequest
0 голосов
/ 08 апреля 2020

В настоящее время у меня есть модель с тензорным потоком, которую я сделал и предварительно обучил (и она хорошо предсказывает :)); это выглядит так:

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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...