張雪,陳鈺楓,徐金安,田鳳占
(1.北京交通大學計算機與信息技術學院,北京 100044;2.北京天潤融通科技股份有限公司,北京 100176)
復述生成任務是給定一個原句生成與其語義相同但用詞或句法不同的復述句,即生成與原句語義一致、表達具有多樣性的句子。作為自然語言處理領域的基礎研究課題之一,復述生成被廣泛應用于其他下游任務中,如自動問答系統[1-2]、文本生成[3]、機器翻譯[4]等,在這些場景下,復述生成可以作為一種有效的數據增強策略,通過生成高質量的復述句提高原始訓練數據的多樣性[5],進而提升下游任務中模型的性能和魯棒性[6]。
近年來,隨著GPT[7]、BART[8]等生成式預訓練模型被提出,復述生成技術已經取得了長足的進步,能夠生成自然流利的復述句?;谶@些預訓練語言模型,使用復述語料對其進行微調就可以得到一個可用的復述生成模型。盡管這些技術已經能夠滿足一般場景的需求,然而在實際中文應用場景下,當前中文復述模型的詞匯約束能力仍然較弱,導致其在一些特定場景下的應用受限。例如,在實際對話系統業務下意圖識別任務的冷啟動中,試圖針對一條原句生成多條近義的復述句來增強意圖識別模型的訓練語料,為了保證生成結果的多樣性,通常會使用隨機采樣的解碼策略進行多次解碼。然而,這種解碼的隨機性在缺乏約束的情況下會造成專有名詞丟失的問題,導致生成的復述句與原句產生語義偏移,從而影響意圖識別模型的準確率。
針對上述問題,本文提出兩種專有名詞增強的復述生成方法,分別用于解決單個專有名詞和多個專有名詞的保留問題。針對原句中包含單個專有名詞的場景,提出基于占位符的復述生成模型。對于訓練數據中包含專有名詞的復述句對,使用一個特殊占位符替換句對中的專有名詞,使得模型在生成的復述句中能夠保留原句中的占位符。之后,再將占位符替換回對應的專有名詞,從而顯式地保證專有名詞生成的準確率。針對原句中包含多個專有名詞的場景,提出詞匯約束的復述生成模型,將句對中的多個專有名詞依次拼接并標記后拼接在原句末尾,通過訓練使模型學習從原句中保留專有名詞的能力,從而隱式地賦予模型生成多個專有名詞的能力。
同時,考慮到實際應用場景中通常缺乏參考復述句來評估生成復述句的質量,本文設計一種全新的參考句無關的評估指標,從語義相關性和表達多樣性兩方面綜合評估復述句的質量,通過將原句與復述句之間基于BLEU 的卡方分布函數與基于文本向量余弦距離的線性函數進行加權求和,使得衡量下的最優復述句能夠滿足語義相似度高,同時表述相似度適中的要求。
為了更加全面且真實地驗證本文所提方法的有效性,以真實對話系統業務中的意圖識別冷啟動作為下游任務,用本文提出的方法生成意圖識別模型的訓練語料,然后檢驗意圖識別模型的識別效果。
近年來,隨著各種深度神經網絡模型的快速發展,復述生成的方法也逐漸從傳統基于復述模板或規則的方法轉為基于深度神經網絡的方法[9]。目前的研究熱點有對訓練方法和模型結構的改進[10-12]、對可控復述句生成的探究[13-15]以及無監督場景下的復述句生成[16-18],本文重點關注可控復述生成。可控復述生成主要分為2 個方向,即顯式可控和隱式可控。顯示可控主要是句法可控的復述生成,是指通過給定的句子模板或者句法解析樹,使模型生成指定格式的復述句。SUN等[14]利用BART 模型在原句后拼接原句句法解析樹和目標句句法解析樹作為編碼器的輸入,訓練模型對目標句法的生成能力。YANG等[15]基于Tree-Transformer,設計了句法解析樹編碼器同時捕捉句法節點的父子關系和兄弟關系,從而充分利用句法解析樹的信息來指導復述句的生成。隱式可控復述生成方法中不需要人為指定復述句的模板或句法樹,而是通過簡單的控制機制來控制模型生成符合特定質量要求的句子。BANDEL等[19]提出了質量約束的復述生成模型,通過給定原句及代表語義、句法、詞匯距離的質量控制三維向量,模型可以生成符合質量約束的句子,根據具體任務的不同要求來改變質量控制向量的取值即可生成指定質量特性的句子。這些論文基于句法層級或復述句質量層級研究可控的復述生成,本文主要針對如何保留復述句中的專有名詞探究合理的復述生成模型。
復述句的質量評估是復述生成領域的研究熱點和難點,評估指標主要分為2種類型,分別是基于統計的評價指標和基于預訓練模型的評價指標[20]?;诮y計的評價指標有BLEU[21]、ROUGE[22]、METEOR[23]和chrF++[24]等,基于預訓練模型且不需要微調的評價指標有BERTScore[25]、MoverScore[26]等,基于預訓練模型且需要微調的評價指標有BLEURT[27]、ParaBLEU[20]等。一般情況下,基于統計的評價指標和不經過微調的評價指標使用更方便且對領域變化不敏感,經過微調的評價指標對特定領域的復述句評估效果更好。上述指標在應用時大部分是與參考復述句進行計算,而在實際應用時并無參考復述句。本文綜合考慮語義一致性與表達多樣性提出一個無需參考句的評價指標,通過與原句進行相關的計算來評估生成復述句的質量。
本文采用BART 模型[8]作為復述生成的基礎模型,模型由編碼器和解碼器構成,結構圖見圖1,編碼器對原句進行編碼,解碼器則根據編碼后的向量化表示自回歸地生成復述句。本節介紹無約束條件下的復述生成模型、基于占位符的復述模型和詞匯約束的復述模型,同時介紹提出的參考句無關的評價指標。

