self.embed = Sequential([Embedding(9488, output_dim=512,input_length=14),
Activation('relu'),
Dropout(0.5)], name='embed.0')
self.fc_embed = Sequential([Dense(512, input_shape=(10,2048)),
Activation('relu'),
Dropout(0.5)], name='fc_embed.0')
inputs_bedding = Input(shape=(10,))
xt = self.embed(inputs_bedding)
input_feats = Input(shape=(10,2048))
fc_feats = self.fc_embed(input_feats)
fc_feats_new = K.reshape(fc_feats, [fc_feats.shape[1], fc_feats.shape[2]])
xt_new = K.reshape(xt, [xt.shape[1], xt.shape[2]])
prev_h = state[0][-1] (shape is (10,512))
att_lstm_input = Concatenate([prev_h, fc_feats_new, xt_new], axis=1)
lstm, h_att, c_att = LSTM(units=512, name='core.att_lstm', return_state=True)(att_lstm_input)
model = Model([input_feats, inputs_att, inputs_bedding], lstm)
model.summary()
Это ошибка, которую я получаю:
File "copy_eval.py", line 165, in <module>
model1 = TopDownModel.forward(fc_feats, att_feats, seq, att_masks)
Файл "/home/ubuntu/misc/customize_keras.py", строка 127, вперед lstm, h_att, c_att = LSTM (единицы измерения= 512, name = 'core.att_lstm', return_state = True) (att_lstm_input) Файл "/usr/local/lib/python2.7/dist-packages/keras/layers/recurrent.py", строка 500, в call return super (RNN, self). call (входные данные, ** kwargs) Файл "/usr/local/lib/python2.7/dist-packages/keras/engine/topology.py ", строка 575, в вызов self.assert_input_compatibility (входные данные) Файл" /usr/local/lib/python2.7/dist-packages/keras/engine/topology.py ", строка 448, вassert_input_compatibility str (входные данные) + '.Все входы в слой 'ValueError: Layer core.att_lstm были вызваны с входом, который не является символическим тензором.Полученный тип:.Полный ввод: [].Все входные данные для слоя должны быть тензорами.
Для получения дополнительной информации, как объединить их в один выход?