簡體   English   中英

用於在 Keras 中輸出的序列的 LSTM

[英]LSTM for sequence to output in Keras

我真的很困惑如何使用 keras 的 LSTM 解決/構建我的任務:

所以我有一個vectors sequence 每個序列都屬於某個輸出(在我的例子中是一個文檔)。

向量本身有 500 個特征(它們代表一個句子)。

序列(文檔中的句子數)各不相同..所以我假設需要填充序列,所以每個序列都一樣長,例如讓每 200 個向量長。

現在,由於每個sequence屬於某個輸出/文檔 (1 - 10.000),我該如何構建我的任務?

Keras將輸入作為(#samples, time_steps, input_dim) 所以我想它一定是(#documents, #sentences, #features_of_each_sentece) - 就我而言: (10.000, 200, 500)

正確的?

那么我如何訓練我的模型,以預測哪個句子最有可能屬於哪個文檔?

我的輸出向量是第一個文檔的單熱編碼 [1, 0, ...] 嗎,[0, 1, ..] 秒等? 或者我的輸出向量只是[1, 1, 1, ...., 2, 2, 2,...] ,所以我只有一個包含哪個序列屬於哪個文檔的輸出向量?

我真的很困惑..最后我想拿最后一層來為每個文檔都有一個向量表示。

所以它看起來像: 在此處輸入圖片說明

會不會像(?):

model = Sequential()
model.add(LSTM(50, input_shape=(10000,200,500)))
model.add(Dense(3))
model.add(Activation('softmax'))
model.compile(loss='categorial_crossentropy',opitimizer=some_optimizer)

如果模型的第一層是重復層,則不必指定長度。 然后,您可以使用掩碼來處理不同的序列大小。 有關 Keras 循環層(包括 LSTM)的更多信息,請查看文檔有關 LSTM 的簡單示例,您可以查看此處

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM