張琪, 范永勝, 金獨亮
重慶師范大學 計算機與信息科學學院,重慶 401331
近年來隨著移動互聯(lián)網(wǎng)的興起,各種新聞文章、科學論文等文本數(shù)據(jù)量爆炸式增長[1],如何讓用戶快速、準確地在海量互聯(lián)網(wǎng)信息中獲取具有代表性的內容已經(jīng)成為一個急需解決的問題.基于此,各種文本摘要算法應運而生.
文本摘要生成是從原始文本中獲得最重要的部分并呈現(xiàn)給用戶的過程,其目的是減少文本數(shù)量,提取出最相關的信息來簡化文本內容,節(jié)省用戶時間.從文本摘要的獲取方式上來看,可以將其分為抽取式和生成式[2]: 前者是對原始文本中的句子進行權重計算并排序,最終選擇靠前的適量句子來組成摘要;后者是由模型根據(jù)文章大意生成新句子,摘要內容可以包含原始文本中不存在的詞語或句子.
文獻[3]首次提出“自動摘要”概念,開創(chuàng)了文本摘要的先河.文獻[3]認為文章中的詞頻和單詞在句子中的相對位置是衡量詞語是否重要的有效指標,最重要的句子就是包含重要詞語的句子,而摘要則是將最重要的句子拼合起來.目前,國內外學者針對抽取式文本摘要任務做了進一步研究[4-9].
WordNet是一個英語詞匯數(shù)據(jù)庫[10],基于同義和反義來描述詞語和概念間的語義關系類型.文獻[11]用GAN生成文本摘要,引入WordNet增強判別器的作用.文獻[12]提出了一種結合統(tǒng)計特征和阿薩姆語WordNet的單文檔阿薩姆語文本摘要.文獻[13]利用基于WordNet的Lesk算法分析單詞語義,改進句子排序算法,利用Seq2Seq雙注意模型進行聯(lián)合訓練.
在傳統(tǒng)抽取式算法中,TextRank算法只考慮文本的相似度,忽略文本的語義特征,從而導致摘要內容過度冗余.MMR算法則提出一種懲罰機制來解決冗余問題,但其抽取的文本摘要存在對原文概括能力不足的問題,且并未考慮諸多因素對摘要內容的影響.本文基于此提出了一種MMR和WordNet的新聞文本摘要生成算法,有效解決了文本內容概括不全面、摘要內容冗余、關鍵詞提取時出現(xiàn)異詞同義的問題,該方法提高概括摘要內容能力的同時降低摘要內容的冗余度,提升了生成摘要的質量.
文獻[14]借鑒谷歌的PageRank算法[15],提出了TextRank算法.其基本思想是將新聞文本劃分為詞語或句子來構建圖模型,迭代各個節(jié)點的權重直至收斂,并通過投票機制對這些詞語或句子的重要性進行排序.TextRank算法的公式如(1)式所示:
(1)
其中:WS(Vi)代表節(jié)點Vi的權重,Wji代表兩個節(jié)點Vi和Vj之間的相似程度,WS(Vj)代表上一個節(jié)點Vj的權重,In(Vi)為指向Vi的節(jié)點集合,Out(Vj)為Vj指向的節(jié)點集合,求和運算代表節(jié)點Vi在新聞文本中總的權重[16].d為阻尼系數(shù),用于做平滑處理,代表某一節(jié)點指向其余節(jié)點的概率,通常取0.85.
TF-IDF算法分為TF和IDF,其中TF表示詞頻,IDF表示逆向文件頻率[17].該算法反映了詞語在文本中的重要性,也反映了詞語在數(shù)據(jù)集中的重要性[18].TF-IDF算法的公式如(2)式所示,具體計算過程如(3)式,(4)式所示:
TF-IDF=TF×IDF
(2)
(3)
(4)
其中:ni,j表示在文本j中詞語i的次數(shù),∑knk,j表示文本j中所有詞語的總次數(shù),|D|表示數(shù)據(jù)集中的文本數(shù)量,|{j:ti∈dj}|表示含有詞語i的文本數(shù)量.
最大邊界相關法(maximal marginal relevance,MMR)[19]的基本思想是在保證句子與新聞文本之間相似性的同時,使文本摘要更加全面和多樣.MMR算法公式下
(5)
其中:D代表整篇新聞文本,S代表候選摘要句集,Vi代表當前待抽取的句子,Vj代表目前已經(jīng)抽取出的摘要句,λ是控制MMR算法摘要多樣性的超參數(shù),第一個相似度sim1(Vi,D)表示句子Vi與整篇新聞文本的相似度,第二個相似度sim2(Vi,Vj)表示句子Vi和Vj之間的相似度.
本文算法流程圖如圖1 所示:
圖1 本文算法的流程圖
數(shù)據(jù)預處理的主要步驟為:
1) 清洗數(shù)據(jù)中的多余空字符、網(wǎng)頁標記和圖片標記,對重復的新聞文本進行去重處理;
2) 將新聞文本和參考摘要分開保存;
3) 首先以句號、感嘆號和問號為結束符對新聞文本進行分句,其次采用jieba分詞的精確模式對句子進行分詞,最后進行去停用詞操作.
特征提取主要是提取句子與新聞文本的相似度、關鍵詞、句子位置信息和線索詞這4部分特征.
2.2.1 句子與新聞文本的相似度提取
文本摘要的提取在很大程度上取決于句子與新聞文本中其他句子的相似度.如果一個句子與其他句子的相似度越高,那么這句話越能概括新聞的大致內容,因此對相似度高的句子賦予更高的權重.
2.2.2 關鍵詞提取
從新聞的關鍵詞中大致可以了解該篇新聞的總體內容,含有關鍵詞的句子相較于新聞中的其他句子更能體現(xiàn)新聞的內容,因此對含有關鍵詞的句子賦予更高的權重.
2.2.3 句子位置信息提取
新聞中句子的重要性通常與句子位置有關,位于新聞首段和尾段的句子一般是對整篇新聞的總結,因此對這些句子賦予更高的權重.
2.2.4 線索詞提取
本文將標注新聞來源的詞語或具有概括性的詞語統(tǒng)稱為線索詞.標注新聞來源的詞語包括“……網(wǎng)”“……報”“……社”等,具有概括性的詞語包括“總之”“綜上所述”“總而言之”“歸根結底”等.含有線索詞的句子通常具有較強的指向性或總結性,更能概括新聞內容,因此對含有線索詞的句子賦予更高的權重.
2.3.1 文本相似度得分
本文通過(1)式所示TextRank算法計算每個句子與新聞文本的相似度,最終得出該句的文本相似度得分.
2.3.2 關鍵詞得分
計算關鍵詞得分前先使用WordNet合并同義詞,輸入分詞后的中文詞語,輸出該詞語對應的所有英文同義詞序列,統(tǒng)計英文單詞的詞頻,將該詞頻替換(2)式所示TF-IDF算法中的TF分數(shù).
使用替換后的TF-IDF算法公式來提取關鍵詞.抽取每篇新聞文本中前20個關鍵詞,將其作為關鍵詞表,并使用kw表示關鍵詞集合.將單個關鍵詞的權重置為0.1,如果句子中含有a個關鍵詞,關鍵詞權重值Wkw(Vi)置為0.1·a;不包含關鍵詞的句子Wkw(Vi)置為0.權重計算如(6)式所示:
(6)
2.3.3 句子位置信息得分
由于本文使用的數(shù)據(jù)集沒有進行分段,并且經(jīng)過測試得出抽取數(shù)據(jù)集中的尾句效果不佳,因此本文選擇抽取新聞文本的前三句,并分別賦予不同的權重.使用sp表示句子位置信息集合.當句子位置處于第1,2,3句時,句子位置信息權重值Wsp(Vi)分別置為1,0.79,0.72(由后面3.3.3節(jié)的實驗得出);其他位置Wsp(Vi)置為0.權重計算如(7)式所示:
(7)
2.3.4 線索詞得分
本文從數(shù)據(jù)集中收集了包含“新華社”“大河報”“人民日報”“央廣網(wǎng)”“中國新聞網(wǎng)”在內的373個新聞來源詞,收集了包含“總之”“綜上所述”“總而言之”“歸根結底”等在內的12個具有概括性的詞語.使用cw表示線索詞集合.如果句子中含有線索詞,線索詞權重值Wcw(Vi)置為1;不包含線索詞的句子Wcw(Vi)置為0.權重計算如(8)式所示:
(8)
為了使得算法的摘要與原始的文本內容更加吻合,本文對2.3節(jié)4個主要特征值分別賦予相應的權重,并設計一個加權算法計算最終的句子得分,算法公式如(9)式所示:
W(Vi)=αWs(Vi)+βWkw(Vi)+γWsp(Vi)+δWcw(Vi)
(9)
其中:α,β,γ,δ分別為文本相似度、關鍵詞、句子位置信息、線索詞得分的加權系數(shù),取值區(qū)間為[0,1],并且滿足α+β+γ+δ=1.
WMMR算法在MMR算法基礎上進行改進,用(9)式中計算得到的最終句子得分W(Vi)替換公式(5)式中的句子與新聞文本的相似度sim1(Vi,D).替換后的公式如(10)式所示:
(10)
在計算句子得分后排序,輸出排名前三的句子作為該新聞文本的摘要,同時為了確保最終摘要的可讀性與連貫性,在輸出摘要句時將其按照新聞文本的原始順序輸出.
本文采用NLPCC2017 Shared Task3評測任務的數(shù)據(jù)集(簡稱為NLPCC2017)進行實驗,共有50000篇帶有參考摘要的新聞文本.該文本特點是不分領域和類型,且篇幅較長[20].
本文使用ROUGE(Recall-Oriented Understudy for Gisting Evaluation)[21]指標對算法得到的自動摘要進行評估.該評測方法的內部原理是將專家撰寫的摘要作為參考摘要,通過統(tǒng)計參考摘要和自動摘要之間重疊的基本單元數(shù),來衡量參考摘要和自動摘要之間的相似程度,從而得到生成摘要的分數(shù)[22].它是一種對n元詞召回率進行抽象評價的方法.ROUGE的評測方法中最常用的是ROUGE-N(基于N元詞).ROUGE-N的公式如(11)式所示:
(11)
其中:gramn代表n-gram的長度,{ReferenceSummaries}代表參考摘要,Countmatch(gramn)代表參考摘要和自動摘要之間重疊的基本單元數(shù),Count(gramn)代表參考摘要中基本單元數(shù).
本文采用ROUGE-1(基于1元詞)、ROUGE-2(基于2元詞)和ROUGE-L(基于最長子串)的結果來評測實驗效果.
3.3.1 λ因子選擇
λ因子是MMR算法中的一個重要參數(shù),其取值區(qū)間為[0,1],本文為了選擇最佳的λ因子進行了多次實驗.由于λ=0時,忽略文本相似度對算法的影響,不適用于本文算法,因此不考慮λ=0的情況.文獻[23]研究發(fā)現(xiàn)當λ因子以小于0.1的級數(shù)增加時,ROUGE值變化不明顯,因此以0.1的間距選擇10個點繪制折線圖(圖2).
圖2 λ因子對ROUGE值的影響
由圖2可以看出,隨著λ因子的增大,ROUGE值呈先上升后下降的趨勢.當λ=0.6時,ROUGE-1值達到最佳結果;當λ=0.7時,ROUGE值均達到最佳結果.因此本文將WMMR算法中的λ因子設置為0.7.
3.3.2 關鍵詞提取算法選擇
本文在提取關鍵詞時采用TF-IDF和TextRank兩種算法,在不考慮WordNet對關鍵詞提取算法的影響且文本相似度、關鍵詞、句子位置信息、線索詞的加權系數(shù)設置為0,1,0,0的前提下,將關鍵詞數(shù)設置為20、單個關鍵詞權重設置為0.1,測試兩種算法的性能,測試結果如表1所示.
表1 關鍵詞提取算法性能測試
由表1對比得出,在提取關鍵詞時,TF-IDF算法的ROUGE值均高于TextRank算法,因此本文采用TF-IDF算法提取關鍵詞.
3.3.3 句子位置信息權重選擇
本文分別抽取新聞文本的第一、二、三、四句以及尾句,測試句子位置信息對ROUGE值的影響,測試結果如表2所示.
表2 句子位置信息對ROUGE值的影響
由表2可以看出,抽取第一、二、三、四句以及尾句的ROUGE值呈遞減趨勢,證明在該數(shù)據(jù)集中抽取尾句的效果并不理想,因此本文選擇抽取新聞文本的前三句.
表3 句子位置信息權重對ROUGE值的影響
由表3對比得出,第三次實驗的ROUGE值綜合表現(xiàn)最佳,因此本文將新聞文本前三句的權重分別置為1,0.79,0.72.
3.3.4 加權系數(shù)選擇
為了綜合考慮文本相似度、關鍵詞、句子位置信息、線索詞對句子權重的影響,本文根據(jù)以上4種影響因子的加權系數(shù)α,β,γ,δ(取值區(qū)間為[0,1],并且滿足α+β+γ+δ=1)設置不同的加權系數(shù)組合.并通過大量實驗來選取ROUGE值最佳的組合,其中具有代表性的11組參數(shù)組合結果如表4所示.
表4 加權系數(shù)組合結果
由表4可以看出,當組別為8,即α=0.5,β=0.15,γ=0.2,δ=0.15時,ROUGE值最高.證明文本相似度對于摘要生成的效果影響最大,關鍵詞、句子位置信息、線索詞對于摘要生成的效果影響相對較小.
通過一個實際例子[24]來對比WMMR算法和基線算法的摘要結果.以句號為結束符對文本進行分句,如表5所示.其中,Lead3和Last3算法適用性不強,不予考慮.TextRank,MMR,WMMR 3種算法共同選取了新聞的第1句,故不考慮第1句對算法效果的影響.TextRank算法選取第6,8句,關于車輛行駛方向等描述存在重復,可以看出TextRank算法只考慮文本的相似度,忽略文本的多樣性,從而導致摘要內容存在冗余問題.MMR算法選取第8,10句,其中第10句無實質性價值,因此MMR算法追求文本的多樣性,可以解決冗余問題,但其抽取的文本摘要存在對原文概括能力不足、描述不準確等問題.本文提出的WMMR算法選取第2,5句,不存在表述重復問題,并且描述出了標題內容中的“門衛(wèi)大爺嚇一跳”,綜合考慮了諸多因素對摘要內容的影響,提高了對新聞文本摘要內容的概括能力,同時降低了摘要內容的冗余度,提升了生成摘要的質量.
表5 文獻[24]內容
通過實驗得出最佳的加權系數(shù)組合后,為了驗證算法的有效性,將Lead3算法、Last3算法、TextRank算法、TextRank+Word2Vec算法[25]、MMR算法、MMR+Word2Vec算法[26]、WMMR+Word2Vec算法、WMMR算法進行對比,對比結果如圖3所示.
其中,TextRank+Word2Vec算法、MMR+Word2Vec算法和WMMR+Word2Vec算法中的Word2Vec模型采用CBOW訓練方式,使用中文維基百科語料庫訓練,窗口大小設置為10,詞向量維度設置為200.
圖3 算法效果對比圖
由圖3可以看出,在面對同一數(shù)據(jù)集時,Last3算法效果最差,ROUGE值最低,證明該新聞文本的結尾部分對整篇新聞的總結性較弱;MMR算法、MMR+Word2Vec算法、TextRank+Word2Vec算法、TextRank算法的ROUGE值較Last3算法有小幅度提升,但稍遜于Lead3算法,證明MMR算法、TextRank算法在抽取摘要時存在不足;Lead3算法在傳統(tǒng)算法中效果最好,證明該新聞文本的開頭比結尾部分更能代表整篇新聞的內容,但這種僅抽取前三句的方法并未考慮諸多因素對摘要內容的影響.將本文提出的WMMR算法與Word2Vec模型相結合,效果略遜于WMMR算法,證明Word2Vec模型不適用于本文算法.
本文提出的WMMR算法效果優(yōu)于上述傳統(tǒng)算法,ROUGE值均達到最高,相較于TextRank算法提升4個百分點,相較于MMR算法提升7個百分點,相較于表現(xiàn)較好的Lead3算法也有3個百分點的提升.這說明該算法既解決了MMR算法、TextRank算法等傳統(tǒng)算法在抽取摘要時的不足,又綜合考慮了諸多因素對句子權重的影響,進一步證明本文算法的有效性.
在“神策杯”2018高校算法大師賽的比賽數(shù)據(jù)(簡稱為神策杯2018)、搜狗實驗室整理的搜狐新聞18個頻道2012年6月與7月的新聞數(shù)據(jù)(簡稱為SogouCS)上驗證WMMR算法的普適性.為了保證實驗條數(shù)的一致性,選取神策杯2018、SogouCS數(shù)據(jù)集的前50000條數(shù)據(jù)分別進行測試.結果如圖4-5所示.
由圖4,5可以看出,在神策杯2018、SogouCS兩個不同的公開數(shù)據(jù)集上,本文提出的WMMR算法效果均優(yōu)于MMR與TextRank傳統(tǒng)算法,證明本文算法具有普適性.
圖4 神策杯2018數(shù)據(jù)集實驗結果
圖5 SogouCS數(shù)據(jù)集實驗結果
本文提出了一種基于MMR和WordNet的新聞文本摘要生成算法——WMMR.該算法綜合考慮文本相似度、關鍵詞、句子位置信息、線索詞等特征對句子權重的影響,從而優(yōu)化MMR算法中的句子得分,并在計算關鍵詞得分時引入WordNet合并同義詞.
在三個公開數(shù)據(jù)集上驗證本文算法的有效性.實驗結果表明,本文提出的WMMR算法ROUGE值均最高,整體上明顯優(yōu)于其它傳統(tǒng)算法,有效地提升了生成摘要的質量.但本文只進行了抽取式文本摘要的方法優(yōu)化,后續(xù)將嘗試進行生成式文本摘要的方法優(yōu)化.