国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于全局和局部特征表示的關(guān)鍵詞抽取算法

2023-08-20 05:30:58弦,謝飛,2**
關(guān)鍵詞:語義卷積向量

祖 弦,謝 飛,2**

(1.合肥師范學(xué)院 計算機學(xué)院,安徽 合肥 230601;2.合肥師范學(xué)院 安徽省電子系統(tǒng)仿真重點實驗室,安徽 合肥 230601)

關(guān)鍵詞是最能代表文檔主題的重要性詞語,關(guān)鍵詞抽取技術(shù)可以幫助人們從大量數(shù)據(jù)中迅速找出有用信息,實現(xiàn)對海量資源的高效智能化檢索,尤其針對一些未提供關(guān)鍵詞的文本或網(wǎng)絡(luò)新聞,可以使讀者迅速了解文章的核心含義.目前關(guān)鍵詞抽取技術(shù)在諸多場景有著重要應(yīng)用,如推薦系統(tǒng)、用戶的興趣挖掘、文檔的自動分類[1]、信息檢索[2]、社區(qū)問答系統(tǒng)[3]等.因此,關(guān)鍵詞抽取算法研究在自然語言處理領(lǐng)域具有非常重要的研究和應(yīng)用價值.

現(xiàn)有的關(guān)鍵詞抽取算法分為有監(jiān)督方法和無監(jiān)督方法.有監(jiān)督方法需要大量帶有人工標(biāo)注關(guān)鍵詞的訓(xùn)練文檔,并融入詞性、詞頻和首次出現(xiàn)位置等重要特征信息訓(xùn)練分類器,這類方法的缺點是訓(xùn)練及抽取關(guān)鍵詞的過程需要耗費大量的人力和時間,同時對語料庫進行人工標(biāo)注的主觀性和準確性均直接影響抽取效果.無監(jiān)督方法主要通過結(jié)合多項文本特征信息對每個候選詞語進行打分排名,其中最著名的無監(jiān)督方法是基于圖的方法,它根據(jù)窗口內(nèi)單詞之間的共現(xiàn)度構(gòu)建圖,通過PageRank 算法對候選單詞進行排名[4].基于圖的方法有兩個主要缺陷:①在對文檔構(gòu)建圖模型時,圖更著重于表達兩個詞語間的共現(xiàn)程度,體現(xiàn)的上下文信息量非常有限,也無法描述同一單詞在不同句子中的不同含義;②抽取過程忽略了文本的順序性,這不利于表現(xiàn)單詞間的聯(lián)系.

近年來,深度學(xué)習(xí)模型被用于關(guān)鍵詞抽取任務(wù),以獲取文檔中單詞的上下文語義信息,在從短文本中提取關(guān)鍵詞時取得了良好的效果.這類方法通常與傳統(tǒng)方法相結(jié)合,采用深度神經(jīng)網(wǎng)絡(luò)架構(gòu)學(xué)習(xí)單詞的Embedding 嵌入信息,將嵌入結(jié)果與圖模型結(jié)合完成抽取任務(wù)[5].雖然賦予了傳統(tǒng)的圖模型語義方面的特征信息,但卻忽略了文本的順序信息.另外,有學(xué)者將關(guān)鍵詞抽取看成是序列標(biāo)注任務(wù),雖然可以有效獲取單詞的上下文信息,但丟失了重要的統(tǒng)計特征,如詞性、詞頻等.

因此,為解決上述問題,本文在關(guān)鍵詞抽取過程中綜合考慮文本的全局語義特征信息和窗口內(nèi)單詞的局部特征信息,提出一種基于全局和局部特征表示的關(guān)鍵詞抽取方法.新方法主要利用Transformer[6]和多層卷積神經(jīng)網(wǎng)絡(luò)[7]構(gòu)建深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)架構(gòu).首先,為了解決傳統(tǒng)有監(jiān)督模型和圖算法中易忽略單詞上下文語義關(guān)系及單詞間順序性的問題,利用Transformer 充分獲取單詞的語義向量表示.其次,為了解決現(xiàn)有基于深度學(xué)習(xí)方法易丟失單詞各類統(tǒng)計特征信息的問題,新算法計算出每個單詞的詞性和詞頻兩個統(tǒng)計特征的向量表示,并融合在上述階段獲得的語義向量和統(tǒng)計特征向量,作為下一步多層卷積網(wǎng)絡(luò)的訓(xùn)練輸入;另外在多層卷積網(wǎng)絡(luò)模型的選擇上,采用普通卷積加空洞卷積相結(jié)合的方式,這樣使神經(jīng)網(wǎng)絡(luò)模型更容易學(xué)習(xí)和捕獲窗口內(nèi)單詞更多的局部特征信息和單詞間依賴關(guān)系.最后,在抽取關(guān)鍵詞階段,將關(guān)鍵詞抽取工作看成是序列標(biāo)注任務(wù)來抽取最終關(guān)鍵詞.

本文主要貢獻有以下3 點:

