2019年清華在ACL提出ERNIE模型,同年,百度也提出一個ERNIE模型。本篇論文主要針對的是清華的模型医清。
BERT模型在很多NLP任務(wù)中取得很好的效果,但是BERT模型只是就事論事卖氨,缺乏對知識的理解会烙。因此ERINE模型在輸入上加入了sentence存在于知識圖譜中的實體信息。比如’Bob is a writer.’筒捺,在bert中原始的輸入為[‘Bob’, ‘is’, ‘a(chǎn)’, ‘writer’, ‘.’]柏腻,ERINE加入的額外輸入為[‘Q191000’, ‘UNK’, ‘UNK’, ‘Q1910001’, ‘.’ ]。這里的’Q191000’系吭,‘Q1910001’是’Bob’葫盼、 'writer’這兩個實體的id。對于包含多個token的實體村斟,比如Jim Henson贫导,只會和第一個token Jim進(jìn)行對齊,因為作者假設(shè)模型會自動將實體信息傳遞到token上蟆盹。
ERNIE在Bert訓(xùn)練基礎(chǔ)上孩灯,都增加了預(yù)測MASK實體,但是原本標(biāo)注的實體信息可能存在錯誤逾滥,因此ENRIE采用了以下三個策略:
5%概率隨機(jī)替換實體峰档,以期模型可以糾正錯誤的實體對齊
15%概率mask掉實體败匹,以期模型可以抽取出沒有標(biāo)注的實體
80%概率,保留原來的實體讥巡,以期能夠?qū)嶓w與知識進(jìn)行融合掀亩,提高NLU效果
該模型的架構(gòu)如下圖所示:
可以看到,該模型在T-Encoder上和bert是一樣的欢顷,但是K-Encoder上槽棍,ERNIE不僅包含原始的輸入,還假如了實體在知識圖譜中的信息抬驴。
根據(jù)原始代碼炼七,可以畫出如下的結(jié)構(gòu)圖:
引用:像ERNIE那樣做個有知識的BERT
輸入token以及entities的enbedding后,分別用5層bertlayer_sim(T-Encoder布持,即原始的transformer)豌拙、1層bertlayermix(K-Encoder)、6層bertlayer(K-Encoder)得到最終輸出题暖。
在普通任務(wù)上按傅,bert和ERNIE模型的輸入是一樣的,但在實體相關(guān)的任務(wù)上胧卤,ERNIE需要經(jīng)過特殊處理唯绍。Entity Typing任務(wù)中,在實體兩端加入ENT這個token灌侣;在Relation Classification任務(wù)中,在頭部實體兩端加入HD這個token裂问,在尾部實體加入TL這個token侧啼。
————————————————
版權(quán)聲明:本文為CSDN博主「weixin_43178406」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議堪簿,轉(zhuǎn)載請附上原文出處鏈接及本聲明痊乾。
原文鏈接:https://blog.csdn.net/weixin_43178406/article/details/91047913