基於情景記憶激活與再鞏固的持續關係學習

本文基於AAAI-2020論文《Continual Relation Learning via Episodic Memory Activation and Reconsolidation》,論文由清華大學和騰訊微信AI團隊合做完成。算法

導語:在智能搜索、自動問答等現實應用中,知識圖譜正在扮演愈來愈重要的做用,圖譜中豐富的結構化信息能夠輔助實現更加精細的語義理解。爲了避免斷地完善現有知識圖譜的覆蓋度,關係抽取被普遍研究,力圖從無結構化的海量文本中挖掘出結構化知識。然而,在現實的開放文本環境下,實體間新的語義關係也在不斷出現,如何持續地學習這些新關係就成爲了一大難題,尤爲在不大量使用歷史數據反覆從新訓練模型的前提下。對此,做者提出一套持續關係學習模型,支持模型不斷地在新關係的數據上進行訓練,在掌握新關係的特性的同時,避免災難性地忘記舊關係的特性。具體而言,咱們採用了基於情景記憶和記憶回放機制的持續學習框架,並額外引入了記憶再鞏固階段。再鞏固階段中,咱們採用了原型學習的思路,確保每次情景記憶模塊激活與回放後,舊關係的記憶樣本與記憶原型依然匹配,使得模型可以較好地保留對舊關係的認知。做者在當前主流的關係學習數據集上進行了系統評測,與已有持續學習算法相比效果提高顯著,模型記憶保持能力獲得了充分驗證。微信

模型背景與簡介網絡

信息抽取旨在從大規模非結構或半結構的天然語言文本中抽取結構化信息,關係抽取是其中的重要子任務之一,用以從文本中檢測實體之間的豐富語義關係。例如,給定句子「牛頓擔任英國皇家學會主席」,能夠從中提取出牛頓與英國皇家學會之間的會員從屬關係。經過關係抽取,咱們能夠極大地豐富知識圖譜中的結構化信息,進而做爲各種下游應用的外部資源。架構

傳統的關係抽取方法主要側重於識別預約義關係集中的關係。然而,這樣的設定在實際工做場景下是很是受限的。在現實的開發文本場景下,新生的關係在源源不斷地出現,做用於預約義關係集合的傳統關係抽取方法沒法解決這些新關係。爲了在開放域下可以持續地處理新關係,最近的相關工做能夠被概括爲兩個方面:(1)開放關係抽取。學習提取句子中的詞法、句法結構來構造特定的關係模式,經過聚類算法從中發現新的關係類型,並在大規模文本語料中擴展包含這些新關係語義的樣本;(2)持續關係學習。不斷使用新關係及其樣本,來訓練出一個高效的分類器。分類器將接受一系列任務的訓練,每一個任務都對應一個特定關係集合的,最終分類器可以同時處理現有和新出現關係的判別。雖然持續關係學習對於學習不斷出現新關係相當重要,但相比於開放關係抽取,該領域仍然沒有被充分探索。框架

對於持續關係學習,一種簡單有效的方法是在每次出現新的關係及其對應樣本時,都把它們存儲進來一同參與訓練,造成一種多任務學習的模式。然而,因爲關係數量在持續增加,每一個關係也擁有大量樣本,頻繁混合新舊樣本致使計算成本極爲高昂。近期的一些工做提出了一些基於情景記憶和記憶重演的方法,即保存一些歷史任務的訓練樣本,在將來從新訓練,以維持分類器對歷史數據的認知。這種記憶模型的主要問題在於易於過擬合少數的記憶樣本,它們頻繁改變舊關係的特徵分佈,逐漸過擬合記憶中的那些樣本,在長期學習中逐漸發生混淆。於是提出一個可以在持續關係學習中較好地維持記憶、減小混淆,同時學習新出現關係的模型,就十分具備意義。函數

神經科學中有這樣的發現,信息的重演、鞏固有助於長期記憶的造成。已造成的長期記憶在被檢索激活後,腦內的再鞏固機制會對記憶進行再次存儲。在再鞏固階段中,被激活的記憶十分脆弱,且易被更改。於是,在這個過程當中,引入特殊的練習能夠起到編輯記憶或強化記憶的做用。出於此,做者提出一種基於情景記憶激活與再鞏固的持續關係學習算法(Episodic Memory Activation and Reconsolidation ,EMAR),在已有記憶與重演的基礎上,引入了額外的記憶再鞏固階段。在每次神經網絡被激活以學習新關係前,EMAR從歷史關係的記憶樣本中採樣部分,用以計算曆史關係的記憶原型。在神經網絡被激活並完成必定的新關係學習後,EMAR會啓動再鞏固機制,確保歷史關係的全部記憶樣本能與相應記憶原型匹配,以此提高模型在學習新關係後對舊關係認知的保持能力。學習

