1. 程式人生 > 其它 >[論文閱讀] Template-Based Headline Generator for Multiple Documents

[論文閱讀] Template-Based Headline Generator for Multiple Documents

pre

title: Template-Based Headline Generator for Multiple Documents
accepted: IEEE Access
paper: https://ieeexplore.ieee.org/document/9729734/
code: https://github.com/klks0304/mud2h
pandoc: pandoc "[論文閱讀] Template-Based Headline Generator for Multiple Documents.md" -o "[論文閱讀] Template-Based Headline Generator for Multiple Documents.docx" --reference-doc=custom-reference.docx

關鍵詞:多文件摘要,圖神經網路,標題生成,二階段架構, soft template

摘要模型

ref: https://zhuanlan.zhihu.com/p/135468859

摘要模型(Summarization model),也稱為文字壓縮模型(Compression model),用於將長文字(source)壓縮為短文字(summaries),同時不丟失source的主要資訊,使得人們可以瀏覽較短的summaries獲悉source的主要內容。

根據摘要不同的生成方式,可以將摘要模型分成兩類:抽取式摘要模型(Extractive Summarization model)和生成式摘要模型(Abstractive Summarization model)。

抽取式摘要模型

抽取式摘要模型指,從source中選擇合適的句子作為summaries的模型,要求被選擇的句子同時滿足兩個要求:

  1. 包含source中全部的重要資訊,並與其在邏輯上保持一致,這實際上是在強調summaries的information recall
  2. 具備最低的冗餘性,即包含類似資訊的句子不應同時出現在summaries中,包含非重要資訊的句子不應出現在summaries中,這實際上是在強調summaries的information precision。

抽取式摘要生成任務通常被視為sequence labeling task,decoder沿著待壓縮文件逐句進行二分類,每一步解碼時,綜合當前的句子語義資訊、上一步的解碼狀態和待壓縮文件的全域性語義資訊,判斷當前的句子是否應被選擇為摘要。

因此抽取式摘要能以較高標準滿足上述兩個要求,但是摘要的內容直接從原文抽取,文字連貫性很差,如果涉及實體的指代(如:he、it、this等)還需要進行指代消解(coreference resolution)。為此,生成式摘要模型被提出來用於生成更加連貫的summaries。

生成式摘要模型

生成式摘要模型指,根據source的重要資訊,由decoder自發地生成summaries。與抽取式摘要一樣,生成式摘要仍需滿足上述的兩個要求,即資訊性和冗餘性;同時,與抽取式摘要相比,生成式摘要具備更高的抽象性(abstraction)和連貫性(coherence/fluency),在資訊的表達方式上具備更高的自由度。

生成式摘要模型通常採用seq2seq框架,encoder編碼待壓縮文件的語義資訊,decoder通過attention機制自適應地選擇有效的上下文資訊,逐字生成連貫的、資訊一致的摘要。

decoder具備更高的自由度,摘要更連貫,如果經過LM objective預訓練則更為明顯,更難滿足那倆要求,容易出現以下幾個錯誤:

  1. 生成與source重要資訊無關的內容,甚至生成與source重要資訊在邏輯上相悖的內容,當source中涉及大量的實體(entity)和關係(relation)時,這種情況尤其明顯
  2. decoder在生成較長的摘要時,忘記之前已經對某個重要資訊進行壓縮,因而不斷地對該重要資訊進行重複壓縮,生成重複的摘要,提高了冗餘性。

生成式摘要會遇到OOV問題:為了提高decoder的生成效率,decoder總是使用有限的vocabulary,在decode過程中,decoder的vocabulary可能缺少用於描述source重要資訊的tokens,尤其是source中的一些重要實體和關係,此時decoder生成<UNK>。為了緩解這種情況,常給生成式摘要模型增加copy mechanism,即當decoder的vocabulary沒有包含某個描述source重要資訊的token時,從source中複製該token,而非生成<UNK>

實踐中來看,增加copy mechanism的生成式摘要模型生成的摘要的抽象度(不從source中copy token的概率)往往大幅下降

針對問題

從多文件摘要、生成標題

INTRODUCTION

資訊爆炸時代通過標題決定文章是否有閱讀價值很有用。
所提模型 "from Multi-Document to Headline",包含兩階段:多文件摘要跟多文件標題生成。

該模型可以生成接近使用者偏好的真實定製化標題,而不是hard-template方式輸入使用者名稱跟目的地(這倆個是資料集裡面的屬性吧)

不同於TemPEST,Rerank增加了使用者點選歷史,用以找出使用者偏好的模板風格。這裡選擇使用者偏好的模板直接開始,避免了編碼器稀疏輸入的問題(沒看TemPEST不大好理解,難道是所有模板都輸入,只有少數偏好的,因此較為稀疏?),Rewrite部分使用 single selective encoder(啥?網上沒有)

