王 瑞,秦永彬,2,張 麗+,閆盈盈
(1.貴州大學 計算機科學與技術學院,貴州 貴陽 550025;2.貴州大學 貴州省公共大數據重點實驗室,貴州 貴陽 550025)
短文本關鍵詞抽取對于用戶檢索和定位符合自身需求的信息非常重要。然而,由于短文本特征過度稀疏,關鍵詞抽取存在兩個問題:①詞匯差異問題:關鍵詞在短文本中出現次數不多,甚至不出現。②主題相關性問題:由于短文本缺乏足夠的上下文信息,很難保證抽取的關鍵詞與短文本主題相關。針對以上兩個問題,本文提出一種用于短文本關鍵詞抽取的TTKE主題翻譯模型。與傳統方法相比,該模型能夠有效地抽取短文本關鍵詞。
目前,關鍵詞抽取方法主要分為兩類:無監督方法和監督方法。
無監督方法首先選取一些候選關鍵詞,然后通過一定策略對候選關鍵詞進行排序,選擇其中排名靠前的若干作為最終關鍵詞。李鵬等利用了基于圖模型的TextRank方法,該方法認為一個詞語的重要程度由指向它的其它詞語的重要程度決定,將圖節點作為候選詞,邊作為詞與詞之間的共現關系,根據PageRank算法選出排名最高的若干作為關鍵詞[1]。文獻[2,3]提出的關鍵詞抽取算法都是對TextRank的改進。
在有監督的方法中,關鍵詞抽取被視作一個分類任務,首先使用訓練數據來學習關鍵詞抽取模型,其次,在測試數據上進行文本關鍵詞抽取。Liu等提出利用決策樹學習方法進行文本關鍵詞抽取[4]。文獻[5,6]分別提出了基于支持向量機和神經網絡的關鍵詞抽取方法。Zhang等利用條件隨機場實現關鍵詞的自動標注[7]。
上述兩類方法僅依靠詞匯的統計信息,未考慮文本內容與關鍵詞的詞匯差異問題以及主題相關性問題的影響。文獻[8,9]利用LDA(latent dirichlet allocation)主題模型進行關鍵詞自動抽取,解決主題相關問題,但未考慮詞匯差異問題。Koeh和Knight考慮詞匯差異問題,提出了IBM model-1方法,該方法能夠有效學習詞語和關鍵詞的對齊概率,但忽視了主題相關問題[10]。Ding等考慮以上兩類問題,提出TSTM(topic-specific translation model)主題翻譯模型,該模型利用LDA進行主題發現,再計算詞語與關鍵詞的對齊概率[11],但是由于短文本的特征稀疏性問題,導致上述方法主題發現效果不佳,進而影響了關鍵詞抽取的精度。因此,本文提出的TTKE主題翻譯模型利用長文本降低短文本的特征稀疏,解決上述兩類問題,提高短文本關鍵詞抽取的效果。
(1)一個詞w是文本的基本單元,是詞匯表 {1,2,…,V} 中的一項。
(2)一個關鍵詞t是關鍵詞詞匯表 {1,2,…,T} 中的一項。
(3)一個主題k是 {1,2,…,K} 中的一項。



TTKE模型是一個結合主題模型和翻譯模型優點的關鍵詞抽取模型。圖形化表示如圖1所示,流程如圖2所示。

圖1 TTKE模型的圖形化表示

圖2 TTKE模型的生成流程
該模型包括以下3個方面:
(1)與LDA主題模型相結合。TTKE模型認為:用戶寫一篇短文本s時,首先根據主題分布θs選擇若干主題,然后根據每個主題下的詞語分布φk選擇詞語。為短文本s標注關鍵詞時,從該短文本的主題中選擇若干主題,然后綜合考慮選定的主題和短文本詞語,進而標注關鍵詞,保證了短文本與關鍵詞的主題的一致性。
(2)與統計機器翻譯模型相結合。TTKE模型基于短文本和關鍵詞的主題一致性原則,學習特定主題下詞語與關鍵詞的對齊概率Q,實現為未標注關鍵詞的短文本生成關鍵詞的目的。
(3)利用與短文本主題相關的長文本。TTKE模型引入了輔助長文本降低短文本數據的稀疏性。長短文本共享相同的主題空間K和每個主題下詞語的分布φk,將長文本豐富的詞語信息遷移到短文本,改善短文本主題發現效果,進而影響對齊概率Q,提高短文本關鍵詞抽取的效果。
根據圖1和圖2,TTKE模型假設如下的生成過程:
(1)對于每一個主題k:選擇φk~Dirichlet(β);
(2)對于每一篇長文本dl:
1)選擇Nl~Poisson(ξ);
2)選擇θl~Dirichlet(α);
3)對于Nl中的每一個詞wln:①選擇主題zln~Multinomial(θl); ②選擇wln~Multinomial(wln|zln,φ)。
(3)對于每一篇短文本ds:
1)選擇Ns~Poisson(ζ)
2)選擇θs~Dirichlet(α);
3)對于Ns中的每一個詞wsn:①選擇主題zsn~Multinomial(θs); ②選擇wsn~Multinomial(wsn|zsn,φ)。
4)對于Ms中的每一個關鍵詞tsm:①選擇主題csm~Multinomial(ηs); ②選擇關鍵詞tsm~P(tsm|ws,csm,Q)。


