龔永罡 王嘉欣 廉小親 裴晨晨
(北京工商大學計算機與信息工程學院 北京 100048)
在復雜多樣的各類信息數(shù)據(jù)組成形式中,文本數(shù)量呈指數(shù)級快速增長[1]??焖購匿佁焐w地的文本數(shù)據(jù)中提取出需要的關鍵信息已經(jīng)成為文本信息處理的一個發(fā)展趨勢。然而如今網(wǎng)絡上信息繁多且冗余過多,使該工作極其繁瑣、耗時。提取文本中心內(nèi)容、概括大意,能夠大大提高檢索和閱讀理解文獻的效率。
抽取式文摘和生成式文摘是目前兩種主要文摘方法。抽取式文摘來自原文本的句子,而生成式文摘是在理解原文的基礎上使用自動生成語言的技術來完成文摘[2]。然而由于生成式對自然語言處理技術要求非常高,對其研究還處于初步階段,目前大多采用抽取式來進行自動文摘。
從目前的研究成果來看,中文自動文摘技術距離國際先進水平還有一定的差距[3]。蘇海菊等[4]最早進入自動文摘研究領域。隨后,哈爾濱工業(yè)大學的王開鑄教授等人開發(fā)了軍用文摘系統(tǒng)MATA[5]。王思聰[6]提出基于統(tǒng)計方法的文摘模型,僅通過計算實現(xiàn),未將語義考慮進去。蘇彬[7]將Word2vec應用到文摘模型中。劉凱等[8]提出基于篇章修辭結構抽取摘要的方法,使文摘更加通順易讀。雖然傳統(tǒng)的抽取式文摘技術已經(jīng)較為成熟,但是仍然有待改進,如選取特征的權值安排、文摘句的排序和最終文摘的潤色等。
自動文摘評價指標主要從文摘的連貫性、可讀性、信息覆蓋度、長度和冗余度等方面來評價,目前比較流行的評價方法是ROUGE方法。該評價方法的主要思想是通過比較生成的文摘和人工文摘之間的相似內(nèi)容[9]。ROUGE-n即用于衡量n-grams的重疊性[10]。
基于深度學習的自動文摘是通過使用深度學習的方法閱讀、分析大量文獻,從中提取出撰寫文本摘要所需相關素材,然后整理出一份完整的文本摘要。主要分為四個部分:文本預處理、提取文本關鍵特征、選取合適的句子和獲取最終摘要。本文提出的中文多文檔智能文摘系統(tǒng)流程如圖1所示。
圖1 智能文摘模型流程圖
本文主要將深度學習方法應用到傳統(tǒng)提取文本特征的過程中,通過改進當前較為成熟的單文檔自動文摘模型,把傳統(tǒng)方法所忽略的語義重要因素加入多文檔文摘過程中,使用Siamese LSTM網(wǎng)絡模型計算語義相似度,與常用的余弦向量法等計算相似度的方法相比,其文摘效果得到了很大的提升,使生成的文摘達到更好的效果。進一步對Siamese LSTM模型進行改進,提升了整個文摘系統(tǒng)的工作效率。
通常多文檔自動文摘任務是將多篇相同主題的文章合并進行自動文本摘要,因此首先確定共同主題,然后將文章分開保存為文本類型,為避免文章使用繁體中文,將文章轉換為簡體中文。通過判斷標點符號對生成的簡體中文文章進行分句,記錄每個句子在原文中的位置,并進行分詞。
為了抽取文摘句,需要對原始文本中的每個句子進行文本特征的提取,并保證提取的文本特征與句子是否可以作為文摘句具有很強的關聯(lián)性。經(jīng)過理論與實驗的論證,本文提取以下幾個文本特征。
2.2.1關鍵詞
相比其他普通詞而言,關鍵詞更具有表征文章主要內(nèi)容的能力,因此將關鍵詞列為文本的主要特征之一。傳統(tǒng)自動文摘多采用TF-IDF(Term Frequency-Inverse Document Frequency)方法選取關鍵詞。
TF-IDFi,j=TFi,j×IDFj
(1)
式中:TFi,j表示特征詞在文本中出現(xiàn)的次數(shù);IDFj表示反文檔率[11]。由于TF-IDF僅在字面層面進行計算詞頻來衡量詞的重要程度,忽略了詞義。Word2vec簡化了將文本內(nèi)容處理成K維向量空間的運算[12],由于從語義層面考量,用Word2vec來選取關鍵詞,彌補了TF-IDF的缺陷。二者結合選取關鍵詞,然后計算句子的特征項得分:
(2)
式中:k[]存放關鍵詞,長度為10;c()計算句中關鍵詞的數(shù)量。
2.2.2句子長度
由于需要計算句子的各個特征值分數(shù)來選取關鍵句,故為避免有些句子過長導致最終結果不準確,句子長度也是需要提取的特征之一,減小句子太長或太短造成的誤差。句子長度計算式為:
(3)
式中:μ為第i個句子所屬集合的平均句長;xi為該句子的長度。由此可見,若句子長度更接近平均長度,則更容易被選為文摘句。最終結果在(0, 1]區(qū)間內(nèi),數(shù)值越大,其作為文摘句的可能性越大。
2.2.3句子位置
若某一原始文本中有N個句子,其中第i個句子的位置特征計算式為:
(4)
由式(4)可知,句子位置越靠前,該特征的得分就越高,該句子就更可能被選為文摘句。
2.2.4依存句法
經(jīng)過實驗發(fā)現(xiàn)依存句法與文摘句的選取之間存在著特定的關聯(lián),依存句法關系如表1所示。對訓練集中的每個句子都進行依存句法分析,使用向量表示,并作為聚類算法的輸入,確定文摘句的中心向量,計算距離得到依存句法特征的最終分值。
表1 依存句法特征
2.2.5詞性特征
大量數(shù)據(jù)觀察得出,詞性對文摘句的選取也同樣具有很大的輔助作用,因此借助jieba工具,對句子進行詞性標注。詞性特征如表2所示。
表2 詞性特征
隨后的處理方法同依存句法特征相似,首先對全部句子進行詞性分析,將詞性標注的結果作為聚類算法的輸入數(shù)據(jù),確定文摘句的中心向量,計算每個句子與該中心向量的距離并得出詞性標注特征的分值。
2.2.6句子與標題相似度
用傳統(tǒng)的歐氏距離計算文本相似度,首先將每個句子使用向量進行表示,然后計算兩個向量的歐氏距離,最終表示二者的相似度。但歐氏距離只能適用于向量的每個分量坐標對于最終結果的貢獻相同的情況,而且只注重每個分量數(shù)值上的差異,從向量的不同分量的數(shù)值大小中體現(xiàn)差異,對向量的方向不敏感。相比之下,計算余弦相似度的方法,通過計算向量夾角的余弦值來表征相似度,對方向上的差異比較敏感,但是忽略了具體數(shù)值的絕對值大小差異。
TF-IDF模型經(jīng)常被應用到自動文摘系統(tǒng)中來計算文本相似度,該模型通過使用TF-IDF方法來計算詞頻將句子向量化,最終計算向量的余弦值來表征相似度。但該方法存在一些缺陷:通過使用TF-IDF方法來計算詞頻,僅考慮其統(tǒng)計特性,而忽略了語義特征;使用余弦法無法準確表征向量長度的差異。
循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,RNN)經(jīng)常被用于處理序列數(shù)據(jù),例如文本、語音等,但由于其梯度消失的原因,只能擁有短期記憶。而長短期記憶網(wǎng)絡(Long Short Term Memory, LSTM)擁有的獨特設計使其避免了這個問題。使用兩個LSTM網(wǎng)絡,將兩個分詞后的句子依次分別輸入到LSTM網(wǎng)絡中,并對其輸出進行比較,即可獲得兩個句子的相似度。Siamese LSTM網(wǎng)絡模型如圖 2所示,將兩個LSTM網(wǎng)絡輸出的句向量計算曼哈頓距離,并求其負指數(shù),最終結果即為兩個句子的相似度。
圖2 Siamese LSTM網(wǎng)絡結構
曼哈頓距離不存在余弦法等忽略長度或方向之間差異的缺陷且穩(wěn)定性更高。同時,使用LSTM網(wǎng)絡來生成句向量,由于模型輸入為Word2vec網(wǎng)絡訓練生成的詞向量,與僅考慮詞頻的傳統(tǒng)方法相比更加注重詞義,其輸出結果準確度更高。
由于本文實驗多個地方需要使用到計算文本相似度方法,實驗語料較多,計算量較大。如果句子較長,雖然包含的有用信息會增多,但是無用信息也會相對增多,導致網(wǎng)絡結構龐大,最終影響準確率。因此,對文本相似度計算方法繼續(xù)進行改進:將句子分詞之后首先去除停用詞。結合常用停用詞表,去除不重要信息之后,計算相似度所需時間會大大減少,且對準確率的影響很小。
針對2.2節(jié)中所敘述的幾個文本特征得分情況采用線性加權直接獲得句子的最終分數(shù)。由于沒有去除冗余,分數(shù)較高的若干句子之間的相似性也比較大,因此引入懲罰因子,將句子的新穎性考慮進去,對所有的句子在原基礎上重新打分,即使用最大邊界相關算法(Maximal Marginal Releuance,MMR)。計算公式表示為:
Si=λscore(i)-(1-λ)max[sim(i,j)]
(5)
式中:score(i)為線性回歸之后的句子得分,由于排在第一位的句子無須重新計算,故i從2開始;相似度sim(i,j)仍然使用Siamese LSTM網(wǎng)絡模型進行計算,j為整數(shù),取值范圍為[1,i-1],λ∈(0,1),可根據(jù)實驗結果進行調整。最后將所有句子根據(jù)最終得分按序排列,選取的文摘句通常是排序后的前若干句,可以根據(jù)所需文摘的長度決定選取句子的數(shù)量,作為最終選取的文摘句。
最終的文本摘要需要具有較強的可讀性,即連貫通順。對于單文檔摘要而言,通常將句子按照其在原文中的順序輸出作為摘要[13],可讀性較高。然而對于多文檔摘要而言,目前文摘句排序方面仍然只是探索階段,由于選取的文摘句來自不同的文檔,更需要考慮句子間的銜接性和連貫性。本文實驗采取的方法是首先計算每個文摘句在原文檔中的相對位置,然后將各個文摘句的相對位置進行排序,按順序排列文摘句,即為最終的文本摘要。
針對上述模型設計了以下實驗。本實驗運行環(huán)境操作系統(tǒng)為Windows 1064位中文版,CPU為Intel(R) Core(TM) i5,運行內(nèi)存8 GB,GPU為GTX 1060Ti。使用維基百科中文語料訓練Word2vec模型,使用北京理工大學官方提供的NLPIR短文本語料庫,由中文相似句生成的方法生成數(shù)據(jù)集,以此訓練Siamese LSTM網(wǎng)絡。
將常用的TF-IDF模型、LDA模型與本文的Siamese LSTM模型、改進的Siamese LSTM模型進行對比實驗,然后綜合ROUGE評價和人工評價完成最終評價。ROUGE評價主要計算ROUGE-1和ROUGE-2兩個評價指標,評價所需人工文本摘要由兩人同時給出,最后計算綜合共現(xiàn)率。人工評價方法則人工按照文摘的評價標準對生成的文摘打分,從句子的連貫性、邏輯性、符合原文中心思想等幾個方面打分,最高分為5分,最低分為0分。選取五篇相同主題的中文文章進行實驗,上述評價結果如表3所示。實驗結果表明,將Siamese LSTM應用到中文多文檔自動文摘中,文摘效果得到了顯著的提升,而且改進Siamese LSTM模型在本次實驗中更優(yōu)于原始模型。在實驗過程中同樣可以發(fā)現(xiàn)改進之后的Siamese LSTM模型在處理文檔時所需時間更短,提升了整個文摘系統(tǒng)的效率。
表3 實驗結果對比
選取三種模型所獲取的最終文摘分別如圖3、圖4和圖5所示。使用TF-IDF模型所得文摘中句子連貫性存在一定的問題,與原文主題切合度一般,語義重復部分較多;LDA模型所得文摘語序存在問題,相鄰句間的相關度不大,但幾乎每句都切合主題;Siamese LSTM所得文摘更加貼近主題,語義重復部分相對較少,但在連貫性方面仍存在問題,后續(xù)可針對文摘句的排序問題進行改進。
圖3 TF-IDF模型所得部分文摘
圖4 LDA模型所得部分文摘
圖5 Siamese LSTM模型所得部分文摘
本文給出了基于Siamese LSTM模型設計的中文多文檔自動文摘模型,模型的核心內(nèi)容是將Siamese LSTM網(wǎng)絡應用于語義相似度的計算中,并通過去除停用詞的方法,減少了該模型的計算時間。由于本文模型為抽取式文本摘要,原文對摘要質量的影響較大,在結果上并未達到最好的效果,但該模型在中文多文檔自動文摘領域中仍然發(fā)揮著較大的作用,并且可以為未來生成式多文檔自動文摘技術的成熟化奠定基礎。然而本文模型在文摘句排序部分沒有進行過多改進,因此最終文摘的語句連貫性仍然存在著較大的提升空間。此外,本文只研究了抽取式文摘模型,后續(xù)可引入生成式文摘模型進行研究,為提升文摘質量和拓寬文摘模型的研究提供思路。