貢獻

  1. 提出MuD2H,第一個使用圖神經網路學習表徵嵌入的工作,能捕捉多個文件間句子的關係。靠這些嵌入將單一文件的標題生成SOTA模型擴充套件到多文件。
  2. MuD2H使用基於template的方法,引入soft template作為額外輸入來指導seq2seq模型。標題template的選擇基於使用者點選歷史資料,隨後基於句子嵌入和所選template用雙向選擇編碼器(bi-directional slective encoder)生成標題。
  3. 建立了多文件標題生成的新資料集
  4. 實驗顯示本文的句子選擇方法能選出保持相關性跟多樣性的關鍵句。提出的MuD2H不僅在Rouge方面超越baselines,也能生成使用者更滿意的標題。

核心思想

整體是二階段的方法,extract-abstract,創新在於根據使用者點選歷史資料選擇幾篇相近文章的標題作為soft template,然後加一個損失項約束生成的標題與之相似,標題使用雙向選擇編碼器(bi-directional slective encoder)生成

相關研究

TemPEST 是一個 soft template-based seq2seq (基於軟模板的序列到序列) 模型,包含三個步驟:Retrieve, Rerank, Rewrite。該模型構建了一個資訊檢索系統用以索引和搜尋,將搜尋結果重排然後選擇合適的template。

除了摘要跟縮略輸入文件,標題生成模型還需要有合適的輸出。但TemPEST只能用於單個文件。

抽取式摘要

基於抽取的摘要早期研究受Pagerank這篇論文影響,如TextRank, LexRank,他們計算句子相似圖的顯著性。 Li et al.用支援向量迴歸模型(SVR)做特徵選擇,以及加權來客服語意重複問題。GreedyKL使用KL散度作為從給定文字選擇摘要的評價標準(criterion)

抽取式摘要的新趨勢是基於學習,G-Flow致力於句子選擇跟獨立排序。為了評估一致性,G-Flow
使用基於手工特徵的近似話語圖?(approximate discourse grap, ADG)來評估質量。

R2N2發展了一個針對榮譽句子的排序框架。它將輸入句子轉換為二元樹,通過RNN在每個節點遞迴地處理二元樹。

Yasunage et al.應用圖卷積網路到他們提出的個性化話語圖?(personalized discourse grap, PDG),並使用GRU來計算句子嵌入,模型生成簇嵌入,使用文件級的GRU在句子間完全匯聚特徵。

HSG構建了一個異質圖(heterogeneous graph),除了句子,含有不同粒度的語義結點。此外,它還能靈活地從單文件擴充套件到多文件。

SgSum是一個基於圖的方法,用於基於抽取的多文件摘要。SgSum將句子看作結點,然後生成輸入文件的句子關係圖。模型輸出子圖,將其作為摘要結果。

最近發表的ThresSum用一個強大的編碼器強調每個句子,利用監督變數(supervised variables )選擇儘可能跟原始文章意思相近的句子,不需對選擇k個句子設限。

生成式摘要

生成式摘要方法用上序列到序列神經網路架構,近來展示出富有前景的結果,其編碼文件然後將學來的表達解碼為生成的摘要。

Rush et al. 首先應用基於注意力的序列到序列模型到生成式摘要中。

Nallapati et al.進一步將序列到序列模型變為基於RNN的模型,效果顯著。基於RNN的編碼解碼結構一直用到現在。例如DRGD使用迴圈生成式解碼器來學習文字的隱資訊。

另一方面,Cao et al. 注意到seq2seq經常按順序複製源單詞,於是提出基於 soft template的摘要 \(Re^3Sum\)。在傳統基於template的方法中,使用手工定義規則的template是一個不完整的句子,可以用關鍵詞填充。由於是手工定義的,因此相當耗時,也需要大量人力。\(Re^3Sum\)提出一種新的、基於soft template 的架構,使用已有的摘要作為template來指導seq2seq模型。

BiSET是基於template的SOTA生成式摘要方法,沿襲以往的架構。為了提高對輸出的表達,使用兩個門的雙向選擇層來選擇關鍵資訊。

TemPEST提出了一種個性化主題生成模型,該模型添加了使用者感知序列編碼器來生成使用者特定的文章表示,並幫助機器生成使用者特定主題。

大多數生成式摘要方法都是seq2seq模型,因此NATS工具包收集了這些方法並在CNN/Daily Mail資料集上執行。

通常,生成式方法僅適用於單個文件摘要。最近的發表的BASS應用語義圖來連線輸入文件中的單詞。BASS連線輸入的方法可以連線不同文件之間的單詞,因此它也適用於多文件摘要

BASS成功地縮小了多文件摘要問題和生成式摘要模型之間的差距。

混合式摘要

Liu等人提出了一種兩階段模型T-DMCA,用於多文件摘要、連線抽取和生成式摘要方法。這項工作並不因其模型而出名,但提出了一個著名的資料集WikiSum,並被後續摘要工作所使用。

T-DMCA在抽取階段應用 tf-idf 對其句子進行排序時具有最佳結果,然後在生成階段應用具有壓縮記憶體(memory-compressed)注意力的transformer解碼器。

HierSumm也是一個兩階段模型,它採用邏輯迴歸來排序段落,然後應用全域性transformer層來交換各段落的資訊,然後輸出生成式摘要

