Abstract
- 通過(guò)文本抽取的方式生成摘要已經(jīng)陷入瓶頸。
- 通過(guò)抽象語(yǔ)句的含義來(lái)生成摘要是一個(gè)很有潛力的方向。
- 本文提出了End to end attention-based model來(lái)解決這個(gè)問(wèn)題。
Introduction
- Abstractive Summarization:摘要的本質(zhì)是文本核心意思的壓縮表示淮捆。許多成功的摘要系統(tǒng)都是通過(guò)文本抽取(text extractive)實(shí)現(xiàn)的,本文提出了一種完全數(shù)據(jù)驅(qū)動(dòng)的生成式摘要抽象方法卧惜。
- NNLM and encoder:本文參考了神經(jīng)機(jī)器翻譯的思想,將神經(jīng)語(yǔ)言模型和基于attention機(jī)制的上下文encoder結(jié)合起來(lái)做summarization夹纫。同時(shí)文章還借鑒了extractive的方法提出了一個(gè)基于beam-search的decoder咽瓷。
- Scale:由于本文的模型是End-to-end訓(xùn)練的,因此非常容易遷移到大數(shù)據(jù)上進(jìn)行訓(xùn)練舰讹。
Background
- 本文的目標(biāo)是對(duì)輸入的句子進(jìn)行信息壓縮茅姜,輸出句子的摘要信息。
- 輸入x是一個(gè)長(zhǎng)度為M的句子月匣,輸出y是一個(gè)長(zhǎng)度為N的句子钻洒,其中N<M奋姿,N的長(zhǎng)度是固定的。通過(guò)one-hot編碼將x編碼成V*M的矩陣航唆,將y編碼成V*N的矩陣胀蛮,其中V指的是語(yǔ)料庫(kù)大小。
-
sentence abstractive:表示從所有可能的y中選擇最優(yōu)的一個(gè)糯钙。
-
sentence extractive:表示將x轉(zhuǎn)化成最能表示其含義的subsentence粪狼。
-
sentence compression:表示從x中刪除最不重要的word。
- x到y(tǒng)的映射函數(shù)s由下式定義任岸。預(yù)估輸出的第i個(gè)詞
yi
時(shí)再榄,依賴輸入x、yi
的前C個(gè)詞yc
以及隱變量theta
享潜,這里對(duì)上下文窗口C做了Markov假設(shè)困鸥。
Model
模型融合了一個(gè)神經(jīng)語(yǔ)言模型和一個(gè)encoder,其整體框架如下a. Neural Language Model
-
神經(jīng)語(yǔ)言模型是如上圖紅圈部分剑按,采用了Bengio提出的NNLM語(yǔ)言模型疾就,其定義如下式所示
對(duì)這個(gè)模型的解釋如下所示
- 通過(guò)embedding矩陣E對(duì)上下文
yc
進(jìn)行embedding,生成上下文的壓縮表示艺蝴。由于矩陣E是D*V維的猬腰,yc
是V*C維的,所以E·yc
生成的是D*C維的矩陣猜敢,再經(jīng)過(guò)Flatten操作變?yōu)镃D*1維的向量姑荷。 -
yc
的embedding表示經(jīng)過(guò)全連接再激活之后生成語(yǔ)義向量h,該向量是當(dāng)前的上下文yc
的語(yǔ)義壓縮缩擂,表示yc
的下一個(gè)詞鼠冕,操作如圖所示 - 通過(guò)一個(gè)encoder將輸入x和上下文
yc
編碼成H維的向量enc(x,yc)
,這個(gè)向量實(shí)際上就是一個(gè)注意力向量胯盯。矩陣W和V分別將NNLM和encoder的輸出轉(zhuǎn)化為V維向量再進(jìn)行join懈费,最后經(jīng)過(guò)softmax變?yōu)橄乱粋€(gè)摘要文字的生成概率。
- 通過(guò)embedding矩陣E對(duì)上下文
b. Encoders
如果沒(méi)有encoder博脑,這個(gè)模型只是一個(gè)依賴生成句子上下文的語(yǔ)言模型楞捂。通過(guò)encoder可以將輸入x也編碼進(jìn)生成過(guò)程中,這樣最終生成的概率同時(shí)包含了輸入x和上下文yc
的信息趋厉。
本文介紹了三種encoder
-
Bag-of-Words Encoder:最簡(jiǎn)單的encoder是BoW,如下式所示胶坠。
- 首先通過(guò)embedding矩陣F將輸入x編碼成H*M維的矩陣君账,每個(gè)word由原來(lái)的V維降為H維(H<V)。
- 構(gòu)造均勻分布的注意力向量p沈善,相當(dāng)于在估計(jì)下一個(gè)生成word時(shí)給輸入句子x中的每個(gè)詞相同的權(quán)重乡数。
- 將x變化為H維的語(yǔ)義向量椭蹄,這個(gè)過(guò)程丟失了原來(lái)句子的語(yǔ)序關(guān)系,因此效果并不好净赴。
- Convolutional Encoder:一個(gè)深層卷積模型绳矩,這個(gè)模型較BoW的優(yōu)勢(shì)在于可以獲取相鄰單詞之間的組合信息,這個(gè)encoder同樣沒(méi)有考慮將上下文信息
yc
編碼進(jìn)來(lái)玖翅。
這幾個(gè)公式實(shí)在太晦澀翼馆,所以我畫了一個(gè)圖來(lái)說(shuō)明文中的卷積塊是如何設(shè)計(jì)的,如圖所示Q是一個(gè)大小為H*(2Q+1)的卷積核金度,maxpooling的窗口大小為2*1应媚。由于卷積采用了padded at the boundaries的方式,因此每次卷積完輸入size不變猜极,只在maxpooling之后減半中姜,所以文中說(shuō)M必須大于2的L次冪。
由上圖可知CNN網(wǎng)每次可以獲取2Q+1個(gè)word的臨近關(guān)系跟伏,CNN的模型容量遠(yuǎn)大于BoW丢胚,但是每生成一個(gè)摘要詞語(yǔ),輸入x中所有單詞貢獻(xiàn)的權(quán)重是一樣的受扳。這顯然違背我們的直覺(jué)携龟,因?yàn)檎忻總€(gè)詞只對(duì)應(yīng)輸入文本中的一部分詞語(yǔ),所以這里提出了第三個(gè)encoder辞色。 -
Attention-Based Encoder:attention-based encoder的結(jié)構(gòu)圖如下所示骨宠,是之前模型整體框架中藍(lán)圈部分的展開(kāi)。
attention-based encoder的定義和BoW的很接近相满,如下式所示层亿。
這里對(duì)式子進(jìn)行簡(jiǎn)單推導(dǎo):
- 對(duì)上下文
yc
進(jìn)行embedding,由于G是D*V維立美,所以embedding之后再Flatten的yc
為CD*1維匿又。 - 對(duì)輸入x進(jìn)行embedding,由于F是H*V維建蹄,所以embedding之后的x是H*M維碌更。
- 矩陣P是輸入x和上下文
yc
之間的一個(gè)軟對(duì)齊,大小為H*(CD)維洞慎,因此p是M*1維的輸出向量痛单。這里重要的是對(duì)這個(gè)向量p的理解:向量p代表在當(dāng)前上下文yc
的情況下,生成下一個(gè)詞語(yǔ)y(i+1)
對(duì)輸入x中各個(gè)詞語(yǔ)的依賴概率劲腿,也就是注意力概率旭绒。 - 對(duì)embedding矩陣
~x
進(jìn)行平滑(吐槽簡(jiǎn)書不支持Latex),具體做法是用一個(gè)大小為2Q+1的窗口對(duì)相鄰詞語(yǔ)向量求平均,實(shí)際上就是由2Q+1個(gè)詞向量組成短語(yǔ)向量挥吵。 - 最終的輸出
enc(x, yc)
代表對(duì)輸入x和上下文yc
進(jìn)行結(jié)合的語(yǔ)義向量德撬。(上下文yc
按照不同的注意力概率對(duì)輸入x中的各個(gè)短語(yǔ)向量進(jìn)行加權(quán)求和)
-
一個(gè)生成摘要的例子家破,橫軸代表生成的摘要句子,縱軸代表輸入的原始句子。圖中每一列代表生成該詞語(yǔ)時(shí)泉坐,其上下文對(duì)輸入句子中詞語(yǔ)的注意力概率熱力圖芭毙。
c. Training
由于缺少生成約束條件航瞭,因此訓(xùn)練采用最小化負(fù)對(duì)數(shù)似然的方式來(lái)逼近最優(yōu)解携茂,優(yōu)化算法采用mini-batch SGD。Generating Summaries
-
前面的介紹都是給定了訓(xùn)練集沪曙,如何訓(xùn)練網(wǎng)絡(luò)尋找生成概率最大的詞語(yǔ)。現(xiàn)在回歸到初始問(wèn)題:給定一個(gè)輸入句子x萎羔,如何生成概率最大的摘要句子液走。
- 由于沒(méi)有硬對(duì)齊的約束,因此可以用Viterbi算法解決贾陷,時(shí)間復(fù)雜度為O(NV^{C})缘眶,由于V數(shù)值過(guò)大,因此求解的性能會(huì)受到影響髓废。
-
本文采取的策略是beam search巷懈,每輪迭代生成概率最高的K個(gè)摘要子串,算法復(fù)雜度為O(KNV)慌洪,算法流程如下:
- 由于每一輪迭代都會(huì)計(jì)算給定上下文
yc
下K個(gè)最可能的子串顶燕,這個(gè)計(jì)算行為可以通過(guò)mini-batch進(jìn)行,因此K這個(gè)參數(shù)可以忽略不計(jì)冈爹,極大的提升性能涌攻。
Extension:Extractive Tuning
抽象式模型的一個(gè)缺點(diǎn)是對(duì)于源句子中的一些沒(méi)見(jiàn)過(guò)的專有名詞不能抽取出來(lái)。解決這個(gè)問(wèn)題可以將Abstractive模型和Extractive模型的優(yōu)點(diǎn)結(jié)合频伤,即ABS+模型恳谎。
ABS+的優(yōu)化目標(biāo)是最小化負(fù)對(duì)數(shù)似然函數(shù)
其中alpha是需要學(xué)習(xí)的權(quán)重向量,函數(shù)f是一個(gè)特征生成函數(shù)憋肖,最小化負(fù)對(duì)數(shù)似然等同于最大化打分函數(shù)
其中特征函數(shù)f的定義為
搞過(guò)機(jī)器學(xué)習(xí)項(xiàng)目的同學(xué)可能一看就明白了因痛,這個(gè)實(shí)際上就是拿出ABS網(wǎng)絡(luò)預(yù)測(cè)的結(jié)果作為一個(gè)feature,再結(jié)合一些人工拍的規(guī)則組合成一個(gè)5維的特征向量岸更。打分函數(shù)s本質(zhì)上就是對(duì)特征向量f進(jìn)行線性回歸得到的回歸分?jǐn)?shù)鸵膏,如果設(shè)置
α = (1, 0, . . . , 0)
,ABS+退化成ABS模型怎炊。文中介紹說(shuō)這些人工拍的規(guī)則主要是提取輸入x中的unigram较性、bigram和trigram特征用僧。
Related Work
-
Syntax-Based
Dorr, Zajic, and Schwartz 2003; Cohn and Lapata 2008; Woodsend, Fend, and Lapata 2010 -
Topic-Based
Zajic, Dorr, and Schwartz 2004 -
Machine Translation-based
Banko, Mittal, and Witbrock 2000 -
Semantics-Based
Liu et al 2015
Experimental
主要是一些超參:
- learning rate=0.05
- D=200 上下文embedding之后的長(zhǎng)度
- H=400 輸入embedding之后的長(zhǎng)度
- C=5 上下文窗口大小
- L=3 層深,這個(gè)存疑好像沒(méi)用到
- Q=2 平滑窗口大小