(1)提出了一種新的關(guān)鍵詞抽取算法,利用Transformer 和多層卷積神經(jīng)網(wǎng)絡(luò)搭建深度學(xué)習(xí)模型,可以有效捕獲文本上下文語義信息和單詞局部特征表示信息,不僅解決了在傳統(tǒng)關(guān)鍵詞抽取算法中忽略詞語間語義聯(lián)系的問題,還能利用單詞重要的統(tǒng)計特征信息來提高抽取效率.

(2)在模型訓(xùn)練過程中,研究如何讓抽取模型學(xué)習(xí)獲得更全面的單詞局部特征信息,提出利用多層空洞卷積網(wǎng)絡(luò)擴大窗口內(nèi)單詞的特征表示.另外還解決了如何統(tǒng)一各類特征信息分布于不同向量表示空間的問題.

(3)通過多項消融和調(diào)參實驗,證明了該方法的有效性和可靠性;并在兩個公開語料庫上進行了對比實驗,證明了本算法效率優(yōu)于現(xiàn)有的主流關(guān)鍵詞抽取算法.

1 相關(guān)工作

1.1 傳統(tǒng)的關(guān)鍵詞抽取方法傳統(tǒng)的關(guān)鍵詞抽取方法包括兩大類:有監(jiān)督方式和無監(jiān)督方法[8].有監(jiān)督方法將關(guān)鍵詞提取任務(wù)看作是一項二元分類問題(關(guān)鍵詞或者非關(guān)鍵詞),該類方法融合詞語的各類特征信息,使用預(yù)先標(biāo)記的樣本數(shù)據(jù)訓(xùn)練一個最優(yōu)分類模型,用于判斷候選短語是否為關(guān)鍵詞.有監(jiān)督方法在訓(xùn)練過程中需要設(shè)計一個分類器,如樸素貝葉斯分類器[9]、決策樹分類器[10]、邏輯回歸分類器[11]等.另外,從實驗效果來看,有監(jiān)督方法的提取效果通常優(yōu)于無監(jiān)督方法.

無監(jiān)督方法由于不需要人工標(biāo)注的預(yù)訓(xùn)練數(shù)據(jù),因此更容易實現(xiàn).此類方法的抽取過程首先根據(jù)詞性組成規(guī)則從文檔中選取候選詞語,接著由不同的提取算法對候選詞進行打分,最后根據(jù)提名選取得分較高的候選詞作為關(guān)鍵詞.各類無監(jiān)督方法的區(qū)別在于其對候選詞打分規(guī)則的不同,通常將無監(jiān)督方法分為基于統(tǒng)計、基于圖和基于主題的方法.

最早對無監(jiān)督關(guān)鍵詞抽取方法的研究是基于統(tǒng)計的方法,主要關(guān)注對文檔中單詞的統(tǒng)計信息(如詞頻、詞性、位置等)進行處理,抽取過程中需要對不同的特征值進行量化衡量.如KP-miner 算法[12]在對候選詞計算詞頻和逆向文檔頻率值的時候,對候選詞的挑選規(guī)則進行了限制,并加入位置特征信息提高抽取效率.另外還有些學(xué)者不再局限于僅僅統(tǒng)計詞語的特征信息,在抽取算法中加入文檔級別的特征信息[13].

隨著TextRank[4]的出現(xiàn),學(xué)者們開始研究基于圖模型的關(guān)鍵詞抽取算法[14-15].TextRank 對一篇文檔建立圖模型,圖中頂點代表單詞,邊代表詞的共現(xiàn)關(guān)系,再根據(jù)Google 的PageRank 算法評估各個節(jié)點的重要性.后續(xù)研究對基于圖模型的算法改進主要體現(xiàn)在3 個方面:①對構(gòu)圖規(guī)則的改變,比如節(jié)點代表的不再是單個單詞,可以替換成詞組,或是根據(jù)某些規(guī)則篩選后的單詞;②對邊的權(quán)重賦值的改變,邊代表的是兩個頂點之間的關(guān)聯(lián)度,比如將單詞間的語義相似度作為權(quán)重值;③對PageRank 算法的計算規(guī)則的改變,如改變每個節(jié)點初始權(quán)重的賦值.例如Bellaachia 等針對推特文章的非正式及噪音多等特點提出NE-Rank 算法[16],認為在計算圖中結(jié)點排序權(quán)重時應(yīng)該同時考慮本結(jié)點權(quán)重和邊的權(quán)重.Florescu 等[17]提出的PositionRank 算法根據(jù)位置信息改變PageRank中節(jié)點的初始值,使出現(xiàn)位置靠前且出現(xiàn)次數(shù)多的詞語,成為關(guān)鍵詞的概率更大.Biswas 等[18]在計算圖中節(jié)點重要性時,通過融合位置、鄰居結(jié)點、與中間結(jié)點距離等多方面因素提高關(guān)鍵詞抽取效果.

另外,很多學(xué)者嘗試在圖中融入主題信息提高關(guān)鍵詞抽取效率[19-20],例如Liu 等[21]提出Topical PageRank 方法在算法中融入LDA 主題模型,圖模型首先在不同主題下給邊賦予不同的權(quán)重值,再利用PageRank 算法計算每個主題下單詞的分值,最后結(jié)合主題分布信息計算單詞得分.Sterckx 等[22]在計算單詞重要性分值時考慮了該單詞與主題的概率向量和文檔本身同主題的概率向量的相似性問題.Bougouin 等[23]提出TopicRank 算法將候選詞分成不同的主題簇,在構(gòu)造詞圖模型時,頂點是代表不同主題的主題簇.

