一、任務
Named Entity Recognition,簡稱NER。主要用於提取時間、地點、人物、組織機構名。
二、應用
知識圖譜、情感分析、機器翻譯、對話問答系統都有應用。比如,需要利用命名實體識別技術自動識別用戶的查詢,然后將查詢中的實體鏈接到知識圖譜對應的結點上,其識別的准確率將會直接影響到后續的一系列工作。
三、流程圖
四、標注集
采用BMEWO標注體系進行標注
BME分別代表實體的首部、中部、尾部。W代表單獨是一個實體,O代表非實體。
五、NER的難點
1)不同場景不同領域下差異較大,比如新聞領域訓練出來的模型,應用到社交領域,效果就非常差勁。但是當前標注的數據集主要集中於新聞領域。
2)目前NER的標注語料較少,標注成本較大,如何從現有較少的語料中學習到更好的模型,或者能從大量未標記語料進行學習,給NER帶來了新的挑戰。
3)隨着時間的推移,出現大量未登錄詞。
六、用CRF進行識別效果不好怎么辦?
可以通過構建更多的特征,比如詞性、命名實體的指示代詞等,也就是訓練樣本集中添加更多的列,將詞與詞的前后關系更明白的告訴特征,模型就學習的更好,說白了就是多做一些特征工程,把隱藏的關系都展開。有了更多的特征列,特征模板也要相應更改一下,可以參照下面的第二個參考文獻。
例如:增加特征后,訓練語料變成如下形式(漢字、詞性、分詞邊界、地名指示代詞、組織名指示代詞、人名指示代詞,標注tag):
相應模板如下:
# Unigram U00:%x[-2,0] U01:%x[-1,0] U02:%x[0,0] U03:%x[1,0] U04:%x[2,0] U05:%x[-2,1] U06:%x[-1,1] U07:%x[0,1] U08:%x[1,1] U09:%x[2,1] U10:%x[0,0]/%x[0,1] U11:%x[0,0]/%x[1,0] U12:%x[0,0]/%x[-1,0] U13:%x[-1,0]/%x[0,1] U14:%x[0,0]/%x[1,1] U15:%x[-1,0]/%x[-1,1] U16:%x[-1,0]/%x[-2,0] U17:%x[-2,0]/%x[-2,1] U18:%x[1,0]/%x[2,0] U19:%x[-1,1]/%x[1,0] U20:%x[0,1]/%x[1,0] U21:%x[-2,1]/%x[-1,1] U22:%x[0,1]/%x[-2,1] U23:%x[-1,1]/%x[0,1] U24:%x[-1,1]/%x[1,1] U25:%x[0,1]/%x[1,1] U26:%x[0,1]/%x[2,1] U27:%x[1,1]/%x[2,1] U28:%x[-1,2] U29:%x[-2,2] U30:%x[-1,2]/%x[-2,2] U31:%x[0,1]/%x[-1,2] U32:%x[0,1]/%x[-2,2] U33:%x[0,1]/%x[1,2] U34:%x[0,0]/%x[-1,2] U35:%x[0,0]/%x[-2,2] U36:%x[0,0]/%x[1,2] U37:%x[0,1]/%x[-1,2]/%x[-2,2] U38:%x[-1,2]/%x[0,1]/%x[1,1] U39:%x[-1,2]/%x[-1,1]/%x[0,1] U40:%x[-1,2]/%x[0,1]/%x[0,0] U41:%x[-2,2]/%x[-1,2]/%x[0,1] U42:%x[-2,3]/%x[-1,3]/%x[1,3]%x[2,3] U43:%x[-2,4]/%x[-1,4]/%x[1,4]%x[2,4] U44:%x[-2,5]/%x[-1,5]/%x[1,5]%x[2,5] # Bigram B
參考文獻:https://www.cnblogs.com/lookfor404/p/9189429.html
參考文獻:https://www.jianshu.com/p/235d3aaf0929(該文是上述參考文獻的第二篇,里面詳細介紹了通過構建命名實體的指示代詞來提高模型的學習效果)
參考文獻:https://www.zybuluo.com/lianjizhe/note/1205311(該文是上述參考文獻的第三篇,里面又新加了常用詞特征,效果不錯)
參考文獻:https://www.jianshu.com/p/495c23aa5560 (BiLSTM+CRF)
參考文獻:https://www.jianshu.com/p/34a5c6b9bb3e (中文命名實體識別全總結,包括BiLSTM+CRF)