Entity Linking,或者Entity Normalization枪狂,Concept Linking等,通常指將自然語言中辜限,通常為科學(xué)文獻(xiàn)的各類概念,實體提及薄嫡,對應(yīng)到Ontology或是數(shù)據(jù)庫,例如wiki中的唯一ID。通過對Entity Linking近年來方法的閱讀杭措,主要總結(jié)為一下幾步,1. 對Token進(jìn)行表示鸳址,通常利用work2vec泉懦,glove等模型,也有利用Bert崩哩,ELMO等基于上下文調(diào)整token詞嵌入模型的邓嘹。2. 利用Token嵌入加權(quán)求和,Attention矿筝,卷積等方法得到Entity及Mention的嵌入。3. 利用余弦相似度等嵌入相似度評價指標(biāo)窖维,或神經(jīng)網(wǎng)絡(luò)等方法妙痹,得到與每個Mention最相似的Entity嵌入排序怯伊。4. 部分文章包含,使用外部信息利赋,例如知識圖譜提供的Entity嵌入猩系,或者其他上下文嵌入,Entity的description等嵌入來進(jìn)行Re-Rank寇甸,加強每個Mention最相似的Entity排序疗涉。這一問題同知識檢索系統(tǒng)系統(tǒng)所解決的Query對應(yīng)Key的問題大相徑庭咱扣,下面將整理近期讀過的關(guān)于Entity Linking的文章思路進(jìn)行總結(jié)匯總涵防,僅供項目推進(jìn)。
關(guān)鍵貢獻(xiàn)點及參考點用加粗注釋偏瓤。
一. Efficient One-Pass End-to-End Entity Linking for Questions. EMNLP 2020.
提出了一個Mention detection 和 Entity Linking 結(jié)合的Bert based bi-encoder model(ELQ Model).
Aims to:
2.1 identify the mention boundaries of entities in a given question.
2.2 and their Wikipedia entity椰憋。Methods step:
3.1 entity encoder利用Wikipedia中每個實體的描述構(gòu)建每個實體的嵌入,(考慮利用Concept的description或Ontology構(gòu)建實體嵌入)橙依。
3.2 question encoder為輸入的問題構(gòu)建 token-level的嵌入窗骑。
3.3 利用question encoder 中每個token的嵌入決定Mention boundaries,并且每個Mention candidate的嵌入為包含的token嵌入的平均嵌入慧域。
3.4 利用entity和mention嵌入的內(nèi)積進(jìn)行實體連接昔榴。
-
ELQ Model.
4.1 Question嵌入為通過Bert后的嵌入互订。Entity嵌入通過Wikipedia中該實體對應(yīng)網(wǎng)頁的Title和description初始化。
ELQ Model
4.2 分別用和
表示Mention起始及終止位置的狀態(tài)嵌入氮墨。
表示Mention所包含單詞的權(quán)重规揪。則p([i,j])表示該Mention出現(xiàn)的概率温峭,其中
表示在Question中的第
個單詞和第
個單詞作為Mention的起始位置和終止位置。
Mention Detection
4.3計算Question嵌入
和Mention嵌入
的相似度奸忽,
對分?jǐn)?shù)進(jìn)行softmax操作栗菜,利用神經(jīng)網(wǎng)絡(luò)最優(yōu)化Mention及Entity打分函數(shù)
。
Entity Disambiguation
4.4 構(gòu)建兩個損失函數(shù)富俄,為衡量所有Mention出現(xiàn)的概率損失的binary cross entropy loss蛙酪,
衡量Entity Liking的損失翘盖,總損失為鏈各個損失之和馍驯。
Trick
5.1 實際計算中玛痊,因為Wikipedia中Entity數(shù)量太多,Softmax不好計算擂煞,所以設(shè)計參數(shù)對
進(jìn)行限制对省,再計算每個保留下來的Mention10個最近的Entity計算softmax。
- 參考:
6.1 利用Wikipedia對每個Entity的title和description來初始化Entity嵌入蒿涎。作為參考,我們同樣可以將Concept的描述仓手,或者其他外部信息嗽冒,例如定義等來強化Entity嵌入,或者將Ontology的樹狀結(jié)構(gòu)加入嵌入信息补履⌒廖浚或利用包含Mention的句子來加強Mention嵌入干像,但是需要確保句子質(zhì)量,特別是利用Bert速客,ELMO這類模型時。
6.2 設(shè)計打分函數(shù)利用神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)Mention及Entity的Linking溺职。
6.3 最后Python package的輸出可以是Mention最相似的TopN的Entity浪耘。