陳洪輝 鄭建明 蔡 飛 韓 毅
1 (國防科技大學(xué)系統(tǒng)工程學(xué)院 長沙 410073)
2 (國防科技大學(xué)氣象海洋學(xué)院 長沙 410073)
關(guān)系抽取[1](relation extraction, RE)通過識別非結(jié)構(gòu)化文本中實體之間的關(guān)系類別,獲取信息三元組(頭實體,關(guān)系,尾實體).例如,給定上下文句子“Newton was served as the president of the Royal Society”,對于頭實體Newton 和尾實體Royal Society,關(guān)系抽取模型可以識別出這2 個實體之間包含“member of ”關(guān)系.關(guān)系抽取任務(wù)是自然語言處理中的一項基礎(chǔ)任務(wù),可以支撐大量下游任務(wù),例如:知識圖譜補(bǔ)全[2]、問答系統(tǒng)[3]、對話生成[4],等.傳統(tǒng)的關(guān)系抽取方法(基于高斯核[5-6]、基于特征[7]以及基于神經(jīng)網(wǎng)絡(luò)[8]等)依賴大量標(biāo)注數(shù)據(jù)實現(xiàn)模型的收斂.然而,在現(xiàn)實應(yīng)用中,新的實體和關(guān)系類別不斷涌現(xiàn),標(biāo)注足夠訓(xùn)練數(shù)據(jù)的速率遠(yuǎn)遠(yuǎn)趕不上新類別的涌現(xiàn)速率[9-10]①例如,F(xiàn)ewRel[9]是2018 年標(biāo)注的大型關(guān)系抽取數(shù)據(jù)集,它從Wikidata[10]中抽取100 種關(guān)系類別.然而,這個數(shù)量遠(yuǎn)少于當(dāng)時920 種類別的數(shù)據(jù)量.更為嚴(yán)峻地,Wikidata 中無標(biāo)注關(guān)系類別數(shù)量到現(xiàn)在為止已經(jīng)增長到6 000 余種.,使得關(guān)系抽取任務(wù)陷入少樣本困境.
針對該挑戰(zhàn),現(xiàn)有模型普遍采用元學(xué)習(xí)(meta learning)的訓(xùn)練范式[11-14].其核心在于將數(shù)據(jù)豐富的關(guān)系類別分解成一系列N-類K-樣本(N-wayK-shot)的元任務(wù),用以模擬數(shù)據(jù)匱乏的應(yīng)用場景,如圖1 所示.通過元任務(wù)訓(xùn)練,關(guān)系類別間的元知識得以獲取,進(jìn)而快速泛化到數(shù)據(jù)匱乏的關(guān)系類別中.盡管元學(xué)習(xí)的范式取得了明顯的進(jìn)展,但它們僅僅側(cè)重于標(biāo)注數(shù)據(jù),而少樣本任務(wù)中由于標(biāo)注數(shù)據(jù)量稀少導(dǎo)致的過擬合風(fēng)險仍然存在.為了應(yīng)對該風(fēng)險,神經(jīng)雪球(neural snowball, NS)模型[15]著眼于現(xiàn)實應(yīng)用中廣泛存在且容易獲得的無標(biāo)注數(shù)據(jù).該模型將元學(xué)習(xí)和自助采樣相結(jié)合,通過將現(xiàn)有標(biāo)注數(shù)據(jù)中的知識遷移到無標(biāo)注數(shù)據(jù)中,為無標(biāo)注數(shù)據(jù)打上偽標(biāo)簽,從而實現(xiàn)標(biāo)注數(shù)據(jù)量的持續(xù)增加.由此,神經(jīng)雪球模型不僅可通過元學(xué)習(xí)破除傳統(tǒng)關(guān)系抽取模型難以解決少樣本的局限性,還可通過對無標(biāo)注數(shù)據(jù)的知識遷移極大提升標(biāo)注數(shù)據(jù)量,顯著降低模型過擬合的風(fēng)險.
Fig.1 Example of 3-way 2-shot relation extraction meta task圖1 3-類別2-樣本關(guān)系抽取元任務(wù)的示例
然而,回溯神經(jīng)雪球模型,我們發(fā)現(xiàn)其存在2 種缺陷:
1)當(dāng)無標(biāo)注數(shù)據(jù)打偽標(biāo)簽時,神經(jīng)雪球模型是通過一個固定相似度閾值來判定無標(biāo)注數(shù)據(jù)是否屬于特定關(guān)系類別.可是不同關(guān)系類別在相似度閾值的選擇上存在差異.如圖2 所示,當(dāng)相似度閾值固定在0.60 時,雖然可以很好地區(qū)分“board member”和“owned by”這2 種關(guān)系,但卻無法辨別“publisher”和“item operated”的關(guān)系.因此,設(shè)定固定閾值會不可避免地打錯標(biāo)簽,使得新入選的無標(biāo)注數(shù)據(jù)包含噪聲.
Fig.2 Similarity scores in unlabeled data圖2 無標(biāo)注數(shù)據(jù)相似度得分
2)神經(jīng)雪球模型對新入選的無標(biāo)注數(shù)據(jù)予以相同的置信度,并將其納入關(guān)系抽取模型的訓(xùn)練當(dāng)中.然而,這種不加區(qū)分的訓(xùn)練,會進(jìn)一步放大噪聲數(shù)據(jù)的影響,勢必會造成關(guān)系分類器的性能偏移.
針對上述2 種缺陷,本文提出一種基于適應(yīng)性自訓(xùn)練的少樣本關(guān)系抽取模型(adaptive self-training relation extraction, Ada-SRE).具體地,對于缺陷1),我們從模型無關(guān)的元學(xué)習(xí)[16](model-agnostic meta-learning,MAML)中得到啟發(fā),提出一種自適應(yīng)閾值模塊.不同于傳統(tǒng)的有監(jiān)督學(xué)習(xí),MAML 通過模型無關(guān)的元任務(wù)訓(xùn)練來獲取模型參數(shù)的梯度停靠點.由此,即使在只有少量的新關(guān)系樣本的情況下,模型也能實現(xiàn)快速泛化.借助于MAML 的快速泛化能力,自適應(yīng)閾值模塊同樣可通過元任務(wù)訓(xùn)練去學(xué)習(xí)關(guān)系閾值的梯度??奎c.當(dāng)出現(xiàn)新的關(guān)系類別時,能夠通過較少的梯度更新獲取最適合當(dāng)前關(guān)系類別的閾值.值得注意的是,MAML 僅僅適用于標(biāo)注數(shù)據(jù),而自適應(yīng)閾值模塊面向的則是無標(biāo)注數(shù)據(jù),用于確定特定關(guān)系類別的閾值選擇.對于缺陷2),我們提出一種基于梯度反饋的賦權(quán)策略,該策略通過梯度反向傳播計算費雪信息矩陣(Fisher information matrix),獲取對新加入的無標(biāo)注數(shù)據(jù)的權(quán)重分配.其中,置信度低的無標(biāo)注數(shù)據(jù)權(quán)重低,從而降低噪聲數(shù)據(jù)的影響.
我們在公開的少樣本關(guān)系抽取數(shù)據(jù)集上進(jìn)行一系列的實驗分析.實驗結(jié)果證明在少樣本場景下,與基準(zhǔn)模型相比,Ada-SRE 取得明顯的性能提升.此外,無標(biāo)注數(shù)據(jù)預(yù)測分布證明自適應(yīng)閾值模塊在提升召回率的同時有效降低噪聲數(shù)據(jù)的引入,而消融實驗證明各個模塊的有效性.
本節(jié)首先介紹傳統(tǒng)的關(guān)系抽取模型的原理與算法;接著分析少樣本環(huán)境下的關(guān)系抽取任務(wù),并討論現(xiàn)有模型的利弊.
關(guān)系抽取致力于識別在給定句子中的2 個實體間的關(guān)系.傳統(tǒng)關(guān)系抽取建模屬于有監(jiān)督學(xué)習(xí),需要大量標(biāo)注數(shù)據(jù)進(jìn)行訓(xùn)練[1],它們可以劃分為3 種類別:基于高斯核[5-6]、基于特征[7]以及基于神經(jīng)網(wǎng)絡(luò)[8].其中,基于高斯核的關(guān)系抽取模型主要設(shè)計一組核函數(shù)計算2 個關(guān)系示例之間的相似度.這些核函數(shù)包含句法序列核[17]、句法樹核[18]、句法依賴樹核[19]、依賴圖路徑核[20]以及句法組合樹核[21].而基于特征的關(guān)系抽取模型關(guān)注于為關(guān)系分類器生成一組特征,例如:詞特征[22]、句法特征[23]以及語義特征[24].不同于需要人工參與的基于高斯核和基于特征的方法,基于神經(jīng)網(wǎng)絡(luò)的關(guān)系抽取模型關(guān)注于利用神經(jīng)網(wǎng)絡(luò)抽取關(guān)系特征實現(xiàn)端到端訓(xùn)練(end-to-end training),例如:卷積神經(jīng)網(wǎng)絡(luò)[25]、圖卷積神經(jīng)網(wǎng)絡(luò)[26]、遞歸神經(jīng)網(wǎng)絡(luò)[27]等.
然而,這些傳統(tǒng)的關(guān)系抽取模型無法應(yīng)對不斷涌現(xiàn)的新關(guān)系類別和標(biāo)注樣本匱乏的困境.本文聚焦于解決少樣本關(guān)系抽取建模問題.
少樣本關(guān)系抽取建模一般是通過元學(xué)習(xí)的訓(xùn)練范式得以實現(xiàn).其中,每個元任務(wù)(或稱之為片段)包含一個支撐集和一個查詢集,如圖1 所示,元任務(wù)利用支撐集獲取關(guān)系知識,并在查詢集上進(jìn)行驗證對網(wǎng)絡(luò)參數(shù)進(jìn)行更新.
這一訓(xùn)練范式可以劃分為基于度量[13,28-29]、基于模型[30-31]和基于優(yōu)化[16,32-33]的3 種模式.具體地,基于度量的元訓(xùn)練模型通過設(shè)計度量準(zhǔn)則衡量支撐集和查詢集之間的相似度;基于模型的元訓(xùn)練模型聚焦于設(shè)計模型的結(jié)構(gòu)實現(xiàn)少樣本任務(wù);而基于優(yōu)化的元訓(xùn)練模型嘗試初始化網(wǎng)絡(luò)參數(shù),使得模型能在一步或者幾步的梯度更新過程中快速擬合到新任務(wù)上.常用的元學(xué)習(xí)模型已經(jīng)能在少樣本關(guān)系抽取任務(wù)上得到應(yīng)用并取得較好的性能,例如:圖神經(jīng)網(wǎng)絡(luò)[12]、神經(jīng)注意力元學(xué)習(xí)網(wǎng)絡(luò)[14]、原型網(wǎng)絡(luò)[13]和元網(wǎng)絡(luò)[11].此外,Gao 等人[34]應(yīng)用混合注意力機(jī)制突出重要示例和特征.Ye 等人[35]利用子圖分析查詢集和支撐集之間的交互匹配信息,并且采用注意力機(jī)制聚合支撐示例從而計算關(guān)系原型.Soares 等人[36]采用點積來衡量向量相似度.Qu 等人[37]利用一個全局關(guān)系圖譜指引每個關(guān)系原型的計算.
然而,這些元學(xué)習(xí)模型在關(guān)系抽取建模中對于無標(biāo)注數(shù)據(jù)并未很好地利用.雖然神經(jīng)雪球模型[15]利用自助采樣技術(shù)對關(guān)系抽取任務(wù)中的無標(biāo)注任務(wù)進(jìn)行初步探索,但是人為手動的閾值以及不加區(qū)分的無標(biāo)注數(shù)據(jù),促使我們對神經(jīng)雪球模型做進(jìn)一步改進(jìn),并提出一種基于適應(yīng)性自訓(xùn)練的少樣本關(guān)系抽取模型.
本節(jié)首先介紹對于少樣本關(guān)系抽取任務(wù)的相關(guān)定義;接著對于神經(jīng)雪球模型中存在的2 個缺陷,分別提出2 種相應(yīng)的策略,也就是自適應(yīng)閾值模塊和基于梯度反饋的賦權(quán)策略.
2.1.1 任務(wù)定義
給定一個句子示例x,它是由1 組詞序列和1 對標(biāo)記的頭尾實體eh,et組成,關(guān)系抽取任務(wù)致力于通過句子示例x預(yù)測這對頭尾實體eh,et之間的關(guān)系標(biāo)簽r.因為要衡量關(guān)系抽取模型對于新關(guān)系類別的抽取能力,遵循神經(jīng)雪球模型中的任務(wù)設(shè)定(不同于傳統(tǒng)的有監(jiān)督學(xué)習(xí)和元學(xué)習(xí)模式).給定一組大規(guī)模標(biāo)注的關(guān)系抽取數(shù)據(jù)集DL,一組新關(guān)系類別標(biāo)注數(shù)據(jù)集Ds(標(biāo)注樣本的數(shù)量較少,遵循N-類K-樣本范式)和對應(yīng)的查詢集Dq,一組無標(biāo)注數(shù)據(jù)集Du,本文的目的是要檢驗關(guān)系抽取模型能否從包含現(xiàn)有關(guān)系類型、新關(guān)系類型以及未知關(guān)系類型的查詢集中準(zhǔn)確定位Dq中關(guān)系類別的能力.
2.1.2 神經(jīng)雪球模型
為了應(yīng)對這種應(yīng)用困境,Gao 等人[15]提出神經(jīng)雪球模型.如圖3 所示,神經(jīng)雪球模型一共分為預(yù)訓(xùn)練和新關(guān)系類別樣本收集2 個階段.其中,預(yù)訓(xùn)練階段:關(guān)系孿生網(wǎng)絡(luò)和關(guān)系分類器共同在DL進(jìn)行預(yù)訓(xùn)練獲取在舊類別上的關(guān)系抽取能力.而新關(guān)系類別增量階段可劃分為4 個步驟.
Fig.3 Neural snowball model圖3 神經(jīng)雪球模型
相同頭尾實體可能蘊含相同關(guān)系類別[15],基于這個假設(shè),我們通過Ds中的實體對對Du進(jìn)行檢索,符合該假設(shè)的無標(biāo)注數(shù)據(jù)聚合形成候選集A1.具體地:
1)利用關(guān)系孿生網(wǎng)絡(luò)對候選集A1中的示例進(jìn)行相似度排序,選取前k1個示例.此外,過濾出相似度小于閾值 α的示例,獲得初選的示例.
2)利用初選的示例對關(guān)系分類器進(jìn)行微調(diào),提升關(guān)系分類器識別新關(guān)系類別的能力.
3)利用微調(diào)后的關(guān)系分類器從Du中再次選擇前k2個示例,并且過濾出預(yù)測分?jǐn)?shù)小于閾值 β的示例,獲得候選集A2.
4)重復(fù)步驟2)~3),直到從Du中再也找不到可標(biāo)注的示例.
對于新關(guān)系類別樣本收集階段,我們可以清楚地發(fā)現(xiàn),閾值的選擇是決定無標(biāo)注數(shù)據(jù)抽取質(zhì)量的關(guān)鍵.然而,如圖2 所示,不同關(guān)系類別的相似度閾值的選擇存在極大差異.以固定閾值簡單地確定數(shù)據(jù)的標(biāo)簽并不能挖掘無標(biāo)注數(shù)據(jù)的潛能.例如:過高的閾值選擇降低無標(biāo)注數(shù)據(jù)的標(biāo)注召回率,并不能增加新關(guān)系類別的樣本數(shù)量;而過低的閾值選擇又增加噪聲數(shù)據(jù)標(biāo)簽的可能性,毒害關(guān)系孿生網(wǎng)絡(luò)和關(guān)系分類器.另外,對于所引入的無標(biāo)簽數(shù)據(jù),神經(jīng)雪球模型施以相同的置信度,增加了噪聲樣本影響模型性能的風(fēng)險.
鑒于這2 種缺陷,本文針對固定閾值問題,提出自適應(yīng)閾值模塊為每個關(guān)系類別獲取相應(yīng)閾值;而對于相同置信度問題,提出基于梯度反饋的賦權(quán)策略,減少噪聲數(shù)據(jù)的影響.
在標(biāo)注樣本較少的情況下,無法利用傳統(tǒng)的有監(jiān)督學(xué)習(xí)直接獲得每個關(guān)系類別對應(yīng)的閾值.不過,元學(xué)習(xí)可以通過少量樣本準(zhǔn)確定位測試樣本所對應(yīng)的標(biāo)簽,這為我們提供解決該缺陷的一種思路.
具體地,在模型無關(guān)的元學(xué)習(xí)中,MAML 通過學(xué)習(xí)模型的未知標(biāo)簽的泛化能力,獲得標(biāo)簽的通用梯度??奎c.因此,當(dāng)遇到新關(guān)系類別時,MAML 可以通過該梯度??奎c和少量的標(biāo)注樣本,快速泛化到新關(guān)系類別對應(yīng)的模型權(quán)重.因此,本文將標(biāo)簽閾值類比于MAML 中的梯度,致力于學(xué)習(xí)所有類別的通用閾值??奎c,使得模型能夠在少量樣本情況下,快速泛化到未知標(biāo)簽的最佳閾值點.
正式地,假設(shè)閾值 α和關(guān)系分類器fC在第t步的參數(shù)為wt,通過相似度計算,可以將無標(biāo)注數(shù)據(jù)集Du分割成2 部分,即Du→Dse+Duns,其中Dse是已選集合而Duns是未選集合.接下來,對于新入選的Dse,可以用來更新fC的參數(shù)wt,即
其中 λw是參數(shù)學(xué)習(xí)率,是關(guān)系分類器在參數(shù)wt下的損失函數(shù),而wt+1是時刻t+1關(guān)系分類器更新后的參數(shù).
接下來,通過在查詢集Dq的損失函數(shù)計算,可以確定閾值 α的更新方向,即
其中 λα是閾值 α的學(xué)習(xí)率.值得注意的是,當(dāng)(Dq)<(Dq)時,說明已選集合Dse對關(guān)系分類器fC有促進(jìn)作用.因此,閾值α應(yīng)該進(jìn)一步減小,擴(kuò)大已選集合Dse;反之,(Dq)>(Dq)則說明過小的閾值α導(dǎo)致已選集合Dse中充滿噪聲,需要進(jìn)一步增大閾值 α,降低Dse的噪聲率.
以上是閾值 α的一種軟更新策略,基于這一準(zhǔn)則,還可以采用一種硬更新策略.具體而言,將未選集合Duns按照相似度從大到小排列,獲得降序未選集合;將已選集合Dse按照相似度從小到大排列,獲得升序已選集合.因此,閾值硬更新策略可表示為
其中TP(·)是定位函數(shù),它在樣本序列中定位第P個樣本,返回其相似度大小.
最后,基于式(1)~(3)并結(jié)合MAML 的訓(xùn)練范式,可以在少量樣本的參與下,為每個關(guān)系類別標(biāo)簽快速獲得其對應(yīng)的閾值.
將自適應(yīng)模塊的訓(xùn)練過程總結(jié),如算法1 所示.
算法 1.自適應(yīng)閾值模塊訓(xùn)練算法.
其中Lαi()表示在閾值 αi下輸入為的損失函數(shù).
雖然自適應(yīng)閾值模塊可以解決不同標(biāo)簽的相似度閾值的選擇,但是對新入選的Dse無差別相信會增大噪聲數(shù)據(jù)的影響.因此,基于梯度反饋的賦權(quán)策略致力于獲取Dse的權(quán)重,降低噪聲數(shù)據(jù)的影響.
假定Dse={s1,s2,…,sn},其中si表示入選的第i個無標(biāo)注示例.根據(jù)定義,費雪信息矩陣可以衡量對參數(shù)估計的準(zhǔn)確程度.從另一個角度,可以由此確定所入選的無標(biāo)注示例對參數(shù)估計的貢獻(xiàn)程度.因此,改進(jìn)費雪信息矩陣用于確定無標(biāo)注示例si的權(quán)重mi.具體地,首先用無標(biāo)注示例si更新fC的參數(shù)w,即
之后,基于更新后的參數(shù)集合wi,利用查詢集Dq計算權(quán)重,即
其中SW是 當(dāng)前關(guān)系分類模型的參數(shù)集合.進(jìn)一步地,將獲得的權(quán)重序列進(jìn)行歸一化可以獲得無標(biāo)注示例的歸一化權(quán)重序列,即
特別地,在測試階段時,當(dāng)沒有查詢集可供梯度反饋時,從支撐集Ds中隨機(jī)選取10%的示例用于梯度反饋.
本文遵循神經(jīng)雪球模型[15]中的數(shù)據(jù)集設(shè)定,采用FewRel[9]和Re-TACRED[38]作為實驗數(shù)據(jù)集.其中,F(xiàn)ewRel 從維基百科中共抽取100 種關(guān)系類別,每種關(guān)系類別包含70 000 個示例.同時,F(xiàn)ewRel 將自身劃分成3 個子集,分別為64 類別的訓(xùn)練集、16 類別的驗證集以及20 類別的測試集.與之相比,Re-TACRED 則是從一個大規(guī)模關(guān)系抽取數(shù)據(jù)集中改進(jìn)所得,它包含91 467 個句子,分布于40 種關(guān)系類別中.同樣地,通過類別劃分,Re-TACRED 可以劃分為30 類別的訓(xùn)練集、5 類別的驗證集以及5 類別的測試集.
此外,為了獲得更為公正的評價,本文仍然采用神經(jīng)雪球模型中收集到的大規(guī)模無標(biāo)注語料庫,它包含899 996 個示例和464 218 對實體對.同樣地,我們進(jìn)一步將訓(xùn)練集分割成訓(xùn)練集A和訓(xùn)練集B.在訓(xùn)練階段,用訓(xùn)練集A作為DL.然后,在每步評價中,從驗證集和測試集中無放回采樣1 種關(guān)系作為新關(guān)系r,并選擇k個示例作為種子組成Ds,而查詢集Dq是從訓(xùn)練集B和驗證/測試集中采樣得到的.值得注意的是,Dq不僅包含DL中標(biāo)簽數(shù)據(jù)豐富的關(guān)系類別,還可能來源于支撐集Ds中樣本數(shù)目較少的關(guān)系類別,以及先前訓(xùn)練不存在的關(guān)系類別.這種設(shè)定相較于傳統(tǒng)的少樣本關(guān)系抽取更具有挑戰(zhàn)性,而且更加符合現(xiàn)實世界的應(yīng)用,因為在現(xiàn)實世界語料庫并不會局限于一定關(guān)系數(shù)量或類別.
為了驗證基于Ada-SRE 在少樣本關(guān)系抽取建模上的性能,本文選擇8 種具有挑戰(zhàn)性的方法作為基準(zhǔn)模型.
1)基于分布式語義的自舉關(guān)系抽?。╞ootstrapping relationship extractors with distributional semantics,BREDS)[39]模型是原始雪球(snowball)模型[40]的變形,它通過詞嵌入進(jìn)行模式選擇;
2)微調(diào)分類器(fine-tuning classifier, FC)[15]是通過微調(diào)關(guān)系分類器所獲得的;
3)關(guān)系孿生網(wǎng)絡(luò)(relational siamese network, RSN)[15]在預(yù)測查詢集時,通過孿生網(wǎng)絡(luò)計算與查詢集中示例標(biāo)簽的相似度大小;
4)遠(yuǎn)監(jiān)督(distant supervision, DS)模型[15]是通過關(guān)系孿生網(wǎng)絡(luò)和關(guān)系分類模型進(jìn)行采樣的關(guān)系抽取模型;
5)增量元自訓(xùn)練關(guān)系抽?。╥ncremental meta selftraining relation extraction, MetaSRE)模型[41]采用一種元學(xué)習(xí)網(wǎng)絡(luò)以防止模型因標(biāo)簽噪聲而導(dǎo)致的漂移,并通過迭代自訓(xùn)練增強(qiáng)其魯棒性;
6)多重引用圖(multiple reference graph, MRefG)模型[42]通過構(gòu)建包含實體、動詞以及語義引用在內(nèi)的引用圖,以實現(xiàn)語義和詞法層面有效鏈接標(biāo)注數(shù)據(jù)和無標(biāo)注數(shù)據(jù);
7)神經(jīng)雪球(neural snowball, NS)模型[15]是對傳統(tǒng)雪球模型的改進(jìn),結(jié)合關(guān)系孿生網(wǎng)絡(luò)和關(guān)系分類模型二者神經(jīng)網(wǎng)絡(luò)特點;
8)本文提出的基于適應(yīng)性自訓(xùn)練的少樣本關(guān)系抽取模型(Ada-SRE),包含軟更新(Ada-SRES)和硬更新(Ada-SREH)策略.
類似文獻(xiàn)[15],在驗證集上進(jìn)行參數(shù)調(diào)節(jié).其中編碼器,應(yīng)用BERT[5]作為基礎(chǔ)編碼器進(jìn)行研究.至于模型微調(diào),在網(wǎng)格搜索后,我們采用訓(xùn)練輪數(shù)為50 次,批次大小為10,學(xué)習(xí)率為0.05,而負(fù)樣本損失系數(shù)為0.2.在BERT[5]上微調(diào)采用相同的參數(shù),除了學(xué)習(xí)率和負(fù)樣本系數(shù)分布分別設(shè)為0.01 和0.5.在神經(jīng)雪球過程中,每個階段從無標(biāo)注數(shù)據(jù)集加入的示例同樣設(shè)定為5.但是不同于文獻(xiàn)[15]中的人為閾值設(shè)定,我們每次利用自適應(yīng)閾值模塊進(jìn)行計算,其中學(xué)習(xí)率分別設(shè)定為λw=0.005,λin=0.001,λout=0.001.此外,對于硬更新策略,我們將更新步數(shù)設(shè)定為1.
本文將分別從5 個實驗問題用于驗證模型的有效性.
1)在總體性能方面,Ada-SRE 是否可以超過現(xiàn)有的基準(zhǔn)模型;
2)添加自適應(yīng)閾值模塊后,關(guān)系孿生網(wǎng)絡(luò)的性能能否獲得提升;
3)隨著迭代步數(shù)的增加,Ada-SRE 是否都能保持對于神經(jīng)網(wǎng)絡(luò)模型的優(yōu)勢;
4)當(dāng)應(yīng)用硬更新于自適應(yīng)閾值模塊,定位函數(shù)TP(·)中位置參數(shù)P是否對模型性能產(chǎn)生影響;
5)對于自適應(yīng)閾值模塊和基于梯度反饋賦權(quán)模塊,哪一模塊對Ada-SRE 的性能影響更大.
我們將在第4 節(jié)對這5 個研究問題依次分析,探討少樣本場景下關(guān)系抽取性能.
根據(jù)實驗問題,本節(jié)依次進(jìn)行實驗分析與討論.
表1 和表2 分別展示了少樣本關(guān)系抽取模型在數(shù)據(jù)集FewRel 和Re-TACRED 上的整體性能.整體而言,隨著種子示例的增加,所有模型的精確率、召回率以及F1 值(F1 score)都得以提升.這說明種子示例的增加,增強(qiáng)了模型的有監(jiān)督信號,進(jìn)而使得模型性能也有所提升.特別地,Ada-SRE 模型在任意種子示例的參與下仍能取得最好的模型性能,這證明Ada-SRE 模型的有效性.
Table 1 Results of Few-Shot Relation Extraction Models on FewRel表1 少樣本關(guān)系抽取模型在FewRel 上的結(jié)果%
在基準(zhǔn)模型當(dāng)中,傳統(tǒng)基于統(tǒng)計性指標(biāo)的BREDS 在眾多模型中表現(xiàn)最為欠佳.這是因為傳統(tǒng)的有監(jiān)督模型在樣本量較少的情況下,無法規(guī)避在測試集中的過擬合風(fēng)險.FC 和RSN 雖然可以取得較為可觀的召回率,然而無差別地引入無標(biāo)注數(shù)據(jù),反而會引入噪聲數(shù)據(jù),相對應(yīng)的精確率也會不可避免地降低.而NS 是眾多基準(zhǔn)模型中表現(xiàn)最為突出的一個,獲得了最佳的精確率和F1 值.
將最優(yōu)基準(zhǔn)模型NS 和Ada-SRE 加以比較,我們不難發(fā)現(xiàn),無論是什么評價指標(biāo),Ada-SRE 都更勝一籌,獲得全面提升,在召回率方面的提升尤為顯著.Ada-SRE 在種子示例為5,10 和15 時,在FewRel 和Re-TACRED 上分別取得了36.6%,16.5%,23.8%和33.20%,25.16%,29.38%的性能提升.這說明Ada-SRE 可以高質(zhì)量地從無標(biāo)注數(shù)據(jù)集中收集新的訓(xùn)練示例,在一定程度上避免了NS 由于固定閾值和同等權(quán)重等因素帶來的負(fù)面影響.此外,在Ada-SRE 中,軟更新在種子示例較少的情況下表現(xiàn)更佳,硬更新則是在種子示例較多的情況下有更優(yōu)性能.
為了檢驗在NS 和Ada-SRE 中關(guān)系孿生網(wǎng)絡(luò)的抽取能力,在FewRel 上隨機(jī)采樣1 個關(guān)系以及所屬關(guān)系的5 個類別作為支撐集,而余下的數(shù)據(jù)作為查詢集.將訓(xùn)練過的NS,Ada-SRES和Ada-SREH中的關(guān)系孿生網(wǎng)絡(luò)抽取出來,分別作為查詢集中的每個示例計算相似度大小,并且采用P@N(precision at top-N)作為評價指標(biāo).
從表3 中可以看出,任意一個模型的孿生網(wǎng)絡(luò)在訓(xùn)練后,只要給定5 個種子示例都能達(dá)到一定的分類準(zhǔn)確度.特別地,在測試集P@5 列中,所有模型都可以達(dá)到80%以上的分類性能.這說明每增加5 個示例,其中至少有4 個示例是準(zhǔn)確的,而這也是我們每次從無標(biāo)注數(shù)據(jù)集選5 個示例的原因.
Table 3 RSN Results of Different Models表3 不同模型關(guān)系孿生網(wǎng)絡(luò)的結(jié)果%
此外,相比于NS 的關(guān)系孿生網(wǎng)絡(luò),添加自適應(yīng)閾值和梯度反饋模塊的Ada-SRE 的關(guān)系孿生網(wǎng)絡(luò)可以取得更好的分類效果,這進(jìn)一步證明選擇合適閾值和合適權(quán)重的有效性.
為了進(jìn)一步分析迭代步數(shù)對于NS 和Ada-SRE 的影響,在FewRel 中隨機(jī)選取1 個新加入的關(guān)系chairperson,并基于5 個種子示例分析迭代步數(shù)對模型分類性能的影響.由于空間所限制,這里只展現(xiàn)1 種關(guān)系的分類性能.圖4 中分別展現(xiàn)各個模型在不同迭代步數(shù)下精確率和召回率的變化.
Fig.4 Model performance on different iteration steps圖4 不同迭代步數(shù)的模型性能
總體而言,隨著迭代步數(shù)的增加,各個模型的精確率和召回率也隨之增加.特別地,召回率的增長尤為明顯,NS 從起初的召回率為0 到迭代5 次后增長到接近60%.而召回率的提升也進(jìn)一步帶動模型在精確率方面的提升.而隨著迭代步數(shù)增長到5,召回率的提升也漸緩,這說明模型從無標(biāo)注數(shù)據(jù)集挖掘的信息也逐漸趨向于飽和.
此外,將NS 與Ada-SRE 相比可以發(fā)現(xiàn),無論是在精確率還是召回率方面,Ada-SRE 始終保持著對NS的領(lǐng)先地位.特別地,Ada-SRE 在初始召回率比NS領(lǐng)先近20%,這也證明Ada-SRE 在提升無標(biāo)注數(shù)據(jù)集召回質(zhì)量方面的有效性.而至于軟硬更新之間的差異,Ada-SRES也能保持對Ada-SREH的微弱領(lǐng)先.
在Ada-SREH中,定位函數(shù)TP(·)中位置參數(shù)P對模型性能的影響很大.因此,分析位置參數(shù)P對模型的F1 值的影響.
從表4 中可以看出,無論有多少種子示例的參與,當(dāng)位置參數(shù)P=1 時,Ada-SREH的性能都達(dá)到最優(yōu).特別地,當(dāng)位置參數(shù)P上升到2 時,Ada-SREH性能開始急劇下降.這種現(xiàn)象可能是因為當(dāng)?shù)綌?shù)一定時,模型從無標(biāo)注數(shù)據(jù)集中挖掘信息的能力已經(jīng)達(dá)到極限,這時定位2 個以上的無標(biāo)注數(shù)據(jù)集會不必要地引入多余的噪聲,造成模型性能的下降.
Table 4 F1 Score of Ada-SREH Under Different P表4 不同P 下Ada-SREH 的F1 值%
為了驗證哪一個模塊對模型性能影響更大,將模型的各個子模塊去除或者替換成Ada-SRE 中原有的模塊,用符號“--”表示.例如:“Ada-SRES--weight”表示應(yīng)用軟更新策略的Ada-SRE 去除梯度反饋模塊,而將每個無標(biāo)注示例視為同等重要.特別地,無論是什么樣的更新策略,去除自適應(yīng)閾值模塊之后,Ada-SRE 都只剩下梯度反饋模塊,因此我們都將其表示為“Ada-SRE--threshold”.
然后,在種子示例為5,10,15 時分別檢驗?zāi)P偷男阅?,總結(jié)于表5.從表5 中可以發(fā)現(xiàn),Ada-SRES和Ada-SREH同時去除梯度反饋模塊之后,模型性能都會獲得相應(yīng)的下降,這證明梯度反映模塊的有效性.另外,當(dāng)只保留自適應(yīng)閾值模塊后,軟更新策略始終會優(yōu)于硬更新策略.除此之外,當(dāng)模型去除自適應(yīng)閾值模塊,也就是只保留梯度反饋模塊,模型的性能下降得尤為明顯.這一現(xiàn)象反映在提升少樣本關(guān)系分類性能方面,自適應(yīng)閾值模塊相比于梯度反映模塊能夠發(fā)揮更大的作用.
Table 5 F1 Score on Ablation Study表5 消融實驗下的F1 值%
本文聚焦于現(xiàn)實應(yīng)用中廣泛存在的少樣本關(guān)系抽取任務(wù),通過分析現(xiàn)有神經(jīng)雪球模型在設(shè)計中存在的缺陷,提出適應(yīng)性自訓(xùn)練算法Ada-SRE 進(jìn)行改進(jìn).針對神經(jīng)雪球模型設(shè)定統(tǒng)一固定閾值的缺陷,本文基于元學(xué)習(xí)的思想提出自適應(yīng)閾值模塊,能夠為每個關(guān)系類別提供合適的閾值選擇.而針對神經(jīng)雪球模型對入選的無標(biāo)注示例施以相同置信度問題,本文提出基于梯度反饋的賦權(quán)策略,為每個入選的示例提供特定的權(quán)重,避免噪聲數(shù)據(jù)的干擾.此外,通過在2 個公開數(shù)據(jù)集上進(jìn)行實驗分析,發(fā)現(xiàn)Ada-SRE 能夠取得優(yōu)于當(dāng)前最優(yōu)的神經(jīng)雪球模型更好的實驗結(jié)果.
在未來的工作,我們將從2 個方面開展工作:一方面,將探究本該入選但低于閾值的無標(biāo)注示例和入選示例的關(guān)系,在保持模型精確率的同時,進(jìn)一步提升模型的召回率;另一方面,鑒于提示學(xué)習(xí)(prompt learning)在少樣本領(lǐng)域的快速發(fā)展,將探究提示學(xué)習(xí)在無標(biāo)注數(shù)據(jù)參與下的關(guān)系抽取任務(wù)上的應(yīng)用.
作者貢獻(xiàn)聲明:陳洪輝提出了模型的算法思路和實驗問題;鄭建明基于提出的實驗問題完成實驗并撰寫論文;蔡飛負(fù)責(zé)論文的修改和校對,并提出指導(dǎo)意見;韓毅參與了論文校對和實驗數(shù)據(jù)分析整理工作.