模型結構測試

圖1:EMAR的總體模型架構優化

圖1給出了EMAR模型的總體架構。在開始一個新任務的學習時,模型經過編碼器得出新關係樣本的特徵向量,給出涉及新關係的判斷結果,並經過判斷結果對編碼器參數進行微調,從而最終學習新關係的特性。在一個新任務學習後,模型須要從這些已經學習的新關係樣本中抽取一部分,以儘量表明該任務中新關係在特徵空間裏的分佈,保存在記憶中。這些記憶樣本將在後續記憶重演、再鞏固機制裏發揮做用,對編碼器與分類器進行進一步的參數優化,以確保既可以學習掌握新關係同時避免遺忘舊關係。編碼

咱們能夠將持續關係抽取視做一系列任務上的訓練,每一個任務分爲訓練集,驗證集 ,以及測試集 。對於第k個任務,訓練集用  =表示,其包括一系列樣本,以及對應的關係標記,N爲中樣本容量。對於任同樣本以及其標記,表示樣本蘊含着關係的語義信息,這裏是第k個任務的新關係集合。當第k個任務出現時,模型會在訓練集上訓練,來學習新的關係。雖然新的關係在不斷地出現,持續關係學習仍然須要模型在第k個任務以及前k-1個任務上均有良好的表現。在利用訓練結束後,模型須要在上測試,而且須要將全部測試樣本在全部當前已知的關係集合上進行分類預測。此外,爲了應對記憶的丟失,模型中有情景記憶M={M1,M2,…}來保存一些過去任務中的樣本,其中每一個記憶單元 ={}保存了若干樣本,這些樣本能夠表示爲={},,以及它們的標記={},B是記憶模塊容量上限。

更具體地:

(1)模型從樣本中抽取句子語義信息、頭尾實體位置等多種信息,解析成一個標記序列,再將標記輸入神經網絡,計算出相應的嵌入向量,用於進行實體關係預測。樣本編碼操做能夠用以下方程表示:

              (1)

這裏,,是x的語義嵌入向量,d是向量維度。編碼採用的具體模型並非關鍵,做者在這裏選取雙向長短時間記憶模型(BiLSTM)來做爲對樣本進行編碼操做的編碼器。

(2)當第k個任務出現時,模型還還沒有了解該任務中的新關係,模型利用訓練集 = 來掌握中新關係的模式,對樣本編碼模塊中的參數進行微調。該模塊中針對任務k的損失函數以下定義:

     (2)

其中,是樣本的嵌入向量。是第j個關係的嵌入向量,g(.,.)是一個計算嵌入向量之間類似性的函數,如餘弦類似度函數。θ是全部能夠被優化的參數,包括樣本編碼模塊中的參數以及關係嵌入向量。對於任一新關係,首先隨機初始化其嵌入向量,隨後使用(2)式進行優化。

(3)在若干次利用公式(2)進行迭代後,模型從中提取若干樣本,將這些樣本存入記憶單元。更明確地,模型從中選取更有效的樣本,來儘量涵蓋新的關係模式。這樣可以使得記憶有效接近關係的特徵分佈。模型對第k個任務的訓練集編碼,造成後,使用K均值來對這些樣本嵌入向量進行聚類,而聚類的中心數等於記憶容量B。對於每一個類,選擇其中最接近聚類中心的樣本,並記錄其所屬的關係類別。經過統計各個關係對應樣本被選中的個數,得出這個關係對於表明這個任務的重要程度,被選中的個數越多,這個關係便更具備重要性。對於重要的關係,在記憶單元中其對應的樣本個數至少爲,對於相對不重要的關係,在記憶單元中其對應的樣本個數至多爲。若是一個關係所對應的樣本個數不足以填充爲其分配的記憶容量,那麼空餘的容量會從新分配給其餘關係。在每一個關係分配空間以後,對於任一個關係,仍然使用K均值來對其樣本進行聚類,聚類個數爲其分配的樣本個數,對於每一個類,選擇最接近類形中心的樣本存入記憶單元

