Моя модель представляет собой простую полностью подключенную сеть, подобную этой:
inp=Input(shape=(10,))
d=Dense(64, activation='relu')(inp)
d=Dense(128,activation='relu')(d)
d=Dense(256,activation='relu')(d) #want to give input here, layer3
d=Dense(512,activation='relu')(d)
d=Dense(1024,activation='relu')(d)
d=Dense(128,activation='linear')(d)
Итак, после сохранения модели я хочу передать данные в слой 3. Что я сейчас делаю, так это:
model=load_model('blah.h5') #above described network
print(temp_input.shape) #(16,256), which is equal to what I want to give
index=3
intermediate_layer_model = Model(inputs=temp_input,
outputs=model.output)
End_output = intermediate_layer_model.predict(temp_input)
Но это не работает, т.е. я получаю ошибки, такие как несовместимый ввод, вводы должны быть кортежами и т. Д. Сообщение об ошибке:
raise TypeError('`inputs` should be a list or tuple.')
TypeError: `inputs` should be a list or tuple.
Есть ли способ передать моисобственные входы в середине сети и получить вывод вместо того, чтобы давать ввод в начале и получать вывод с конца?Любая помощь будет высоко оценена.