朱玉佳,祝永志,董兆安
(曲阜師范大學,山東 日照 276826)
進入大數據時代,人們獲取信息的方式日趨多樣化,接收到的信息也呈指數級爆炸式增長,獲取海量信息中的有效信息變得更加艱難。面對信息過載,為了管理海量的信息,人們迫切需要有效的方法和工具[1]。自動文本摘要減少了文檔的冗余文本,同時能夠保留文檔中的核心信息,極大提高了人工閱讀的效率。
一般來說,按照采用的技術方法分類,可將文本摘要方法分為兩種類型:抽取式文本摘要[2]和生成式文本摘要[3]。抽取式文本摘要是從源文本中抽取出最為重要的top-N個句子作為摘要,而生成式文本摘要是根據源文本表達的思想進行總結,更類似于人們的思維方式,因此比抽取式文本摘要更為有效。但是,生成式文本摘要需要更為復雜的自然語言生成技術來重寫句子,還需要更高規模的數據集訓練,相比生成式文本摘要,抽取式文本摘要則不需重寫句子,對訓練集規模也無嚴格要求[4]。目前,抽取式文本摘要仍是自動文本摘要的主流。
抽取式文本摘要包含三個獨立的任務:文檔的中間表示、基于不同參數的句子評分、摘要句子的選擇策略[5]。其中文檔的中間表示任務尤為重要,而隨著人工智能的發展,除了詞頻表示[6]之外,文本向量化也受到了廣泛應用[7-8]。TextRank算法[9]是基于文本的圖模型排序算法,但是此算法并沒有考慮到詞語表示、語義等信息,本文采用抽取式文本摘要中改進的Textrank算法,并針對算法中的句子表示、句子評分和句子選擇的不足之處做了改進。
TextRank是由網頁排序算法PageRank啟發產生的一種圖排序算法。在PageRank算法中,重要的網頁會與其他網頁鏈接。同樣,在TextRank算法中,假設把句子當作網頁,重要的句子會與文本中其他的句子鏈接。
TextRank在抽取式文本摘要中有以下步驟:
(1)給定文檔D,為了識別句子,首先要切分句子。將輸入文檔D轉換成句子{S1,S2,…,Sn},即D={S1,S2,…,Sn}。以句子為節點構建圖G(V,E),其中,V是句子的集合,E是邊的集合。
(2)求句子間的相似度,計算好的句子相似度作為句子間構成圖的邊的權值。根據式(1)可得:

(3)根據公式(2)迭代得到句子得分。公式如下:

式中,d為阻尼系數,值在0到1之間,通常取值為0.85。in(vi)表示所有指向頂點vi的集合,out(vj)表示從vj出發指向其他頂點的集合,wji表示兩個頂點之間的邊的權值,S(vi)表示頂點分數。
(4)對所有句子分數進行降序排列,選出前top-N個句子作為摘要。
TextRank作為提取摘要的一種算法,因其方便簡潔,得到了廣泛使用,但是這種算法也有很大不足,傳統的計算句子間相似度的方法只是對詞進行了簡單的統計,然后建立句子之間的聯系,而這種方法忽略了詞語之間的語義、詞性等重要因素。
為提高摘要提取的準確度,本文提出了一種基于TextRank的聯合打分算法,并與MMR相融合提取摘要模型。與傳統的TextRank相比,在文檔的中間表示上,采用Word2Vec對文本進行向量表示。在句子評分上,采用改進的詞頻逆文檔頻率(Term Frequency-Inverse Document Frequency,TFIDF),即詞頻逆句頻余弦相似度(Term Frequency-Inverse Sentence Frequency,TF-ISF)和詞向量余弦相似度綜合評分。在摘要句子的選擇上,采用MMR算法去除冗余,得到多樣性的摘要。
為了定義句子間的相似性,將給定文檔D的每個句子表示為單詞向量,接下來,構建輸入文檔的完備加權圖G=(V,E,W),其中V是頂點的集合,每個頂點對應由單詞向量表示的句子。E是每對頂點之間的邊的集合。W是分配給圖G的邊的權值集合。邊(u,v)∈E,相關的權值W按以下邏輯分配:
假設給定文檔D,是對應頂點u的句子,是對應頂點v的句子,這里考慮了句子中每個單詞的詞頻(tf)和逆句頻(isf)。逆句頻由式(3)計算如下:

式中,||{S∈D∶w∈S}||是單詞w出現的句子數,||D||是輸入文檔中出現的句子數。
現在,衡量每對句子間的相似度有詞頻逆句頻余弦相似度為:

傳統的余弦相似度只注意詞在文本文檔中的頻率,而詞頻逆句頻余弦相似度考慮到不同層次相應的單詞在句子中的重要性,還考慮到不同文檔中的句子的長度。
Word2Vec[10-11]主要包含兩個模型:跳字模型(skip-gram)和連續詞袋模型(Continuous Bag of Words,CBOW)。
TF-ISF雖然考慮了詞頻和句子長度,但是忽略了關鍵的語義信息,Word2Vec詞向量可以較好地表達不同詞之間的相似和類比關系。它可以將所有的詞向量化,這樣詞與詞之間就可以定量地度量,挖掘詞與詞之間的聯系。從這一點上說,它可以很好地彌補TF-ISF的缺點。
通過兩種方式求得句子相似度之后,采用取平均值的方式即可求得最終得分。通過這種方法,可以得到每個句子的最終得分。通過降序排列抽取前top-N個句子,即為摘要。
這樣做雖然能夠得到重要性比較高的句子,但是這些句子中可能會有冗余,我們理想的結果不僅是讓摘要重要,而且還要呈現出多樣性和全面性。因此,可以在摘要選擇策略中加入MMR算法去除冗余[12-13]。
MMR(Maximal Marginal Relevance)算法又叫最大邊界相關算法,此算法在設計之初是用來計算文本與被搜索文檔之間的相似度。本文模型中,將它用作去除冗余。首先,從候選摘要集中選擇一個最重要的句子,然后每選取一個候選摘要句,都計算它的MMR分數,其MMR分數計算為:

式中,λ是一個可調節參數,當λ偏高時,注重的是摘要的準確性描述;當λ偏低時,注重的是摘要的全面性描述。
textrank只取全文的重要句子進行排序形成摘要,忽略了其多樣性。加入MMR算法之后則均衡考慮了文章摘要的重要性和多樣性。
ROUGE作為一種自動摘要評價方法,現已被廣泛用于摘要評測任務中。本文使用了從BBC新聞源生成的新聞文章,運用ROUGE-1進行評分,確定了整個文檔的10%和15%作為摘要的大小,評價結果如表1所示。

表1 ROUGE-1算法準確率、召回率及F值統計
實驗結果表明,本文算法在準確率和召回率上都有所提升,當抽取10%作為摘要時,TF-IDF算法準確率是0.635 00,本文算法是0.716 42,TF-IDF算法召回率是0.642 11,本文算法召回率是1.000 01,TF-IDF算法的F-score是0.700 05,本文F-score是0.854 17,準確率、召回率及F-score都有所提升。當抽取15%作為摘要時,TF-IDF算法的準確率是0.721 32,本文算法是0.786 57,TF-IDF算法的召回率是0.723 85,本文算法是0.688 27,TF-IDF算法的F-score是0.728 95,本文算法是0.735 29,準確率和F-score都有所提升,從而驗證了該方法的有效性。