王永劍,孫亞茹,楊瑩
(公安部第三研究所,上海 201204)
關(guān)鍵詞是文檔內(nèi)容的緊湊表示,由一個(gè)或多個(gè)字組成[1-2]。對(duì)短文本進(jìn)行關(guān)鍵詞匹配可以有效表達(dá)文本主題,關(guān)鍵詞識(shí)別的準(zhǔn)確度對(duì)文本分類、文本推薦及文本搜索存在著較大的影響,是文本挖掘和文本分析領(lǐng)域中一項(xiàng)重要的基礎(chǔ)工作[3]。正確提取文本的關(guān)鍵詞,有助于對(duì)文本的主題進(jìn)行全面的研究和分析,亦可以對(duì)文本做出很好的決策。但因短文本在內(nèi)容結(jié)構(gòu)上表達(dá)靈活和主題風(fēng)格各異等特點(diǎn),使得從短文本中提取關(guān)鍵詞成為了一項(xiàng)具有挑戰(zhàn)性的任務(wù)。
分析社交平臺(tái)發(fā)文數(shù)據(jù)最重要的任務(wù)之一是關(guān)鍵字提取。由于社交平臺(tái)發(fā)文文本較短,字?jǐn)?shù)限制140個(gè)字符,內(nèi)容多樣性、非正式性、語法錯(cuò)誤、流行語、俚語及實(shí)時(shí)內(nèi)容的生成速度等問題,需要一種有效的技術(shù)來提取有用的關(guān)鍵詞[4]。傳統(tǒng)的關(guān)鍵詞提取方法主要是基于機(jī)器學(xué)習(xí)[5-7]或圖模型[1,8-9]。機(jī)器學(xué)習(xí)方法通常采用特征值量化的方式從預(yù)處理后構(gòu)建的候選集中得到關(guān)鍵詞,如基于頻率特征的TF-IDF模型、挖掘詞句隱藏信息的LAD和HMM模型。詞劃分的準(zhǔn)確度會(huì)對(duì)這些模型造成較大的擾動(dòng),并且存在語義缺失等問題。圖模型對(duì)文本構(gòu)建網(wǎng)絡(luò)圖,詞為節(jié)點(diǎn),邊為詞間的關(guān)系。在對(duì)圖進(jìn)行分析的過程中,通過評(píng)估節(jié)點(diǎn)重要性來選出關(guān)鍵詞,這增強(qiáng)了節(jié)點(diǎn)間的語義關(guān)聯(lián),如基于拓?fù)浣Y(jié)構(gòu)的TextRank和在TextRank的基礎(chǔ)上改進(jìn)的NE-Rank[10]。NE-Rank是一種節(jié)點(diǎn)-邊的加權(quán)方法,通過構(gòu)造主題關(guān)鍵詞特征來有效改進(jìn)關(guān)鍵詞提取。盡管基于機(jī)器學(xué)習(xí)和圖模型的方法取得了良好的效果,但是會(huì)受特征選擇和人工定義規(guī)則的影響。近年來,隨著深度學(xué)習(xí)技術(shù)的出現(xiàn),利用深度學(xué)習(xí)算法自動(dòng)學(xué)習(xí)特征可以提高許多任務(wù)的性能。采用卷積神經(jīng)網(wǎng)絡(luò)在文本字符級(jí)上建模,學(xué)習(xí)文本和單詞間的分布矢量表示,以捕獲有關(guān)單詞的形態(tài)信息,有效緩解了未知單詞的問題[11]。然而卷積神經(jīng)網(wǎng)絡(luò)無法捕獲長(zhǎng)距離依賴,獲取到的是文本局部特征。楊丹浩等[12]采用序列標(biāo)注模型從字粒度和詞粒度角度結(jié)合注意力機(jī)制[13-14]提取文本特征,有效改進(jìn)中文文本的關(guān)鍵詞提取。序列標(biāo)注模型在文本處理領(lǐng)域取得了較好的進(jìn)展,基于深度Bi-LSTM的ELMo[15]可以學(xué)習(xí)到詞在上下文中復(fù)雜的用法,但是序列模型當(dāng)前步的計(jì)算依賴前一步的計(jì)算,無法考慮另一個(gè)方向的數(shù)據(jù)。圖神經(jīng)網(wǎng)絡(luò)(graph neural network,GNN)的出現(xiàn)緩解了深度學(xué)習(xí)模型處理文本數(shù)據(jù)結(jié)構(gòu)的一系列問題。圖神經(jīng)網(wǎng)絡(luò)將詞、句子或詞句搭配表示成圖中的節(jié)點(diǎn),節(jié)點(diǎn)的表征依賴與其相鄰的節(jié)點(diǎn),邊表示節(jié)點(diǎn)間不同類型的關(guān)系,在圖結(jié)構(gòu)上應(yīng)用神經(jīng)網(wǎng)絡(luò)可以直接獲取節(jié)點(diǎn)依賴信息。但是基于有監(jiān)督學(xué)習(xí)的模型依賴標(biāo)簽數(shù)據(jù),存在模型移植性能差、不能有效發(fā)現(xiàn)新詞等問題。綜上,如何使模型可以正確劃分詞并能夠識(shí)別出可以表達(dá)文本主題的關(guān)鍵詞或詞組是任務(wù)的關(guān)鍵。
針對(duì)上述所提問題,本文提出了一種以圖神經(jīng)網(wǎng)絡(luò)為框架結(jié)合注意力機(jī)制的關(guān)鍵詞生成模型—— ADGCN,有效捕獲關(guān)鍵詞與文本主題間的關(guān)聯(lián)密度,擺脫數(shù)據(jù)領(lǐng)域的偏向,以提高無監(jiān)督學(xué)習(xí)方法的性能?;趫D到序列的學(xué)習(xí)模型,在文本數(shù)據(jù)結(jié)構(gòu)上應(yīng)用圖神經(jīng)網(wǎng)絡(luò)的同時(shí)結(jié)合注意力機(jī)制捕獲數(shù)據(jù)中豐富的語義信息,自適應(yīng)地將局部特征與全局依賴性相結(jié)合,使模型有效學(xué)習(xí)節(jié)點(diǎn)間的關(guān)聯(lián)強(qiáng)度,更有效地利用圖結(jié)構(gòu)中的信息。
本文的主要貢獻(xiàn)如下:
1)構(gòu)建文本內(nèi)容與主題標(biāo)簽間的圖鏈接,通過圖構(gòu)建層來表征文本的內(nèi)部結(jié)構(gòu)和主題間的關(guān)系。在圖構(gòu)建層的基礎(chǔ)上采用注意力機(jī)制來學(xué)習(xí)節(jié)點(diǎn)特征空間的相關(guān)性,關(guān)注不同子空間的信息,引導(dǎo)節(jié)點(diǎn)間的關(guān)聯(lián)密度。
2)提出了一種新的線性解碼模型,采用圖神經(jīng)網(wǎng)絡(luò)編碼圖信息,捕獲節(jié)點(diǎn)間的遠(yuǎn)依賴信息,解決未登錄詞的問題。
3)收集并公布了一個(gè)社交平臺(tái)的標(biāo)簽數(shù)據(jù)集。
圖神經(jīng)網(wǎng)絡(luò)模型在圖形結(jié)構(gòu)數(shù)據(jù)建模方面的應(yīng)用越來越受到人們的關(guān)注,包括關(guān)系結(jié)構(gòu)明確的社會(huì)網(wǎng)絡(luò)預(yù)測(cè)系統(tǒng)[16]、推薦系統(tǒng)[17-18]、知識(shí)圖譜[19]等,也包括關(guān)系結(jié)構(gòu)不明確的非結(jié)構(gòu)化場(chǎng)景,如圖 像 分 類[20-21]、文 本 處 理[22-27]等。本 文 利用圖神經(jīng)網(wǎng)絡(luò)對(duì)非結(jié)構(gòu)化的文本數(shù)據(jù)進(jìn)行建模。
近期研究致力于將圖神經(jīng)網(wǎng)絡(luò)應(yīng)用于文本分類任務(wù)中,涉及到將文本建模為圖。文獻(xiàn)[23]提出將文檔轉(zhuǎn)換為單詞共現(xiàn)圖,再將其用作圖卷積層的輸入,利用圖表示的優(yōu)勢(shì),有效捕獲非連續(xù)和長(zhǎng)距離語義的優(yōu)勢(shì)。文獻(xiàn)[24]以概念圖的形式表示文本,通過圖卷積神經(jīng)網(wǎng)絡(luò)(graph convolution neural network,GCN)匯總匹配信號(hào),比較包含相同概念頂點(diǎn)的句子來匹配一對(duì)文本。文獻(xiàn)[25]構(gòu)造了一個(gè)文本圖張量,從文本的語義、句法和上下文信息3個(gè)角度來學(xué)習(xí)圖內(nèi)傳播和圖間傳播,用于協(xié)調(diào)和集成圖之間的異構(gòu)信息。本文從以上工作得到啟發(fā),但是這些工作是為分類任務(wù)設(shè)計(jì)的,分類任務(wù)和生成任務(wù)是存在差別的。
一些研究是基于GCN 做生成任務(wù)的。文獻(xiàn)[26-27]提出了一種基于圖序列的Graph2Seq神經(jīng)網(wǎng)絡(luò)模型,結(jié)合注意力機(jī)制并遵循傳統(tǒng)的編碼器方法,構(gòu)建了一個(gè)圖形編碼器和一個(gè)序列編碼器,基于圖神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)節(jié)點(diǎn)間屬性在SQL-totext任務(wù)中對(duì)SQL查詢進(jìn)行編碼。文獻(xiàn)[28]提出了基于圖神經(jīng)網(wǎng)絡(luò)解決AMR-to-Text的問題。盡管這些工作將圖神經(jīng)網(wǎng)絡(luò)做為編碼器,但都是利用已經(jīng)存在的圖形式的信息,如SQL查詢、抽象語義(abstract meaning representation,AMR)圖和依存圖,并且輸入的文本相對(duì)社交平臺(tái)發(fā)文較長(zhǎng),而筆者對(duì)短文本處理的工作更具挑戰(zhàn)性。
關(guān)鍵詞提取有利于信息檢索、自動(dòng)索引、自動(dòng)分類、自動(dòng)聚類、自動(dòng)過濾等應(yīng)用。文本中的主題不唯一,若只集中在文本語料庫上,可能會(huì)導(dǎo)致知識(shí)獲取的瓶頸和誤解。目前的方法主要集中在怎樣提取表達(dá)文本主題的關(guān)鍵詞或詞組。
文獻(xiàn)[29]提出了一個(gè)利用主題模型從大眾分類提取主題關(guān)鍵概念的方法。根據(jù)標(biāo)簽相對(duì)于某個(gè)主題的重要性進(jìn)行排序,將排名靠前的標(biāo)簽作為提取主題關(guān)鍵的概念。文獻(xiàn)[30]提出了一種以圖表示文檔、以節(jié)點(diǎn)表示文檔單詞、以邊表示文檔單詞之間關(guān)系的關(guān)鍵字提取算法,用度和臨近度中心測(cè)量主題關(guān)鍵詞。文獻(xiàn)[31]提出了一種利用3個(gè)主要因素不同于其他關(guān)鍵詞提取方法,這3個(gè)主要因素是前面話題的時(shí)間、話題關(guān)聯(lián)和參與者。當(dāng)前發(fā)表言論的人應(yīng)該被認(rèn)為比其他參與者的言論更重要。本文從以上工作中得到啟發(fā),將文本主題與圖表示序列模型聯(lián)合生成短文本關(guān)鍵詞。
模型的目標(biāo)是對(duì)句子進(jìn)行信息壓縮,輸出短文本關(guān)鍵詞信息。如圖1所示,模型主要包括文本嵌入層、圖構(gòu)建層、注意力層、主題交互層和密集連接層,對(duì)應(yīng)關(guān)鍵詞生成的3個(gè)步驟:文本嵌入、特征編碼和特征解碼。
圖1 ADGCN模型原理結(jié)構(gòu)Fig.1 Schematic diagram of ADGCN model
文本嵌入部分的輸入是預(yù)處理好的社交平臺(tái)發(fā)文文本。對(duì)文本采用命名實(shí)體識(shí)別,并利用TextRank提取文本中的M關(guān)鍵詞,對(duì)分好的詞采用glove訓(xùn)練生成詞嵌入向量。特征編碼部分的目的是將文本嵌入層的輸出進(jìn)一步編碼成一組隱藏向量,以獲取文本節(jié)點(diǎn)關(guān)聯(lián)信息和關(guān)鍵詞隱藏信息。圖構(gòu)建層對(duì)文本節(jié)點(diǎn)進(jìn)行編碼,用于組織文本句子間的關(guān)系。圖構(gòu)建后由N個(gè)相同的編碼模塊連接,每個(gè)塊包含2個(gè)層:注意力層和主題交互層。注意力層對(duì)圖加強(qiáng)邊的權(quán)重,用于引導(dǎo)節(jié)點(diǎn)間的聯(lián)系密度,這里采用多頭注意力機(jī)制,挖掘隱含的節(jié)點(diǎn)關(guān)系,生成的是全連接的邊權(quán)圖。主題交互層對(duì)圖結(jié)構(gòu)進(jìn)一步編碼,編碼框架采用GCN,初始的輸入是節(jié)點(diǎn)向量和節(jié)點(diǎn)的鄰接矩陣,每一層包含上一層和初始時(shí)的輸入。本文由M個(gè)主題交互層組成,對(duì)應(yīng)著M 頭注意力。輸出的隱藏向量由特征解碼部分的密集連接層處理生成關(guān)鍵詞。密集連接層對(duì)編碼信息進(jìn)行解碼,在解碼過程中采用注意力機(jī)制計(jì)算上下文向量對(duì)主題交互層的輸出,并用一種復(fù)制機(jī)制來計(jì)算關(guān)鍵詞的復(fù)制概率。
圖構(gòu)建的目的是將短文本組織成圖結(jié)構(gòu),便于模型理解文本的內(nèi)部結(jié)構(gòu)和主題之間的聯(lián)系。相比較序列標(biāo)注模型對(duì)文本的處理方式,圖結(jié)構(gòu)可以直接獲取節(jié)點(diǎn)依賴關(guān)系,編碼較廣范圍的語義信息,做到減少噪聲語句對(duì)關(guān)鍵語句的影響,降低高維度特征的復(fù)雜度,緩解非主題數(shù)據(jù)對(duì)關(guān)鍵節(jié)點(diǎn)的擾動(dòng)。
如圖2所示,對(duì)含有n條句子的短文本S={s1,s2,…,sn}構(gòu)建圖,節(jié)點(diǎn)分為關(guān)鍵節(jié)點(diǎn)vk、空閑節(jié)點(diǎn)vempty和主題節(jié)點(diǎn)vtitle。關(guān)鍵節(jié)點(diǎn)是由關(guān)鍵詞K={k1,k2,…,km}和包含關(guān)鍵詞的句子組成??臻e節(jié)點(diǎn)vempty是由剩余未包含關(guān)鍵詞的句子組成。主題節(jié)點(diǎn)vtitle是由TextRank計(jì)算一個(gè)文本主題title,同時(shí)融合HashTag向量表征。若節(jié)點(diǎn)間包含相同的句子,則添加邊,相同句子的個(gè)數(shù)作為邊的權(quán)重。依據(jù)圖構(gòu)建算法生成圖節(jié)點(diǎn)和邊,并將圖轉(zhuǎn)化為鄰接矩陣,作為下一層的輸入。圖構(gòu)建方法如算法1所示。
圖2 圖構(gòu)建過程Fig.2 Graph construction process
?算法1 圖的構(gòu)建方法。輸入:關(guān)鍵詞k={k1,k2,…,km},句子s={s1,s2,…,sn},文本主題title。輸出:關(guān)鍵節(jié)點(diǎn){v1,v2,…,vm},空閑節(jié)點(diǎn)v empty,主題節(jié)點(diǎn)v title,節(jié)點(diǎn)vi 和節(jié)點(diǎn)vj邊的權(quán)重wij。1:對(duì)文本主題提取,并對(duì)文本分詞。2:做命名實(shí)體識(shí)別,并提取文本中的m個(gè)關(guān)鍵詞k={k1,k2,…,km}。3: for s={s1,s2,…,sn}do:4: if句子si包含關(guān)鍵詞ki then:5: 將si分配給節(jié)點(diǎn)vi 6: else:7: 將si分配給節(jié)點(diǎn)v emp ty 8: end for 9: for節(jié)點(diǎn)vi和節(jié)點(diǎn)vj do:10: wij為vi和vj間包含相同句子的個(gè)數(shù)
11: end for
文本中詞的初始輸入是其在句子中的位置特征pi∈Rd×d及詞特征xi∈Rd×d表征,如下:
注意力層用于引導(dǎo)節(jié)點(diǎn)間的關(guān)聯(lián)密度。如圖3所示,對(duì)圖構(gòu)建層輸出的鄰接矩陣做多頭注意力來關(guān)注不同子空間的信息,生成全連接的注意力矩陣,對(duì)應(yīng)鄰接矩陣的邊權(quán)連通圖,矩陣中每個(gè)元素對(duì)應(yīng)相應(yīng)節(jié)點(diǎn)之間邊的權(quán)重,從而捕捉到領(lǐng)域節(jié)點(diǎn)間的關(guān)系密度。
圖3 注意力層Fig.3 Attention layer
式中:Q和K為模型第l-1層的表征;WQ∈Rd×d和WK∈Rd×d為可學(xué)習(xí)參數(shù)矩陣。
主題交互層是對(duì)圖信息進(jìn)行編碼,編碼器采用GCN[32]。圖神經(jīng)網(wǎng)絡(luò)既可以對(duì)節(jié)點(diǎn)內(nèi)容編碼,又可以利用圖結(jié)構(gòu)中豐富的信息。其核心思想是:通過學(xué)習(xí)一個(gè)映射函數(shù)映射圖中的節(jié)點(diǎn)vi,vi可以聚合自己的特征與其鄰居特征來生成節(jié)點(diǎn)vi新的表示。通過多個(gè)GCN層可以挖掘到更深層次的節(jié)點(diǎn)信息,節(jié)點(diǎn)的最終表征包含了更遠(yuǎn)的鄰居節(jié)點(diǎn)信息。
隨著GCN網(wǎng)絡(luò)層數(shù)和迭代次數(shù)的增加,節(jié)點(diǎn)的隱層表征會(huì)趨向于收斂至空間中的同一個(gè)位置,即過度平滑問題。為了避免GCN過度平滑的問題,在每一層輸入時(shí)考慮之前層的輸出:
密集連接層完成對(duì)文本解碼的工作,參考機(jī)器翻譯模型[33]采用循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)模型作為解碼器。GCN層的輸出Gout作為密集連接層的初始輸入,以生成一個(gè)注釋標(biāo)記序列y ={y1,y2,…,ym}??紤]短文本主題是一個(gè)重要的信息,將圖編碼器處理后的主題隱藏特征作為解碼器RNN的初始輸入t0,RNN每一步的解碼特征ti。在解碼過程中,采用注意力機(jī)制αj計(jì)算上下文向量ci來關(guān)注GCN的輸出:
式中:δ為函數(shù),計(jì)算當(dāng)前解碼器狀態(tài)與原文各單詞的相關(guān)度。
考慮初始抽取關(guān)鍵詞本身的重要性,采用復(fù)制機(jī)制[34],將預(yù)測(cè)的詞標(biāo)記的概率分布與注意力分布相結(jié)合,利用解碼器的隱藏狀態(tài)ti和上下文信息向量ci動(dòng)態(tài)計(jì)算關(guān)鍵詞的復(fù)制概率pcopy:
式中:U、M、Wcopy和b為可學(xué)習(xí)的模型參數(shù)。
本文從某個(gè)社交平臺(tái)上收集數(shù)據(jù),由于在不同主題下數(shù)據(jù)量差別很大,從生活、藝術(shù)、時(shí)尚、世界、科技、商業(yè)、微博、體育、健康、教育、旅行等主題中選擇3個(gè)比較流行的主題:生活、教育和健康。對(duì)原文本處理成社交平臺(tái)發(fā)文文本和話題標(biāo)簽的格式,稱之為標(biāo)簽數(shù)據(jù)集(TH)。TH數(shù)據(jù)集詳情如表1所示,可通過https://github.com/MiniiEcho/keywords-generation.git訪問該數(shù)據(jù)集,可以用來做提取標(biāo)簽或是文本分類等任務(wù),這些數(shù)據(jù)是可以免費(fèi)獲取的。在數(shù)據(jù)集中存在一個(gè)話題共用多個(gè)主題的情況,如#HappyTeachersDay屬于生活也屬于教育。教育和健康2個(gè)主題的樣本數(shù)相對(duì)生活的少一些,健康主題的樣本數(shù)不足教育主題的樣本數(shù)的一半,但是總樣本數(shù)為30 093條,足以支撐模型訓(xùn)練的。
表1 不同話題中的TH樣本和標(biāo)簽數(shù)量Table 1 Num ber of TH sam p les and tags in different topics
在收集的小型數(shù)據(jù)集上評(píng)估時(shí),體現(xiàn)為:具有較好的可移植性和在大規(guī)模數(shù)據(jù)集中同樣可以取得較好的結(jié)果,選擇在一個(gè)公開數(shù)據(jù)集即KP20k[35]上進(jìn)行測(cè)試和評(píng)估。該數(shù)據(jù)集是Meng等[35]從ACM、SicenceDirect和Web of Science圖書館中收集的有關(guān)計(jì)算機(jī)領(lǐng)域的高質(zhì)量數(shù)據(jù),許多模型[35-37]在該數(shù)據(jù)集上驗(yàn)證其模型性能的有效性。KP20k數(shù)據(jù)集總樣本數(shù)超過50萬,是TH數(shù)據(jù)集的18倍,可以作為大規(guī)模數(shù)據(jù)集去驗(yàn)證模型性能。KP20k詳情如表2所示。
表2 KP20k數(shù)據(jù)集描述Tab le 2 KP20k dataset descrip tion
通過在驗(yàn)證集上的測(cè)試發(fā)現(xiàn),從N={1,2,3}中選擇編碼部分的塊數(shù),從M ={1,2,3,4}選擇多頭注意力的頭數(shù),從L={2,3,4,5}中選擇主題交互層的層數(shù)。通過對(duì)驗(yàn)證集的初步實(shí)驗(yàn),發(fā)現(xiàn)(N=2,M =2,L=1,d=300)的組合設(shè)置在TH數(shù)據(jù)集上取得了最好的效果,在頂點(diǎn)數(shù)相對(duì)較小的情況下,降低L數(shù)值,會(huì)緩解模型過度平滑問題。(N=2,M=3,L=2,d=300)的組合設(shè)置在KP20k數(shù)據(jù)集上取得了最好的效果。該模型是在NVIDIA GeForce GTX 1650下采用CUDA9.0訓(xùn)練。訓(xùn)練周期為100,每10個(gè)周期用時(shí)約270 s。詞典大小為60 000。句子大小為100,生成關(guān)鍵詞的長(zhǎng)度最大值為4。對(duì)于解碼器,采用雙向LSTM,128隱藏節(jié)點(diǎn),2層。dropout率設(shè)置為0.1,并采用Adam優(yōu)化器訓(xùn)練參數(shù)。初始化的學(xué)習(xí)率為0.01,epoch為10,每epoch一次學(xué)習(xí)率減少至原來的一半。
本文采用3種度量方法評(píng)估收集的數(shù)據(jù)集上生成的關(guān)鍵詞的質(zhì)量,分別為相關(guān)性、信息量和連貫性。對(duì)所有的度量方法,讓評(píng)分者按3種方式打分,分值范圍為0~10。在KP20k數(shù)據(jù)集上采用精準(zhǔn)率P、召回率R和F1值作為評(píng)估模型性能的評(píng)估指標(biāo)。
1)相關(guān)性。用于評(píng)估結(jié)果是否與文本主題一致,即關(guān)鍵詞是否符合社交平臺(tái)發(fā)文文本內(nèi)容,屬于或是不屬于社交平臺(tái)發(fā)文文本。
2)信息量。用于評(píng)估結(jié)果包含了多少具體信息。衡量的是輸出結(jié)果是否涉及到某個(gè)人物或事件的特定方面,或者是對(duì)某個(gè)人物或事件的概括描述,或者是一般關(guān)鍵詞。
3)連貫性。用于評(píng)估輸出的詞是否流暢,是否是正確的、有意義的詞。
本文邀請(qǐng)3位評(píng)分員去評(píng)估不同模型生成的關(guān)鍵詞。由于評(píng)估過程復(fù)雜,選取3個(gè)話題的各100條發(fā)文的結(jié)果進(jìn)行評(píng)估。評(píng)分員會(huì)得到原發(fā)文、發(fā)文主題和關(guān)鍵詞,這與用戶在線閱讀發(fā)文的方式相同。使用Spearman等級(jí)相關(guān)分?jǐn)?shù)來衡量評(píng)分者之間的相關(guān)性,p-values都低于1×10-50,這表明評(píng)分員之間的評(píng)分有較好的相關(guān)性。在這些指標(biāo)中,連貫性的差異更大。這和預(yù)期的一致,因?yàn)樵撝笜?biāo)更靈活,不同的人會(huì)有不同的評(píng)估標(biāo)準(zhǔn)。
本文從無監(jiān)督和有監(jiān)督模型進(jìn)行對(duì)比,選取的Baseline是Tf-id f、TextTank、Maui[36]、RNN[35]、CopyRNN[35]、CovRNN[37]。Tf-id f、TextTank屬 于無監(jiān)督模型,Maui、RNN、CopyRNN、CovRNN是有監(jiān)督模型。Tf-idf、TextTank是基于統(tǒng)計(jì)的方法,其針對(duì)候選關(guān)鍵詞的次數(shù)來作為對(duì)文本的重要性,無法體現(xiàn)文本內(nèi)容包含的語義信息,更無法生成未出現(xiàn)的關(guān)鍵短語。Maui、RNN、CopyRNN和CovRNN是生成方法,可以捕捉文本上下文信息。
表3~表5展示了在生活、教育和健康3個(gè)不同主題下的不同Baseline模型與本文模型在不同度量下的結(jié)果。從結(jié)果中可以看出,本文提出的ADGCN模型在相關(guān)性和信息性方面都優(yōu)于所有的Baseline。
表3 生活主題下Baseline模型和本文模型的3個(gè)度量評(píng)估比較Tab le 3 Com parison of three m easurem ent evaluation of Baseline m odel and p roposed m odel under life topic
表4 教育主題下Baseline模型和本文模型的3個(gè)度量評(píng)估比較Table 4 Com parison of three m easurem ent evaluation of Baselinemodel and proposed model under education topic
表5 健康主題下Baseline模型和本文所提模型的3個(gè)度量評(píng)估比較Table 5 Com parison of three m easurem ent evaluation of Baseline m odel and p roposed m odel under health topic
1)相關(guān)性。與所有其他Baseline模型相比,本文模型在相關(guān)性方面獲得了較高的分?jǐn)?shù)。這說明本文所提出的基于圖到序列的學(xué)習(xí)模型可以更有效地獲取和生成與文本主題相關(guān)的關(guān)鍵詞。在遇到低頻率話題時(shí),如#HappeningNow下的某個(gè)句子“The protesters in Rochester NY are‘shutting down restaurants’,tables are broken,peop le running off sc…”。句子與話題的相關(guān)性不明顯,這誤導(dǎo)關(guān)鍵詞的生成,這種現(xiàn)象嚴(yán)重影響了關(guān)鍵詞相關(guān)性的分值。在Baseline模型中Tf-idf取得了較高的結(jié)果,這說明對(duì)與話題相關(guān)性不明顯的句子提取關(guān)鍵詞時(shí),在樣本數(shù)量足夠的情況下,基于統(tǒng)計(jì)的方法可以提取出與文本主題相關(guān)的詞。而在樣本數(shù)量較少的情況下,如表5所示,統(tǒng)計(jì)的方法便不如生成模型的結(jié)果了。生成模型可以輸出文本中不存在的詞組,來更好地表達(dá)主題。
2)信息量。從結(jié)果中可以看出,隨著樣本數(shù)的減少,關(guān)鍵詞包含的信息量隨之增大。與所有其他Baseline模型相比,本文模型在信息量方面獲得了更高的分?jǐn)?shù)。信息量和相關(guān)性是有一定關(guān)系的,相關(guān)性較高的模型,其信息量越豐富。但是當(dāng)樣本較少時(shí)也會(huì)出現(xiàn)不穩(wěn)定的情況,像在健康主題下,RNN模型信息量與相關(guān)性沒有呈現(xiàn)正比的關(guān)系。原因是:在健康主題下,樣本中低頻率話題較多,文本主題和話題不匹配會(huì)對(duì)模型造成一定的擾動(dòng)。從結(jié)果中可以看出,基于圖的模型可以利用文本結(jié)構(gòu),捕獲文本情節(jié),有穩(wěn)定的健壯性。
3)連貫性。基于統(tǒng)計(jì)的方法是從原文中直接復(fù)制詞,連貫性只受到分詞的影響。因此,結(jié)果中也顯示基于統(tǒng)計(jì)的模型的連貫性分值要遠(yuǎn)高于生成模型。在檢查了部分生成的關(guān)鍵詞后,總結(jié)了以下幾條影響流暢度的原因:①機(jī)器對(duì)人名不能較準(zhǔn)確地識(shí)別,如趙立、堅(jiān)定,而趙立堅(jiān)是一個(gè)人名。②存在連續(xù)生成相同詞的問題,嚴(yán)重影響了連貫性分值,本文猜測(cè)這和復(fù)制機(jī)制有關(guān),這也是下一步待解決的問題。③模型生成的關(guān)鍵詞是有悖知識(shí)邏輯的,如Railway Speak Up(鐵路大聲的說)。這一問題也是比較難解決的問題之一。
表6展示了Baseline模型與本文模型在KP20k數(shù)據(jù)集上的P、R和F1值的對(duì)比結(jié)果。發(fā)現(xiàn)各模型的召回率都比較低,這表明模型將很多正樣本賦值了錯(cuò)誤的標(biāo)簽,這和數(shù)據(jù)集樣本的質(zhì)量有關(guān)。另外,數(shù)據(jù)集中主題不明確的句子會(huì)對(duì)模型造成較大的擾動(dòng)。KP20k數(shù)據(jù)集中的標(biāo)簽大部分是文本中不存在的,因此,這對(duì)統(tǒng)計(jì)模型直接提取造成了重創(chuàng)。對(duì)生成模型來說,所生成的標(biāo)簽存在重復(fù)、次序混亂等現(xiàn)象而導(dǎo)致錯(cuò)誤結(jié)果。但是本文模型ADGCN仍取得了較好的結(jié)果。
表6 KP20k數(shù)據(jù)集上Baseline模型和本文模型的精確率、召回率和F1 值評(píng)估比較Tab le 6 Com parison of p recision,recall and F1 evaluation of Baselinem odel and proposed m odel on KP20k dataset
3.6.1 消融分析
對(duì)模型的各模塊進(jìn)行消融研究,評(píng)估結(jié)果如表7所示。從結(jié)果中發(fā)現(xiàn),編碼模塊的注意力層和主題交互層對(duì)模型的貢獻(xiàn)最大。去除注意力層,模型F1值降低至0.413,減少了0.04。這說明注意力層有效發(fā)揮了捕捉領(lǐng)域節(jié)點(diǎn)間關(guān)系密度的作用。去除主題交互層,模型F1值降低至0.406,減少了0.047。這說明編碼遠(yuǎn)距離的鄰居節(jié)點(diǎn)信息可以提升模型準(zhǔn)確率。若兩者都去除,F(xiàn)1值則會(huì)降低0.06,這對(duì)模型性能的影響是最大的。而圖構(gòu)建層和密集連接層對(duì)模型的影響相對(duì)較小??梢?,注意力與圖神經(jīng)網(wǎng)絡(luò)相結(jié)合有助于ADGCN學(xué)習(xí)短文本內(nèi)的信息聚合,以生成更好的節(jié)點(diǎn)信息特征。
表7 ADGCN模型的消融Tab le 7 Ab lation of ADGCN m odel
3.6.2 數(shù)據(jù)集規(guī)模對(duì)模型性能的影響
對(duì)KP20k數(shù)據(jù)集進(jìn)行統(tǒng)一劃分,設(shè)置5種規(guī)模訓(xùn)練數(shù)據(jù):20%、40%、60%、80%和100%的訓(xùn)練數(shù)據(jù)。對(duì)ADGCN和Baseline模型在不同訓(xùn)練設(shè)置上進(jìn)行評(píng)估。如圖4所示,在數(shù)據(jù)規(guī)模不大時(shí),CovRNN取得了較好的效果,這說明CovRNN可以從樣本較少的數(shù)據(jù)中捕獲有利的信息,但是與其他生成模型的差距并不明顯。隨著數(shù)據(jù)集規(guī)模的擴(kuò)增,發(fā)現(xiàn)生成模型與統(tǒng)計(jì)模型的性能差距越明顯,在數(shù)據(jù)集規(guī)模達(dá)到40%時(shí),生成模型遠(yuǎn)超于統(tǒng)計(jì)模型。在數(shù)據(jù)集規(guī)模達(dá)到60%時(shí),本文所提出的ADGCN的F1值達(dá)到了其他Baseline模型的最優(yōu)值。這說明ADGCN可以更有效地利用訓(xùn)練數(shù)據(jù)集,在數(shù)據(jù)規(guī)模一定的情況下,基于圖到序列的模型可以有效學(xué)習(xí)短文本中主題信息。
圖4 不同數(shù)據(jù)規(guī)模下各模型的F1 值比較Fig.4 Comparison of F1 values of differentmodels under different data scales
3.6.3 話題種類對(duì)模型性能的影響
評(píng)估TH數(shù)據(jù)集中話題種類對(duì)模型性能的影響。設(shè)置包含不同話題種類個(gè)數(shù)1、2、3、4和≥5的句子,對(duì)ADGCN和與ADGCN較相近的Copy-RNN、CovRNN模型在不同數(shù)量的話題句子上進(jìn)行關(guān)鍵詞質(zhì)量評(píng)估,分別從關(guān)鍵詞的相關(guān)性、信息量、連貫性3個(gè)方面進(jìn)行統(tǒng)計(jì)評(píng)估。統(tǒng)計(jì)包含不同個(gè)數(shù)的話題標(biāo)簽的發(fā)文比例,如圖5所示。話題種類個(gè)數(shù)為1的只占據(jù)了60%,而話題種類個(gè)數(shù)在5之上的占據(jù)了5%,這些數(shù)據(jù)增加了文本主題的噪聲,對(duì)短文本主題表征會(huì)有一定的影響。如圖6所示,發(fā)現(xiàn)各模型在話題種類個(gè)數(shù)≤2時(shí)生成的關(guān)鍵詞質(zhì)量是最好的。而隨著話題種類個(gè)數(shù)的增加都有減少的趨勢(shì),這說明話題種類的數(shù)量越多對(duì)模型的擾動(dòng)性越大。
圖5 話題標(biāo)簽個(gè)數(shù)比例Fig.5 Ratio of the number of topic tag
圖6 不同話題標(biāo)簽個(gè)數(shù)下度量值的評(píng)估Fig.6 Evaluation ofmeasurement value under different numbers of topic tag
在對(duì)相關(guān)性評(píng)估分析時(shí)發(fā)現(xiàn),ADGCN的相關(guān)性分值雖然也會(huì)收到數(shù)據(jù)擾動(dòng)的影響,但是相對(duì)CovRNN和CopyRNN兩個(gè)模型較緩慢。CovRNN和CopyRNN在話題標(biāo)簽個(gè)數(shù)大于2時(shí)急速下降,在[2~4]區(qū)間存在不明顯的差距。而在對(duì)信息量評(píng)估時(shí),2個(gè)模型的差距明顯化,這說明Cov-RNN相對(duì)CopyRNN是穩(wěn)定的。當(dāng)話題種類個(gè)數(shù)為1或是超過5時(shí),無論是相關(guān)性還是信息量CopyRNN的表現(xiàn)要比CovRNN模型弱一些,猜測(cè)可能和數(shù)據(jù)不平衡有關(guān)。而ADGCN可以有效緩解數(shù)據(jù)不平衡的影響,因此表現(xiàn)是最優(yōu)的。
在對(duì)連貫性評(píng)估分析時(shí)發(fā)現(xiàn),CovRNN 和CopyRNN在話題種類個(gè)數(shù)為1時(shí)的表現(xiàn)比ADGCN好,但是當(dāng)話題標(biāo)簽個(gè)數(shù)增加時(shí),2個(gè)模型下降明顯,而ADGCN下降緩慢,并在數(shù)值較大時(shí)有緩升的趨勢(shì)。這說明在文本組織結(jié)構(gòu)明顯的情況下,序列標(biāo)注模型對(duì)文本信息的組織可能要優(yōu)于圖結(jié)構(gòu)模型。對(duì)結(jié)構(gòu)化不明顯的文本,圖結(jié)構(gòu)模型表現(xiàn)出了優(yōu)勢(shì)。
造成數(shù)據(jù)擾動(dòng)的原因可能有以下2點(diǎn):①因發(fā)文有字符字?jǐn)?shù)限制,話題種類數(shù)量越多,文本的組織結(jié)構(gòu)會(huì)越差。這對(duì)序列標(biāo)注模型RNN的影響是較大的。相比較,利用圖表示模型的結(jié)果會(huì)好一點(diǎn)。②隨著話題種類的增加,主題節(jié)點(diǎn)表征的信息特征越不明顯,這大大降低了文本主題的表達(dá),模型信息獲取的性能會(huì)隨之下降。而本文所提出的ADGCN在不同設(shè)置上的性能完全優(yōu)于其他生成模型。
本文提出了一種新的圖到序列的關(guān)鍵詞生成,一是通過圖構(gòu)建層來表征文本內(nèi)容與主題標(biāo)簽間的圖鏈接;二是結(jié)合注意力機(jī)制來學(xué)習(xí)節(jié)點(diǎn)特征空間的相關(guān)性,關(guān)注不同子空間的信息,引導(dǎo)節(jié)點(diǎn)間的關(guān)聯(lián)密度。該方法有效緩解了短文本主題依賴和文本組織結(jié)構(gòu)差對(duì)模型造成擾動(dòng)的影響。ADGCN模型不僅具有良好的相關(guān)性、信息量及連貫性,在大規(guī)模數(shù)據(jù)集KP20k上也取得了較好的性能。
接下來會(huì)對(duì)模型的不足進(jìn)行改進(jìn)和優(yōu)化,如復(fù)制機(jī)制的影響、知識(shí)邏輯的推理等。緩解多話題標(biāo)簽對(duì)文本主題的影響也是未來待解決的問題之一。