ESCA在句子編碼器之後應用矩陣層。矩陣層有效地控制extractor的結果。由於抽取的摘要給出了一個更人性化的句子,因此調整結果,然後將其與abstractor相結合,可以得到更高質量的摘要。

TG MultiSum抽取每個文件的主題,並構建表示每個文件的異構圖,然後學習摘要。

CABSD的工作原理類似,他們從所學的子主題中抽取句子,然後生成摘要。ESCA、TGMultiSum和CABSD等效果好的原因就是分了兩個階段生成。他們首先從輸入中抽取extract,然後生成abstract摘要輸出,這是兩階段多文件摘要的趨勢。

方法(模型)流程

本文的模型也分了兩個階段

圖1 MuD2H的框架,分成extractor, abstractor兩個階段

在生成輸入文件的標題之前,我們抽取句子以生成文件的大體含義。總的來說,第一階段是extractor,第二階段是abstractor。圖1顯示了所提模型的結構。

THE EXTRACTOR

extractor部分,給定文件集D,目的是從這些文件中抽取一些有代表性的句子,每個文件\(d_i\)又由句子集S組成,用\(M_i\)表示\(d_i\)中的句子數量

傳統的基於抽取的摘要方法依賴於人工特徵。為了解決這個問題,我們提出了一種資料驅動方法,採用了基於圖的學習方法模型。建立了一個句子關係圖來捕捉句子之間的關係,每個句子都被送入一個遞迴神經網路來生成句子嵌入。接下來用圖卷積網路處理句子關係圖,並將句子嵌入作為輸入節點特徵,這樣可以為每個句子產生一個高階隱藏特徵。

之後,我們使用線性層來估計每個句子的顯著性得分,這樣有助於模型從文件中提取合適的句子。最後,我們貪心地選擇突出句子來表示輸入文件集,而不是選擇具有最高顯著性分數的那些句子。

SENTENCE RELATION GRAPH

句子關係圖中,每個頂點表示一個句子\(s_{i,j}\)\(s_{i,j}\)\(s_{i',j'}\)之間無向邊的權重代表相似度。

我們使用每個句子對\((s_{i,j},\; s_{i',j'})\)之間的餘弦相似性來構造一個完整的圖。然而,如果我們直接輸入這個語義句子關係完整圖,該模型就不能有效地工作,因為完整圖中有太多的冗餘資訊。

為了強調具有更高相似度的句子,我們設定了閾值\(t_g\),並刪除了權重低於閾值的邊。句子關係圖通過顯著性估計的圖卷積網路表示為鄰接矩陣A。關係圖生成過程的演算法形式在演算法1中給出。

圖演算法1 句子關係圖

SENTENCE EMBEDDING

