2017-08-03 162 views
1

這可能是太傻問...但是...Keras:嵌入層+ LSTM:時間維度

當使用LSTM初始Embedding層Keras(例如Keras LSTM-IMDB tutorial code)後,請問該怎麼Embedding層知道有一個時間維度?換句話說,訓練數據集中每個序列的長度是怎樣的?嵌入層如何知道我正在訓練的是句子,而不是單個單詞?它只是在訓練過程中推斷出來的嗎?

+0

Keras不知道,你這樣做。 lstm如何知道你所傳遞的是時間序列?你可以在圖像上訓練它,它不會知道,但是你會......不確定這是你要求的 – gionni

回答

1

Embedding層通常是第一或模型的第二層。如果它是第一個(通常是當你使用Sequential API) - 那麼你需要指定其輸入形狀或者是(seq_len,)(None,)。在的情況下時,它的第二層(通常,當您使用Functional API),那麼你需要指定它是一個Input層的第一層。對於這一層 - 您還需要指定形狀。在形狀爲(None,)的情況下,則根據饋送到模型的一批數據的大小推斷輸入形狀。