1.2 基于深度學(xué)習(xí)的關(guān)鍵詞抽取方法目前深度學(xué)習(xí)方法廣泛應(yīng)用于圖像和語音處理等領(lǐng)域,在自然語言處理領(lǐng)域也成為一大研究熱點.隨著Embedding 嵌入技術(shù)[24-26]的出現(xiàn),文本的不同組成部分如段落、句子、單詞和短語均可被映射成低維空間的不同語義相關(guān)向量[27-28].EmbedRank[29]同時計算文檔與候選詞在同一個向量空間中的語義相似度,并選取相似度較高的候選詞作為關(guān)鍵詞.還有一部分學(xué)者研究如何將Embedding 技術(shù)融入傳統(tǒng)圖模型[30-31]中改進關(guān)鍵詞抽取效果,例如,GKE 算法[32]將單詞與文檔的語義相似度作為圖模型中每個單詞的初始權(quán)重,用隨機游走算法計算每個候選單詞的得分并進行排名.

另外,學(xué)者們也開始研究如何利用深度學(xué)習(xí)模型完成關(guān)鍵詞抽取任務(wù),如BERT(Bidirectional Encoder Representation from Transformers)[33]、LSTM(Long Short-Term Memory)、RNN(Recurrent Neural Network)等.例如,針對Tweets 文章的長度限制問題,Zhang 等[34]通過搭建一個基于多層RNN 架構(gòu)的深度學(xué)習(xí)框架捕獲更多的文本上下文語義信息,從而解決從單個較短文本中提取關(guān)鍵詞的局限性問題.在此基礎(chǔ)上,部分學(xué)者還將關(guān)鍵詞抽取問題看成是一個序列標(biāo)注任務(wù)[35-36].Alzaidy 等[37]提出Bi-LSTM-CRF 模型,利用模型中的Bi-LSTM 組件獲取上下文語義信息,CRF 組件獲取句子級的標(biāo)簽信息.為了解決有監(jiān)督方法需要大量人工標(biāo)注語料庫的問題,Zhu 等[38]在神經(jīng)網(wǎng)絡(luò)模型中引入了自訓(xùn)練方法,從而可以利用更多未標(biāo)注的文章.

二維或者三維卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)具備較強的局部特征提取能力,目前已廣泛應(yīng)用于圖像處理領(lǐng)域,而一維卷積神經(jīng)網(wǎng)絡(luò)更偏向于處理時序數(shù)據(jù)的特征提取和預(yù)測,由于文本數(shù)據(jù)的順序性,陸續(xù)有學(xué)者開始研究將一維卷積用于文本處理領(lǐng)域[39-40],可將文本數(shù)據(jù)看成是類似一維的時間序列或一維圖像,通過在CNN 的卷積層中設(shè)置不同卷積核大小提取不同的特征信息,因此采用一維CNN 模型更容易捕獲相鄰單詞間的特征關(guān)聯(lián)信息.

綜上研究不難發(fā)現(xiàn),傳統(tǒng)的有監(jiān)督算法預(yù)先需要大量人工標(biāo)注語料庫,費時耗力;在無監(jiān)督方法中,基于統(tǒng)計的算法缺乏單詞語義信息,僅依賴文本統(tǒng)計特征進行抽取工作;基于圖和主題的方法忽略了單詞間的上下文語義關(guān)系和重要的統(tǒng)計特征信息,以及自然語言文本的順序特征,從而導(dǎo)致關(guān)鍵詞抽取效果不理想;現(xiàn)有流行的基于深度學(xué)習(xí)的方法更看重文本語義特征,忽略文本淺層的統(tǒng)計特征和順序性,從而影響了抽取效果.因此,為解決以上各類算法缺陷,本文提出一種新的基于深度學(xué)習(xí)模型的關(guān)鍵詞抽取算法,另外為提高抽取效率,對每個單詞的特征表示進行了研究.算法采用Transformer 和卷積神經(jīng)網(wǎng)絡(luò)相結(jié)合搭建系統(tǒng)總體框架,具體來說采用Transformer 來學(xué)習(xí)文本的全局上下文語義信息,同時融合每個單詞的統(tǒng)計特征信息,作為相應(yīng)單詞的特征表示.我們認為一個單詞的重要性不僅與這個詞本身有關(guān),還與相鄰若干窗口內(nèi)的單詞有著密切聯(lián)系,因此單詞的局部特征直接影響著最終結(jié)果,而卷積網(wǎng)絡(luò)的作用正在于能有效利用文本的局部特征信息.為了獲取有限窗口內(nèi)更多的相鄰單詞的特征信息,在算法模型中引入了空洞卷積[41],空洞卷積通過調(diào)整正常卷積層中卷積核的間隔數(shù)量,在降低計算量的同時擴大特征捕捉區(qū)域,獲取更多的局部特征信息.最終算法模型綜合以上文本全局語義信息和單詞局部特征信息進行訓(xùn)練學(xué)習(xí)得出最終關(guān)鍵詞.

