強繼朋 錢鎮(zhèn)宇 李 云 袁運浩 朱 毅
在閱讀資料時,如果句子中包含不認識的詞語,將直接影響對文本內容的理解,特別是閱讀非母語的文本.Hirsh 等[1]和Nation 等[2]的研究表明,英語學習者需要熟悉文本中95%的詞匯才能基本理解其內容,熟悉98%的詞匯才能輕易地進行閱讀.詞匯簡化 (Lexical simplification,LS)任務要求在不改變文本的語義、不破壞文本語法結構的情況下降低文本的閱讀難度,常采用的方法是用更簡單的詞語替換句子中的復雜詞語.詞語簡化有助于降低文本的閱讀難度,針對的人群包括且不限于兒童[3]、非母語人士[4]、有閱讀障礙的人[5-6]等.詞語簡化作為文本簡化方法的一類,已經有20 多年的發(fā)展歷史.
早期的LS 系統主要使用人工制定或者自動學習的簡化規(guī)則來完成詞匯簡化任務[7].例如,使用WordNet 生成復雜詞的簡單同義詞[8-10].從簡單維基百科和普通的維基百科組成的平行語料庫中提取復雜詞語與簡單詞語的對應關系[11-13].但是這兩類方法有很多的局限性.除了語義詞典數據庫的制作成本高昂和平行語料庫提取困難,這些規(guī)則只能提供有限數量的復雜單詞與部分簡單同義詞的對應關系,不能夠覆蓋所有需要簡化的單詞,也不能囊括所有合理的簡單替換詞.
為了解決上述問題,最近的一些詞匯簡化方法使用詞嵌入模型來獲取目標復雜詞的簡單候選詞,選擇在向量空間中與復雜詞的詞向量余弦相似度最高的一些詞語作為候選替代詞[14-16].Glava? 等[14]在未注釋的文本語料庫中訓練詞嵌入模型,Paetzold等[15-16]在帶有詞性標簽的文本上訓練語境感知詞嵌入模型.這些方法解決了基于規(guī)則方法的局限性.但是它們生成候選詞時沒有考慮復雜詞的上、下文語境信息,生成候選替代詞集合中不可避免的生成了大量的虛假候選詞.
本文提出了一種與已有LS 系統完全不同的方法,利用預訓練語言表示模型 (Bidirectional encoder representations from transformers,BERT)[17]獲得復雜詞的簡單替代詞.BERT 是無監(jiān)督的通用語義表示模型,使用掩碼語言模型和下一句預測2個任務進行優(yōu)化.掩碼語言模型通過隨機掩碼一定比例的輸入,然后根據上、下文對掩碼的詞進行預測,這與LS 任務中為目標復雜詞生成符合語境的簡單替代詞的模式是可關聯的.本文將句子中的目標復雜詞進行掩碼后輸入BERT 模型進行預測,從掩碼詞語的預測中選擇高概率的詞作為候選詞,并對它們進行排序.具體方法是將兩個原句進行串聯,隨機掩蓋前一個句子中一定比例的單詞,并對后一個句子的復雜詞進行掩蓋,將其輸入BERT 模型,預測出后一句中掩蓋位置的詞匯概率分布.
得到生成的候選替代詞后,基于預語言訓練表示模型的詞語簡化方法(BERT-LS)使用5 個特征對所有候選詞進行排序,選擇平均值排名最高的詞作為最佳替代詞.除了已有方法常使用的詞頻和候選替代詞之間的相似度的特征外,還結合了BERT本身的特色,利用了BERT 的預測順序和基于BERT 的語言模型作為特征,還額外采用復述數據庫PPDB 作為特征.最后,最佳替代詞是否替換原詞需要考慮替代詞與原詞之間的簡單程度和替代詞與原有上、下文信息之間的流暢性.
圖1 展示了在詞匯簡化任務中,兩個基線系統PaetzoldNE[16]、Rec-LS[18]和BERT-LS 對句子進行簡化的實例.對于句子“John composed these verses.”中的復雜詞“composed”和“verses”,已有的2 個LS 系統在生成候選詞時只關注復雜詞本身,而沒有考慮上、下文語境,因此這些系統沒有能捕獲復雜詞在句子中的準確詞意,生成的候選詞也不符合具體的語境.BERT-LS 生成的候選詞不僅與復雜詞在句子中的詞義一致,而且非常契合上、下文.通過對生成的候選詞進行排序后,可以很容易地選擇“wrote”和“poems”作為“composed”和“verses”的最終替代詞.替換后的句子“John wrote these poems”不僅沒有改變句意,而且保持了句子的語法結構,達到了句子簡化的目的.
圖1 三種詞語簡化方法產生的候選替換詞進行對比[16,18]Fig.1 The substitution candidates generated by the three lexical simplification methods are compared[16,18]
本文的主要貢獻總結如下:
1)提出了一種新的基于預語言訓練表示模型的詞語簡化方法BERT-LS,充分利用BERT 的優(yōu)勢來生成候選替代詞.從查閱到的已有文獻可知,BERT-LS 是最先嘗試利用預訓練語言模型進行詞語簡化的方法.與現有方法相比,此方法不僅考慮了復雜詞的上、下文信息,而且生成的候選詞無需考慮任何詞形的變化.
2)提出了一種新的候選詞排序方法.最先采用了BERT 的預測排名和基于BERT 的上、下文產生概率,還首次利用復述數據庫PPDB 作為一個特征.這些特征能夠充分地考慮候選詞本身的簡單性和它們與句子的契合程度.
3)BERT-LS 在實驗評估中優(yōu)于基線算法,候選詞生成過程的性能比較之前最好的的方法的F值提升了41%,整體系統的效果在準確率上提升了29.8%.論文的源代碼已公開在https://github.com 和qiang2100/BERT-LS.
文本簡化是在保留原有文本信息的情況下,盡可能簡化原有文本的內容,從而使其更容易被更廣泛的讀者閱讀和理解.目前研究最多的是英文文本的簡化,本文也針對英文文本簡化進行介紹.文本簡化主要針對文本中詞匯和句法進行簡化.文本簡化的早期方法主要利用基于統計的機器翻譯系統學習復雜句子到簡化的句子的映射[19-20].最近幾年,隨著神經網絡方法的快速發(fā)展,許多方法采用編碼器-解碼器模型進行文本簡化[21-22].以上這些文本簡化方法都是有監(jiān)督的文本簡化方法,其有效性嚴重依賴獲取的平行語料的數量和質量.從維基百科和簡單維基百科中提取的平行語料WikiSmall 和Wiki-Large 不僅樣本數目不多,還包含了很多不準確的簡化(沒有對齊或僅部分對齊)和不充分的簡化(簡化句子不夠簡化)[23].因此,很多學者只關注文本簡化中的詞語簡化方法的設計.
一般情況下,詞匯簡化包括復雜詞識別、候選替代詞生成、候選替代詞選擇和候選替代詞排序4個過程.LS 旨在識別句子中的復雜詞,并為這些復雜詞找到合適的替代詞[24-25].好的替代詞不僅要保留句子的句意,符合句子的語法結構,還要足夠的簡單,因此這是一項非常具有難度的任務.
早期的詞匯簡化方法設定好一些規(guī)則,然后按照規(guī)則對句子中的復雜詞進行簡化.這些規(guī)則通常將復雜的單詞與其簡單的同義詞進行關聯[8,26-27].為了構建規(guī)則,這些系統通常從大型語言數據庫中獲得復雜單詞的同義詞,例如WordNet.然后,根據單詞的頻率[3,7]或單詞的長度[28]等特征在這些同義詞中選擇最簡單的單詞作為最佳替代詞.這類方法的缺點在于制作簡化規(guī)則需要大量的人工注釋,并且手動制作的簡化規(guī)則相對較為固定.在實際應用中會出現一些復雜的單詞沒有被規(guī)則定義為“復雜詞”(即需要簡化的單詞),在對句子進行簡化時保留了這些復雜的單詞.還有一種情況是對包含復雜單詞的句子進行簡化時,一些簡單替代詞被規(guī)則遺漏,從而導致沒有為該復雜單詞找到合理的簡化替代詞.
隨著“復雜-簡單”平行語言數據庫的出現,如維基百科和簡單維基百科,LS 系統的主要模式由知識型簡化轉變?yōu)閿祿寗有秃喕痆9,11,13].Yatskar 等[12]從簡單英語維基百科編輯中提取復雜術語的解釋作為該復雜術語的簡化替代.這些方法已被驗證可以生成很多合理的簡化,例如“stands for”簡化為“is the same as”,“indigenous”簡化為“native”.Biran 等[11]認為維基百科和簡單維基百科中的每一對不同的單詞都是可能的簡化對,他們去除了其中詞形變化的單詞,并過濾了沒有在WordNet中標記為同義詞或上位詞的單詞對.Horn 等[13]也從維基百科和簡單維基百科中提取簡化規(guī)則,并采用語境感知的二元分類器來判斷在特定語境中是否應用簡化規(guī)則.除了平行語料,利用簡化的SimplePPDB 提取候選替代詞的集合的方法也被提出,SimplePPDB 是復述數據庫PPDB 的一個子集.這些基于平行語言數據庫的方法存在的缺陷是它們嚴重地依賴平行語言數據庫中“簡單”數據庫的質量.
為了減少對語義詞典和平行語言數據庫的依賴,Glava? 等[14]提出了一種無監(jiān)督的基于詞嵌入模型方法.詞嵌入模型在通用的文本語料庫中訓練,獲得每個單詞在分布式語義特征空間中的唯一向量表示.他們選擇與復雜詞最相似的10 個單詞作為候選替代詞.Paetzold 等[15-16]提出了另一種方法,他們在大型語料中訓練上、下文感知的詞嵌入模型,即訓練過程中使用通用詞性標簽對每個單詞進行標記.該方法在生成候選詞后,選擇在向量空間中與復雜詞詞向量余弦相似度最高且詞性標簽相同的一些單詞作為候選替代詞,解決了一部分歧義問題,從而提高了LS 系統的性能.Gooding 等[18]聯合語言數據庫和詞嵌入模型獲取候選替代詞集合.這類方法提取的候選替代詞范圍特別大,因為通過語義相似度得到的詞語中,不僅包含與復雜詞相近的詞還包含了很多相關的詞語.
以上所有的詞匯簡化方法在產生復雜詞的候選詞的過程中,都沒有考慮復雜詞的上、下文信息,這不可避免的會產生大量的虛假替代詞,給詞語簡化后面的步驟帶來很大干擾.本文提出的BERT-LS基于預訓練語言模型BERT,使用模糊的上、下文信息以及原詞詞義信息來生成候選詞.預訓練語言模型[29-30]已經引起了廣泛的關注,并被證明可以有效地提升很多自然語言處理相關任務的效果.由于BERT-LS 的基本特性,該方法可以很容易適用于其他語言.
本節(jié)將具體對BERT-LS 的工作原理進行介紹.
BERT 是在一個大的文本語料庫 (如維基百科)中訓練的通用的“語言理解”模型,通過掩碼語言建模和下句預測2 個訓練目標進行優(yōu)化.不同于傳統的語言建模是根據歷史記錄來預測序列中的下一個詞,掩碼語言模型是根據序列中的上、下文語境來預測序列中的缺失詞.BERT 通過在每一個句子上預置一個特殊的分類令牌 [CLS],并在句子上組合一個特殊的分離令牌[SEP]來完成下一句預測任務.與[CLS]令牌相對應的最終隱藏狀態(tài)被用作總序列表示,可以從中預測出分類任務的標簽,或者是可能被忽略的標簽.
BERT 在下游任務中的表現優(yōu)于已有方法,是第一個無監(jiān)督的深度雙向的預訓練系統.無監(jiān)督意味著BERT 只需要使用原始文本語料庫進行訓練.
給定一個句子S和復雜詞w,候選生成步驟的目的是為詞語w產生符合上、下文的候選詞.
對句子S中目標復雜詞w掩碼之后輸入到BERT 的掩碼語言模型模型進行預測,則BERT在預測時僅僅從上、下文中獲取信息,而沒有考慮到目標詞本身的詞意.如果不掩蓋目標復雜詞,則BERT 會獲得原詞信息,進而在預測中極大概率的出現原詞,使得系統無法獲得更理想的候選詞.
考慮到BERT 模型的擅長處理句子對形式的數據,主要因為BERT 的其中一個優(yōu)化目標下一句預測.在BERT-LS 中,首先隨機掩蓋其中一定比例的單詞(排除復雜詞w)后作為句子S1,然后將句子中的目標復雜詞進行掩蓋后作為句子S2,將S1與S2通過[CLS]和[SEP]符號進行串聯后,輸入BERT 獲取目標復雜詞掩碼位置的單詞概率分布.考慮到S2中已經包含了復雜詞的上、下文信息,對進行一定比例的掩蓋的主要目的是降低上、下文信息的雙重影響.使用這樣的方法,不僅能夠獲得目標詞的上、下文信息,也獲得了復雜詞本身的詞義信息,從而提高了生成的候選詞的質量.最后,從概率分布中選擇前10 個詞作為候選詞,并剔除及其形態(tài)衍生詞.
如圖2 所示,在句子“the cat perched on the mat.”(貓棲息在墊子上)(棲息)”,使用BERT-LS可以得到排名前3 的候選詞“sat(坐),hopped(跳),landed (落)”.如果采用現有的最先進的基于詞嵌入的方法[14]生成替換詞,前3 個替換詞分別是“atop(在···上),overlooking (俯瞰),precariously(搖搖晃晃地)”.很容易發(fā)現,BERT-LS 生成的候選詞質量更高.
圖2 BERT-LS 使用BERT 模型生成候選詞,其中輸入為“the cat perched on the mat”Fig.2 BERT-LS uses the BERT model to generate candidate words,and the input is“the cat perched on the mat”
候選詞排序的目的是選擇最簡單且最符合語境的替代詞作為替換詞[25].本文選用了多個特征對候選替代詞進行排序,除了常用的詞義相似度和詞頻特征以外,本文還選用了BERT 輸出的預測排名、基于BERT 的上、下文產生概率和PPDB 復述數據庫3 個特征.候選詞的排名名次分別是從1 到n,其中n表示候選詞的數目.候選詞的最終排名是所有排名的平均值,選擇名次最高的候選詞作為最佳候選替代詞.
1)BERT 輸出的預測排名.BERT 輸出的預測排序特征本身就考慮到候選詞和上、下文之間的連貫性,還有候選詞和復雜詞之間的關聯性.根據概率大小對生成的有效候選詞進行排名,概率越高則說明生成的候選詞與句子的關聯度越高.
2)基于BERT 的上、下文產生概率.該特征主要是驗證候選替代詞與原有上、下文信息之間的連貫性.由于BERT 是利用掩碼語言模型進行優(yōu)化,無法和傳統的語言模型一樣直接計算連續(xù)的幾個詞語產生概率.考慮到BERT 能夠很好地利用上、下文信息預測掩碼的詞語.本文采用一種新的方式計算上、下文的產生概率.
首先,用候選替代詞替換原詞,選擇一個上、下文窗口.假設從長度為n的原句S中選擇復雜詞wj的前后m個詞作為上、下文,組成窗口WIN={wj-1m,···,wj-1,wj,wj+1,···,wj+m},其中j-m≥0和j+m<n.用候選替代詞c替代WIN中的復雜詞w,組成新的序列WIN′={wj-m,···,wj-1,c,wj+1,···,wj+m}.
接著,從前到后依次掩藏WIN′的每一個字wi,輸入BERT 并用公式計算掩藏后序列的交叉熵損失值:
式中,wi是詞語wi在詞匯表中one-hot 表示,yi表示BERT 在掩藏位置預測的詞語的概率分布.
最后,對整個窗口的所有詞的損失值求平均值作為該窗口的損失值.該值越小代表上、下文之間的連貫性越好.最后,對所有的候選替代詞的損失值按照從小到大進行排序.實驗中選擇的窗口大小為11,即原詞左右各5 個詞語.
3)詞義相似度.該特征是考量候選替代詞和原詞之間相似度.一般情況下,相似度越高表示關聯度越大.本文獲取詞語的向量選用了預訓練詞向量模型fastText[31].假設候選詞c和復雜詞w的向量表示vc和vw.通過計算復雜詞詞向量與候選替代詞詞向量的余弦相似度對候選替代詞進行排名,計算公式如下;
式中,g為詞嵌入模型中向量的維數.
4)詞頻.詞語在大文本語料中的頻率是判斷詞語難易程度簡化法最常用的方法之一.本文使用SUBTLEXus[32]的Zipf 值作為單詞的詞頻特征,該分值越高表示詞頻越高.SUBTLEXus 從美國英語電影字幕中提取,總計5 100 萬個單詞,該語料庫中的詞頻比其他大型語料庫中的詞頻更能反應人們對單詞簡單性的認知.Zipf 值的范圍為1~7,其中1~3 表示低頻詞(頻率為1/100 萬字及以下),4~7 表示高頻詞(頻率為10/100 萬字及以上).
5)PPDB 特征.PPDB[33]中包含超過1 億個英文單詞或短語對,這些詞組對的提取是使用了一種二語旋轉技術,即假設兩個英語短語翻譯成相同的外文短語具有相同的意義.一些LS 方法使用PPDB 或其子集SimplePPDB[26]中包含的簡化規(guī)則生成候選詞.由于BERT-LS 在候選詞生成過程中比PPDB 以及SimplePPDB 表現更好,考慮到PPDB 中包含有效的簡化規(guī)則,因此本文首次嘗試使用PPDB 提供的簡化規(guī)則對候選詞進行排序.假設上一步產生n個候選詞,正常情況下獲取的排名是從1 到n.本文采用的一種非常簡單的策略.如果生成的候選替代詞和復雜詞組成的規(guī)則存在于PPDB 中,則將該候選詞對應的排名值設置為1;否則,則將該詞對應的排名值置為候選詞數目的1/3.本文設置1/3 的主要原因是不想把不在PPDB 中的候選詞與在PPDB 的候選詞的排名拉開太大.如果這兩種情況下的候選詞的排名拉開太大,就會使得其他排序特征的影響力降低.如果對這兩種情況排名差別很小的話,該特征的影響就會降低.在實驗過程中,該方法選擇的候選詞數目是10,對在PPDB 中候選詞,給出的排名是第1 名;對不在PPDB 中的候選詞,給出的排名是第3 名.在未來的工作中,將致力于在候選詞的排序中設計更合適的策略,如利用PPDB 中提供的已有的值.
詞語簡化方法第1 步一般是復雜詞識別.復雜詞識別一般作為單獨任務出現,本文沒有給出具體的方法.可以采用傳統的詞頻方法,利用大語料統計詞的頻率,低于指定閾值的作為復雜詞.也可以根據具體的詞典設定的等級判斷詞語的復雜度,如歐洲委員會設置的《歐洲共同語言參考框架》[34]對英文詞匯分了A1、A2、B1、B2、C1 和C2 六個標準,其中A1~B1 面向語言水平較低的學生和B2~C2 提供了語言水平較高的詞匯可以作為復雜詞.也可以采用一些機器學習的方法[35].
算法1.BERT-LS
當給定句子S和識別出的復雜詞w以后,采用算法1 BERT-LS 方法來執(zhí)行詞語的簡化.首先,利用BERT-LS 獲取候選替換詞生成(原理在第2.2節(jié)介紹).先對句子進行一定的掩碼和替換,符合BERT的輸入要求,本文采用了雙句輸入(步驟1)~步驟3).然后,利用BERT 獲取[MASK]對應的詞語產生概率(步驟4)),選擇該高概率的詞語作為替換詞(步驟5)),并移除復雜詞和其形態(tài)衍生詞(步驟6)).
然后進行候選詞排序,具體理論在第2.3 節(jié)中介紹.分別采用5 個特征依次對候選詞進行排序,并對排名求和(步驟7)~14)).接著,對所有候選替代詞排序求平均值(步驟15)),選擇名次最高的作為最佳替代詞(步驟16)).最后,對目標復雜詞與最佳候選替代詞進行基于簡單性的比較,判斷是選擇替代詞還是保留原詞(步驟17)~19)).如果最佳候選替代詞的詞頻高于目標復雜詞(詞頻特征),或者最佳候選替代詞的損失低于目標復雜詞(基于BERT 的上、下文產生概率),則選擇最佳候選替代詞作為替代詞,否則不進行替代.本文選用詞頻特征和基于BERT 的上、下文產生概率特征,主要因為詞頻特征代表著詞語的簡單性,上、下文產生概率特征代表著句子的流暢性.
本節(jié)通過官方的評測數據集進行實驗,主要驗證以下問題:
1)候選詞生成的有效性:BERT-LS 與其他候選詞生成方法相比是否具有優(yōu)勢?
2)LS 系統的有效性:在對完整LS 系統評估的過程中,BERT-LS 是否優(yōu)于其他的系統?
3)影響B(tài)ERT-LS 系統的因素:對BERT-LS進行消融實驗,驗證使用不同參數和模型進行實驗對BERT-LS 系統的影響.
4)對BERT-LS 系統進行錯誤分析:對BERTLS 輸出的候選詞和簡化句子進行錯誤分析,探究造成BERT-LS 產生錯誤的可能原因.
標注的詞語簡化數據集通常由一個句子、指定的復雜詞和人工標注的多個可選的替代詞組成.本文選用了被廣泛使用的3 個詞匯簡化評估數據集,具體細節(jié)描述如下:
1)LexMTurk[13]:從維基百科中選出的500 個英語實例.每個實例由句子、目標詞和候選詞組成,候選詞是由50 名英語作為母語的亞馬遜勞務眾包平臺“Amazon Mechanical Turk”的用戶“turker”進行標注完成.由于是英語作為母語的人士進行標注,數據集整體的簡化率是非常高的.唯一不足的是有部分標注存在拼寫錯誤.
2)BenchLS[4]:由929 個英語實例組成,由LSeval 和LexMTurk 兩個數據集結合而成,因此BenchLS 包含最多的目標詞.LSeval 包含429 個實例,包含46 位“turker”和9 名博士為SemEval 2007 詞匯替換任務的數據集的制作的簡單性排序.創(chuàng)建LSeval 時使用密集注釋過程,確保標注的簡化詞比目標詞簡單.該數據集也存在一些拼寫錯誤.
3)NNSeval[25]:由239 個英語實例組成.該數據集是BenchLS 的刪減版,利用母語非英語人士進行以下兩種過濾:過濾實例(目標復雜詞被認為不是復雜詞);過濾替代詞(候選詞被認為是復雜詞).相對其他數據集,NNSeval 更準確地滿足了母語非英語的人士.因為使用了過濾技術,目標復雜詞的數量和候選替代詞的覆蓋范圍都比其他數據集小.
實驗選擇了9 個算法進行比較.根據候選替換詞生成的策略不同,對比算法分為以下5 類:
1)語義詞典:Devlin[7]使用WordNet,Kajiwara等[36]使用Merriam 詞典,Pavlick 等[26]使用復述數據庫.
2)平行語料庫:Biran 等[11]和Horn 等[13]使用維基百科和簡單維基百科提取的平行句子對.
3)詞嵌入模型:Glava? 等[14]使用普通的詞嵌入模型,Paetzold 等[4]使用上、下文感知的詞嵌入模型.
4)混合方法:Paetzold 等[16]使用平行語料和詞向量模型,Devlin 等[17]使用語言數據庫和詞嵌入模型.
5)BERT 的方法:本文方法為BERT-LS.為了更好地進行對比,針對單個句子的目標詞掩碼后作為輸入的方法,稱之為Bert-Single.
REC-LS 方法使用了原論文中提供的代碼進行實驗.在實驗中,預訓練BERT 模型采用BERTLarge,全詞掩碼 模型(網址https://github.com/google-research/bert).BERT-LS 方法中,第1 句中的上、下文信息選用掩蓋比例默認為50%,生成的候選詞的數目是10,候選詞排序中BERT 上、下文產生概率中窗口為5.
假設測試集合有m為樣例,其中第i個樣例對應的復雜詞為wi,人工標注的替代詞集合pi,算法產生的候選替代詞集合為qi,用 #(pi)和 #(qi)分別表示pi和qi集合中詞的數目.
候選替代詞生成的通常使用以下3 個指標進行評估:
1)精確率:生成的候選替代詞中屬于人工標注的詞占候選替代詞總數目的比例:
式中,pi∩qi表示兩個集合中共同的詞語集合.
2)召回率:生成的候選替代詞中屬于人工標注的詞占所有人工標注替代詞總數目的比例:
3)F值:精確率和召回率的調和平均值:
表1 列出了BERT-LS 和對比方法的實驗結果.由表1 可以看出,BERT-LS 在每個數據集上都取得了最高的F值,相較于對比方法中取得最高F值的PaetzoldNE 方法,分別提升了37.4%、19.1%和41.4%.在PaetzoldNE 方法中,當一個候選詞出現在“標簽”中,則該詞的所有形態(tài)變換詞都計算在內,因此獲得了2 個最高精確率,這點從召回率較低上也能夠得出.
表1 候選詞生成過程評估結果Table 1 Evaluation results of candidate word generation process
BERT-LS 在沒有增加額外的步驟的情況下,生成的候選替代詞考慮了詞的形態(tài)問題,候選替代詞中幾乎沒有不同形態(tài)的同一詞語.基于詞向量的方法中,同一詞語的不同形態(tài)間的向量相似度很高,因此都可能出現,導致了召回率較低.對比BERTLS 和BERT-Single 的結果,BERT-LS 取得了更好的效果,因為BERT-Single 在生成候選詞時只考慮了句子的上、下文信息而沒有考慮目標復雜詞的詞義,很多與目標復雜詞詞義差異很大的詞會被作為候選詞.
對LS 系統進行評估,使用與候選詞生成過程同樣的數據集.假設測試集合有m個樣例,其中第i個樣例對應的復雜詞為wi,人工標注的替代詞集合pi,算法最后產生的替代詞為ti.
通常采用的評估指標有以下2 個:
1)精確率:所有樣本中最終選擇的替代詞是目標詞或屬于人工標注詞中的比率;
2)準確率:所有樣本中最終替代詞不是目標詞但在人工標注中的比率.
從這2 個指標可以看出,如果不進行簡化則精確率為1,準確率為0.如果復雜詞全部采用候選詞進行替換,則精確率和準確率具有相同的值.
表2 顯示了各個簡化系統的結果.BERT-LS在所有數據集上都獲得了最高的準確率,相較于PaetzoldNE,分別提升了17.2%、41.9%和30.1%的性能.Rec-LS 取得了較高的精確率和較低的準確率,這是因為該方法在大部分簡化中使用原詞作為最佳替換詞,并沒有實現有效的簡化.整體而言,整個簡化系統的結果與候選詞生成的結果類似,證明了本文提出的排序方法是有效的.
表2 整個簡化系統評估結果Table 2 Evaluation results of the whole simplified system
1)排序特征對系統整體性能的影響
為了確定每一組特征的作用,本文進行了消融實驗,驗證BERT-LS 使用的5 個特征對候選詞排序的影響,結果如表3 所示.
由表3 可知,使用全部5 個特征,BERT-LS在3 個數據集的平均精確率和準確率分別為0.696和0.615,兼顧了精確率與準確率.詞義相似度與詞頻特征在之前的簡化系統中也常被使用.從結果可以看出,如果減少任何1 個特征會降低方法的精確率和準確率,而且這2 個特征對候選詞的排序影響最大.BERT 輸出的預測排名、基于BERT 的上、下文產生概率和PPDB 特征是該方法首次使用.通過觀察3 個數據集的平均結果,如果不使用BERT輸出的預測排名,BERT-LS 的精確率和準確率降為0.662 和0.608;如果不使用基于BERT 的上、下文產生概率,系統的精確率和準確率降為0.686 和0.593;如果不使用PPDB 特征,系統的精確率和準確率降為0.679 和0.606.可以看出,這3 個首次使用的特征對候選詞的排序都是有效的.同時,PPDB 對BERT-LS 的影響最小,可能是由于采用的PPDB 策略簡單,未來研究將嘗試使用不同的策略引入PPDB.
表3 不同特征對候選詞排序的影響Table 3 The influence of different features on the ranking of candidates
總之,5 個特征都為模型的性能帶來了提升,都能有助于提高方法的整體性能.由于這些特征對排序過程帶來的影響不同,未來研究可通過加權的方法獲得最佳排名效果,而不是使用平均排名的方式.
2)不同BERT 模型對系統的影響
為了探究不同BERT 模型對系統的影響,本文在在LexMturk 數據集上使用3 種不同的BERT模型進行實驗:
a)BERT-base (Base):12 層模型,參數量為110 M,其中M 表示1 百萬;
b)BERT-large (Large):24 層模型,參數量為340 M;
c)BERT-large (全詞掩碼):24 層模型,參數量為340M.本文使用的全詞掩碼是一種特殊處理策略,對詞進行掩碼時,掩蓋整個詞語,而不是一個部分.已公開的工作中[29-30]展示了使用全詞掩碼的方式預訓練模型能夠提升模型在NLP 下游任務中的表現.
表4 顯示了使用不同BERT 模型在三個數據集上進行實驗的結果.由表4 可以看出,在完整系統評估中,全詞掩碼模型的系統獲得了最高的精確率和準確率,相對Large 模型的提高還是顯而易見的.此外,Large 模型的性能優(yōu)于Base 模型.由此可以簡單得出,更好的BERT 的模型有助于提供簡化系統的性能.如果有更好的BERT 模型,可以嘗試替換掉本文使用的BERT 模型,達到進一步提高系統性能的目的.
表4 使用不同的BERT 模型的評估結果Table 4 Evaluation results using different BERT models
3)掩碼比例對系統整體性能的影響
為了探究不同掩碼比例對系統的影響,本文將掩碼比例分別設置為0%~90%,在LexMturk 數據集上進行實驗,并使用5 次實驗的平均值作為結果.由于輸入2 個相同的句子到BERT 中,第2 句已經包含了復雜詞的上、下文信息,第1 句除了包含復雜詞還包含上、下文信息.為了降低上、下文信息的重復使用,采用了對第1 句的上、下文進行掩碼.
由圖3 可以看出,隨著掩碼比例的提升,算法的性能有略微的變化,候選詞生成過程大概在50%~80%時取得了最高的精確率、召回率和F值.由圖4可以看出,整個系統的準確率在掩碼比例為50%左右時獲得了最高值.
圖3 不同的掩碼比例對系統的影響Fig.3 The influence of different mask proportion on the system
圖4 不同的掩碼比例對系統的影響Fig.4 The influence of different mask proportion on the system
4)生成候選詞的數量對系統性能的影響
為了探究生成候選詞的數量對系統的影響,本文在LexMturk 數據集上進行實驗,將生成候選詞的數量依次設定為5 的1 到5 倍.圖5 顯示了生成候選詞的數量對系統帶來的影響.
圖5 不同生成候選詞數量的評估結果Fig.5 Evaluation results of different number of candidate words generated
由于人工標注的“標簽”中提供的簡化詞的數量是固定的,隨著生成候選詞數量的增加,精確率必定會降低,召回率一定會升高.從候選替代詞的生成結果中,在生成詞數量為10 時,F值取得了最大值.同時在對系統的評估中,精確率與準確率在候選詞數量為20 時取得最好的結果,之后已逐步穩(wěn)定.由此可知,BERT-LS 系統擁有良好的穩(wěn)定性與魯棒性.
1)候選替代詞生成的錯誤分析
第3.2~3.4 節(jié)實驗都是定量的對BERT-LS進行分析,本文將定性的分析BERT-LS 的結果.當使用LexMturk 數據集進行實驗的過程中,當生成候選詞的數量為10 時,生成的候選詞沒有一個是“標簽”中的合理簡化替代詞的比例僅為1.6%,即BERT-LS 只在8 個句例中沒有產生任何一個有效的替代詞.當生成的候選詞數量為15 時,該比例降為0.8%;當生成的候選詞數量為30 時,該比例降為0.2%.
在本節(jié)中,對生成候選詞數量為10 時,獲得的候選詞沒有一個出現在“標簽”中的原因進行具體分析.表5 展示了8 個句例,給出了原句、人工標注的“標簽”、排序后的候選替代詞和最終替代詞,復雜詞用加粗和下劃線標記.
由表5 可以看出,句子5 中的目標復雜詞“demonstrated”在語境中有“證明、證實、示范、演示”的意思,但人工標注給出的注釋都是“展示”的含義,這顯然是不合理的,而生成詞中的“proved(證明)”是合理的簡化替代詞;句子7 中,“dynamic energy”也被翻譯為“動能”,因此“dynamic(動力的)”也是合理的簡化替代詞;句子8 中,生成的“altered(修改)”,“modified(調整)”也是合理的簡化替代詞.這3 個句例是由于人工注釋不完備導致的.
表5 LexMTurk 數據集中的簡化句例Table 5 Simplified sentences in LexMTurk
而其余的5 個句例(句1、句2、句3、句4 和句6)沒有生成任何一個合適的候選詞.如果生成的“最終替代詞”不是原詞的話,該詞語簡化就可能改變句子原有的意思.從整體上看,BERT-LS 為這些句子產生的候選詞放在原有的上、下文環(huán)境中都是非常流暢的.可能是因為BERT-LS 生成候選詞時是考慮在該位置最有可能出現的詞,從而生成和原詞意思無關甚至相悖的候選詞.也有少數產生的候選詞出現異常,如在第7 句中生成的候選詞有“the,momentum,velocity”.這樣的情況是非常少的,但是這個例子前幾個候選詞還是符合上、下文的,可能的原因就是訓練BERT 的語料缺乏大量的針對該句子的上、下文情況.在未來的工作中,計劃針對以上出現問題,從以下2 個方面展開工作:1)在BERT 生成“[MASK]”位置的詞語中引入適當的同義詞的語義知識,使其更多關注生成詞與原有詞之間的相似度;2)獲取詞語簡化的平行數據,利用平行數據對BERT 進行微調,然后利用微調后的BERT 模型進行詞語簡化的候選詞生成.
2)候選詞排序的錯誤分析
BERT-LS 幾乎所有的樣本都能找到一個或者多個合適的替代詞,但是最終系統結果并不能總選擇最合適的候選替代詞作為最終替代詞,本節(jié)將定性的分析可能的原因.表6 為未能達成有效簡化的句例.主要有兩種情況導致找的最終替代詞不能滿足要求.第1 種情況是排序策略沒有選擇最佳替代詞,而是選擇了原詞.由表6 可知,句1 與句3 生成的最佳替代詞是合理的簡化替代詞,同時也在標簽中,但是系統經過比較詞頻與交叉熵損失后并沒有使用最佳替代詞而是使用原詞作為最終替代詞.這是因為句1 中的生成詞“divided”的詞頻Zipf 值為3.649769,而原詞“classified”的詞頻Zipf 值為3.83091,系統認為“classified”比“divided”更加簡單;句3 也是這樣,生成詞“noted”的Zipf 值為3.682769,而原詞“reported”的Zipf 值為4.179451.因此在句1 和句3 中未能使用最佳替代詞作為最終替代詞.第2 種情況是排序策略沒有選擇最合適的替代詞.在句2 和句4 中,生成的最佳候選詞并沒有出現在標簽中,但是排名更靠后的候選替代詞在標簽中出現.經檢查發(fā)現,句2 和句4 中的最佳候選詞也是合理的簡化候選詞,但是在標簽中沒有出現.對更多輸出的結果進行分析發(fā)現,BERT-LS 在很多樣例中產生了正確的結果,由于標注數據集的原因導致沒有識別出來.因此,BERT-LS 在候選詞生成和排序中比在官方數據集上展示的結果有著更好的性能.
表6 LexMTurk 數據集中的簡化句例Table 6 Simplified sentences in LexMTurk
本文提出了一種基于預語言訓練表示模型的詞語簡化方法BERT-LS,利用BERT 的掩碼語言模型進行候選詞的生成和排序.在不依賴平行語料庫或語言數據庫的情況下,BERT-LS 在生成候選替換過程中既考慮了復雜詞又考慮了復雜詞的上、下文.在3 個的基準數據集上進行實驗,實驗結果驗證了BERT-LS 取得了最好的性能.由于BERT 只利用了原始文本上進行訓練,針對不同語言的BERT模型(如中文、德語、法語和日語等)也被提出來,因此該方法可以應用到對應語言中進行詞語簡化.
BERT-LS 的一個限制是只能生成一個詞而不是多個詞來替換復雜的詞.下一步計劃擴展BERTLS 支持多個詞的替代,進一步提高模型的實用性.