(1)
式中:p(wsn|ws) 是短文本ws中每個詞語的權重,本文采用IDF(inverse document frequency)方式計算。

p(L,S,zL,zS,T,cS|α,β,γ,Q)=
p(zL|α)p(zS|α)p(L|zL,β)·
p(S|zS,β)p(cS|zS,γ)p(T|cS,S,Q)
(2)
首先,采用Collapsed Gibbs方法給訓練短文本集中的詞語和關鍵詞采樣。
(1)對于長文本wl∈L中第n∈[1,Nl] 個詞語,通過以下公式選擇一個主題zln∈[1,K]

(3)

(2)對于短文本ws∈S中第n∈[1,Ns] 個詞語,通過以下公式選擇一個主題zsn∈[1,K]

(4)
式中:Msk是短文本ws中主題為k的關鍵詞的個數。其余符號解釋與式(3)類似。
(3)對于短文本ws∈S中第m∈[1,Ms] 個關鍵詞,通過以下公式選擇一個主題csm∈[1,K]

(5)

其次,當短文本中詞語和關鍵詞的主題穩定后,通過如下的公式估計特定主題下詞語與關鍵詞的對齊概率
(6)

首先,采用Collapsed Gibbs方法給測試短文本集中的詞語進行主題標注

(7)

其次,短文本的詞語的主題穩定之后,得到第s′篇短文本的主題分布
(8)
最后,利用主題分布和特定主題下的詞語和關鍵詞的對齊概率Q,通過如下的公式給測試數據集抽取關鍵詞,第s′篇短文本中關鍵詞m的概率為
(9)
為了驗證TTKE模型的有效性,本文從新浪微博爬取了4個主題共53 171條包含用戶標注關鍵詞的微博作為短文本集,主題分別為“北京馬拉松”、“iPhone6s”、“亞洲杯”、“花千骨”。在這些微博中,有12 121(22.79%)條微博包含網頁鏈接,可訪問的鏈接為9438(17.75%)條,因此,爬取這些可訪問鏈接的內容作為長文本集。
本文隨機選擇12 000條微博,并選擇與其主題相關的8000條輔助長文本組成實驗所用的數據集WeiboSet,其中,10 000條微博作為短文本訓練數據集,2000條作為短文本測試數據集。
對數據集進行分詞、去停用詞等文本預處理。數據集總結見表1。

