我正在嘗試使用keras來做實體關係抽取任務。如何使用keras獲得lstm圖層中特定時間步的輸出?
我的模型看起來像keras的示例代碼imdb_bidirectional_lstm.py
model = Sequential()
model.add(Embedding(max_features, 128, input_length=maxlen))
model.add(Bidirectional(LSTM(64)))
model.add(Dropout(0.5))
model.add(Dense(1, activation='sigmoid'))
但是,從IMDB分類任務不同的是關係的句子與特定的實體,有可能是幾個關係一個句子。所以我想要在BiLSTM層獲得特定實體字的輸出,然後連接它們。
例如,有一句話「在巴格達,一名攝影師在 美國坦克向巴勒斯坦酒店開槍時死亡。」這句話有幾個關係。所以如果我想獲得「攝影師」和「坦克」之間的關係,我需要在biLSTM層獲得「攝影師」和「坦克」的輸出,並將它們發送到MLP。那麼我應該怎麼做才能在biLSTM層獲得「攝影師」和「坦克」的輸出?我嘗試過圖層的輸出屬性,但它似乎不可行。
這可能聽起來很混亂。簡而言之,如何獲得lstm層中特定時間步的輸出?
任何建議將不勝感激。非常感謝你!