再堅持一下,就會等到黎明破曉,重見光明。
今天繼續分享一篇sentence level abstractive summarization相關的paper,出自於IBM Watson,Abstractive Text Summarization using Sequence-to-sequence RNNs and Beyond. (點「閱讀原文」獲取本文)
本文將自動文摘問題當作一個Seq2Seq的問題,並且應用Attentional Encoder-Decoder Recurrent Neural Networks框架來解決這個問題,並且在兩個不同的數據集上取得了超越ABS(Rush,2015)模型的結果。同時,本文還提出多種模型來研究自動文摘中的重要問題,比如對關鍵詞進行建模,並且得出詞對於文檔研究起關鍵作用的結論。研究結果表明本文的解決方案在性能上有很大的提升,另外,還貢獻了一個包括多句子文摘的數據集和基準。
本文的貢獻點有三個:(1)在兩個新的數據集上應用seq2seq+attention模型,並且取得了state-of-the-art的結果;(2)研究了關鍵詞對於自動文摘所起到的關鍵作用,並且提出了一種新的模型;(3)提出了一個新的數據集,供研究者使用。
Introduction本文研究的文本摘要問題是根據一篇長文來生成一篇短摘要或者標題,可以等同於將輸入文本序列映射為一個目標文本序列,也就是seq2seq的問題。目前,解決seq2seq的問題,都是借鑑machine translation的方法。
但文本摘要問題和機器翻譯問題有著很大的不同。
(1)文本摘要的問題輸出長度一般都很短,並且不依賴於輸入的長度。
(2)文本摘要的問題一般都會損失大量的信息,只保留少量的核心概念作為輸出,而機器翻譯則要保證信息損失最低,在單詞級別上保證對齊。
那麼機器翻譯的相關技術是否會在文本摘要問題上表現同樣突出呢?本文將會回答這個問題。受文本摘要與機器翻譯問題的不同特點所啟發,本文將超越一般的架構而提出新的模型來解決摘要問題。
本文與之前seq2seq類的paper有著一個很明顯的區別,就是將摘要問題和機器翻譯問題嚴格區別開,而不是簡單地套用MT的技術來解決摘要問題,根據摘要問題的特點提出了更加合適的模型,相比於之前的研究更進了一步。
Related work之前大量的研究都是集中於extractive摘要方法,在DUC2003和2004比賽中取得了不俗的成績。但人類在做摘要工作時,都是採用abstractive方法,理解一篇文檔然後用自己的語言轉述出來。隨著深度學習技術在NLP任務中的廣泛使用,研究者們開始更多地研究abstractive方法,比如Rush組的工作,比如哈工大Hu的工作。
本文的貢獻:
(1)在兩種不同數據集上應用seq2seq+attention的模型,得到了state-of-the-art結果。
(2)根據摘要問題的特點提出了針對性的模型,結果更優。
(3)提出了一個包括多句子摘要的數據集和基準。
絕大多數的extractive方法都是unsupervised learning方法,不需要數據集來做訓練,更適合搭建實用的文本摘要系統;而abstractive方法一般都是supervised learning方法,雖然在評測任務中表現更佳,但需要大量的領域數據做訓練,橫向擴展性並不好,數據集的內容、質量和規模都直接影響著模型的效果,目前比較難應用在實際系統中。所以,在data-driven的模型中,往往都需要配合大規模、高質量、領域相關的數據集。相比之下deep learning的方法更加簡單粗暴一下,並不需要什麼領域知識和特徵工程,只要給定輸入輸出,就能擬合出一個巨大的神經網絡,並且取得優於傳統解決方案的結果,但太過依賴於數據,因此喪失了一般性。
ModelsEncoder-Decoder with Attention這個模型本文的基準模型,Encoder是一個雙向GRU-RNN,Decoder是一個單向GRU-RNN,兩個RNN的隱藏層大小相同,注意力模型應用在Encoder的hidden state上,一個softmax分類器應用在Decoder的生成器上。
基準模型是套用Bahdanau,2014在機器翻譯中的方法,解決方案的思路都與之前的paper類似,並無新穎之處。
Large Vocabulary Trick這個模型引入了large vocabulary trick(LVT)技術到文本摘要問題上。本文方法中,每個mini batch中decoder的詞彙表受制於encoder的詞彙表,decoder詞彙表中的詞由一定數量的高頻詞構成。這個模型的思路重點解決的是由於decoder詞彙表過大而造成softmax層的計算瓶頸。本模型非常適合解決文本摘要問題,因為摘要中的很多詞都是來自於原文之中。
LVT是一個針對文本摘要問題的有效方法,考慮到了摘要中的大部分詞都是來源於原文之中,所以將decoder的詞彙表做了約束,降低了decoder詞彙表規模,加速了訓練過程。
Vocabulary expansionLVT技術很好地解決了decoder在生成詞時的計算瓶頸問題,但卻不能夠生成新穎的有意義的詞。為了解決這個問題,本文提出了一種擴展LVT詞彙表的技術,將原文中所有單詞的一度最鄰近單詞擴充到詞彙表中,最鄰近的單詞在詞向量空間中cosine相似度來計算得出。
詞彙表的擴展是一項非常重要的技術,word embedding在這裡起到了關鍵作用。用原文中單詞的最鄰近單詞來豐富詞彙表,不僅僅利用LVT加速的優勢,也彌補了LVT帶來的問題。
Feature-rich Encoder文本摘要面臨一個很大的挑戰在於確定摘要中應該包括哪些關鍵概念和關鍵實體。因此,本文使用了一些額外的features,比如:詞性,命名實體標籤,單詞的TF和IDF。將features融入到了word embedding上,對於原文中的每個單詞構建一個融合多features的word embedding,而decoder部分,仍採用原來的word embedding。
本文的一個創新點在於融入了word feature,構建了一組新的word embedding,分別考慮了單詞的詞性、TF、IDF和是否為命名實體,讓單詞具有多個維度的意義,而這些維度上的意義對於生成摘要至關重要。本文結果的優秀表現再一次印證了簡單粗暴的純data driven方法比不上同時考慮feature的方法。後面的研究可以根據本文的思路進行進一步地改進,相信會取得更大的突破。
Switching Generator/Pointer文本摘要中經常預見這樣的問題,一些關鍵詞出現很少但卻很重要,由於模型基於word embedding,對低頻詞的處理並不友好,所以本文提出了一種decoder/pointer機制來解決這個問題。模型中decoder帶有一個開關,如果開關狀態是打開generator,則生成一個單詞;如果是關閉,decoder則生成一個原文單詞位置的指針,然後拷貝到摘要中。pointer機制在解決低頻詞時魯棒性比較強,因為使用了encoder中低頻詞的隱藏層表示作為輸入,是一個上下文相關的表示,而僅僅是一個詞向量。
Pointer機制與某篇paper中的Copy機制有異曲同工之妙,都是用來解決OOV問題的,本文的最關鍵的是如何計算開關狀態是generator的概率,這一層的計算關係到當前time step是採用generator模式還是pointer模式。
Hierarchical Encoder with Hieratchical Attention數據集中的原文一般都會很長,原文中的關鍵詞和關鍵句子對於形成摘要都很重要,這個模型使用兩個雙向RNN來捕捉這兩個層次的重要性,一個是word-level,一個是sentence-level,為了區別與Li的工作,本文在兩個層次上都使用注意力模型。注意力權重如下:
本文模型示意圖如下:
注意力機制的本質是一組decoder與encoder之間相關聯的權重,本文在兩個層次上重新定義了attention weight,既考慮了某個encoder中每個word對於decoder的重要性,也考慮了該word所在sentence對於decoder的重要性。
Experiments and ResultsGigaword Corpus為了作對比,本文採用了Rush文章中的Gigaword數據集和他的開原始碼來處理數據,形成了380萬訓練樣本和約40萬驗證樣本和測試樣本,本文隨機選取2000組樣本作為驗證和測試集來測試本文模型的性能,為了更加公平地對比,本文使用了Rush採用的測試集來對比。
初始詞向量的生成是用Word2Vec,但在訓練的過程中會更新詞向量。訓練的參數設置也都採用一般的訓練設置。
在Decoder階段,採用大小為5的beam search來生成摘要,並且約束摘要長度不大於30個單詞。
評價指標方面,採用full-length Rouge召回率,然而該指標更加青睞於長摘要,所以在比較兩個生成不同長度摘要的系統時並不公平,用full-length F1來評價更加合理。
對比實驗共有以下幾組:
(1)words-1sent:baseline模型,對應之前的Encoder-Decoder with Attention模型。1sent表示模型的輸入是原文的第一句話。
(2)words-lvt2k-1sent:對應之前的Large Vocabulary Trick模型。lvt2k表示decoder的詞彙表上限是2000。
(3)words-lvt2k-(2|5)sent:與第二組實驗採用相同的模型,只是輸入採用了原文的前兩句話和前五句話。
(4)words-lvt2k-2sent-exp:對應之前的Vocabulary expansion模型。
(5)words-lvt2k-2sent-hieratt:對應之前的Hierarchical Encoder with Hieratchical Attention模型。
(6)big-words-lvt2k-(1|2)sent:模型與第二組實驗相同,但將embedding size和hidden state size增大到了200和400。
(7)big-feats-lvt2k-2sent:對應之前的Feature-rich Encoder模型。
(8)feats-lvt2k-2sent-ptr:對應之前的Switching Generator/Pointer模型。
實驗結果如下:
從表中清晰地看到switching generator/pointer模型在各個指標上都是最好的模型,本文的模型在Rush測試集中的結果都優於Rush的ABS+模型。
Gigaword由於其數據量大的特點,常被用於文本摘要任務中作為訓練數據。本文的訓練、生成參數都沿用了傳統的方法,評價指標選擇了更合適的F1,共設計了8大組實驗,從方方面面對比了各個模型之間的優劣,從多個角度說明了本文模型比前人的模型更加優秀。
數據集對於deep learning是至關重要的,構建一個合適的數據集是一個非常有意義的工作。哈工大之前有一個工作就是構建了微博摘要的數據集,方便了研究中文文本摘要的研究者。
DUC CorpusDUC2003作為模型的驗證集,DUC2004作為對比測試的數據集,模型的訓練都是通過Gigaword來做,這裡主要是為了對比本文模型和Rush的ABS和ABS+模型,結果如下:
在DUC2003中big-words-lvt2k-1sent表現更加突出,所以用該模型來與其他系統進行對比,結果明顯優於其他系統。
本文模型相比於其他系統的優勢在DUC數據集中並不如Gigaword數據集上更加明顯。因為大家的模型都是採用Gigaword來做的,模型都非常好地擬合了Gigaword數據集。從這個結論中也可以看出,deep learning技術對於數據集規模、質量和類型的依賴,並不能很好地泛化到其他數據內容中。
CNN/DailyMail Corpus現有的abstractive摘要系統都是單句摘要,本節實驗將要證明本文的模型同樣在多句摘要任務中會有更好的表現。
實驗結果如下:
從表中結果可以看出,switching generator/pointer模型更加優秀。
本文的一大貢獻在於構建了CNN/DailyMail文本摘要數據集,用來評測多句摘要的任務,為今後大量的相關工作提供了數據保障。
Qualitative Analysis本文的模型在一些數據的處理會理解錯原文的意思,生成一些「錯誤」的摘要。另外,Switching Generator/Pointer模型不僅僅在處理命名實體上有優勢,而且在處理詞組上表現也非常好。未來的工作中,將會對該模型進行更多的實驗。效果見下圖:
本文模型相對於Rush的模型有了更進一步的效果,但對於文本摘要問題來說,並沒有本質上的提升,也會經常出現這樣或者那樣的錯誤。指標上的領先是一種進步,但與評價指標太過死板也有關係,現有的評價指標很難從語義這個層次上來評價結果。所以,文本摘要問題的解決需要解決方方面面的問題,比如數據集,比如評價指標,比如模型,任何一個方面的突破都會帶來文本摘要問題的突破。
Conclusions本文提出的模型相比於前人的模型有更好的效果,並且構建了一個新的摘要數據集,可以滿足多句摘要的任務。
Review本文是一篇非常優秀的paper,在seq2seq+attention的基礎上融合了很多的features、trick進來,提出了多組對比的模型,並且在多種不同類型的數據集上做了評測,都證明了本文模型更加出色。從本文中得到了很多的啟發。
(1)單純地data-driven模型並不能很好地解決文本摘要的問題,針對文本摘要問題的特點,融合一些feature到模型之中,對模型的效果有很大的幫助。
(2)他山之石可以攻玉。其他領域的研究成果,小的trick都可以嘗試借鑑於文本摘要問題之中,比如seq2seq+attention的技術從機器翻譯中借鑑過來應用於此,比如LVT技術等等。
(3)文本摘要問題的解決需要解決好方方面面的問題,不僅僅是模型方面,還有數據集,還有評價指標,每個方面的進步都會是一大進步。
(4)deep learning技術訓練出的模型泛化能力和擴展能力還有很長的路要走,對訓練數據的嚴重依賴,導致了泛化能力和擴展能力的不足。針對特定的問題,構建特定的訓練數據集,這對corpus的建設提出了更高的要求。
Link[1] Abstractive Text Summarization using Sequence-to-sequence RNNs and Beyond(http://cn.arxiv.org/pdf/1602.06023)
工具推薦RSarXiv 一個好用的arxiv cs paper推薦系統 網站地址(http://rsarxiv.science/web)
ios App下載:App Store 搜索rsarxiv即可獲得