圖1 BART 模型結構Fig.1 Structure of BART model
本文的基準復述生成模型(PG)不考慮專有名詞[14]在復述過程中的保留,該模型基于圖1 所示的編碼器-解碼器架構實現。給定原句X=(x1,x2,…,xL),長度為L,以及目 標復述句Y=(y1,y2,…,yT),長度為T,PG 模型的學習目標為最小化損失函數:
經過訓練得到PG 模型后,給定原句生成對應的復述句時,在解碼器端采用隨機采樣的解碼策略,就可以生成多條復述句。
為了解決單個專有名詞的保留問題,本文首先提出基于占位符的復述生成模型(PBPG)。該模型的核心思想是在復述之前,將原句中的專有名詞替換為一個占位符。PBPG 模型能夠在生成的復述句中保留這個占位符,再通過后處理將占位符替換回原來的專有名詞,實現專有名詞的保留。訓練時,本文將訓練數據中源端和目標端同時出現的專有名詞替換為占位符[key],如圖2 所示,構造出含有占位符[key]的專有名詞訓練句對。

圖2 PBPG 模型的訓練數據Fig.2 Training data of PBPG model
經過訓練得到PBPG 模型,將含有占位符[key]的原句輸入模型進行解碼,就可以生成含有占位符[key]的復述句,再將占位符[key]替換回原始專有名詞,即可得到專有名詞保留的復述句。當原句中含有單個專有名詞時,PBPG 模型可以很好地保留專有名詞。
當原句中含有多個專有名詞時,如果全部替換成占位符[key],在生成句子反向替換回專有名詞時無法確定專有名詞的順序,導致PBPG 模型不適用于多個專有名詞保留的復述句生成,本文提出詞匯約束的復述生成模型(LCPG),將多個專有名詞作為控制元素指導復述句的生成,模型的輸入見圖3。通過引入專有名詞分隔符[sp],將需要保留的專有名詞用分隔符[sp]相連拼接到原句末尾。同時為了對專有名詞和原句作區分,引入segment_id,在訓練時對原句和專有名詞賦不同的segment_id 值,確保模型對原句和專有名詞的區分能力,從而學到對專有名詞的復制能力。