(4)在利用訓練集對模型參數微調、選取樣本填充記憶單元後,模型將經過記憶原型計算、記憶重演與激活以及記憶再鞏固三個階段,力圖在學習新關係的同時,保留對舊關係的識別能力。

原型計算:經過結合全部情景記憶中的樣本,模型得到了總體記憶集合。對於任意已知關係,模型採樣出一個原型集合,其中樣本 均選自 ,且對應的類別標籤知足 =。以此,可計算出關係的記憶原型:

                                                                 (3)        

記憶重演和激活:將記憶集合和第k個訓練集合併起來,生成激活樣本集合 = 來持續激活模型,以學習新的關係並必定程度地記住舊關係。在這裏,M樣本個數之和。損失函數定義爲下式:

 (4)

這裏是第j個已知關係的嵌入向量。

記憶再鞏固:正如前文背景部分介紹到,僅僅經過情景記憶的重演和激活會致使過擬合,在長期訓練後,模型最終只能記住若干被記住的樣本。同時,學習關係的核心在於掌握關係原型而非死記硬背關係樣本。因此,每次進行記憶重演和激活後,做者添加了額外的再鞏固階段,並採起以下方式對記憶進行加強:

對於任一已知關係,相似於以前對原型的採樣,採樣出它對應的實例集合,其中一樣來自於,其對應關係標籤仍然知足=,損失函數被定義爲下式:

                      (5)

其中是關係經過(3)式計算出的原型。

(5)總體訓練過程以下圖所示。

在第k個任務結束後,對於任一已知的關係,模型收集其在記憶中的全部樣本,其中S爲該關係在記憶中的樣本個數,而後計算最終的關係原型來進行推理和預測:

= (6)

其中這一關係的關係嵌入向量,經過式(2)與式(4)可學習獲得。對於任一在中的測試樣本x,做者定義其對於關係的評分函數爲

         (7)

其中pi是ri最終計算出的原型。最終,測試樣本的預測值

(8)

實驗結果

做者在FewRel、SimpleQA、TACRED三個數據集上進行了測試。因爲是持續關係學習,須要關注的是平均表現(Average)和總體表現(Whole),前者是模型在某個訓練階段時在全部已知關係數據上的平均結果,主要可以表現模型對記憶的保持能力,後者是模型對全部關係測試數據的結果。測試結果以下:

圖2:持續學習表現測試結果

在兩種指標下,EMAR模型除了SimpleQA的總體表現以外,在各個數據集上都獲得了最佳的效果,說明了EMAR對於舊關係知識有較好的保持能力。圖3也顯示,隨着任務的增加,EMAR預測結果的降低要更爲緩慢,這也說明了EMAR更不容易遺忘歷史知識。

實驗經過Upper Bound指標說明SimpleQA數據集上已難產生顯著提高。SimpleQA表現較爲薄弱的另外一個緣由在於,SimpleQA的關係數量遠大於記憶模塊的容量, EMAR須要記憶模塊對於每一個關係至少保留一個樣本,於是再鞏固階段與測試階段,EMAR中關係的記憶原型沒法運做,低記憶樣本的啓動問題將是咱們下一步的研究點之一。

圖3:任務增加下的預測結果變化

除此以外,做者還進行了多個記憶容量大小下的對比實驗。以圖4爲例,能夠發現隨着記憶容量提升,各個模型的表現均有提高,說明記憶容量是決定持續關係學習模型表現的關鍵因素;對於FewRel和TACRED數據集,EMAR模型在各個記憶容量下都具備最好的表現,甚至和具備更大記憶容量的其餘模型相比,說明EMAR模型中的記憶再鞏固機制更有效得利用了記憶。

圖4:不一樣記憶容量下的模型表現

總結

本文提出了一種新的持續關係學習方法EMAR,可以較好地維持對歷史關係的認知,同時支持學習新出現的關係。經過在原有情景記憶與記憶重演模型基礎上引入額外的記憶再鞏固模塊,並採用原型學習的思想確保歷史關係在模型參數激活變動先後原型匹配,最終實現了學習新知識與記憶舊知識的優秀平衡。EMAR的有效性在現有的幾個質量較高的數據集上也獲得了驗證。

相關文章
相關標籤/搜索