2 基于全局和局部特征表示的關(guān)鍵詞抽取算法

本文提出一種新的基于全局和局部特征表示的關(guān)鍵詞抽取算法,設(shè)計了一個前饋神經(jīng)網(wǎng)絡(luò)架構(gòu),系統(tǒng)層次架構(gòu)包括以下幾個部分:①全局特征抽取組件,主要結(jié)合單詞的語義特征表示和統(tǒng)計特征表示,獲取輸入文本的特征表示向量,并解決不同維度空間的各類向量表示映射至同一空間;②局部特征抽取組件,利用一維卷積和一維空洞卷積神經(jīng)網(wǎng)絡(luò)共同完成對單詞的局部特征提取任務(wù);③輸出組件,通過訓(xùn)練學(xué)習(xí),預(yù)測單詞是否屬于關(guān)鍵詞.算法模型整體架構(gòu)圖如圖1 所示.

圖1 本文算法的模型架構(gòu)圖Fig.1 Model architecture diagram of the proposed algorithm

2.1 全局特征抽取組件本文算法在全局特征抽取組件中獲取輸入文本中單詞的各類特征向量表示,主要包括語義特征和統(tǒng)計方面特征.

用文本中連續(xù)離散的單詞進入全局特征抽取組件,利用多層雙向Transformer 模型得到每個單詞的詞向量嵌入表示,其結(jié)構(gòu)如圖2 所示,圖中最低層表示在訓(xùn)練時每個單詞的輸入向量,圖2 的右邊展開部分是Transformer 的編碼器(Encoder)結(jié)構(gòu).當(dāng)輸入向量進入編碼器之后,首先會經(jīng)過一個注意力機制層,使用注意力機制可以增強長距離特征捕獲能力,以提取句子級別的語義特征信息.注意力機制采用縮放點積注意力(Scaled Dot-product Attention)和多頭注意力(Multi-head Attention)兩個部分組成,縮放點積注意力計算如下:

式中:Q、K、V代表輸入序列的查詢向量序列、鍵向量序列和值向量序列,dk為Q和K中的向量維度.接著多頭注意力進行分頭操作,然后對每個頭進行縮放點積注意力計算,最后再對每個頭進行拼接.

通過自注意力層使編碼器對每個單詞進行編碼時可以查看其前后上下文信息,進行殘差歸一化處理.接下來將在注意力機制層得到的結(jié)果傳入一個全連接的前饋神經(jīng)網(wǎng)絡(luò),同樣進行殘差歸一化處理后得到最終的輸出.Transformer 模型在訓(xùn)練過程中通過考慮每個單詞與句子中其他單詞的相互關(guān)系,動態(tài)表示每個詞的特征向量,使最終得到的向量表示不僅包含單詞本身的語義,還包含了與上下文其他單詞的語義聯(lián)系.不難看出,Transformer賦予了不同位置的同一個單詞不一樣的特征向量表示.

由于關(guān)鍵詞一般是由名詞和形容詞組成[14],并且常在文中多個位置出現(xiàn),因此在本文算法中,就單詞的統(tǒng)計特征而言,我們認為詞語在單篇文檔中的重要性由詞頻和詞性兩個方面特征來決定的.

首先,對于單詞的詞性特征,以往的關(guān)鍵詞抽取算法通常在預(yù)處理階段會將高頻卻無用的停用詞刪去,并且認為候選詞是只有形容詞和名詞的組合詞組.因此本文算法也會對單詞進行詞性標(biāo)注,將每個單詞的詞性映射成一個M維的嵌入向量Pi.其次,由于文檔中有些副詞或停用詞出現(xiàn)的次數(shù)會比較多,因此在統(tǒng)計單詞的詞頻信息時不能只是簡單地計算某個單詞在文中的出現(xiàn)頻次.算法中計算的是TF-IDF 值,它的核心思想是一個詞的重要程度與它在單篇文檔中的出現(xiàn)次數(shù)成正比,但與它在語料庫中的出現(xiàn)次數(shù)成反比.跟前者詞性特征向量表示不同,TF-IDF 的向量表示維度只有一維,不存在將離散數(shù)值映射轉(zhuǎn)換成向量的操作,而是利用文檔和語料庫信息直接計算所得.每個單詞i的TFIDF 值Ti計算公式如下:

基于上述計算所得每個單詞i的語義特征向量Ei、詞性特征向量Pi、詞頻的向量表示Ti,根據(jù)公式(5)計算得出每個單詞的特征向量表示Xi.

式中:“+”表示向量的拼接.

通過實驗我們發(fā)現(xiàn),不同類型特征的向量表示空間并不相同,且影響算法抽取效果,為解決這一問題,我們在輸入層的最后增加了兩個線性層對不同的向量空間進行了統(tǒng)一化處理,首先利用第一個線性層將單詞的特征向量表示映射到同一個高維空間,實驗中將此維度設(shè)為3 000,接著利用第二個線性層進行降維處理,將單詞的向量維度降低至最初的維度,并將此結(jié)果作為下一層隱藏層的輸入向量.