表1 數據集介紹
注:L:長文本篇數;S:短文本篇數;K:主題個數;V:詞匯庫大小;T:關鍵詞庫大小;Nt:平均每條短文本的關鍵詞的個數。
本文采用準確率Precision,召回率Recall和綜合指標F-measure作為關鍵詞抽取效果的評價標準。計算公式如下所示
(10)
(11)
(12)
其中,Ncorrect為抽取正確關鍵詞的數目,Nextract為抽取的關鍵詞總數,Nall為文檔標注的關鍵詞數目。Precision和Recall的取值范圍是0-1之間。越接近1表示結果越好,F-measure 為Precision和Recall的調和平均值。
TTKE模型初始化α=0.5,β=0.1,γ=0.5,K=4,每次實驗的迭代次數為2000次,詞語的IDF值為短文本詞語重要度。本文將TTKE模型與LDA主題模型,IBM Mode-1翻譯模型,TSTM主題翻譯模型進行比較。LDA和TSTM的初始化設置與TTKE相同,IBM Mode-1使用GIZA++(http://code.google.com/p/giza-pp/)訓練。
圖3展示了不同關鍵詞抽取方法的Precision-Recall曲線。曲線上的每個點表示抽取不同個數關鍵詞的實驗結果,由右至左的5個點表示抽取的關鍵詞個數分別為1-5。一條Precision-Recall曲線越靠近右上方,說明該方法的效果越好。

圖3 不同關鍵詞抽取方法的Precision-Recall曲線
由圖3我們可以看出:當關鍵詞個數由5下降為1時,所有模型的Precision-Recall曲線呈現下降趨勢。原因是WeiboSet數據集每篇短文本平均關鍵詞個數是1.08個,當為每篇短文本抽取出的關鍵詞個數下降時,各模型抽取出的關鍵詞會包含更少的文檔已標注好的關鍵詞,召回率降低,準確率升高。當抽取出的關鍵詞個數固定時,TTKE實現了最好的短文本關鍵詞抽取效果,其余依次為TSTM,IBM Mode-1和LDA。
與TSTM模型相比,TTKE模型在做短文本關鍵詞抽取時,曲線最接近右上角,因此表明實驗效果最好。其原因是TSTM直接利用LDA對短文本進行主題發現,但是由于短文本字數較少,特征過度稀疏的問題,主題發現效果一般,影響模型學習特定主題下詞語與關鍵詞的對齊概率。而本文所提出的TTKE模型利用長文本輔助短文本進行主題發現,在主題發現效果上得到提升,并使得模型學習到的特定主題下詞語與關鍵詞的對齊概率更為精準,提高了短文本關鍵詞抽取的精度。
IBM model-1模型的曲線位于TSTM和TTKE的下方,說明它比TSTM和TTKE模型的效果差。因為IBM model-1僅依賴于統計詞語和關鍵詞的共現次數,忽略了短文本詞語與關鍵詞的主題不相關問題。在短文本中,由于短文本字數少,詞語與關鍵詞的翻譯過程容易出現歧義,從而導致主題不相關問題。而TSTM和TTKE模型中,引入的主題模型可以使抽取出的關鍵詞與原文本主題一致,提高關鍵詞抽取的效果。
LDA模型的曲線位于最下方,相較于以上3種模型斜率較大,說明當抽取的關鍵詞個數變化時,LDA的抽取效果變化較大,穩定性差,并且整體的抽取效果最差。造成這種結果的主要原因是LDA根據特定主題下的關鍵詞分布對候選關鍵詞排序,忽視了短文本中具體的詞語信息。所以LDA模型只能抽取泛化的關鍵詞,但泛化的關鍵詞顯然不是我們想要的結果。
由于TTKE使用LDA的過程中,主題個數需要在實驗前給定,因此我們考慮了主題數對于實驗結果的影響。針對WeiboSet數據集,我們討論當主題個數K取2,4和10時,TTKE模型對于關鍵詞抽取的效果。實驗結果見表2。

表2 主題個數對TTKE模型關鍵詞抽取的影響
由表2可以看出,當主題個數K被設置為真實主題數目時,即K=4時,TTKE模型取得了最好的效果。而當主題的個數小于真實主題數目時,效果會相對較差,原因是較少的主題個數導致主題泛化,特定主題下詞語與關鍵詞的對齊概率不精準,抽取到的關鍵詞很可能與原短文本的主題相關性不大。當主題個數大于真實主題數目時,TTKE模型的關鍵詞抽取效果下降,主要原因是計算特定主題下短文本詞語和關鍵詞的對齊概率時,較大的主題個數會加劇數據的稀疏性,計算的對齊概率也同樣不精確,降低關鍵詞抽取效果。
此外,TTKE模型假設長文本與短文本的主題是相關的。因此,我們討論長文本與短文本主題相關度變化時,對短文本關鍵詞抽取效果的影響。本文使用相關度不同的5種數據集,分別為Weibo_1,Weibo_2,Weibo_3,Weibo_4和Weibo_5。其中,Weibo_1數據集中,長文本與短文本的相關度為0.2,即主題相關的長文本數量占WeiboSet中長文本數量20%,其余為主題不相關的長文本。同理Weibo_2,Weibo_3,Weibo_4的相關度分別為0.4,0.6和0.8,Weibo_5使用WeiboSet全部的長文本集,即相關度為1.0。5種數據集中的短文本集與WeiboSet相同。本實驗設置抽取的關鍵詞個數為1,利用F-measure衡量短文本關鍵詞抽取的效果。
由圖4我們可以看出:長文本與短文本的相關度越高,實驗的F-measure值越高,即短文本關鍵詞抽取效果越好。實驗結果表明使用長文本輔短文本進行關鍵詞抽取是有效的。

圖4 不同長短文本主題相關度的關鍵詞抽取效果
以“iPhone6S真機曝光:厚度略上升攝像頭仍突出”這條微博為例,展示LDA,IBM model-1,TSTM,TTKE這4種模型在短文本關鍵詞抽取中的效果。本文列舉了各個方法抽取到的5個關鍵詞,使用(×)來表示抽取出的不合適的關鍵詞。由表3,我們可以看出LDA模型抽取出的關鍵詞大多以蘋果手機為主題,抽取出了蘋果,iPhone6SPlus,iPhone6,雖然這些關鍵詞主題相關,但與這條微博所要講的真實內容關系不大。IBM model_1模型也會抽取出一些質量不高的關鍵詞,原因是該模型僅考慮到詞語和關鍵詞的共現關系,而沒有考慮短文本主題的信息,其中關鍵詞“蘋果”是由詞語“iPhone6S”翻譯而來,外觀是由“厚度略上升攝像頭仍突出”翻譯而來。TSTM模型對關鍵詞抽取的結果較好,但由于短文本的特征稀疏性問題,直接使用LDA模型對短文本進行主題發現導致抽取出了主題相關但內容與這條微博不相關的關鍵詞,例如“ios”。TTKE模型的關鍵詞抽取效果最好,抽取出的關鍵詞在主題上與內容上都與這條微博相關度更大,這表明本文提出的TTKE模型能夠有效地解決由短文本特征稀疏問題導致的短文本內容和關鍵詞的詞匯差異與主題不一致性問題。

表3 不同關鍵詞抽取方法的標注
本文提出了一個用于短文本關鍵詞抽取的TTKE主題翻譯模型。該模型與LDA模型相結合,利用輔助長文本提高短文主題發現效果,并與翻譯模型相結合,提高特定主題下詞語與關鍵詞對齊概率的精準度。大量的實驗結果表明,TTKE模型能夠有效提高短文本關鍵詞抽取的效果。在未來,我們將研究短文本關鍵詞抽取在實際中的應用,以及如何使用關鍵詞抽取技術構建領域知識圖譜。
參考文獻:
[1]LI Peng,WANG Bin,SHI Zhiwei,et al.Tag-TextRank:A webpage keyword extraction method based on Tags[J].Journal of Computer Research and Development,2012,49(11):2344-2351(in Chinese).[李鵬,王斌,石志偉,等.Tag-TextRank:一種基于Tag的網頁關鍵詞抽取方法[J].計算機研究與發展,2012,49(11):2344-2351.]
[2]GU Yijun,XIA Tian.Study on keyword extraction with LDA and TextRank combination[J].New Technology of Library and Information Service,2014,30(7):41-47(in Chinese).[顧益軍,夏天.融合LDA與TextRank的關鍵詞抽取研究[J].現代圖書情報技術,2014,30(7):41-47.]
[3]NING Jianfei,LIU Jiangzhen.Using Word2vec with Text-Rank to extract keywords[J].New Technology of Library and Information Service,2016(6):20-27(in Chinese).[寧建飛,劉降珍.融合Word2vec與TextRank的關鍵詞抽取研究[J].現代圖書情報技術,2016(6):20-27.]
[4]Liu J,Zou DS,Xing XL,et al.Keyphrase extraction based on topic feature[J].Application Research of Computers,2012,29(11):4224-4227.
[5]Danilevsky M,Wang C,Desai N,et al.KERT:Automatic extraction and ranking of topical keyphrases from content-representative document titles[J].Computer Science,2013.
[6]Zhang Q,Wang Y,Gong Y,et al.Keyphrase extraction using deep recurrent neural networks on twitter[C]//Proceedings of the Conference on Empirical Methods in Natural Language Processing,2016:836-845.
[7]Zhang C.Automatic keyword extraction from documents using conditional random fields[J].Journal of Computational Information Systems,2008,4.
[8]LIU Xiaojian,XIE Fei.Keyword extraction method combining topic distribution with statistical features[J].Computer Engineering,2017,43(7):217-222(in Chinese).[劉嘯劍,謝飛.結合主題分布與統計特征的關鍵詞抽取方法[J].計算機工程,2017,43(7):217-222.]
[9]Cho T,Lee JH.Latent keyphrase extraction using LDA model[J].Journal of Korean Institute of Intelligent Systems,2015,25(2):180-185.
[10]Koehn P,Knight K.Statistical machine translation[P].US:US7624005,2009.
[11]Ding Z,Zhang Q,Huang X.Automatic hashtag recommendation for microblogs using topic-specific translation model[C]//Coling:Posters,2012:265-274.