蔡中祥,孫建偉
1(中國(guó)科學(xué)院大學(xué),北京100049) 2(中國(guó)科學(xué)院 沈陽(yáng)計(jì)算技術(shù)研究所,沈陽(yáng) 110168)
隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,越來(lái)越多的機(jī)構(gòu)更傾向于使用網(wǎng)絡(luò)平臺(tái)發(fā)布信息,人們?cè)谌粘I詈凸ぷ魃钪谐31回S富的平臺(tái)信息所包圍.因此,人們迫切需要尋找一條能夠快速、準(zhǔn)確獲得所需信息的途徑.自動(dòng)文本摘要技術(shù)能夠快速地精簡(jiǎn)源文本,并根據(jù)其主要內(nèi)容來(lái)生成短文本摘要,有效地為人們快速獲取信息提供了很大的便利.
根據(jù)文本摘要的實(shí)現(xiàn)方式可分為抽取式摘要和生成式摘要.抽取式摘要通過(guò)對(duì)源文本句子根據(jù)重要度重新排序組合,抽取能夠表示源文本主要信息的短語(yǔ)、句子以生成摘要.該方法簡(jiǎn)單實(shí)用,生成的摘要全部來(lái)源于源文本.但是通常會(huì)有句子間不連貫的問(wèn)題,同時(shí)還會(huì)產(chǎn)生一些冗余詞.生成式摘要通常使用編碼器獲取源文本的上下文特征信息,利用自然語(yǔ)言生成技術(shù)生成摘要.雖然該方法比抽取式方法生成的摘要更具有語(yǔ)義性,但是會(huì)存在生成摘要重復(fù)和生成未登錄詞等問(wèn)題.近年來(lái),隨著在seq2seq框架中使用注意力機(jī)制,源文本和摘要之間加強(qiáng)了相關(guān)性聯(lián)系,生成摘要的通順性也相繼得到改善,文本摘要技術(shù)也愈發(fā)成熟.
本論文首次將文本摘要技術(shù)應(yīng)用在黨建新聞?lì)I(lǐng)域中,提出Tri-PCN模型為長(zhǎng)文本的黨建新聞生成合適的新聞標(biāo)題.本論文的創(chuàng)新之處在于:1)使用Transformer模型作為編碼器和解碼器,利用多端注意力機(jī)制從新聞長(zhǎng)文本序列中提取多層次文本特征,使模型更加適合黨建新聞長(zhǎng)文本序列的特點(diǎn).2)從指針生成網(wǎng)絡(luò)中引入指針復(fù)制功能,使生成的新聞標(biāo)題保留新聞文本中關(guān)鍵的黨建信息.在本論文構(gòu)建的黨建新聞數(shù)據(jù)上,通過(guò)3個(gè)模型的實(shí)驗(yàn)對(duì)比,表明本文提出的Tri-PCN模型更適合黨建新聞?lì)I(lǐng)域的文本摘要任務(wù).
自動(dòng)文本摘要作為自然語(yǔ)言處理的主要任務(wù)之一,人們?cè)缫验_(kāi)展大量的研究.早期的研究主要是抽取式文本摘要技術(shù),根據(jù)關(guān)鍵詞、句子位置等特征,計(jì)算關(guān)鍵詞、關(guān)鍵句的重要度,選擇最得分最高的詞和句子組成摘要.2004年,Mihalcea等[1]將源文本中的句子作為圖的節(jié)點(diǎn),圖中邊的權(quán)重通過(guò)計(jì)算節(jié)點(diǎn)之間的相似度獲得.然后使用基于圖算法的TextRank算法計(jì)算句子的重要度,將句子重新排序重組,組成新的摘要.
隨著深度學(xué)習(xí)的發(fā)展,利用神經(jīng)網(wǎng)絡(luò)模型的生成式方法也得到廣泛應(yīng)用.2015年,Rush等[2]首次提出在seq2seq框架中應(yīng)用注意力機(jī)制的文本摘要模型.該模型以卷積神經(jīng)網(wǎng)絡(luò)(CNN)為編碼器,神經(jīng)網(wǎng)絡(luò)語(yǔ)言模型(NNLM)為解碼器,結(jié)合注意力機(jī)制生成摘要,是生成式文本摘要技術(shù)的一項(xiàng)突破性工作.2016年,Chopra等[3]在Rush等[2]的工作成果上使用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)替代卷積神經(jīng)網(wǎng)絡(luò)(CNN)作為編碼器,利用循環(huán)神經(jīng)網(wǎng)絡(luò)的時(shí)序性提高了摘要的質(zhì)量.同年,Nallapati等[4]將seq2seq框架中的編碼器和解碼器全部替換為循環(huán)神經(jīng)網(wǎng)絡(luò),同時(shí)在編碼器中加入了額外的詞性和實(shí)體信息特征,進(jìn)一步提高了摘要的質(zhì)量.雖然基于seq2seq框架的生成式文本摘要技術(shù)逐漸成為主流,然而仍然存在一些問(wèn)題,比如生成未登錄詞(OOV)、生成詞重復(fù)等問(wèn)題.2015年,Vinyals等[5]提出了在seq2seq框架中添加指針網(wǎng)絡(luò)的Ptr-Net模型,指針結(jié)構(gòu)[6-8]逐漸成為主流.2016年,Gu等[9]提出了添加拷貝機(jī)制的CopyNet模型.兩種模型在生成摘要時(shí)不僅可以從詞表中選擇詞,還可以從源文本中直接拷貝詞,有效緩解了未登錄詞問(wèn)題.2017年,See等[10]提出的指針生成網(wǎng)絡(luò)(Pointer-generator network)將指針機(jī)制和拷貝機(jī)制同時(shí)添加到seq2seq框架中,緩解了未登錄詞和生成詞重復(fù)問(wèn)題.2018年,Gehrmann等[11]等提出基于一種注意力機(jī)制自上而下選擇內(nèi)容的摘要生成模型,Lin等[12]重新使用卷積神經(jīng)網(wǎng)絡(luò)作為編碼器對(duì)源文本進(jìn)行全局編碼,在文本摘要任務(wù)上取得了很大的提高.Shen等[13]根據(jù)語(yǔ)言結(jié)構(gòu)提取句子特征向量,并構(gòu)建AM-BRNN模型生成摘要.同年,越來(lái)越多的研究者開(kāi)始將強(qiáng)化學(xué)習(xí)應(yīng)用在文本摘要任務(wù)中.Paulus等[14]首次在文本摘要任務(wù)上引入了強(qiáng)化學(xué)習(xí),通過(guò)對(duì)生成摘要的評(píng)估指標(biāo)進(jìn)行聯(lián)合優(yōu)化,緩解了曝光偏差問(wèn)題.Xu等[15]提出一種基于卷積自注意力編碼并結(jié)合強(qiáng)化學(xué)習(xí)策略的強(qiáng)化自動(dòng)摘要模型.
經(jīng)過(guò)實(shí)驗(yàn)研究表明,基于seq2seq框架的生成式文本摘要模型更適合短文本標(biāo)題的生成,對(duì)于過(guò)長(zhǎng)的文本生成標(biāo)題效果比較差.原因在于,編碼器無(wú)法充分的從過(guò)長(zhǎng)的文本序列提取上下文信息特征,產(chǎn)生長(zhǎng)期依賴(lài)問(wèn)題.而以RNN為代表的編碼器因?yàn)闀r(shí)序性特點(diǎn),無(wú)法并行計(jì)算;在模型訓(xùn)練時(shí)需要花費(fèi)大量的時(shí)間,同時(shí)還需要大量的計(jì)算資源.因此,本文針對(duì)上面兩種缺點(diǎn)加以改善,并成功應(yīng)用在黨建新聞?lì)I(lǐng)域中.
本文提出的融合指針網(wǎng)絡(luò)的黨建新聞?lì)I(lǐng)域文本摘要模型結(jié)構(gòu)如圖1所示.該模型是基于編碼器-解碼器結(jié)構(gòu)提出的,由3部分組成,第1部分是新聞文本編碼器,輸入分好詞的新聞文本,經(jīng)過(guò)詞嵌入后得到文本的詞向量(Embedding)表示,使用Transformer模型[16]的多端注意力機(jī)制(Multi-Head Attention)提取新聞文本特征,得到K特征矩陣和V特征矩陣;第2部分是指針復(fù)制網(wǎng)絡(luò),通過(guò)編碼器提取的兩個(gè)特征矩陣與解碼器提取的Q特征矩陣計(jì)算,得到復(fù)制指針pgen,使用復(fù)制指針選擇新聞標(biāo)題詞是從詞表中生成還是從新聞文本中復(fù)制;第3部分是新聞標(biāo)題解碼器,同編碼器相似,輸入分好詞的新聞標(biāo)題,詞嵌入后得到標(biāo)題的詞向量表示,使用Transformer模型提取新聞標(biāo)題特征,得到Q特征矩陣,利用復(fù)制指針選擇的標(biāo)題詞生成新聞標(biāo)題.
圖1 模型總體結(jié)構(gòu)Fig.1 Modestructure
為了將新聞文本輸入到模型中進(jìn)行處理,需要使用編碼器對(duì)文本進(jìn)行特征提取.目前流行的編碼器結(jié)構(gòu)為雙向長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(Bidirectional Long Short-Term Memory,BiLSTM[17]),但是在黨建領(lǐng)域中,新聞文本的長(zhǎng)度普遍比普通文本摘要任務(wù)長(zhǎng)3-5倍.因此,本文采用Transformer模型作為編碼器.Transformer編碼器的輸入與其他編碼器不同,是新聞文本分詞后的詞向量(Embedding)與詞位置向量(PositionalEncoding)的累加組成.然后使用多端注意力機(jī)制(Multi-HeadAttention)對(duì)輸入詞向量進(jìn)行特征提??;使用殘差連接和層歸一化(Add&Norm)用來(lái)緩解梯度消失、加速模型訓(xùn)練時(shí)收斂.相比于雙向長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)的優(yōu)點(diǎn)是:1)處理更長(zhǎng)的文本序列;2)可以高效的并行化計(jì)算.Transformer模型結(jié)構(gòu)如圖2所示.
圖2 Transformer編碼器Fig.2 Transformer encoder
3.1.1 詞嵌入
給定一個(gè)新聞文本序列S=(w1,w2,…,wn),對(duì)文本進(jìn)行分詞.在輸入到編碼器前,使用word2vec詞向量訓(xùn)練工具把每個(gè)詞轉(zhuǎn)換成向量表示X=(x1,x2,…,xn).由于Transformer編碼器并不像雙向長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)編碼器具有時(shí)序性,因此使用正余弦函數(shù)為每個(gè)詞添加一個(gè)位置編碼T=(t1,t2,…,tn),計(jì)算方式如式(1)、式(2)所示:
PE(pos,2i)=sin(pos/1000002i/dmodel)
(1)
PE(pos,2+1)=cos(pos/1000002i/dmodel)
(2)
其中,pos為詞在句子中的位置,i為向量的某個(gè)維度,dmodel為詞向量的維度.最終的詞嵌入向量由詞向量與位置編碼向量通過(guò)相加得到.
3.1.2 多端注意力特征提取模型
將新聞文本序列的詞嵌入向量分別乘以3個(gè)不同的參數(shù)矩陣WQ、WK、WV進(jìn)行線(xiàn)性映射,得到Transformer模型的輸入 Q矩陣、K矩陣和V矩陣.為了更好的捕獲不同層次文本序列的特征信息,該模型使用了由多個(gè)縮放點(diǎn)積自注意力(Scaled Dot-Product Attention)構(gòu)成的多端注意力模型,多端注意力模型模型結(jié)構(gòu)如圖3所示.
圖3 多端注意力模型結(jié)構(gòu)圖Fig.3 Multi-head attention model structure
其中,縮放點(diǎn)積自注意力的計(jì)算方式如式(3)所示:
(3)
其中,dk=64為縮放因子,通過(guò)縮放因子的歸一化保證訓(xùn)練時(shí)梯度的穩(wěn)定.不同縮放點(diǎn)積自注意力模型得到不同的輸出向量Z,將8個(gè)輸出向量進(jìn)行拼接并通過(guò)一個(gè)全連接層后得到多端注意力模型的輸出,計(jì)算方式如式(4)所示:
MultiHead(Q,K,V)=Concat(head1,…,head8)WO
(4)
接著加入殘差連接以緩解梯度消失問(wèn)題,同時(shí)對(duì)輸出進(jìn)行層歸一化,加快訓(xùn)練時(shí)模型收斂.之后,將輸出向量輸入到一個(gè)全連接前饋神經(jīng)網(wǎng)絡(luò)層,該全連接層由兩次變換構(gòu)成.第1次通過(guò)ReLU激活函數(shù)做非線(xiàn)性映射,第2次是使用線(xiàn)性激活函數(shù)恢復(fù)到原始維度,計(jì)算方式如式(5)所示:
FFN(x)=max(0,xW1+b1)W2+b2
(5)
為了獲取多層次的新聞文本信息,得到更加充分的新聞本文表征,在編碼階段總共堆疊6個(gè)相同的模塊進(jìn)行計(jì)算,得到兩個(gè)特征矩陣K矩陣和V矩陣.
在解碼階段,同樣使用一個(gè)Transformer模型作為解碼器用來(lái)生成新聞標(biāo)題.為了能夠從輸入的新聞文本中抽取更多的重要信息,模型中添加了指針生成網(wǎng)絡(luò).模型自動(dòng)生成標(biāo)題詞的功能,同指針生成網(wǎng)絡(luò)從輸入文本中復(fù)制詞的功能相結(jié)合,有效提高了生成的新聞標(biāo)題的豐富度.
與編碼階段不同的是,解碼階段是一個(gè)順序輸入過(guò)程.在生成新聞標(biāo)題的每一個(gè)時(shí)刻t,使用一個(gè)掩碼多端注意力模型進(jìn)行特征提取(訓(xùn)練階段輸入的是參考新聞標(biāo)題t時(shí)刻的詞,測(cè)試階段是解碼器t-1時(shí)刻生成的詞).掩碼多端注意力模型將t時(shí)刻之后的詞進(jìn)行掩碼操作,只允許使用t時(shí)刻之前的特征向量計(jì)算t時(shí)刻的特征向量.除了增加掩碼操作,其他的計(jì)算方式都與解碼階段相同.最終,得到一個(gè)特征矩陣Q,Q矩陣表示從開(kāi)始時(shí)刻到當(dāng)前時(shí)刻的新聞標(biāo)題特征向量.
接著使用多端注意力模型對(duì)Q矩陣和來(lái)自解碼器的K矩陣、V矩陣進(jìn)行計(jì)算,同樣在多端注意力模型后加入殘差連接和全連接前饋神經(jīng)網(wǎng)絡(luò)層,最后經(jīng)過(guò) 層的歸一化,得到詞表中所有詞的分布概率Pvacab.
在黨建領(lǐng)域中,新聞文本在分詞后通常包含比較多的低頻詞,經(jīng)過(guò)數(shù)據(jù)預(yù)處理操作,統(tǒng)一被歸檔為未登錄詞(OOV),在詞表中使用“
在解碼階段,每一個(gè)時(shí)刻t通過(guò)復(fù)制指針pgen控制預(yù)測(cè)詞是從詞表中生成還是從新聞文本中復(fù)制.指針pgen計(jì)算方式如式(6)所示:
(6)
最終,融合了指針網(wǎng)絡(luò)模型的解碼器,可以通過(guò)指針pgen選擇從新聞文本中直接復(fù)制黨建關(guān)鍵信息詞.計(jì)算詞表的分布概率前,先將新聞文本中的未登錄詞提取出來(lái)擴(kuò)充到詞表中構(gòu)建新的詞表,然后再計(jì)算t時(shí)刻預(yù)測(cè)詞w的分布概率.計(jì)算方式如式(7)所示:
(7)
可以看出,若預(yù)測(cè)詞w是未登錄詞,那么pvocab(w)等于零.這樣,預(yù)測(cè)詞w就可以只從新聞文本中生成.其中,αt是新聞文本序列對(duì)解碼器t時(shí)刻預(yù)測(cè)詞的注意力分布權(quán)重,通過(guò)解碼器提取新聞標(biāo)題得到的Q特征矩陣與編碼器提取新聞本文得到的K特征矩陣、V特征矩陣計(jì)算而得.具體計(jì)算方式如式(8)、式(9)所示:
et=vTtanh(WQQt+WKKt+WVVt+battn)
(8)
αt=softmax(et)
(9)
因?yàn)樾侣勎谋局锌赡艽嬖诙鄠€(gè)位置i的詞wi都是預(yù)測(cè)詞w,因此計(jì)算詞表概率時(shí)需要將所有預(yù)測(cè)詞w的注意力權(quán)重進(jìn)行累加,如公式(7)所示.
目前國(guó)內(nèi)還沒(méi)有黨建領(lǐng)域的新聞文本摘要數(shù)據(jù)集,公開(kāi)的高質(zhì)量中文文本摘要數(shù)據(jù)集只有哈工大的LCSTS數(shù)據(jù)集[18],但是該數(shù)據(jù)集包含了科技、娛樂(lè)等多個(gè)領(lǐng)域,句子的平均長(zhǎng)度在10-30之間,和黨建領(lǐng)域的新聞數(shù)據(jù)相差較大.
實(shí)驗(yàn)所用數(shù)據(jù)集均為使用Python爬蟲(chóng)抓取的人民日?qǐng)?bào)上近20年的新聞,包括新聞標(biāo)題和新聞文章兩部分.因?yàn)樵紨?shù)據(jù)紛亂復(fù)雜,所有數(shù)據(jù)都經(jīng)過(guò)了預(yù)先處理,包括刪除特殊
表1 數(shù)據(jù)集的統(tǒng)計(jì)信息Table 1 Statistics of dataset
符號(hào)、去除停用詞等,并使用jieba分詞工具進(jìn)行分詞,過(guò)濾詞頻小于3的詞和長(zhǎng)度大于100小于380的新聞.通過(guò)整理實(shí)際獲取到的新聞數(shù)據(jù)為25W條,分為訓(xùn)練集(80%,20W條數(shù)據(jù))、驗(yàn)證集(15%,37500條數(shù)據(jù))和測(cè)試集(5%,12500條數(shù)據(jù)).數(shù)據(jù)集信息如表1、表2所示.
表2 數(shù)據(jù)集樣例Table 2 Sample dataset
4.2.1 實(shí)驗(yàn)環(huán)境
實(shí)驗(yàn)環(huán)境如表3所示.
表3 實(shí)驗(yàn)環(huán)境Table 3 Lab environment
4.2.2 實(shí)驗(yàn)參數(shù)設(shè)置
本實(shí)驗(yàn)的詞向量訓(xùn)練使用Google開(kāi)源的word2vec工具,詞向量的維度設(shè)置為512.批次大小設(shè)置為64.Transformer模型中所有的全連接前饋神經(jīng)網(wǎng)絡(luò)層隱狀態(tài)維度都設(shè)置為2048.優(yōu)化算法使用Adam算法,初始學(xué)習(xí)率設(shè)置為為0.002,超參數(shù)設(shè)置為β1=0.9,β2=0.98,ε=10-9.解碼時(shí),使用集束搜索方法,束寬度設(shè)置為4.
4.2.3 實(shí)驗(yàn)評(píng)價(jià)指標(biāo)
實(shí)驗(yàn)采用ROUGE[19]作為黨建新聞標(biāo)題生成模型的評(píng)測(cè)方法.ROUGE-N通過(guò)比較生成摘要和參考摘要的重疊詞以衡量?jī)烧咧g的相似度,計(jì)算方法如式(10)所示:
(10)
其中,Ref Summaries為參考摘要,即人工爬取的新聞標(biāo)題.n-gram為n元詞(n個(gè)連續(xù)的詞).Countmatch(-ngram)為同時(shí)出現(xiàn)在模型生成的摘要和參考摘要中的n元詞個(gè)數(shù).實(shí)驗(yàn)中采用了ROUGE-1(1-gram)和ROUGE-2(2-gram),有效的衡量生成新聞標(biāo)題包含的關(guān)鍵信息量.
實(shí)驗(yàn)中還采用了ROUGE-L,通過(guò)計(jì)算生成摘要和參考摘要的最長(zhǎng)公共子序列,衡量生成新聞標(biāo)題的流暢度和可讀性.
為了驗(yàn)證模型的有效性,本文實(shí)現(xiàn)了3個(gè)對(duì)比實(shí)驗(yàn)?zāi)P团c本文提出的模型進(jìn)行比較.
TextRank:該模型是基于圖算法的一種抽取式文本摘要方法,通過(guò)計(jì)算句子間的重要度,進(jìn)行排序重組生成新的摘要.該模型經(jīng)常作為抽取式自動(dòng)文本摘要的基準(zhǔn)模型.
ABS:Rush等[2]等首次提出在seq2seq框架的基礎(chǔ)上使用注意力模型,作為生成式文本摘要方法并應(yīng)用到自動(dòng)文本摘要任務(wù)中.該模型經(jīng)常作為生成式自動(dòng)文本摘要的基準(zhǔn)模型.
Pointer Generator:在ABS的基礎(chǔ)上,通過(guò)指針結(jié)構(gòu)選擇摘要詞,并且添加覆蓋機(jī)制,有效緩解了未登錄詞和生成摘要重復(fù)問(wèn)題.
對(duì)比模型和本文提出的模型在黨建新聞數(shù)據(jù)集上的實(shí)驗(yàn)評(píng)測(cè)結(jié)果如表4所示.
表4 模型評(píng)測(cè)對(duì)照表Table 4 ComparisonTable of models
由表4可以看出:
1)基于TextRank算法的抽取式文本摘要模型作為一種簡(jiǎn)單的非監(jiān)督學(xué)習(xí)方法,在3項(xiàng)ROUGE評(píng)測(cè)指標(biāo)上都略高于生成式自動(dòng)文本摘要的基準(zhǔn)模型ABS.雖然ABS基準(zhǔn)模型使用了注意力機(jī)制,有效的從長(zhǎng)文本序列中提取到豐富的文本特征信息,但是抽取式方法仍然能獲得不錯(cuò)的成績(jī),證明新聞標(biāo)題中的關(guān)鍵詞大部分來(lái)自于新聞文本中的詞.
2)與生成式文本摘要基準(zhǔn)模型ABS相比,Pointer Generator模型有了進(jìn)一步的提高.因?yàn)镻ointer Generator模型使用指針結(jié)構(gòu)和覆蓋機(jī)制緩解了未登錄詞問(wèn)題以及重復(fù)生成問(wèn)題.說(shuō)明指針網(wǎng)絡(luò)可以明顯提高新聞標(biāo)題的質(zhì)量.
3)與3個(gè)對(duì)比模型相比,本文提出的Tri-PCN模型在3項(xiàng)ROUGE評(píng)測(cè)指標(biāo)上均取得最好成績(jī).表明該模型在黨建新聞?lì)I(lǐng)域的數(shù)據(jù)集上,可以從長(zhǎng)文本的新聞序列中提取更多的文本特征,同時(shí)通過(guò)指針復(fù)制網(wǎng)絡(luò)保留新聞的關(guān)鍵信息,使生成的摘要更滿(mǎn)足黨建新聞的要求.
針對(duì)于黨建新聞?lì)I(lǐng)域的自動(dòng)文本摘要任務(wù),本文提出了一種融合指針網(wǎng)絡(luò)的生成式模型Tri-PCN.在從黨建新聞文本中提取特征時(shí)使用由多端注意力機(jī)制為單位的Transformer模型作為編碼器和解碼器,使得模型能更好的處理長(zhǎng)文本序列,同時(shí)Transformer模型的并行化計(jì)算也加速了訓(xùn)練過(guò)程.融合了指針網(wǎng)絡(luò)使得模型更大程度上保留新聞文本中的重要黨建信息.通過(guò)在爬取的真實(shí)黨建新聞數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)對(duì)比,本文的模型比其他方法生成的新聞標(biāo)題有更好的準(zhǔn)確性和可讀性.