2.2 局部特征抽取組件我們認為,對于固定長度的序列文本,單詞不僅僅與全文具有語義相關(guān)性,還同相鄰的若干個單詞有著高度相關(guān)性,因此在圖1 中的局部特征抽取組件中,設(shè)計了一個包含多層卷積的深度前饋神經(jīng)網(wǎng)絡(luò),完成對單詞局部特征的學(xué)習(xí)表征.CNN 能同時完成特征提取和識別分類兩大任務(wù),傳統(tǒng)的CNN 網(wǎng)絡(luò)架構(gòu)通常包括卷積層、池化層和全連接層,具體如下:

(1)卷積層 完成特征提取功能,為避免訓(xùn)練過程中網(wǎng)絡(luò)參數(shù)過多,采用稀疏連接,從而降低模型復(fù)雜度.另外為減少訓(xùn)練時過擬合情況發(fā)生,通過使用權(quán)值共享,減少參數(shù),來提高訓(xùn)練優(yōu)化效率,卷積結(jié)果的運算如下所示:

(2)池化層 利用特征降維完成特征選擇功能,降低卷積層數(shù)據(jù)輸出的特征維度,減少模型參數(shù),防止過擬合.該層對卷積特征進行采樣操作,一般包括平均池化和最大池化兩種方式.

(3)全連接層 將前面獲得的特征展平,完成下游回歸或識別等任務(wù).

在本文算法中,由于輸入文本數(shù)據(jù)向量的維度不高,為防止特征數(shù)據(jù)信息的丟失,在訓(xùn)練過程中需要保持文本長度不變,因此刪去池化層和全連接層,只需要卷積層幫助完成局部特征的提取.因此,我們設(shè)計了一維多層卷積神經(jīng)網(wǎng)絡(luò),主要包括了1個卷積層和2 個空洞卷積層,如圖1 中的局部特征抽取組件區(qū)域所示.模型利用卷積核以一定步長在文本上的順序移動能有效提取這些局部區(qū)域內(nèi)的特征信息.在一維卷積的工作過程中,可將卷積核看成一個固定大小的滑動窗口,并只沿著輸入單詞的方向按順序移動,此時的卷積層可看成特征提取器.而空洞卷積網(wǎng)絡(luò)通過調(diào)整卷積核的間隔數(shù)量,在降低計算量的同時擴大特征捕捉區(qū)域,從而捕獲更大范圍內(nèi)的局部特征信息.

多層卷積網(wǎng)絡(luò)實現(xiàn)細節(jié)如圖3 所示,在圖3 中,L表示文本長度,每個卷積核尺寸設(shè)為1×3,第一層卷積核的寬度設(shè)為512,第二層卷積核的寬度設(shè)為128,第三層卷積核的寬度設(shè)為50,所有卷積層的步長設(shè)為1,由于需要提取每個單詞的特征信息,兩層空洞卷積的卷積核間隔數(shù)量都設(shè)為2,因為如果設(shè)置間隔太遠易丟失相關(guān)性較強的相鄰單詞間特征,影響實驗結(jié)果.另外,不論哪一層都需要根據(jù)卷積核間隔對文本長度的首尾進行補齊操作,以保證經(jīng)過卷積網(wǎng)絡(luò)出來的文本長度保持不變.

圖3 多層卷積網(wǎng)絡(luò)實現(xiàn)細節(jié)Fig.3 Implementation details of multi-layer convolutional networks

2.3 輸出組件與2.1 小節(jié)介紹的兩層線性層是用于統(tǒng)一不同向量表示空間的作用不同,本小節(jié)輸出組件中線性層的作用可以看成分類器,對2.1 小節(jié)和2.2 小節(jié)提取的各類特征進行分類,即將所有從前面層獲得的特征表示結(jié)果映射到樣本標(biāo)記空間.本文算法將關(guān)鍵詞抽取看成是序列標(biāo)注問題,通過線性層預(yù)測每個單詞最有可能的類別.本文算法對所有單詞的標(biāo)記有3 種類:B-Key、I-Key 和O,其中B-Key 標(biāo)記著關(guān)鍵詞最開始的單詞,I-Key 標(biāo)記關(guān)鍵詞中除首個單詞以外的所有單詞,O 標(biāo)記非關(guān)鍵詞的單詞.

3 實驗結(jié)果與分析

3.1 實驗數(shù)據(jù)及評價標(biāo)準為了保證實驗結(jié)果的有效性、正確性和公平性,我們在兩個公開語料庫Inspec 和kp20k 上進行實驗.Inspec 語料庫[42]由2 000 篇英文科技論文的摘要部分組成,整個數(shù)據(jù)集分為訓(xùn)練集、驗證集和測試集,分別為1 000、500篇和500 篇.kp20k 語料庫由Meng 等[43]創(chuàng)建,該數(shù)據(jù)庫由來自各種在線數(shù)字圖書館(如ACM 數(shù)字圖書館、ScienceDirect等)的567 830 篇科學(xué)文章組成,分為3 個集合:用于模型訓(xùn)練的包含527 830個文檔的訓(xùn)練集,用于參數(shù)調(diào)優(yōu)的包含20 000 個文檔的驗證集,用于模型評估的包含20 000 個文檔的測試集.這兩個數(shù)據(jù)集的詳細統(tǒng)計信息如表1所示.表1 中文本平均長度是指在不同的數(shù)據(jù)集中,統(tǒng)計單篇文檔中所有單詞的平均個數(shù),人工標(biāo)注關(guān)鍵詞總數(shù)是指預(yù)先標(biāo)注的正確關(guān)鍵詞個數(shù).