圖3 LCPG 模型編碼器的輸入Fig.3 Input of LCPG model encoder
假設原句中需要保留的專有名詞列表為K=(k1,k2,…,ke),模型編碼器端輸入單詞序列為(x1,x2,…,xL,[sp],k1,[sp],k2,…,[sp],ke),對于上 述引入的segment_id,形式化地,對于LCPG 模型,其編碼器端每個位置的輸入ri可以表示為:ri=xi+pi+si,其 中,pi為第i個位置 的位置編碼,si為xi對應的segment 向量。解碼器端的輸入為Y=(y1,y2,…,yT),LCPG 模型的學習目標為最小化損失函數:
當句子有多個專有名詞時,為了防止專有名詞之間的順序限制生成復述句的多樣性,在實際構建訓練語料時,本文會把專有名詞列表隨機打亂順序再和原句拼接作為編碼器的輸入。同時,由于LCPG生成的結果即為復述句本身,因此相比于PBPG 減少了后處理的步驟。
為了評估在在無參考復述句場景下生成復述句的質量,本文綜合考慮語義一致性和表達多樣性,設計了RFSM 評價指標,計算公式如下:
其中:sim(x,p)是生成復述句p與原句x用同一編碼模型編碼后得到句向量的余弦相似度,取值范圍為[-1,1],代表生成復述句p與原句x的語義一致性;div(x,p)則反映的是生成復述句的多樣性,函數圖像見圖4,其中的selfbleu(x,p)是生成句子p與原句x的BLEU-1 值和BLEU-2 值的幾何平均值,取值范圍為[0,100]。