給定文件集D,編碼所有句子,對於句子\(s_{i,j}\)裡的所有單詞,每個詞都轉換成詞向量,然後喂入句編碼器去生成\(s_{i,j}\)的句編碼\(s'_{i,j}\),其維度是\(d_s\),使用GRU作為句編碼器,最後一個隱層的狀態作為句編碼。所有文件集的句編碼如下拼接

\[X = \left[s_{ 1, 1}^{\prime} \ldots s_{ i, j}^{\prime}\right]^T \in \mathbb{R}^{M\times d_s} \tag{1} \]

注意M表示所有出現在文件集D的句子數量。矩陣X是用於圖卷積網路的特徵矩陣。

SALIENCE ESTIMATION

圖卷積網路是一種多層神經網路,它直接對圖進行操作,並基於其鄰居的屬性匯出結點的嵌入向量。分層線性公式(Layer-wise linear formulation)允許模型捕獲句子中更高級別的隱藏特徵。在該步驟中,使用鄰接矩陣A來表示句子圖,並使用X作為其特徵矩陣的表示。

  • \(A \in \mathbb{R}^{M\times M}\),是句子關係圖的鄰接矩陣,M是頂點數量,其中1表示結點相連,0表示不相連
  • \(X \in \mathbb{R}^{M\times d_s}\),輸入的結點特徵矩陣,\(d_s\)是特徵向量維度

這一步的輸出是每個結點的高階隱特徵,\(S^{\prime\prime} \in \mathbb{R}^{M\times F}\),其中F是輸出向量嵌入的維度。為了在聚合(aggregate?)中納入結點自己的特徵,為鄰接矩陣A增加了self-loops,有\(\tilde{A} = A + I_M\),其中\(I_M\)是單位矩陣(identity matrix),propagation規則如下:

\[S^{\prime\prime}=ELU(\hat{A}\cdot E L U(\hat{A}X W_{0}+b_{0})W_{1}+b_{1}) \tag{2} \]

\(\hat{A}\ =\ D^{-\frac{1}{2}}\tilde{A}D^{-\frac{1}{2}}\) 是歸一化的對稱鄰接矩陣,D是度矩陣,第i個對角元素恰好為\(\tilde{A}\)第i行元素和,

注:度矩陣是對角陣,對角上的元素為各個頂點的度,頂點\(v_{i}\)的度表示和該頂點相關聯的邊的數量。
再注:推測加的self-loops表示結點到自身的一條邊,所以D的元素才會是\(\tilde{A}\)第i行元素和

\(W_l\)是要在第i層中學習的輸入-隱層權重矩陣(這\(W_l\)是不是該寫成\(W_i\),畢竟l都沒出現過),\(b_i\)是偏置向量。我們使用指數線性單元(ELU)代替線性整流函式(或修正線性單元,Rectified Linear Unit, ReLU)作為啟用函式,因為指數線性單元傾向於更快地將損失(cost)收斂到零,並更好地處理消失梯度問題。隨後,我們使用線性層將每個句子的高階隱藏特徵投影為顯著性得分。此外,我們通過softmax標準化顯著性得分:

\[sal(s_{i,j})=s o f m a x(s_{i,j}^{\prime\prime}W_{2}+b_{2}) \tag{3} \]

其中\(s_{i,j}\)是第i個文件的第j個句子,而\(s_{i,j}^{\prime\prime}\)是句子集S第(\(\sum_{i^{\prime}=1}^{j}M_{i^{\prime}-1}+j\))行的元素,其中\(M_0=0\)

注:關於ReLU論文的描述是Reflect Linear Unit,這玩意搜不到,感覺說的應該是Rectified Linear Unit

TRAINING

以前的工作,使用交叉熵損失進行訓練。用交叉熵訓練模型時,損失傾向於輸出接近0或1的分數,這可能會給排名造成問題(obstacle for ranking)。為了克服這個問題,我們訓練了具有對比損失的模型。

由於通過顯著性得分來選擇句子,所以句子選擇問題可以被認為是一個排序問題。句子之間的相對排名被認為比絕對分數更重要,而對比損失給出了相對排名分數。因此,參考對比損失,我們將排名損失(ranking loss)定義為

\[\mathcal{L} = \frac{1}{2}\sum_{s_{i},s_{j}\in S}\left((1-y)\cdot D(\mathrm{sal}(s_{i}),\mathrm{sal}(s_{j}))^{2} % + y\cdot\operatorname*{max}\left(\mu-D\big(\ sal(s_{i}),\ sal(s_{j})\big),0\right)^{2}\right) \tag{4} \]

其中y是一個標籤,表示距離與\(\sigma = \sqrt{V a r(R(S))}\)比,兩個句子的排名是相似(y=0)還是遠離(y=1)。μ是設定的邊距(margin)。D表示兩個給定句子之間的距離,這裡使用歐式距離。更準確地說

\[D(x_{i},x_{j})=\left\|x_{i}-x_{j}\right\|. \tag{5} \]

以及

\[y= \begin{cases} 0,\quad if\,D(R(s_{i}),R(s_{j}))\leq\sigma\\ 1,\quad if\,D(R(s_{i}),R(s_{j})) > \sigma \end{cases} \tag{6} \]

其中\(R(s) = s ofm a x(r(s))\)\(r(s)\)是句子s的ROUGE-1召回分數,與ground-truth比較而來
注:Rouge(Recall-Oriented Understudy for Gisting Evaluation),是評估自動文摘以及機器翻譯的一組指標。它通過將自動生成的摘要或翻譯與一組參考摘要(通常是人工生成的)進行比較計算,得出相應的分值,以衡量自動生成的摘要或翻譯與參考摘要之間的“相似度”。

公式4第一項,y=0時啟用,目標函式表示如果兩個資料點應當相似(y=0),就最小化它們的顯著性分數的差值,儘量將二者拉近。

公式4第二項,y=1時啟用,當兩個資料點之間的距離應當比較遠(y=1),同時距離又小於margin時,就將距離替換為margin,給損失函式一個懲罰(因為此時實際距離不夠遠),否則離得夠遠以至於小於\(\mu\),這時損失為0,看起來像一個hinge loss

公式6的\(\sigma\)根據公式是R(S)方差的平方根,S大寫,按前面所說是整個句子集,所以\(\sigma\)是所有句子ROUGE-1召回分數的標準差,用在這裡像是起到閾值的作用,只要兩個句子的分數差小於它就被認為是相近的,y賦為0

SENTENCE SELECTION

在根據模型的預測分數按降序排列句子後,開始選擇句子。並非直觀地選擇Top-k個句子,而是應用貪心策略,它能夠選擇多樣化的句子,而不是重複意義的句子。

每次從列表頂部選擇一個句子時,檢查它是否與現有句子重複。為了確定句子是否冗餘,使用tf-idf餘弦相似度。

圖演算法2:句子選擇演算法

參考虛擬碼演算法2,對於句子s和所選句子集C,如果s和C中某個句子之間的餘弦相似性高於閾值\(t_s\),則該句子被認為是多餘的,丟棄。否則只要非空就選擇該句子,重複這個步驟,直到達到預期的句子數n。演算法形式如演算法2所示。(redThe algorithmic form us shown in Algorithm 2,什麼破句子)

這種方法作者稱之為貪心,跟top-k差別在於多了個去重操作

THE ABSTRACTOR

在abstractor中,我們的目標是生成一個標題,它需要個性化、吸引人、忠於原文且在長度限制內。因此,我們參考了以往abstractor中基於template的摘要框架。

abstractor的輸入是extractor生成的句子集合。這些句子是連在一起的,因此可以認為是一篇文章。每個文章\(A_r\)由n個單詞\(\{x_{i}^{a}\mid i\in[1,n]\}\)構成。設T表示訓練語料庫中的一組模板,\(T=\{t_i|i\in [1,p]\}\),其中p是資料集中所有候選模板的數量。

對於給定的文章,我們使用資訊檢索(IR)平臺從T中找出一些soft template候選,然後通過重新排列或使用者點選歷史來進一步選擇最佳模板\(T'=(x^t_1,x^t_2,…x^t_n)\)。隨後,我們擴充套件了seq2seq模型,通過從\(A_r\)\(T'\)學習重要資訊來生成標題。

RETRIEVE AND RERANK

Retrieve和Rerank的目標是為\(A_r\)選擇最佳 template t。Retrieve旨在從訓練語料庫中返回一些template候選,假設相似的句子具有相似的摘要模式。

因此,給定一篇文章,在訓練語料庫中找到其相似的文章(analogy),並選擇其標題作為模板候選。給定\(A_r\),使用IR系統\(Pylucene^2\)檢索一組類似的文章,它們的標題將被視為模板候選。對於每個\(A_r\),選擇前30個搜尋結果作為模板候選。

檢索過程僅基於單詞匹配或文字相似性,不測量它們的深層語義關係。因此,使用Doc2Vec嵌入來計算餘弦相似度,以識別候選模板中的最佳模板。

此外,在我們的工作中,我們希望生成的標題是個性化的,因此我們添加了使用者點選歷史,以幫助我們選擇模板。我們將使用者單擊的產品的標題記錄為使用者單擊歷史。因此,在Rerank過程中,我們加入使用者點選歷史以計算候選模板的餘弦相似度,從而為\(A_r\)選擇所需的模板t。

REWRITE

我們在Rewrite中的實現模型受到BiSET和選擇性機制的啟發。在Rewrite之前,注意有一篇源文章\(A_r\)及其從Retrieve和Rerank中學習到的模板T′。我們使用兩層BiLSTM作為編碼器層,分別將文章和模板編碼為隱藏狀態\(h^a_i\)\(h^t_j\)

圖2 選擇編碼器

Rewrite的作用是選擇重要資訊。如圖2所示,有兩個選擇門:模板到文章(T2A)門和文章到模板(A2T)門。

T2A門可以應用模板來過濾文章表示。我們將最後一個前向隱藏狀態\(\overrightarrow{h_n^t}\)和後向隱藏狀態\(\overleftarrow{h_1^t}\)連線起來作為模板表示\(h^t\)。對於每個時間步i,它將\(h^t\)\(h^a_i\)作為輸入,以輸出模板門向量\(g^i\),用以從\(h^a_i\)中選擇 :

\[g_{i}=\sigma\left(W_{a}h_{i}^{a}+W_{t}h^{t}+b_{a}\right) \tag{7} \] \[h_{i}^{a^{\prime}}=h_{i}^{a}\odot g_{i} \tag{8} \]

其中\(\sigma\)表示sigmoid啟用函式,\(\odot\)是逐元素乘法,經過T2A門之後得到了向量序列\((h_{1}^{a^{\prime}}, h_{2}^{a^{\prime}}, \ldots, h_{n}^{a^{\prime}}).\)

這個門看起來就是根據template隱向量輸出門向量,將文章向量\(h^a_i\)做一個過濾,見圖2下半部分,結果\(h_{i}^{a^{\prime}}\)應該是帶有template資訊的文章向量

A2T門的目的是控制\(h_{n}^{a^\prime}\)在最終文章表示中的比例。假定源文件可信,因此當前階段文章\(A_r\)也是可信的,可以學習置信度d來決定\(h_{n}^{a^{\prime}}\)的比例

\[d=\sigma\left((h^{a})^{\top}W_{d}h^{t}+b_{d}\right) \tag{9} \]

\(h^a\)\(h^t\)產生方式一樣:拼接前向隱藏狀態\(\overrightarrow{h_{n\prime}^a}\)和後向隱藏狀態\(\overleftarrow{h_1^a}\),(感覺這個\(n\prime\)上標好像是多餘的啊)

最終文章表達通過\(h^{a}\)\(h^{a'}\)的加權和來計算得到:

\[z_{i}^{a}=d\cdot(h_{i}^{a^{\prime}})+(1-d)\cdot(h_{i}^{a}) \tag{10} \]

上述是輸入文章的編碼部分,選擇重要資訊然後給出向量表達。應該是通過門機制將一部分模板資訊融入了文章中。

在解碼部分(這裡對應圖1下半部分中間的Decoder部分),堆了兩層LSTM,然後使用注意力機制生成標題。每個時間步t,LSTM讀入前一個詞嵌入\(w_{t-1}\)和上一步的隱層狀態\(h^c_{t-1}\),然後為當前步生成一個新的一層狀態:

\[h_{t}^{c}=L S T M(w_{t-1},h_{t-1}^{c}) \tag{11} \]

其中LSTM初始隱層狀態就是原始文章表達\(h^a\)

這作者講得真的好細,每一步,每個狀態怎麼來的,感覺很適合剛入門的人閱讀,挺友好,只是有些標記出來得仍有些突然。

當前時間步長t的上下文向量\(c_t\)通過串聯注意力機制?(concatenate attention mechanism)來計算,該機制使用\(h^c_t\)\(z^a\)來獲得重要性得分。然後將重要性得分歸一化以通過加權和獲得當前上下文向量:

\[c_{t}=\sum_{i=1}^{L}a_{t,i}z_{i}^{a} \tag{12} \] \[a_{t,i}={\frac{\exp(e_{t,i})}{\sum_{i=1}^{L}\exp(e_{t,i})}} \tag{13} \] \[e_{t,i}=(z_{i}^{a})^\mathsf{T}W_{c}h_{t}^{c} \tag{14} \]

這公式實際上得倒著看,先算重要性分數\(e_{t,i}\)再根據它加權\(z_{i}^{a}\)得到當前的上下文向量\(c_{t}\)

之後使用連線層將\(h^c_t\)和上下文向量\(c_t\)組合為新的readout隱層狀態\(h^o_t\)

\[h_{t}^{o}=\operatorname{tanh}\left(W_{o}[c_{t};h_{t}^{c}]\right) \tag{15} \]

最終\(h^o_t\)喂入softmax來輸出目標詞分佈,以根據已有的詞\(w_1,w_2,\ldots,w_{t-1}\)預測下一個詞\(w_t\)

\[p\bigl(w_{t}\mid w_{1},\ldots,w_{t-1}\bigr)=s o f\iota m a x\bigl(W_{p}h_{t}^{o}\bigr) \tag{16} \]

TRAINING

目標函式包括兩部分。為了學習標題的生成,我們最小化生成的標題w和人類書寫的標題\(w^*\)之間的負對數似然:

\[\mathcal{L}_{h}=-\frac{1}{M}\sum_{i=1}^{M}\sum_{j=1}^{L}\log p(w_{j}^{*(i)}|w_{j-1}^{(i)},x^{a(i)},x^{t(i)}) \tag{17} \]

為了學習template的風格,最小化生成標題w跟template \(w^t\)之間的負對數似然:

\[\mathcal{L}_{t}=-\frac{1}{M}\sum_{i=1}^{M}\sum_{j=1}^{L}\log p(w_{j}^{t(i)}| w_{j-1}^{(i)}, x^{a(i)}, x^{t(i)}) \tag{18} \]

換句話說,調整\(\mathcal{L}_{h}\)優化了來自輸入文件的資訊。如果\(\mathcal{L}_{h}\)很小,那麼它接近於輸入集的原始含義。另一方面,調整\(\mathcal{L}_{t}\)可以優化標題的個性化風格。當\(\mathcal{L}_{t}\)較小時,它更接近使用者的偏好模板,因此輸出個性化的標題。結合上面兩個可得最終的目標函式:

\[\mathcal{L} = \mathcal{L}_{h} + \alpha\mathcal{L}_{t} \tag{19} \]

這個\(\mathcal{L}_{t}\)應該就是利用RETRIEVE AND RERANK部分選擇的soft template指導標題生成,M:所有出現在文件集D的句子數量;直接約束生成的標題跟template接近,真夠soft,\(\alpha\)估計得小於1,不然意思怕是要被帶偏,畢竟template跟groundtruth肯定是有差別的。

而這裡的soft是與hard template相對的,hard方式實際上是填空,感覺類似prompt,模型抽出關鍵詞填入template留空的位置,比較僵硬

EXPERIMENT

這項工作的目標是為輸入文件集生成合適的標題。更具體地說,我們將
問題轉化為以下幾個點:

  • 如何構建句子關係圖以實現模型的最佳效能?
  • 我們的抽取器是否優於其他基於extraction的摘要模型?
  • 使用完整的兩階段架構模型是否比僅使用abstractor模型更好?

DATASETS

表1 展示資料集中產品介紹跟描述的差異

自建的新資料集來自KKday(總部位於臺灣的線上深度旅遊體驗平臺),內含產品描述、產品介紹跟部落格文章。資料集可參考表1。部落格文章介紹一個景點(attraction)且包含多個與之有關的產品,因此部落格文章及其標題是用以跟生成的標題進行比較的baseline。

KKday提供來自90多個國家的30000多種產品,包括當地旅遊、活動和門票。我們使用產品介紹、描述和標題來訓練extractor。

KKday部落格資料集提到的多個文件中不同的產品為MuD2H應用提供了研究材料。平均而言,每個部落格都提到了八種產品。MuD2H生成的標題與部落格文章的原始標題進行了比較。

圖3 產品介紹和部落格資料之間的關係。部落格標題當做其中介紹的k個產品的多文件標題

表2 資料集概述

總之,80%的資料集被分配用於訓練,20%用於驗證和測試。圖3描述了產品介紹和部落格資訊之間的關係。補充材料中提供了資料集和實現細節,不過下發的pdf沒有附錄就偷個懶吧。資料集概述見表2。

IMPLEMENTATION DETAILS

為了設定句子關係圖的邊權重,我們根據以下實驗設定\(t_g=0.1\),這是上述SENTENCE RELATION GRAPH部分用於修剪句子圖的閾值。每個文件都由Chinese Knowledge and Information Processin(CKIP)標記。Word2Vec和Doc2Vec嵌入使用gensim實現,並在最新的中文維基百科資料集上進行預訓練。句子嵌入的輸出維度與單詞嵌入相同,即250。

對於圖卷積網路,將第一卷積層的嵌入大小設定為400,將第二卷積層的嵌入大小設定為128。batch size為16。學習率為0.0075,使用Adam進行隨機梯度下降,視窗大小為10,並且啟用early stopping。我們線上性層之前應用概率為0.2的dropout。句子選擇中的閾值\(t_s\)為0.8(根據驗證集調整)。

對於abstractor,我們參考BiSET構建我們的架構,BiSET是從流行的seq2seq框架OpenNMT擴充套件而來的。單詞嵌入和LSTM隱藏狀態的大小設定為500。此外,使用Adam優化器以0.001的學習率優化目標函式。對於所有baseline,我們使用其原始論文或實現中的預設引數設定。

EVALUATION METRICS

為了分析句子關係圖中不同方法的影響,我們使用ormalized Discounted Cumulative Gain(NDCG)進行評估。NDCG是一種排名評估指標,訓練extractor時將問題視為ranking問題,因此我們使用NDCG進行效能比較。

對於摘要任務,我們採用Rouge分數進行自動評估。Rouge-1和Rouge-2是最大公共子序列長度的比率,Rouge-L可以找出原始摘要和預測摘要之間最長的單詞公共子序列。

此外,我們使用Word2Sec餘弦相似度來度量輸出和每個文件之間的平均相似度,因為希望輸出能夠表達每個文件的含義。

注:Rouge-N的N是n-gram的n,看起來表示連續的n個詞;L即是LCS(longest common subsequence,最長公共子序列)的首字母。Rouge-N跟Rouge-L計算公式不同,而且Rouge-家族還有其他的成員,但都是用於衡量自動生成的摘要與參考摘要之間的“相似度”。

SENTENCE RELATION GRAPH COMPARISON

將句子轉換為數字結果,不同轉換方法將影響我們的句子關係圖。作者嘗試了不同的方法,包括兩種嵌入方法(LexRank和TextRank)。將\(t_g\)值從0轉換為0.2,以觀察影響。考慮的方法包括:

  1. Cosine:計算每個句子對的Word2Vec餘弦相似度
  2. TextRank:建立一個加權圖,其中結點是句子,邊基於單詞重疊的相似性度量定義。然後使用類似於PageRank的演算法來計算句子的重要性和精確的邊權重。提取PageRank中使用的描述馬爾可夫鏈的轉移矩陣。
  3. LexRank:一種廣泛使用的、基於句子圖中特徵向量中心性概念的多文件抽取式摘要器,用於設定邊權重。我們構建了一個以句子為節點的圖,並通過tf-idf餘弦相似度對邊進行加權,然後執行類似PageRank的演算法。
  4. tf-idf:將一個句子視為查詢,將多文件中的所有句子視為文件。權重對應於每個查詢對之間的餘弦相似度。

表3 基於NDCG構建的句子關係圖分析

表3是實驗結果。我們為其餘的MuD2H模型(本文模型)選擇了實驗結果最佳的方法和引數。結果表明,在NDCG評估中,使用餘弦相似度構建句子關係圖明顯優於其他方法。可能的原因是餘弦相似性依賴於句子的語義,而不是其單詞匹配。

QUALITATIVE RESULTS

表4 多種多樣基於抽取的模型在測試集上的Rouge召回分數

首先,將extractor模型與一些基於抽取的摘要進行了比較。表4顯示了ROUGE召回分數的結果。Random表示在本文的句子選擇集中隨機選擇k個句子,Top-k通過餘弦相似性獲取最相似的句子。與傳統方法相比,例如TextRank和Continuous LexRank(Cont.LexRank),本文的模型在Rouge評分中表現更好。

基於圖的SOTA方法SemSentSum是一個完全資料驅動的模型,使用交叉熵作為目標函式。跟設想的一樣,它在Rouge-2和Rouge-L中優於其他傳統baseline,但本文的模型仍然表現更好。

這是因為句子排名在深層開始變得不穩定,因為SemSentSum將交叉熵作為其目標函式,損失趨於消失,而我們的對比損失函式發揮了作用。

最大邊際相關性(Maximal Margin Relevenc, MMR)是一種著名的多文件貪心演算法,並且有了不少改進被提出。為了進行比較,我們使用SOTA基於短語嵌入的MMR作為baseline。它專注於生成非冗餘摘要,因此其輸出具有相對較高的單詞多樣性。

Top-k的Rough-1得分(標紅的第二行)高於Rouge-2和Rouge-L得分。可以看出,Top-k的這些分數與所提出的方法接近,這意味著Top-k也可以包括含義相近的句子。

表6 展示句子選擇方法優勢的案例研究(Case study)。每個例子包含7個句子,top-k選的第二句是重複的,跟第一句含義相似。避免重複的句子可以是得模型捕獲更多的意思(英文根據中文翻譯)

然而,表6提供了一個案例研究證明Top-k的侷限性。簡而言之,Top-k會選擇具有重複意義的句子。如表6所示,Top-k選擇的第一句和第二句都是關於環球快車通行證(Universal Express Pass)的。

相反,本文提出的方法可以通過考慮多樣性和相關性來選擇句子,結果顯示了所提方法的優點。然而,很難確定找多樣的句子是否關鍵,因為可能找到更多離題的句子。從結果來看,基於圖的方法,包括我們的模型和SemSentSum在內,在ROUGE召回分數方面優於MMR。

在多文件摘要任務中,一個重要的目標是生成的結果需要表達每個文件的焦點。這個問題是在語義層面,所以我們採用了Word2Sec相似性。我們測量輸出和每個輸入文件之間的平均相似度和標準差。平均相似度應儘可能大,但標準差應儘可能小。

表5 extractor輸出跟每個文件之間的平均Word2Vec餘弦相似度跟標準差

表7 不同extractor加上abstractor的實驗結果

表5顯示了不同模型的餘弦相似性。我們的模型具有最高的平均餘弦相似度。由於我們的輸入文件集具有明確的關係,例如,同一部落格中提到的產品必須來自同一個城市,因此成功的多文件模型至少應該抓住城市特徵。如果模型捕捉到了共同特徵,則很容易在實驗中獲得高分。換句話說,我們選擇的模型很難獲得低分。

為了證明我們的兩階段模型有用,分別使用不同extractor的輸出和直接拼接文件作為模型的輸入。表7顯示了實驗結果。

使用Rouge F1分數衡量生成的標題和人類書寫標題的相似度,使用平均Word2Sec餘弦相似度衡量生成的標題和每個文件。

當我們在第一階段使用extractor時,模型的效能更好。作者認為這是因為extractor專注於捕獲跨文件的資訊(capturing cross-documents)。此外,我們的完整模型優於所有基線模型,展示了在真實資料集應用上的最佳結果。

QUANTITATIVE RESULTS

HUMAN EVALUATION

除了自動評估,我們還在真實案例中進行人工評估摸索模型效能(access model performanc)。對31名使用者進行了使用者調查,包括電腦科學研究生和網路使用者。每個示例都包含一組由不同方法生成的產品介紹和標題,要求使用者按照1到4的級別(scale)對每個標題進行排名。

表8 人類評估的排名結果,Average(最後一列)是平均排名

表8中的結果顯示,最吸引人的標題是人類書寫的,第二名是由本文的模型生成的。在我們的統計中,65%的人認為人類書寫的標題是最好的,50%的人認為本文的模型生成的標題僅次於人類書寫的。不管怎麼說,本文的模型比所有這些自動生成的標題都更好。

CASE STUDY

表9 本文完整模型產生的個性化標題的輸入樣例(英語由中文翻譯而來)

表10 本文完整模型產生的個性化標題結果(英語由中文翻譯而來)

表9和表10顯示了個性化(customized)標題生成任務的案例研究。給定如表9所示的多個產品介紹,我們提出的模型可以根據不同模板生成不同風格的標題,如表10所示。使用者可能會青睞不同模板,因此會受到不同標題的吸引。我們根據其他產品的點選歷史來設計使用者特定的標題。

CONCLUSION

在這項研究中,提出了一個兩階段模型MuD2H,它為多個文件生成摘要和標題。據我們所知,這是第一個為多文件生成標題的模型。為了評估所提出的模型MuD2H,我們從旅遊產品的電子商務網站收集了一個新的資料集,其中包含產品描述、產品介紹、部落格文章和使用者瀏覽記錄。

我們研究的第一階段涉及基於圖的抽取式摘要(extractive summarization)。我們應用圖卷積網路來學習句子特徵以進行顯著性估計,交叉計算確保輸出摘要覆蓋輸入文件集的含義,而不是重複單詞或句子。

第二階段是基於template的生成式摘要(abstractive summarization)。我們從使用者的瀏覽歷史中瞭解他們的文字偏好,然後將他們最喜歡的標題型別作為soft template來指導seq2seq模型。

MuD2H優於現有的摘要模型,並滿足公司為不同使用者生成個性化標題的要求。此外也提供了人類評估跟樣例研究來闡明模型結果。

評價

文章寫作清晰易懂,提出的概念、公式都會解釋,圖漂亮,但圖1圖2不是很清晰。即便對於完全不熟悉該領域的新手也很友好。只是符號真的太多,閱讀恐怕得做下筆記,分兩三天看完全不記得標記什麼意思。而且公式也很多,對於編寫學習報告來說太痛苦了。

原本以為跟圖神經網路關係很大,還特意找了相關內容看,結果這裡的重點完全不是這個,比較意外

待解明