兩個語料庫中的每篇文檔都包括標(biāo)題、摘要和正確標(biāo)注的關(guān)鍵詞.當(dāng)算法提取關(guān)鍵詞時,使用標(biāo)題和摘要作為輸入數(shù)據(jù),而在評估算法結(jié)果時使用人工標(biāo)注的關(guān)鍵詞進行對比.實驗中,我們使用F1 值(F-Measure)作為評價指標(biāo)來衡量所有模型的性能,其計算公式如下:

式中:P(Precision)代表準確率,指通過該算法抽取出正確的關(guān)鍵詞與該算法抽取的所有關(guān)鍵詞的比例;R(Recall)代表召回率,指通過該算法抽取出正確的關(guān)鍵詞與全部人工標(biāo)注的正確關(guān)鍵詞的比例.

3.2 實驗環(huán)境與工具本文算法所有代碼基于Python 3.7 和Pytorch 1.1.0,代碼運行電腦內(nèi)存為32 GB,處理器為Intel Core i7-9700K CPU @3.60 GHz 8 核處理器和GTX1080 GPU,操作系統(tǒng)是Ubuntu 16.04 LTS.

在預(yù)處理階段,我們使用NLTK ToolKit 標(biāo)記每個單詞的詞性.算法構(gòu)建的神經(jīng)網(wǎng)絡(luò)第一層使用Transformer 對單詞提取全局特征信息,選擇采用BERT 將文檔中的離散單詞轉(zhuǎn)換為包含語義信息的向量表示.谷歌為不同的語言和不同的模型大小提供了各種預(yù)先訓(xùn)練好的BERT 模型,實驗中使用“bert-base-uncased”預(yù)訓(xùn)練模型訓(xùn)練每個單詞,得到一個768 維的單詞嵌入向量.用于訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型的優(yōu)化器是Adam[44],初始學(xué)習(xí)率設(shè)置為3×10?5,梯度裁剪設(shè)置為1.0.此外,損失函數(shù)使用CrossEntropy,為了避免過擬合,dropout比率設(shè)置為0.25.

3.3 消融實驗及調(diào)參實驗我們通過消融實驗和特征參數(shù)調(diào)節(jié)實驗,證明本文算法設(shè)計的網(wǎng)絡(luò)架構(gòu)的有效性及各類特征信息的有用性.

首先,對模型的神經(jīng)網(wǎng)絡(luò)架構(gòu)進行了消融實驗,具體來說,將本算法模型同只包含Transformer架構(gòu)、Transformer+1 層卷積、Transformer+3 層卷積(無空洞)、Transformer+1 層卷積+1 層空洞卷積、Transformer+1 層卷積+3 層空洞卷積等這5 種架構(gòu)模型進行了對比,在兩個數(shù)據(jù)集上的實驗結(jié)果如表2 所示.

表2 在Inspec 和kp20k 上的消融實驗結(jié)果Tab.2 The results of the ablation experiment in Inspec and kp20k

從表2 可以看出,本文算法模型架構(gòu)較其他架構(gòu)而言,獲得了最高的F1 值,證明我們構(gòu)建的深度神經(jīng)網(wǎng)絡(luò)架構(gòu)對關(guān)鍵詞抽取工作效率的提升有一定效果.以Inspec 語料庫實驗結(jié)果為例,當(dāng)網(wǎng)絡(luò)架構(gòu)中只剩Transformer 時,F(xiàn)1 值降低了3.63 個百分點,由于卷積層的主要作用是提取單詞的局部特征信息,說明算法融合單詞的局部特征信息對抽取結(jié)果有幫助.另一方面,僅有Transformer 的網(wǎng)絡(luò)架構(gòu)意味著我們只使用了文檔的上下文語義關(guān)系,抽取效果同3.4 節(jié)中其他主流關(guān)鍵詞抽取方法相比依然有較大提升,這是由于Transformer 強大的自注意力機制不僅能獲取單詞級別的有效語義表示信息,還能對句子級別和文檔級別的語義表示有很好的學(xué)習(xí)能力.當(dāng)Transformer 對文本序列進行雙向訓(xùn)練時,embedding 嵌入向量的層數(shù)較深導(dǎo)致可表征的函數(shù)空間足夠大,每個單詞的輸出都能包含文檔中其他單詞的信息,因此極大地提高了模型抽取效率.實驗結(jié)果還表明,本文算法與其他隱藏層中只有卷積網(wǎng)絡(luò)而不包括空洞卷積網(wǎng)絡(luò)的模型相比,F(xiàn)1 值最高降低了3.54 個百分點,最低降低了2.04個百分點,證明了空洞卷積網(wǎng)絡(luò)的有用性,因為空洞卷積通過擴大卷積核特征捕捉區(qū)域,進而提高更大范圍內(nèi)的局部特征提取效率.另外在表2 中當(dāng)模型中只有一層空洞卷積時,F(xiàn)1 值較本算法而言降低了3.36 個百分點,說明2 層空洞卷積網(wǎng)絡(luò)較1 層空洞卷積網(wǎng)絡(luò)而言能捕獲并利用窗口內(nèi)更多的局部特征信息.然而并不是空洞卷積層越多越好,比如采用3 層空洞卷積時,F(xiàn)1 值較本算法而言反而降低了2.78 個百分點,這是因為空洞越多,來自上一層的相鄰局部信息越少,而越遠距離卷積獲得的信息相關(guān)性聯(lián)系越少,會干擾相鄰詞語間特征提取的訓(xùn)練結(jié)果.

