當前位置:成語大全網 - 成語詞典 - 知識圖譜-LSTM+CRF知識抽取實戰

知識圖譜-LSTM+CRF知識抽取實戰

本文的idea主要來源於LSTM+CRF的命名實體識別,在命名實體識別中,可以通過BIO或者BIOSE等標註進行人名、地名、機構名或者其他專有名詞的識別,那麽把三元組的主語、謂語、賓語(也可理解為:實體-關系-實體)三個部分當成三個需要識別的專有名詞,也就可以實現三元組的抽取了,基於此想法,具體實踐看看效果。

本文主要基於歷史文章中的人物關系抽取,數據來源於 和 /

keras

本次抽取本質上還是基於LSTM的壹個分類問題,至於CRF層,完全是為了保證序列的輸出嚴格性,因為CRF對於預測序列有較強的的限制性,比如B-PRESON後面只能為I-PERSON或者O之類的限制。

關於訓練數據,未找到合適的標註數據,只能自己標註了,如下:

主要是 低頻詞過濾,字與id的映射(word2id)、預測類別與id的映射(lable2id) ,具體實現方式各有不同,不做重點講解,但要特別註意未登錄詞的處理:

將輸入的文本,通過詞典,轉換成數字序列:

為了保證數據的維度壹致,進行句子填充

通過簡單的測試結果如下:

比較簡單的句子上都能取得比較好的成果,但是由於訓練數據不夠,還是會出現無法抽取到結果或者抽取錯誤的情況,比如:

本文主要針對歷史故事的人物關系進行抽取,從數據獲取,到數據標註,到模型訓練。由於時間和人力關系,很多方面都采取了簡單模式,比如數據標註,數據量遠遠沒有達到壹個量級,比如測試環節,主要還是通過人為觀察抽取結果來驗證是否準確,無法達到工業級別。但對於三元組的抽取,可以作為壹種參考和借鑒。