摘要:小樣本關系抽取任務是自然語言處理中的熱點問題,旨在使用低成本的標注數據訓練關系抽取模型。目前廣泛使用的原型網絡存在類原型表達不準確、不完整等問題。為了克服該問題,提出一種自適應膠囊網絡(adaptive capsule network,ACNet),ACNet借助膠囊網絡的歸納能力生成類原型,并在此基礎上對動態路由過程進行評估,使其面對不同樣本能自適應調整網絡參數。同時,在ACNet中引入一種記憶迭代機制,幫助模型快速確定類表示。在小樣本關系數據集FewRel上進行實驗驗證得出,ACNet能夠有效處理小樣本關系抽取任務。
關鍵詞:關系抽取; 小樣本; 自適應; 膠囊網絡; 動態路由
中圖分類號:TP391文獻標志碼:A
文章編號:1001-3695(2022)08-020-2357-06
doi:10.19734/j.issn.1001-3695.2021.12.0702
Adaptive capsule network for few-shot relation extraction
Zhang Xiaoming1a, Dou Quansheng1b,2, Chen Shuzhen1b, Tang Huanling1b,2
(1. a.School of Information amp; Electronic Engineering, b.School of Computer Science amp; Technology, Shandong Technology amp; Business Univer-sity, Yantai Shandong 264000, China; 2.Shandong Future Intelligent Computing Collaborative Innovation Center, Yantai Shandong 264000, China)
Abstract:The few-shot relationship extraction task is a hot issue in natural language processing. It aims to train the relationship extraction model using low-cost label data. The widely used prototype network has some problems, such as inaccurate and incomplete expression of class prototypes. This paper proposed an adaptive capsule network to solve this problem. ACNet generated a class prototype with the inductive capability of the capsule network. On this basis, it evaluated the dynamic routing process so that it could adjust network parameters adaptively to different samples. At the same time, it introduced a memory iteration mechanism in ACNet to help the model determine the class representation quickly. Experiments on a few-shot relational dataset FewRel show that ACNet can handle few-shot relational extraction tasks.
Key words:relationship extraction; few-shot; adaption; capsule network; dynamic routing
0引言
由自然語言構成的文本數據是當前大數據的重要組成部分,在文本中,如人名、地名等具有特殊意義的詞匯被稱為實體,實體之間通常存在著某種關系,如語法關系、語義關系等。所謂實體關系抽取(entity relation extraction),就是指在實體識別的基礎上,對實體之間存在的上述關系進行有效的識別和判斷。實體關系抽取是正確理解文本語義的關鍵,也是文本挖掘和信息抽取的關鍵基礎性任務,其效果對文本摘要、自動問答[1]、機器翻譯[2]、語義網標注、知識圖譜[3]等自然語言處理下游任務有著重要的影響,一直是自然語言處理(natural language processing,NLP)研究領域的重要研究內容和熱點研究問題。
近年來,深度學習的興起為關系抽取任務提供了新的解決方案,這方法多采用監督學習方式,其效果對樣本數據存在較強依賴。然而在現實場景中,數據量往往難以滿足大規模深度網絡訓練的需要。為了避免數據收集帶來的人力和時間成本,一些學者提出小樣本學習(few-shot learning,FSL)[4]的概念,探索深度學習模型在小樣本條件下泛化能力。關于小樣本學習的早期研究,多集中于數據增強[5]和正則化技術,通過這兩種技術來緩解由數據稀疏引起的過擬合問題。有學者受人類學習過程的啟發,提出了元學習(meat-learning,ML)[6]的概念。ML通常將小樣本學習的訓練過程分解為若干個元任務,元任務在不同 mini-batch 之間切換并從中提取一些可遷移的知識。因此,few-shot模型只需使用少量標記樣本可以對新類別進行分類。
然而,現有的小樣本學習方法仍面臨許多重要問題,包括強先驗方法的弱移植性[7]、復雜的任務梯度轉移[8]以及微調目標問題[9]。文獻[10,11]結合了非參數方法和度量學習,為其中一些問題提供了解決方案。非參數方法的優勢在于能夠快速吸收新樣本,且模型只需學習樣本的表示和度量,這在一定程度上避免了過擬合。但同一類中的實例是相互關聯的,并且有它們的統一分數和特定分數。在之前的研究中,類級表示多通過簡單地求和或平均支持集樣本特征來計算。鑒于實例樣本的多樣性,這種方法所獲得的類級表示往往會受到不同形式樣本的噪聲影響,且現有小樣本學習算法大多不會對支持集進行微調。當增加支持集的大小時,數據擴充帶來的改進也會被更多的樣本級噪聲削弱。
2017年Sabour等人[12]提出了膠囊網絡,該網絡具有解決類表達問題的潛力,膠囊網絡將樣本向量封裝為膠囊,并通過非參數的動態路由算法(dynamic routing,DR)對部分和整體之間的內在空間關系進行編碼。類似地,在小樣本任務中,將樣本視為部分,類視為整體,DR算法編碼的類表示更具代表性。
本文在膠囊網絡的基礎上,提出一種自適應膠囊網絡,旨在從少量支持集樣本中發掘樣本類別的廣義類表示。在膠囊網絡中,DR算法的路由次數決定了部分到整體的層次關系,現有的路由算法對所有樣本使用相同的路由次數,面對復雜的實例環境難以有效做到類歸納,ACNet對膠囊網絡中的動態路由算法進行改進,提出一種自適應歸納算法(self-adaption inductive algorithm,SIA),SIA通過評估路由算法在實例樣本上的執行過程,為不同類樣本分配相應的路由次數,實現路由參數的自適應調整。同時,為了降低不同樣本所帶來的噪聲干擾,ACNet引入了一種可訓練的記憶模塊幫助路由過程快速確定類表示,記憶模塊中包含不同類的類特征,這些類級表示作為模型的學習經驗,有效緩解了樣本量過少帶來的路由過程不準確問題。
綜上所述,本文主要貢獻包括:
a)提出一種自適應膠囊網絡。該網絡將記憶保存機制與動態路由算法結合,能夠快速適應支持集樣本,并在小樣本場景中有效歸納樣本類表示。
b)提出一種自適應歸納算法。該算法在動態路由的基礎上引入一種路由過程的評估機制,使模型能夠針對不同樣本自適應地分配路由參數,緩解因樣本多樣性導致的類特征難聚合、表達不完善等問題。
將本文方法在FewRel數據集上進行實驗,結果證明了本文研究方法的有效性,對小樣本場景下的關系抽取任務具有較強的指導意義和應用價值。
1問題描述
為了論述上的便利和準確,以下就實體關系抽取任務給出形式化描述。
設W={wi}mi=1和E={ei}ni=1分別為單詞符號集合和實體標記集合,W上的文本t可視做W中元素構成的有限長度序列:t=wt1wt2…wth。在文本中,具有特殊語義的一個或一組單詞符號被稱為實體,每個實體于E中標記對應:t=wt1…wti…wtjep…wtu…wtveq…wth。其中,wti…wtj和wtu…wtv分別對應于實體ep和eq。實體識別和標注是NLP處理的另一項重要任務,在此不作討論,本文在實體識別的基礎上進一步分析語句中兩個實體之間的關系。
實體間的聯系構成了一個關系集合,記做R={rj}kj=1,文本t中的一對實體ep和eq的關系可用三元組〈ep,r,eq〉表示,其中r∈R為目標關系集的一個元素。實體關系抽取任務的目的是從自然語言文本中抽取出這樣的關系三元組,為更深入的文本挖掘和理解奠定基礎。以句子“London is the capital of the UK”為例,其中“London”和“UK”為兩個反映地名的實體,兩個實體間存在語義關系“capital of ”,〈London,capital of,UK〉即為一個實體關系三元組。
小樣本實體關系抽取任務是針對某些任務領域關系樣本數量稀少,無法開展大規模模型訓練的情況。在該場景下,給定關系集合R和只包含少量樣本的支持集S,要求模型能夠準確預測查詢樣本語句x中實體對ep和eq間的關系。其中,支持集S和查詢集Q均通過對數據集D采樣獲得,即在數據集D中隨機選擇C個類別,并在每個類別中隨機選擇K個樣本構成支持集:S={sc,k},c=1,…,C,k=1,…,K。另外在C個類別的其余樣本中隨機選擇R個樣本構造查詢集:Q={sq},q=1,…,R。這種構建支持集與查詢集的任務方式也被稱做C-way-K-shot。在小樣本學習中,支持集中的實例數量(即C×K個)通常很少,關系分類模型需要在支持集的少數示例中學習樣本特征,并預測查詢實例x的關系類別。
2自適應膠囊網絡模型
本文提出了用于小樣本關系分類的自適應膠囊網絡模型,模型共包含基類數據sbasei、支持集sc,k和查詢集sq三個輸入,其中sbasei由訓練集Dtrain生成,sc,k和sq以C-way-K-shot任務為標準在Dtrain中隨機抽取獲得。ACNet模型四個模塊如圖1 所示。
1)編碼模塊采用預訓練的BERT[13]模型分別對基類數據sbasei、支持集sc,k和查詢集sq進行編碼,分別得到基類向量ei、支持向量ec,k和查詢向量eq。
2)自適應歸納模塊(adaptive induction module,AIM)采用自適應歸納算法(SIA)對支持集向量sc,k進行歸納,SIA在動態路由算法的基礎上,加強對路由過程的評估,針對不同的支持向量自適應調整路由參數,經過多次路由迭代,獲得支持集的嵌入向量e′c,k。
3)查詢增強模塊(query enhancement module,QEM)復用自適應歸納算法,在e′c,k的基礎上對查詢向量eq進行調整,獲得包含查詢信息的類表示ec,用于后續eq的分類。
4)分類模塊采用余弦相似度量計算查詢向量eq與類表示ec的匹配分數,預測查詢向量類別。
2.1編碼模塊
選擇預訓練的BERT模型作為編碼工具,其模型架構是基于Transformer[14]的多層雙向編碼器。在關系語句中插入[cls]和[sep]作為開頭和結尾的標志符號,并使用[cls]輸出的d維向量作為給定實例關系語句w的向量表示,整個過程可以表示為e=E(w|θ),其中θ為BERT的模型參數。預訓練的BERT模型提供了強大的上下文相關句子表示,可用于各種目標任務,并且適用于小樣本關系分類。
使用WiKi文本對BERT模型進行預訓練,為了能夠適應小樣本關系分類任務,在訓練集Dtrain中隨機取Cbase個類別的數據組成基類樣本{sbasei}Cbasei=1用于對BERT編碼器進行微調。對于每個輸入sbasei,編碼器E(sbasei|θ)輸出d維向量ei。同時有矩陣M=[e1,e2,…,ei,…,eCbase] ,M作為記憶矩陣為每個基類樣本保存一個記憶特征向量,為了保證記憶特征的有效性,E(si|θ)和M都將在模型訓練過程中進一步調整,具體細節將在2.2節中闡述。
2.2自適應歸納模塊
AIM旨在利用記憶矩陣M對支持集進行調整,將多個記憶特征和支持向量輸入到AIM中,經過自適應歸納算法(SIM)獲得每個支持向量的嵌入向量,DR算法可以實現多向量到單一向量歸納的功能,SIM在此基礎上改進了路由過程的評估方法,并依照其評估結果自適應地為不同樣本分配路由參數,獲得的嵌入向量能夠有效整合記憶特征中的信息,適應支持集的能力更強。
具體地,支持集中的實例首先被BERT編碼為樣本向量{ec,k}Kk=1,然后輸入到AIM中處理。在給定記憶矩陣M和支持樣本向量ec,k的情況下,AIM旨在使用記憶矩陣M來調整支持向量,整個過程可以概括為e′c,k=AIM(M,ec,k)。
在膠囊網絡中,存在l和l+1兩個膠囊層,低級膠囊分布在膠囊層l上,通過動態路由算法將多個低級膠囊以加權和的方式路由到膠囊層l+1上,并獲得高級膠囊vj,鑒于膠囊網絡部分到整體的編碼特性,在小樣本學習中,將低級膠囊視為樣本,而高級膠囊代表樣本類別特征,因此在本文中,對于輸入AIM的每個mi∈M和ec,k進行標準矩陣轉換,并應用squash函數[12]進行歸一化:
i=squash(Wjmi+bj)(1)
c,k=squash(Wjec,k+bj)(2)
其中:轉換權重Wj和參數bj在輸入中共享,需要在網絡中學習得到;squash函數為非線性壓縮函數,目的是在保持向量方向不變的條件下,將其長度壓縮至[0,1],函數通式為
squash(x)=‖x‖21+‖x‖2 x‖x‖(3)
在膠囊網絡中,高級膠囊vj由低級膠囊的加權和計算得到
vj=∑ni=1(cij+pij)i(4)
其中:cij為不同等級膠囊間的路由權重;pij=tanh(PCCs(i,c.k)),PCCs[15]用于度量基類類特征i和支持向量c.k間的相似程度,具體如式(5)所示。
PCCs=Cov(x1,x2)σx1σx2(5)
其中:Cov為協方差;σx1和 σx2分別為向量x1和x2的標準差。由于PCCs的值分布在[-1,1]內,所以可用于增強或懲罰路由參數cij。
在傳統DR算法中,路由次數r的大小決定了不同膠囊層之間的層次關系,在強監督環境中,網絡在開始訓練時往往需要選取合適的r值,并將其應用在所有樣本上,但在小樣本RE任務中,數據規模不足且關系實例多樣復雜,不同樣本達到收斂要求的路由次數也不相同,固定的r值難以滿足任務需要。因此,為了評估路由過程在小樣本實例上的性能,并實現路由次數的自適應調整,本文提出一種自適應歸納算法來解決此問題。SIA將路由過程描述成最小化負一致性分數(negative agreement score,NAS)的優化問題:
minc,v f(u)=-∑i,jcij〈vj,i〉
s.t.i,j:cijgt;0,∑jcij=1(6)
NAS的目的是將更高的cij值分配給更加接近的〈vj,i〉對,但鑒于向量的高維特征,NAS函數的計算一直是一個開放問題。核密度估計(kernel density estimation,KDE)是一種非參數密度估計方法,不需要假設一致對是從參數分布中提取的,這為解決NAS問題提供了可能。通過KDE將式(6)轉換成如下形式:
minc,m f(u)=-∑i,jcijk(d(vj,i))(7)
其中:d為歐氏距離;k為Epanechnikov[16]核函數。
k(x)=1-x x∈[0,1)0x≥1 (8)
均值漂移(mean shift)[17]是一種基于密度梯度上升的非參數方法,可用于最小化NAS函數f(u)以解決KDE問題:
f(u)=∑i,jcijk′(d(vj,i))d(vj,i)v(9)
確定cτij的值后,對高級膠囊vτ+1j進行更新:
vτ+1j=∑i,jcτijk′(d(vj,i))i∑i,jk′(d(vj,i))(10)
高級膠囊vτ+1j中聚合了記憶特征的信息,通過取平均的方式對支持向量c,k進行調整:
c,k←c,k+vj2(11)
cτ+1ij的值可以使用標準梯度下降進行更新:
cτ+1ij=cτij+α·(k(d(vτj,mi))+pij)(12)
其中:α為步長;k(d(vτj,mi))為不同等級膠囊間的相似度估計;pij為k(d(vτj,mi))的修正量,代表記憶特征向量mi與支持向量ec,k的相似程度,相似程度越高對應的記憶特征在cij中的比重越大,反之則會削弱不相關的記憶特征占比。通過估計值加修正量的方式更新膠囊權重cij,保證生成高級膠囊vj時能夠有效聚合記憶特征,并在此基礎上實現對支持向量的調整。
為了解決路由算法在實例級樣本上不會收斂的問題,SIA可以根據單個實例樣本NAS取值自行調整路由迭代次數,詳細過程如算法1所示。步驟a)代表遍歷所有記憶特征mi和支持向量ec,k,并在步驟b)和c)分別對其進行歸一化計算;步驟e)代表采用加權和的方式計算類特征vj的初值,算法在步驟f)進入路由迭代循環;步驟h)代表vj的更新過程,具體見式(6)~(10),步驟i)和j)表示在獲得最新的vj后,路由權重cij和支持向量ec,k的調整更新方式;步驟k)代表NAS函數的取值計算;步驟l)為判斷語句,比較NAS更新前后的差值與閾值β大小,若|NAS-Last_NAS|gt;δ,則表明NAS函數不滿足收斂標準,算法進入步驟o)和p) ,分別對修正量pij和NAS進行更新,并重新返回步驟f)進行下一輪的路由迭代,直至|NAS-Last_NAS|lt;δ,即NAS已具備收斂條件,退出步驟f)的while循環,進入步驟q)輸出自適應嵌入向量e′c,k,算法結束。
算法1自適應歸納算法(SIA)
輸入:超參數α、β;路由權重cij=1/n;支持向量ec,k;記憶矩陣M=[m1,m2,…,mn]。
輸出:自適應嵌入向量e′c,k。
a) for all mi,ec,k do
b)i=squash(Wjmi+bj)
c)c,k=squash(Wjec,k+bj)
d)pij=tanh(PCCs(i,c,k))
e)vj=∑ni=1(cij+pij)ij
f) while true do
g)cij←softmax(cij)
h)vj←∑icijk′(d(vj,i))·i∑ni=1k′(d(vj,i))
i)for all i:cij←cij+α·(k(d(vj,i))+pij)
j)for all k:c,k←c,k+vj2
k)NAS=log(∑i,jcijk(d(vj,i)))
l)if |NAS-Last_NAS|lt;δ then
m)break
n)else
o)for all i,k:pij=tach(PCCs(i,c,k))
p)Last_NAS←NAS
q) return e′c,k=vj
2.3查詢增強模塊
為了避免實例多樣性所帶來的噪聲干擾,在上述兩個模塊獲得的查詢向量eq以及嵌入向量{e′c,k}Kk=1的基礎上,構建查詢增強模塊。QEM目的是在嵌入向量中發掘與查詢向量的相似部分,以此構造包含查詢信息的類級向量。由于SIA具有自適應的能力,可以增強相似地嵌入和查詢向量,并對不相關的向量權重進行削弱。因此,通過復用SIA在支持向量的基礎上對查詢集向量進行適應調整,并從與查詢集更加相關的嵌入向量中得到類級別的向量表示:
ec=AIM({e′c,k}Kk=1,eq)(13)
2.4相似度分類器
在最后的分類階段,對基類向量ei和查詢向量eq進行分類,獲得所有類別的概率分布。傳統神經網絡分類器是在提取特征向量e∈Euclid ExtraaBpd之后,使用內積sk=eTw*k計算每個類別k∈[1,K*]的初始得分,其中w*k為權重向量;然后使用softmax函數計算特征向量在所有K*類上的分類概率。然而,這種方法不再適用于樣本中包含新類的小樣本學習。本文使用余弦相似度計算原始分類分數:
sk=τ·cos(ei,w*k)=τ·Ti*k(14)
其中:i和*k是l2-正則化向量;τ是可學習的參數。基類向量ei在Cbase個類別上的分類概率為
s=softmax(sk)(15)
在小樣本關系分類場景中,將查詢向量eq和類表示ec統一輸入分類器,得到小樣本學習部分每個新類的分類得分:
sq,c=τ·cos(eq,ec)=τ·Tqc(16)
sq={sq,c}Cc=1(17)
查詢向量eq在C個新類的分類概率為
q=softmax(sq)(18)
3模型學習過程
在小樣本關系分類任務中,訓練集Dtrain和測試集Dtest具有不同的標簽空間,即Rtrain∩Rtest=,每個數據集的樣本可表示為(x,p,y)的形式,其中包含t個單詞的關系實例語句,p=(p1,p2)表示中兩個標注實體的位置,為實例語句中實體對間的關系類別標簽。
ACNet模型在訓練時采用Vinyals等人[18]提出的基于元任務的訓練策略。在該策略中,小樣本的學習過程被分成了元訓練和元測試兩個階段。在元訓練階段,ACNet模型將面對許多獨立的監督任務T(即元任務),不同元任務間的類別不完全相同。每個T都以C-way-K-shot任務為標準,在訓練集Dtrain上隨機構造,包括支持集ST和查詢集QT。將ST中的樣本輸入ACNet模型進行訓練,并使用QT中的樣本對模型進行測試,面對每個元任務T,采用如下交叉熵損失推動模型進行訓練:
L(ST,QT)=-1C∑Cc=11R∑Rqyqlog(q)(19)
其中:C代表ST中的樣本類別;R為QT中的樣本數量;yq和q分別表示樣本真實標簽和模型預測標簽。在元測試階段,測試集Dtest的設置與訓練時相同。測試集與訓練集合具有不同的標簽空間,因此,新任務中的樣本類別是之前學習過的任務中沒有出現的,ACNet在訓練過程中不斷學習新的任務,在經過大量的不同任務訓練之后,能夠更好地處理任務之間的不同并忽略特定任務的特征,在面對新的小樣本任務時,具有更強的泛化能力。
4實驗
4.1數據集、評估指標
本文在小樣本關系分類數據集FewRel[19,20]上對模型進行評估。FewRel數據集分為1.0與2.0兩個版本,FewRel 1.0使用Wikipedia作為數據源,首先通過遠程監督方式生成,然后通過手工去除噪聲數據。最終FewRel 1.0數據集包含100個關系,每個關系有700個實例。每個句子的平均token數量為24.99,共有124 577個唯一標記。100個關系類被分為三部分,其中64個關系類用于訓練,16個用于驗證和20個用于測試。FewRel 2.0沿用1.0的訓練集,再此基礎上增加生物醫學文獻數據庫PubMed作為測試集,共包含25個關系類別,每個關系類別有100個實例,同時采用SemEval-2010任務8[21]作為驗證集。表1描述了FewRel數據集中的數據格式,其中包括關系ID、樣本語句中包含的單詞(tokens)、頭尾實體及其位置的標注。
實驗部分的樣本設置以C-way-K-shot任務為標準,具體樣本案例如表2所示,鑒于篇幅有限,僅描述2-way-1-shot樣本實例,其中下畫線字體代表頭實體,加粗字體代表尾實體,訓練與測試階段的樣本分別來自FewRel 1.0訓練集和FewRel 2.0測試集,本文主要研究四種小樣本學習配置,即5-way-1-shot、5-way-5-shot、10-way-1-shot、10-way-5-shot。實驗結果均為10次訓練重復的平均值和標準差,并使用20 000個獨立樣本進行測試。
4.2實驗驗證
為了驗證提出的ACNet模型在小樣本RE任務中的有效性,并評估不同模塊對網絡的貢獻,進行以下三組對比實驗:
a)以原型網絡(PROTO)為基線模型,與所提模型進行對比,為了保證實驗的準確性,使用BERT替換PROTO中的編碼模塊。實驗中的參數均保持一致,采用FewRel 1.0的測試集,分別在5-way-k-shot和10-way-k-shot任務上進行實驗,實驗結果如圖2所示。
圖2展示了5-way和10-way任務下,隨著shot數量增長兩個模型準確率的變化曲線,其中灰色柱狀圖部分代表ACNet對比基線模型的提升效果。由圖可知,在K=1的極端小樣本環境下,模型的提升效果最為明顯,5-way任務中相比PROTO性能提升7.83%,10-way任務上提升6.27%。PROTO通常需要一定數量的樣本來確定同類樣本的質心,并以此作為該類的原型向量,樣本數量較少的情況下類原型難以準確反映類別特征,而在ACNet中記憶矩陣包含Cbase個類原型,模型在訓練期間通過學習類原型的共性,實現樣本由部分到整體的歸納。同時,記憶矩陣會在訓練過程中對類原型向量進行更新,因此隨著樣本量的增加,依舊存在一定數量的性能提升。
b)以CapsNet為基線模型,將路由次數r設置為3和5,在FewRel 1.0訓練集中隨機抽取5 000個樣本進行訓練。圖3記錄了CapsNet在兩種路由次數設置下的損失曲線,可以觀察到兩種配置下的CapsNet均達到了系統級收斂。圖4反映了單個樣本在不同路由次數下的NAS曲線,當r=3或5時NAS曲線仍呈下降趨勢,這證明預先設置的路由迭代次數雖然能夠使模型滿足系統級收斂,但卻難以滿足模型在實例級的收斂需求,這增加了路由過程的不確定性。
與CapsNet不同,ACNet通過引入的NAS函數來判斷樣本所需的路由迭代次數,圖5記錄了在10 way-1 shot任務設置下,達到NAS收斂標準時所需的路由迭代次數,圖中的灰色和黑色水平線分別代表3次和5次的迭代次數設置,可以觀察到不同類樣本所需的迭代次數并不相同,最高需要9次路由迭代,最低則僅需要2次。數據多樣性造成了收斂標準的差異,ACNet的優勢在于針對不同樣本的NAS分數,自適應調整路由迭代次數,在保證模型整體收斂的同時,滿足在實例樣本上的擬合標準,從而降低路由過程的不可控風險。
c)以原型網絡為基線模型,對比PROTO增加QEM模塊前后和ACNet模型刪除QEM模塊前后的性能變化。PROTO在添加QEM模塊后,將支持集樣本和查詢樣本輸入QEM模塊中,以此獲得每個類別的類特征。同時,ACNet在刪除QEM后采用取平均的方式獲得類特征,其余部分均保持不變。實驗使用5-way-1-shot任務配置,并采用FewRel 1.0測試集進行驗證。
如表3所示,PROTO+QEM對比PROTO性能提升4.21%, PROTO通過類內所有樣本向量的加和平均獲得類特征,當類內樣本較少時,其向量分布存在偏差,無法準確代表樣本類別,這進一步影響了查詢樣本的分類,造成準確率下降。ACNet-QEM對比ACNet精度下降2.07%,這證明QEM具有比PROTO更強的樣本歸納能力,盡管PROTO+QEM采用QEM模塊獲取類特征,但ACNet-QEM的性能依舊強于PROTO+QEM,上升幅度在13%左右,這證明類特征的編碼方式并不是左右性能的唯一指標,本文認為AIM模塊對結果的影響更加明顯,AIM旨在使用記憶矩陣對支持集向量進行調整,記憶矩陣的引入使得ACNet在不同元任務間切換時有效保留學習經驗,模塊自適應的特性也更加契合小樣本學習,實驗證明了AIM和QEM的有效性。
4.3模型比較
4.2節驗證了ACNet中不同模塊的作用,為了進一步檢查ACNet的整體模型表現,本文對比了近幾年幾種常用的小樣本基準模型,其中包括:
a)Meta-Net。Munkhdalai等人[8]于2017年提出元網絡模型,Meta-Net包含基學習器和帶有記憶模塊的元學習器兩部分,通過兩部分的交互驅動模型理解非目標任務空間,減少模型對樣本數量的需求。
b)GNN。Garcia等人[22]提出的小樣本圖卷積網絡模型,GNN將每個支持實例或查詢實例視為圖中的一個節點,并將其標簽信息嵌入到節點表示中,依靠圖卷積將基類別的分類器信息傳遞給新類別的分類器中,實現小樣本的標簽傳播。
c)SNAIL。Mishra等人[23]于2018年提出的一種元學習框架,SNAIL將時序卷積網絡和注意力機制相結合,利用時序卷積從已有經驗中挑選特定信息特征,并通過注意力機制完成信息聚合,達到快速學習小樣本任務的目的。
d)PROTO。Snell等人[10]于2017年提出原型網絡,PROTO通過平均支持樣本獲得樣本的類別中心,并將新樣本與類別中心進行距離度量,以此實現少量樣本下的分類任務。
e)BERT-PAIR。Gao等人[20]于2019年提出一種序列匹配模型,BERT-PAIR將每個查詢實例與所有支持實例進行配對,并將每個實例對連接為序列輸入到BERT模型中,獲得表示同類實例的概率。
f)DBIN。Geng等人[24]于2020年提出動態內存引導網絡,DBIN將內存模塊和動態路由算法相結合,模型通過調整和聚合兩個步驟在少量支持樣本中獲得類別表示,最后與查詢樣本比較完成關系分類。
實驗結果如表4所示,其中Meta-Net、GNN、SNAIL、PROTO(CNN)等網絡模型使用CNN進行編碼,輸入關系樣本語句,并將每個單詞表示轉換為單詞嵌入和位置嵌入的整合,整個關系實例表示作為輸入向量。在CNN中輸入向量經過卷積層、最大池化層和非線性激活層得到最終的語句嵌入。除了使用CNN編碼結構外,PROTO(BERT)、BERT-PAIR、DMIN以及本文ACNet模型均采用BERT作為編碼器。從表1中可以看出,PROTO(BERT)對比PROTO(CNN)存在顯著的性能提升,在FewRel 1.0數據集的四個任務上平均提升幅度為4.72%,在FewRel 2.0數據集上,平均的性能提升幅度為3.09%。這證明BERT編碼結構所生成的語句特征更加豐富,能夠有效應對小樣本任務。
同時,對比FewRel 1.0數據集,所有的模型在FewRel 2.0數據集上都存在性能大幅降低的現象,FewRel 2.0的測試集來自生物醫學領域,這說明小樣本模型難以快速適應跨領域樣本,模型的經驗遷移能力還存在較大的提升空間。
在FewRel 1.0數據集上,本文ACNet模型優于目前最優的BERT-PAIR模型,在FewRel 2.0的兩種one-shot任務上,對比BERT-PAIR也分別取得了2.19%和2.1%的提升,而在其他的兩種5-shot任務上,ACNet也達到了與BERT-PAIR相似的性能。BERT-PAIR是一種基于匹配的小樣本方法,通過計算查詢集與支持集的匹配程度完成分類,但鑒于樣本的特征多樣性,同類樣本的分布差異較大時會導致模型性能下降,而ACNet對支持集樣本采用先調整后聚合的方式,SIA針對每個樣本進行路由評估,調整后的樣本能夠有效減少類內分布差異,自適應的特性使樣本在實例級別上獲得收斂,因此面對跨領域的樣本,ACNet仍具有一定的優勢。
綜合本章實驗結果,本文ACNet模型在FewRel數據集的多數任務上都優于目前模型,實驗驗證了本文方法的有效性,同時也說明類特征建模的方法在小樣本任務中的優勢。
5結束語
本文提出了一種自適應膠囊網絡,并將其應用在小樣本關系分類中。ACNet利用記憶矩陣幫助模型歸納類表示,并通過自適應歸納算法完成對支持集向量自適應調整,使模型能夠發現新的未知類。在FewRel數據集上,與當前五個代表性模型相比,在FewRel 1.0的四種小樣本任務上取得了最好的結果,而在FewRel 2.0的兩種10-way任務上具有與目前最優模型BEER-PAIR的相似性能。目前ACNet還存在模型結構復雜、訓練時間長等問題,在未來的工作中將進一步研究模型規模對小樣本關系抽取任務的影響,探索精簡模型結構的可能。
參考文獻:
[1]楊穗珠, 劉艷霞, 張凱文, 等. 遠程監督關系抽取綜述 [J]. 計算機學報, 2021, 44(8): 1636-1660. (Yang Suizhu, Liu Yanxia, Zhang Kaiwen,et al. Survey on distantly-supervised relation extraction[J]. Chinese Journal of Computers, 2021, 44(8): 1636-1660.)
[2]劉洋. 神經機器翻譯前沿進展 [J]. 計算機研究與發展, 2017, 54(6): 1144-1149. (Liu Yang. Recent advances in neural machine translation[J]. Journal of Computer Research and Development, 2017, 54(6): 1144-1149.)
[3]付雷杰, 曹巖, 白瑀, 等. 國內垂直領域知識圖譜發展現狀與展望 [J]. 計算機應用研究, 2021,38(11):3201-3214. (Fu Leijie, Cao Yan, Bai Yu, et al. Development status and prospect of vertical domain knowledge graph in China[J].Application Research of Computers, 2021,38(11):3201-3214.)
[4]Han Xu, Gao Tianyu, Lin Yankai, et al. More data, more relations, more context and more openness: a review and outlook for relation extraction [C]// Proc of the 1st Conference of the Asia-Pacific Chapter of the Association for Computational Linguistics and the 10th International Joint Conference on Natural Language Processing. 2020: 745-758.
[5]Salamon J, Bello J. Deep convolutional neural networks and data augmentation for environmental sound classification [J]. IEEE Signal Processing Letters, 2017, 24(3): 279-283.
[6]Huisman M, VanRijn J, Plaat A. A survey of deep meta-learning [J]. Artificial Intelligence Review, 2021, 54(6): 4483-4541.
[7]Qu Meng, Gao Tianyu, Xhonneux L P, et al. Few-shot relation extraction via Bayesian meta-learning on relation graphs [C]// Proc of International Conference on Machine Learning. 2020: 7867-7876.
[8]Munkhdalai T, Yu Hong. Meta networks [C]// Proc of the 34th International Conference on Machine Learning. 2017: 2554-2563.
[9]Qi Hang, Brown M, Lowe D. Low-shot learning with imprinted weights [C]// Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE Press,2018: 5822-5830.
[10]Snell J, Swersky K, Zemel R. Prototypical networks for few-shot learning [C]// Proc of the 31st International Conference on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc., 2017: 4080-4090.
[11]Sung F, Yang Yongxin, Zhang Li, et al. Learning to compare: relation network for few-shot learning [C]// Proc of IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE Press,2018: 1199-1208.
[12]Sabour S, Frosst N, Hinton G. Dynamic routing between capsules [C]// Proc of the 31st International Conference on Neural Information Processing Systems.Red Hook, NY: Curran Associates Inc., 2017: 3859-3869.
[13]Devlin J, Chang Mingwei, Lee K, et al. BERT: pre-training of deep bidirectional transformers for language understanding [C]//Proc of Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Stroudsburg, PA: Association for Computational Linguistics,2019:4171-4186.
[14]Vaswani A, Shazeer N, Parmar N et al. Attention is all you need [C]// Proc of the 31st International Conference on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc., 2017:6000-6010.
[15]Yang Zhengxin, Zhang Jinchao, Meng Fandong, et al. Enhancing context modeling with a query-guided capsule network for document-level translation [C]// Proc of Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing. Stroudsburg, PA: Association for Computational Linguistics, 2019: 1527-1537.
[16]Jones M, Keynes M. On kernel density derivative estimation [J]. Communications in Statistics-Theory and Methods, 1994, 23(8): 2133-2139.
[17]Comaniciu D, Meer P. Mean shift: a robust approach toward feature space analysis[J]. IEEE Trans on Pattern Analysis and Machine Intelligence, 2002, 24(5): 603-619.
[18]Vinyals O, Blundell C, Lillicrap T, et al. Matching networks for one shot learning [C]// Proc of the 30th International Conference on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc.,2016:3637-3645.
[19]Han Xu, Zhu Hao, Yu Pengfei, et al. FewRel: a large-scale supervised few-shot relation classification dataset with state-of-the-art evaluation [EB/OL]. (2018-10-26). http://doi.org/10.48550/arxiv.1810.10147.
[20]Gao Tianyu, Han Xu, Zhu Hao, et al. FewRel 2. 0: towards more challenging few-shot relation classification [EB/OL]. (2019-10-16). https://arxiv.org/abs/1910.07124
[21]Hendrickx I, Kim S, Kozareva Z, et al. SemEval-2010 task 8: multi-way classification of semantic relations between Pairs of nominals [C]// Proc of the 5th International Workshop on Semantic Evaluation. Stroudsburg, PA: Association for Computational Linguistics, 2010: 33-38.
[22]Garcia V, Bruna J. Few-shot learning with graph neural networks [EB/OL]. (2018-02-20). http://doi.org/10.48550/arxiv.1711.04043.
[23]Mishra N, Rohaninejad M, Chen Xi, et al. A simple neural attentive meta-learner [EB/OL]. (2018-02-25). http://doi.org/10.48550/arxiv.1707.03141.
[24]Geng Ruiying, Li Binhua, Li Yongbin, et al. Dynamic memory induction networks for few-shot text classification [EB/OL]. (2020-05-12). http://doi.org/10.48550/arxiv.2005.05727.
收稿日期:2021-12-08;修回日期:2022-02-07基金項目:國家自然科學基金資助項目(61976124,61976125)
作者簡介:張曉明(1997-),男,山東臨沂人,碩士,主要研究方向為深度學習、人工智能、自然語言處理;竇全勝(1971-),男(通信作者),山東煙臺人,教授,碩導,博士,主要研究方向為機器學習、人工智能、演化計算(li_dou@163.com);陳淑振(1997-),男,山東濟寧人,碩士研究生,主要研究方向為深度學習、自然語言處理;唐煥玲(1970-),女,山東煙臺人,碩導,博士,主要研究方向為機器學習、人工智能、數據挖掘.