接下來,為了驗證單詞每一種統(tǒng)計特征的有效性,我們逐次往本文算法模型中增加一種新的統(tǒng)計特征,在兩個數(shù)據(jù)集上的實驗結(jié)果如表3 所示.從表3 中不難發(fā)現(xiàn),每加入一個新的統(tǒng)計特征,關(guān)鍵詞抽取的效率都得到了提高,當(dāng)同時采用二個統(tǒng)計特征(詞性、詞頻)時,獲得了最高的F1 值.

表3 在Inspec 和kp20k 上調(diào)整不同統(tǒng)計特征的實驗結(jié)果Tab.3 The results of adjusting different statistical features in Inspec and kp20k

另外,我們測試了統(tǒng)計特征信息的不同向量維度對算法結(jié)果的影響.由于對詞頻特征的向量表示只有一維,因此只需要調(diào)整詞性特征的向量維度,圖4 中折線代表不同的詞性向量維度下模型性能的改變.從圖4 中發(fā)現(xiàn),當(dāng)維度設(shè)置為40 的時候,F(xiàn)1 值達到了峰值,但增加詞性維度時,反而降低了,說明維度增加并不一定能增強詞性特征的重要性,這是因為關(guān)鍵詞的詞性一般只局限于名詞和形容詞的組合,關(guān)鍵詞的正確詞性范圍較小,而過多的特征向量維度會使單詞的向量表示分布比較離散,不能代表正確的特征信息.

圖4 Inspec 中不同詞性維度下的實驗結(jié)果Fig.4 Experimental results under different dimension of the part-of-speech in Inspec datasets

3.4 與基本算法的對比實驗我們選取了8 種不同類型的主流關(guān)鍵詞抽取算法,分別在兩個公開數(shù)據(jù)集Inspec 和kp20k 上進行了對比實驗,具體的對比算法及參數(shù)設(shè)置如下:

(1)TF-IDF 基于統(tǒng)計的方法,主要利用詞頻特征抽取關(guān)鍵詞;

(2)TextRank[4]基于圖的方法,采用詞之間的相鄰關(guān)系建立有權(quán)重的圖模型,利用PageRank 算法,窗口大小設(shè)置為10,阻尼系數(shù)為0.85;

(3)TopicRank[23]基于圖和主題的方法,圖建模時將主題簇作為圖中結(jié)點,實驗中選擇每個簇中離中心最近的詞語作為最終結(jié)果;

(4)SingleRank[14]基于圖的方法,圖中結(jié)點為名詞或形容詞,利用窗口內(nèi)詞之間的距離計算邊的權(quán)重,窗口大小設(shè)置為10,阻尼系數(shù)為0.85;

(5)PositionRank[17]基于圖的方法,對圖結(jié)點的初始賦值中加入位置信息,窗口大小設(shè)置為10,阻尼系數(shù)為0.85;

(6)EmbedRank[29]:基于深度學(xué)習(xí)的方法,利用嵌入技術(shù)將語義信息融入算法,權(quán)衡參數(shù)設(shè)置為1.

(7)Bi-LSTM[37]基于深度學(xué)習(xí)的方法,利用Bi-LSTM 架構(gòu)將關(guān)鍵詞抽取作為序列標(biāo)注任務(wù).

(8)Bi-LSTM-CRF[37]基于深度學(xué)習(xí)的方法,利用Bi-LSTM-CRF 模型選擇關(guān)鍵詞.

由于語料庫中正確標(biāo)注的關(guān)鍵詞一般在10 個左右,因此上述對比的基線方法在實驗中統(tǒng)一抽取10 個關(guān)鍵詞進行比較,實驗結(jié)果如表4 所示.

表4 在Inspec 和kp20k 上的對比實驗結(jié)果Tab.4 Comparative results in Inspec and kp20k

