总而言之,我通过完全获取输入来解决这个问题,并将这些输入分开使用 Lambda 层。 TimeDistributed 只能接受单一输入,这就是原因。这是我的代码片段。
Lambda
TimeDistributed
single_input = keras.Input((1+10),)) visit_input = Lambda(lambda x: x[:, 0:1])(single_input) areas_input = Lambda(lambda x: x[:, 1: ])(single_input) ... low_level_model = keras.Model(inputs=single_input, outputs=concat) encoder = TimeDistributed(low_level_model) multiple_inputs = keras.Input((5, 11))) all_areas_rslt = encoder(inputs=multiple_inputs) all_areas_lstm = LSTM(64, return_sequences=False)(all_areas_rslt) logits = Dense(365, activation='softmax')(all_areas_lstm)