圖4 div(x,p)的函數圖像Fig.4 Function image of div(x,p)
為保證與余弦相似度的最值在一個量級,本文通過設置u=0.1×selfbleu(x,p),調整div(x,p)的取值范圍為[0,1],其設計思想是一個高質量的復述句與原句的字面相似度,即selfbleu(x,p)應保持在一個適中的范圍內,過大或過小時對應的復述句質量都不高:過大時說明生成的復述句與原句重復字過多,表達可能不具有多樣性;而過小時生成的復述句可能與原句有一定的語義偏移。可以通過調整u的取值,選擇出符合預期的復述句,這里本文設置u=4。確定u的取值后可以計算得到C和T的表示,即C=此外,α是權重參數,用來調整語義一致性和句子多樣性的權重貢獻比,這里本文設置α=0.4。最終RFSM 的值越大,代表生成復述句的質量越高。
為了驗證本文提出的方法在實際應用場景中的有效性,以真實對話系統業務中的意圖識別冷啟動作為下游任務,通過實驗來評估本文方法生成語料的有效性。
對于復述模型的訓練語料,本文從開源的中文復述語料[28]中共收集40 萬個的問題簇,其中每個問題簇包含若干的相似語料,每個問題簇內的所有語料互為復述句,經過排列組合等處理后,共生成1 192 萬個復述句對。為了得到符合要求的高質量復述句對,本文采用一定的過濾策略對得到的復述句對進行過濾,最終構成原始復述句對訓練集D1,共包含709 萬個句對。過濾策略從句子的語義一致性和表達多樣性兩方面考慮:語義一致性通過計算句對向量的余弦相似度得到,閾值為0.8,即余弦相似度大于0.8 的句對保留;表達多樣性通過計算句對的BLEU-1 和BLEU-2 值的幾何平均值得到,閾值為85,即BLEU 值小于85 的句對保留,通過過濾可以在舍棄掉訓練集中重復字過多或語義不一致的句對。
在構建PBPG 模型的訓練數據時,基于原始訓練集D1,對于每個句對,本文首先對句對中的2 個句子進行分詞,通過詞性判斷,找出2 個句子的公共名詞之一作為該句對的專有名詞,分別將其替換為占位符[key],構建291 萬條含有占位符的復述句對數據集D2,最終PBPG 模型的訓練集為D1∪D2。
在構建LCPG 模型的訓練數據時,由于涉及到多個專有名詞,綜合實際項目中真實數據的表現情況,設置原句中支持保留的專有名詞最多為4 個。基于原始訓練集D1,本文首先計算每對復述句的全部公共子串集,然后對集合中的子串進行過濾,選出適合作為約束詞匯的子串,構造帶有約束詞的復述句對,得到342 萬條帶有多個詞匯約束的復述句對D3,最終LCPG 模型的訓練集為D1∪D3。
本文中的所有復述模型均以huggingface 庫中開源的BART-base-chinese 模型(https://huggingface.co/fnlp/bart-base-chinese)為主干網絡并進行微調,相關訓練參數如表1 所示。

表1 模型的訓練參數Table 1 Training parameters of the model
為了更好地探究模型對不同類型句子的復述能力,從不同領域、不同長度以及是否含有專有名詞這3 個角度考慮,挑選句子40 條句子用PG 模型、PBPG模型和LCPG 模型分別進行復述句生成,部分例句見表2,分別從語義一致性和表達多樣性兩方面對生成的復述句進行質量評估,對比不同模型的復述能力。在表2 中,加粗代表為專有名詞。

表2 復述效果評估的部分原句Table 2 Part of the original sentence for evaluating the effectiveness of paraphrasing
在生成復述句時,通過設置batch size=100 使模型對每條句子同時生解碼生成100 條復述句,經過去重后分別得到每個句子的復述句候選集,通過計算候選集中復述句與原句的句向量余弦相似度cosine、self-BLEU 值以及RFSM 的取值 來衡量生成復述句與原句的語義一致性和表達多樣性,對于含有專有名詞的句子,同時計算生成復述句的專有名詞保留率(KRR),最終結果見表3,其中加粗表示最優數據。

表3 不同模型復述效果對比Table 3 Comparison of paraphrasing effects of different models
KRR 的結果表明,在專有名詞的保留程度上LCPG 模型優于PBPG 模型,同時兩者均顯著優于PG 模型,直接證明了本文方法解決專有名詞丟失問題的有效性。由于PG 模型的專有名詞保留能力最差,因此PG 模型的self-BLEU 值最小。余弦相似度cosine 的值代表了不同模型生成的復述句與原句的語義一致性,結果表明,PBPG 模型生成復述句的語義偏移最小,但綜合評價指標RFSM 的結果中LCPG模型的表現最好。綜合表3 結果可知LCPG 模型生成的復述句中專有名詞保留率最高,語義損失最小,生成的復述句質量最高。
在現存任務型對話系統的意圖識別模塊內,針對每個項目下設置的意圖或標準問題,真實對話場景下不同用戶關于同一意圖的表達方式是多樣的,為了提高意圖識別的準確率,在冷啟動時項目實施人員必須在一個意圖下配置大量的相似語料作為意圖識別模型的訓練語料,這個過程往往會耗費大量的時間和精力。通過引入復述生成模型,給定原句,模型可以生成一批與原句語義相同且表達具有多樣性的復述句直接作為意圖識別模型的訓練語料,從而解決意圖識別模塊的冷啟動問題,提高項目實施的效率。
為了驗證本文提出的方法在實際應用場景中的有效性,以真實業務下的意圖識別任務作為下游任務,通過實驗來評估本文方法生成語料的有效性。意圖識別數據集的原始意圖類別從真實項目中自行抽取構造得到,主要來自金融和餐飲兩個領域,共107 個意圖,其中包括27 個含專有名詞的意圖和80 個不含專有名詞的意圖,每個意圖包含人工配置的3 條種子句,即用來輸入復述生成模型的原句。對應的意圖識別任務的測試集來自于真實業務中收集的歷史對話數據,通過對連續7 天收集的對話歷史中用戶的問題進行提取、去重和人工標注,得到包含1 746 個問題的測試集。
分別用PG 模型、PBPG 模型和LCPG 模型對每個意圖下的種子句進行復述語料生成,對生成的語料經過去重降噪后直接作為意圖識別模型的訓練語料。意圖識別模型基于TextCNN 模型[29]實現了融合種子句權重的分類模型。本文綜合考慮了Accuracy、Micro-F1、Macro-F1 和Weight-F1 作為意圖識別模型的評價指標,對比結果見表4,其中加粗表示最優數據,第一行Seed 代表未使用復述模型做訓練語料增強,即每個意圖下只有種子句作為訓練語料,其余3 行則是用不同的復述生成模型根據種子句對每個意圖進行語料擴充后訓練得到的意圖識別模型。

表4 不同模型意圖識別結果對比Table 4 Comparison of intention recognition results of different models %
對比未經過數據增強的模型的識別結果可知,經過復述語料增強后的模型識別效果有顯著提升,這說明了復述生成模型解決意圖識別任務冷啟動問題的有效性。分別對比不同復述模型的具體識別結果可知,LCPG 模型生成的復述句作為訓練語料訓練得到的意圖識別模型識別準確率最高,綜合考慮不同的F1 值,LCPG 模型也優于PBPG 模型和PG 模型,即加入專有名詞約束的LCPG 模型生成的復述句質量較高,這進一步證明了本文提出的模型能生成高質量的復述句,同時減少相似意圖下混淆語料的比例,提高意圖識別模型的準確率,解決意圖識別任務的冷啟動問題,提升新項目的實施效率。
由于不同的解碼策略會影響模型生成句子的數量和多樣性,基于LCPG 模型對采用不同解碼策略時生成復述句的質量變化進行探究,主要對比topn解碼、核采樣(topp)解碼中不同參數的取值以及溫度系數t的變化對生成復述句的影響。采用的方法是針對一個句子,使模型采用不同的解碼策略解碼生成同樣數量的復述句,經過去重后計算生成復述句的RFSM 值,對不同的解碼策略進行評估,對比結果見圖5。從圖5 中可以觀察得到,n和p的取值越大,去重后所剩復述句的數目越多,意味著生成的復述句表達更具多樣性,但同時也伴隨RFSM 指標值的下降,這意味著生成的復述句質量偏離了理想情況,綜合考慮生成復述句的數量以及評估指標RFSM 的平均值,本文在生成復述句時采用n=200 的topn解碼策略。

圖5 LCPG 模型在不同采樣策略下復述句的質量變化Fig.5 The quality changes of paraphrases under different sampling strategies in the LCPG model
此外,在意圖識別任務上探索評價指標RFSM的最優權重參數,基于LCPG 模型,采用網格搜索的方法尋找意圖識別準確率最高時的最優權重參數,結果見圖6。

圖6 LCPG 模型在不同參數下意圖識別的準確率Fig.6 Accuracy of LCPG model in intention recognition under different parameters
從圖6 中的最后一行和最右側一列可以看出,隨著u和α的不斷增大,意圖識別任務的準確率先增大后減小,在圖6 中的標注處即當α=0.4、u=4 時取得最大值,表明在意圖識別任務中表現更好的高質量復述句須同時滿足與原句語義一致且表達具有多樣性。
對于現有中文復述生成模型對原句中專有名詞無法保留的問題,本文提出基于占位符的復述生成模型和詞匯約束的復述生成模型,分別解決單個專有名詞和多個專有名詞的保留問題。實驗結果表明,對比不同模型生成復述句的質量以及在意圖識別任務中的準確率,詞匯約束的復述生成模型能夠生成與原句語義一致且表達具有多樣性的高質量復述語料,對應語料訓練得到的意圖識別模型準確率最高。在實際對話系統業務場景中,通過復述生成模型增強意圖識別任務的訓練語料,可以解決冷啟動問題,進而顯著提高新項目的實施效率。在未來的工作中,將繼續研究如何針對一條句子生成多條高質量的復述句,考慮將句法結構引入并改進生成策略,同時研究如何將通用的復述模型快速遷移到一個新的領域內。