從表4 可以看出,在兩個公開語料庫上,本文算法相對于其他8 種主流關(guān)鍵詞算法,抽取性能均得到了較大地提升.實驗中TF-IDF 是基于簡單統(tǒng)計詞頻的方法,忽略了其他各類特征,導(dǎo)致抽取性能最差,在兩個數(shù)據(jù)集上,本算法較TF-IDF 而言,F(xiàn)1 值分別提高了37.66 和25.41 個百分點.通過實驗發(fā)現(xiàn),在抽取算法中融合多特征信息(如語義特征、統(tǒng)計特征)的思想比以往只依賴位置信息(如PositionRank)或主題信息(如TopicRank)能獲得更好的效果,比如在Inspec 數(shù)據(jù)集上,本文算法較PositionRank 而言,F(xiàn)1 值增加了24.29 個百分點,較TopicRank增加了25.16 個百分點.對于另外兩個基于圖的方法TextRank 和SingleRank 均利用圖模型在算法中加入兩個詞語間的關(guān)聯(lián)信息,在構(gòu)圖時忽略了語義層面的特征信息,而本文算法利用Transformer 模型充分考慮了文本的上下文語義信息,結(jié)果明顯優(yōu)于前兩者,如在Inspec 上,本文算法的F1 值較TextRank 方法增加了31.53 個百分點,較SingleRank 方法增加了22.29 個百分點.由于EmbedRank 只計算了詞語同文本間的語義相似度,忽略了單詞與單詞間的局部語義相關(guān)性,而本文算法利用多層卷積和空洞卷積網(wǎng)絡(luò),能有效提取單詞間的局部特征信息,因此較EmbedRank 而言,在兩個數(shù)據(jù)集上得出的F1 值分別提高了14.48 和23.77個百分點.基于Bi-LSTM 和Bi-LSTM-CRF 模型的兩種方法更注重利用Bi-LSTM 組件獲取上下文語義信息,而本文算法不僅關(guān)注全局上下文信息,還增加對局部信息的考量,從而得到較好的抽取效果,如在Inspec 上,本文算法較Bi-LSTM-CRF 而言,F(xiàn)1 值增加了4.97 個百分點.

在各類算法運行過程中,基于統(tǒng)計(TF-IDF)和基于圖的方法(TextRank、TopicRank、SingleRank和PositionRank)均為無監(jiān)督方法,其中基于圖的4種方法由于要對全文候選詞語進行構(gòu)圖處理,時間復(fù)雜度要稍高于基于統(tǒng)計的方法.基于深度學(xué)習(xí)的4 種方法(EmbedRank、Bi-LSTM、Bi-LSTM-CRF、本算法)均為有監(jiān)督方法,在運行時,由于事先需要在訓(xùn)練集上優(yōu)化模型參數(shù),訓(xùn)練的時間復(fù)雜度雖高于其他方法,但在模型參數(shù)訓(xùn)練穩(wěn)定后,就推理時間而言明顯優(yōu)于其他無監(jiān)督方法.

另外我們在實驗中發(fā)現(xiàn),表4 中后4 個基于深度學(xué)習(xí)的抽取方法的效率普遍高于其他類型抽取方法,這是因為神經(jīng)網(wǎng)絡(luò)架構(gòu)具有強大的表征學(xué)習(xí)能力,從而可以提取很多有用的特征信息,說明深度學(xué)習(xí)模型是用來大幅度提高關(guān)鍵詞抽取效率的重要手段.

4 結(jié)束語

本文通過研究如何在關(guān)鍵詞抽取過程中同時利用文本的全局語義特征信息和單詞間的局部特征信息,提出了一種基于全局和局部特征表示的關(guān)鍵詞抽取算法.采用Transformer 模型獲取文檔中單詞的語義特征表示,并計算單詞的詞頻和詞性兩方面統(tǒng)計特征信息,融合上述兩種特征信息得出每個單詞的向量表示,利用一維卷積和一維空洞卷積神經(jīng)網(wǎng)絡(luò)獲取單詞在某一窗口內(nèi)盡可能多的局部特征,綜合利用以上全局語義信息和局部特征信息,通過訓(xùn)練學(xué)習(xí)得出最終關(guān)鍵詞.實驗結(jié)果表明,本文算法效果明顯優(yōu)于目前其他8 種主流關(guān)鍵詞抽取方法.

下一步的研究工作預(yù)計在以下兩方面進行:一是利用其他的神經(jīng)網(wǎng)絡(luò)模型學(xué)習(xí)單詞更多的特征信息,并融入更多的統(tǒng)計特征信息,以提高關(guān)鍵詞抽取效率;二是目前大部分關(guān)鍵詞抽取算法都在短文本上效果比較好,如何提高在長文中的抽取效果,是我們感興趣的方向.

猜你喜歡
語義卷積向量
向量的分解
基于3D-Winograd的快速卷積算法設(shè)計及FPGA實現(xiàn)
聚焦“向量與三角”創(chuàng)新題
語言與語義
從濾波器理解卷積
電子制作(2019年11期)2019-07-04 00:34:38
基于傅里葉域卷積表示的目標(biāo)跟蹤算法
“上”與“下”語義的不對稱性及其認知闡釋
向量垂直在解析幾何中的應(yīng)用
向量五種“變身” 玩轉(zhuǎn)圓錐曲線
認知范疇模糊與語義模糊
武清区| 竹溪县| 永平县| 时尚| 洛扎县| 石城县| 莎车县| 寿宁县| 于田县| 黎城县| 博兴县| 长白| 闵行区| 海门市| 扬州市| 福建省| 临颍县| 连江县| 宁国市| 宿迁市| 永济市| 清水县| 宁都县| 锡林郭勒盟| 海安县| 水城县| 锡林浩特市| 兰西县| 会泽县| 金堂县| 洮南市| 西畴县| 抚顺县| 大方县| 灵寿县| 奉化市| 平乐县| 九龙县| 丹巴县| 广东省| 绍兴县|