謝鳴元
摘要:目前大部分基于序列到序列生成模型的生成式摘要研究未充分考慮文本類別對于最終摘要結果的影響。然而往往同一類別的文本的摘要具有類似的格式與措辭。因此該文提出基于文本類別的文本自動摘要模型,先利用卷積神經網絡對文本進行分類,然后在傳統的序列到序列模型的基礎上結合文本的類別特征進行摘要生成。實驗結果表明,基于文本類別的文本自動摘要模型相對于傳統的文本自動摘要模型取得了更好的ROUGE值。
關鍵詞: seq2seq;神經網絡;文本自動摘要;文本分類
中圖分類號:TP18 文獻標識碼:A 文章編號:1009-3044(2018)01-0206-03
1 概述
隨著大數據時代的來臨,如何對大量信息進行壓縮表示,解決信息過載問題已成為一個迫在眉睫的需求,而文本自動摘要無疑是一個高效的解決方法。文本自動摘要旨在捕獲原文的中心思想,生成覆蓋原文重要信息但又盡可能簡短的自然語言表示。大部分的文本自動摘要研究可以歸為抽取式和生成式兩類。其中抽取式為簡單的從原文中抽取部分句子組合形成新的摘要;而生成式則是用自然語言加以概括精煉,相對來講質量更高但研究難度也相對較大。如今絕大部分生成式摘要的研究基于序列到序列模型[1](sequence to sequence,以下簡稱seq2seq),并已經取得了一定的效果。例如:Loptrev.K[2]等人在傳統的傳統的seq2seq模型上引入不同的注意力機制已改善效果;Alexander[3]等人使用卷積神經網絡替換編碼器部分常規的循環神經網絡。JiaoTao.Gu[4]用拷貝機制解決文本摘要問題中出現的未登錄詞現象。但是以上的研究均存在著一些不足,其中一點就是未充分利用文本本身的類別信息。例如對于新聞文本,大部分具有明確的類別標簽,例如體育新聞、軍事新聞或者財經新聞。同一類的新聞通常具有類似的新聞格式和措辭。例如體育類新聞的摘要通常是“某某隊以幾比幾的比分戰勝了某某隊”,事故類新聞通常包含事件的時間、地點、原因等。因此在本文中,我們提出了類別相關的文本摘要模型(Topic Senstive Seq2seq,簡稱TS-seq2seq)。首先我們利用卷積神經網絡對輸入的文本進行分類,得到文本的類別;然后在編碼器端利用文本類別進行編碼,最終生成文本類別相關的摘要。本文選用大規模中文文本摘要數據集LCSTS[5] 作為實驗語料,通過實驗發現我們的模型較之傳統的文本自動摘要模型取得了更好的ROUGE值。證明了方案的可行性。
2 背景
2.1 長短記憶神經網絡
長短記憶神經網絡[6](Long Short Term Memory,以下簡稱LSTM)是循環神經網絡(Recurrent Neural Network,RNN)的一種特殊類型,可以很方便地學習長距離依賴信息。其神經單元由一個輸入門、一個記憶門以及一個輸出門所構成,我們分別使用,,表示時間步時三個門的輸出向量。另外使用和分別表示神經單元的輸入和輸出,向量的維度設置為。那么的計算公式如下:
2.2 編碼器-解碼器模型
Sutskever等人在2014年提出seq2seq模型,即編碼器-解碼器(Encoder-Decoder)模型。用以解決對話生成,文本摘要,機器翻譯等序列到序列生成問題。
seq2seq模型使用兩個神經網絡,通常是循環神經網絡(Recurrent Neural Network,RNN)來分別構建編碼器與解碼器。給定輸入序列,在編碼器部分逐個讀入詞語,經過循環神經網絡(RNN),最終轉化成固定長度的中間語義向量;解碼器部分在中間語義向量的基礎上進行解碼并生成目標序列。其中編碼器生成第t個詞的生成概率如下:
其中為softmax激活函數,為t時刻編碼器的隱藏層狀態,計算公式如下:
2.3 注意力機制
Bahdanau[7]在2014年提出了注意力機制,使得解碼器在t時刻,能動態并線性的組合輸入序列中的不同部分來構建中間語義向量:,其中表達了b編碼器在第階段的和解碼器第階段的相關性。計算公式為:
確切說,我們首先將輸入詞語的最后隱藏層狀態通過單層MLP獲得,然后通過softmax函數,得到歸一化的注意力權重。因此式(6),式(7)變為:
3 基于文本類別的文本自動摘要模型
文本類別相關的文本自動摘要模型分為兩部分:文本分類模型與文本摘要模型。給定文本,假設表示全部可能的類別集合。在文本分類模型中,通過基于卷積神經網絡的文本分類模型得到輸入文本的分類。然后在文本摘要模型中,基于類別生成與文本類別相關的摘要。
3.1 基于卷積神經網絡的文本分類模型
目前,使用基于卷積神經網絡(Convolutional Neural Network)的文本分類模型已經取得了較好的效果[8]。本文同樣在此基礎上,使用CNN構建簡易的文本分類模型。
具體來說,我們使用表示對于句子中第個詞的維向量表示,表示第個詞到第個詞的詞向量集合,使用卷積窗口矩陣(為卷積核個數,為卷積窗口大小)進行卷積操作后得到在該卷積窗口下的特征向量。具體計算公式如下:
然后使用最大池化得到每句句子的特征向量表示,希望捕獲句子中的關鍵位置信息:
文本由句子構成,我們在得到句子特征向量的基礎上,進行均值池化,得到文本的特征向量表示:
最后通過softmax分類器得到最終的文本類別。
3.2 基于文本類別的文本自動摘要模型
基于文本類別的文本自動摘要模型基于經典的seq2seq模型,結合注意力機制。不同在于編碼器部分結合了文本的類別特征。
具體的結構如圖1所示。我們將每個類別轉化成維向量,即。然后在標準的seq2seq模型中,編碼器與解碼器部分均采用LSTM,在解碼器部分的每個時間步上結合前一時間步的隱藏層輸出,當前時間步的輸入以及文本類別。因此式(1)-(4)變為如下形式:endprint
4 實驗
4.1 實驗數據集描述
實驗數據集的選取分為文本分類模型的訓練數據集以及文本摘要模型的數據集。首先對于文本分類的數據集,我們使用搜狗中文分類語料庫[9]。選取其中教育、體育、政治、科技、軍事、財經6個類別。每個部分選取500篇新聞作為訓練語料。考慮到每篇新聞字數較長,因此每篇新聞均截取前兩句話(以句號分隔)作為訓練語料。
其次對于文本摘要模型的數據集,我們使用大規模的中文短文本摘要語料LCST0S作為訓練集和測試集[5]。LCSTS分為三部分:其中第二部分和第三部分根據摘要質量,人工評為了1-5分。我們使用第一部分作為訓練集,選取第二、三部分中分數大于等于3分的作為測試集。各部分的文本-摘要對個數如表1所示:
4.2 實驗參數設置
在文本分類模型中,我們設置卷積窗口的大小設置為8,卷積核個數設置為128;在文本摘要模型中,編碼器和譯碼器使用500個LSTM單元,詞表大小設置為10000。另外使用word2vec生成詞向量,維度數固定為300維,激活函數采用RelU,梯度算法使用均方根傳播,使模型能夠在訓練過程中自適應的調整學習速率。
4.3 實驗結果
首先是利用文本分類模型進行文本分類,分類結果如表2所示:
文本摘要模型部分我們采用ROUGE-1、ROUGE-2、ROUGE-L作為評價指標。基準系統我們選取基本的帶有注意力機制的seq2seq模型與jiatao.Gu[4]等人在2016年提出的帶有拷貝機制的文本自動摘模型,分別用seq2seq+context和copyNet進行表示。我們的類別相關的文本自動摘要模型使用TS-seq2seq進行表示。實驗結果如表3所示:
我們可以看出,基于文本類別的文本自動摘要模型取得了比基準系統更好的指標效果。證明了文本類別對于摘要效果改善的作用。
5 結束語
本篇文章在傳統的seq2seq模型結合注意力機制的基礎上,針對文本摘要的特點:大部分文本有明確的類別特征,并且同一類的文本的摘要格式,措辭也大致相似。提出基于文本類別的文本自動摘要模型,先對文本進行分類;然后在編碼階段引入文本類別特征,最終生成類別相關的摘要。當然模型還存著一些不足:由于LCSTS數據集的新聞文本較短,使用本文的基于CNN的文本分類器進行分類的效果并不是很理想;另外本文的做法實在編碼器階段直接在每個時間步上注入文本類別向量,如何更合理地將文本的類別信息與seq2seq模型相互結合也將成為后續的研究重點。
參考文獻:
[1] Sutskever I, Vinyals O, Le Q V. Sequence to sequence learning with neural networks[J]. 2014, 4:3104-3112.
[2] Lopyrev K. Generating News Headlines with Recurrent Neural Networks[J]. Computer Science, 2015.
[3] Rush A M, Chopra S, Weston J. A Neural Attention Model for Abstractive Sentence Summarization[J]. Computer Science, 2015.
[4] Gu J, Lu Z, Li H, et al. Incorporating Copying Mechanism in Sequence-to-Sequence Learning[J]. 2016:1631-1640.
[5] Hu B, Chen Q, Zhu F. LCSTS: A Large Scale Chinese Short Text Summarization Dataset[J]. Computer Science, 2015.
[6] Hochreiter S, Schmidhuber J. Long Short-Term Memory[J]. Neural Computation, 1997, 9(8):1735.
[7] Bahdanau D, Cho K, Bengio Y. Neural Machine Translation by Jointly Learning to Align and Translate[J]. Computer Science, 2014.
[8] Kim Y. Convolutional Neural Networks for Sentence Classification[J]. Eprint Arxiv, 2014.
[9] http://www.sogou.com/labs/resource/list_news.phpendprint