[英]Keras functional API: fitting and testing model that takes multiple inputs
[英]Keras model having multiple inputs causes strange errors when fitting
我目前正在使用 GRU 開發編碼器-解碼器 model。 它需要2個輸入,編碼器輸入和解碼器輸入。 解碼器中只有一個 output。 model 是:
encoder=tf.keras.layers.GRU(10,return_state=True)
_,state=encoder(encoder_input)
decoder_input=tf.keras.layers.Input(shape=(None,10))
decoder=tf.keras.layers.GRU(10,return_sequences=True)
decoder_output=decoder(decoder_input,initial_state=state)
model=tf.keras.models.Model(inputs=[encoder_input,decoder_input],outputs=decoder_output)
model.compile(optimizer='Adam',loss='MeanSquaredError',metrics=['Accuracy'])
當我嘗試使用以下偽代碼擬合 model 時: model.fit(x=[encoder_data,decoder_data],y=decoder_truth)
, encoder_data
, decoder_data
和decoder_truth
都是嵌套的列表列表並且具有形狀(None,None,10)
, 和decoder_data
和decoder_truth
具有相同的形狀
代碼引發: ValueError: Failed to convert a NumPy array to a Tensor (Unsupported object type list).
Decoder_data 和 decoder_truth 應該與 GRU 的長度相同,為每個輸入提供一個 output。 此外,每批的時間步數應保持不變。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.