Deep Keyphrase Generation
- 第一篇做keyphrase generation的文章种蝶,之前的做法都是采用抽取式扩借。抽取式的問題在于襟铭,1)只能從原文中抽取,并且不能有一點(diǎn)順序和同義詞上的變化翁都;2)keyphrase排序碍论,通常采用TF-IDF或者PageRank,然而該算法都是采用統(tǒng)計(jì)信息柄慰,缺少了對(duì)document完整的理解鳍悠。
- 任務(wù)定義
- 數(shù)據(jù)標(biāo)注:輸入document税娜,輸出keyphrase集合
- 為了適配Encoder-Decoder模型,將數(shù)據(jù)重新組織為document-keyphrase的pair對(duì)(同一個(gè)document對(duì)應(yīng)多個(gè)keyphrase)
- 模型
- 采用標(biāo)準(zhǔn)的Encoder-Decoder模型藏研,然后通過Copying Mechanism緩解OOV的問題敬矩。
Neural Keyphrase Generation via Reinforcement Learning with Adaptive Rewards
- 模型輸入document,輸出為keyphrase集合蠢挡,本文將keyphrase通過特殊分隔符組合為一個(gè)輸出轰枝,因此一個(gè)document和一個(gè)組合的keyphrase形成了模型輸入和輸出晓避。
- 基礎(chǔ)的模型設(shè)計(jì)較為普通弄捕,采用Encoder-Decoder的方式進(jìn)行建模侯谁,其中Encoder為BI-GRU,Decoder為單層的GRU堡称。
- 為了緩解OOV的問題,作者也采用了Pointer-generator network
- 模型的損失函數(shù)為最大似然估計(jì)
- 本文的亮點(diǎn)在于最后作者采用Reinforcement Learning解決生成keyphrase過多或者過少的問題
- 當(dāng)生成keyphrase不足時(shí)艺演,采用recall作為reward却紧,希望模型生成更多的keyphrase
- 當(dāng)生成keyphrase充足時(shí),采用F1值作為reward胎撤,希望模型生成精度更高
Semi-Supervised Learning for Neural Keyphrase Generation
先前的keyphrase generation任務(wù)晓殊,大都建立在有大量監(jiān)督數(shù)據(jù)的前提下。然而獲得充足的監(jiān)督數(shù)據(jù)是一項(xiàng)非常奢侈的事情伤提,實(shí)際應(yīng)用中如何更好的利用未標(biāo)注數(shù)據(jù)提升模型的性能是本文主要考慮解決的問題巫俺。
- 任務(wù)定義
- 不同于document-keyphrase pair的數(shù)據(jù)構(gòu)造方式,這里將所有的keyphrase通過分隔符拼接到一起肿男。因此document-keyphrase set只會(huì)有一條訓(xùn)練數(shù)據(jù)介汹。
- 模型
采用標(biāo)準(zhǔn)的Encoder-Decoder模型,然后通過Pointer-generator Network緩解OOV的問題舶沛。
損失函數(shù)為標(biāo)準(zhǔn)的最大似然函數(shù)
在beam search之后嘹承,再對(duì)生成的keyphrase進(jìn)行ranking,得到最終的keyphrase
-
Semi-Supervised Learning
為了更充分利用無(wú)標(biāo)注數(shù)據(jù)如庭,采用標(biāo)注數(shù)據(jù)與無(wú)標(biāo)注數(shù)據(jù)混合叹卷,使得Encoder見過更多的document,同時(shí)也讓Decoder見過更多的上文信息坪它。- Unsupervised Learning Methods
- 采用TF-IDF和TextRank對(duì)未標(biāo)注document進(jìn)行keyphrase抽取骤竹,然后去重。
- 對(duì)抽取的keyphrase進(jìn)行排序往毡,然后取top的keyphrase作為訓(xùn)練數(shù)據(jù)
- Self-learning Algorithm
- 采用另一個(gè)baseline模型在標(biāo)注數(shù)據(jù)上進(jìn)行訓(xùn)練蒙揣,然后對(duì)未標(biāo)注document進(jìn)行生成,最后取top-1的keyphrase作為訓(xùn)練數(shù)據(jù)
- 模型訓(xùn)練
- 現(xiàn)在標(biāo)注數(shù)據(jù)和偽標(biāo)注數(shù)據(jù)混合之后的數(shù)據(jù)上訓(xùn)練卖擅,然后在標(biāo)注數(shù)據(jù)上進(jìn)行finetune
- Multi-task Learning with Auxiliary Task
- 為了充分利用未標(biāo)注數(shù)據(jù)鸣奔,作者這里通過document和title構(gòu)造了一個(gè)輔助任務(wù)墨技,兩個(gè)任務(wù)共享Encoder,Decoder分別適配不同的任務(wù)挎狸。
- Unsupervised Learning Methods
Title-Guided Encoding for Keyphrase Generation
針對(duì)title和document扣汪,先前的建模不加區(qū)分的同等對(duì)待,因此忽略了title的重要地位锨匆。為了解決該問題崭别,本文對(duì)title和document采用不同的encoder進(jìn)行編碼,然后進(jìn)行融合以進(jìn)行decoder恐锣。
- 問題定義
- 數(shù)據(jù)格式:title茅主、document、keyphrase set
- 與傳統(tǒng)pair不同土榴,這里采用三元組的方式進(jìn)行建模<title诀姚、document、keyphrase>玷禽,一個(gè)keyphrase會(huì)拆分成多個(gè)三元組赫段。
- 模型
-
Title-Guided Encoder Module
Sequence Encoding Layer
這里采用BI-GRU對(duì)title和document進(jìn)行編碼Matching Layer
在獲得title和document的編碼信息之后,接下來就是融合title和document特征的階段矢赁。本文采用attention機(jī)制進(jìn)行特征融合(1:title-to-title部分糯笙;2:title-to-document部分)Merging Layer
keyphrase的核心內(nèi)容仍然來自于document,前面的融合特征更多的是為了更好的利用title特征撩银,因此接下來需要將document特征和融合之后的特征進(jìn)行合并
Decoder Module
Decoder采用了較為常見的GRU+Pointer-generator network-
Training
- 負(fù)對(duì)數(shù)似然損失函數(shù)
-
Topic-Aware Neural Keyphrase Generation for Social Media Language
[圖片上傳失敗...(image-513f96-1595847363294)]
為了緩解社交媒體信息中數(shù)據(jù)稀疏给涕、普通的模型難以捕捉文章核心內(nèi)容的問題,本文采用主題模型結(jié)合seq2seq對(duì)keyphrase generation進(jìn)行建模额获。然后作者通過實(shí)驗(yàn)對(duì)構(gòu)思進(jìn)行驗(yàn)證够庙,本文模型取得了state-of-art的結(jié)果。
- 模型
-
Neural Topic Model
- BoW Encoder
利用神經(jīng)網(wǎng)絡(luò)估計(jì)先驗(yàn)變量和
- BoW Decoder
與LDA類似咪啡,其假設(shè)存在個(gè)主題存在首启,其中每一個(gè)主題都表示有一個(gè)topic-word的分布,而其中的每一個(gè)document都有一個(gè)Topic Mixed Distribution撤摸。在神經(jīng)網(wǎng)絡(luò)模型之中使用Gaussian Softmax的方式產(chǎn)生毅桃。
- BoW Encoder
Sequence Encoder
采用標(biāo)準(zhǔn)的BI-GRU模型對(duì)input進(jìn)行特征編碼-
Topic-Aware Sequence Decoder
- decoder的輸入除了上一時(shí)刻的狀態(tài)之外,還包括了主題模型信息
和sequence encoder狀態(tài)
- 通過attention計(jì)算document的核心詞准夷,然后結(jié)合當(dāng)前時(shí)刻的狀態(tài)進(jìn)行單詞預(yù)測(cè)
- 為了緩解OOV問題钥飞,本文采用Pointer-generator network
- decoder的輸入除了上一時(shí)刻的狀態(tài)之外,還包括了主題模型信息
-
損失函數(shù)
- 針對(duì)keyphrase generation,損失函數(shù)為交叉熵?fù)p失
- 針對(duì)神經(jīng)主題模型(NTM)衫嵌,損失函數(shù)為KL散度損失
-
One Size Does Not Fit All: Generating and Evaluating Variable Number of Keyphrases
本文主要解決keyphrase generation的兩個(gè)問題读宙,1)生成結(jié)果是否具有多樣性;2)生成結(jié)果的評(píng)估方式楔绞。首先结闸,目前的keyphrase generation方法唇兑,大都采用比較大的beam search,然后取top的keyphrase作為最終的生成結(jié)果桦锄,但是不同的source text應(yīng)該有不同數(shù)量的keyphrase扎附;同時(shí),并行的beam search不能建模keyphrase之間的關(guān)系结耀,導(dǎo)致生成結(jié)果的多樣性降低留夜。其次,評(píng)估效果時(shí)大都采用生成結(jié)果的top keyphrase(個(gè)數(shù)固定)與ground truth(個(gè)數(shù)不確定)進(jìn)行比較图甜。
- 問題定義
- 輸入:source text
- 輸出:通過分割符對(duì)keyphrase進(jìn)行分割碍粥,然后拼接為一個(gè)輸出字符串,例如:keyphrase-1 <sep> keyphrase-2
- 模型
- Mechanisms for Diverse Generation
- Semantic Coverage
本文設(shè)計(jì)了Semantic Coverage讓生成的keyphrase與source text關(guān)系更緊密黑毅。通過另一個(gè)uni-gru將decoder-generated進(jìn)行編碼嚼摩,然后將編碼的特征作為下一次decoder輸入的一部分來影響模型。最后作者設(shè)計(jì)Semantic Coverage loss博肋,將source text的encoder特征與decoder-generated encoder特征計(jì)算classification loss(隨機(jī)采樣N-1個(gè)負(fù)樣本)低斋。 - Orthogonal Regularization
- Semantic Coverage
- Training Loss
因此,訓(xùn)練損失包含3部分匪凡,生成損失、coverage loss掘猿、歸一化loss病游。 - Decoding Strategies
- Exhaustive Decoding
將beam search的大小設(shè)置為150或者200,然后再進(jìn)行排序篩選top的keyphrase稠通。時(shí)間復(fù)雜度非常高衬衬。 - Self-terminating Decoding
將所有的keyphrase用分割符拼接到一個(gè)字符串
- Exhaustive Decoding
- Evaluating Keyphrase Generation
主要是將固定的top-k改為動(dòng)態(tài)的k(隨ground-truth變化)
- Mechanisms for Diverse Generation