車(chē) 蕾,楊小平,王 良,梁天新,韓鎮(zhèn)遠(yuǎn)
(1. 中國(guó)人民大學(xué) 信息學(xué)院,北京 100872; 2. 北京科技大學(xué) 信息管理學(xué)院,北京 100192)
利用機(jī)器學(xué)習(xí)技術(shù)進(jìn)行話(huà)題檢測(cè)與跟蹤并關(guān)注輿情安全是輿情監(jiān)測(cè)的重要手段。話(huà)題檢測(cè)與跟蹤致力于從互聯(lián)網(wǎng)上大量新聞報(bào)道中檢測(cè)新話(huà)題并跟蹤話(huà)題的發(fā)展,主要任務(wù)包括新聞報(bào)道切分、話(huà)題檢測(cè)、話(huà)題跟蹤、在線(xiàn)新事件檢測(cè)和關(guān)聯(lián)檢測(cè)五項(xiàng)任務(wù)[1]。話(huà)題歸類(lèi)是話(huà)題跟蹤中的重要研究點(diǎn)之一。話(huà)題歸類(lèi)是將最近采集到的新聞歸類(lèi)到與之相關(guān)的話(huà)題簇中。話(huà)題歸類(lèi)的核心問(wèn)題是文本表示與分類(lèi)模型。
文本結(jié)構(gòu)包括邏輯結(jié)構(gòu)和組織結(jié)構(gòu)。文本的邏輯結(jié)構(gòu)通常包括標(biāo)題和正文等信息。標(biāo)題屬于短文本,正文屬于長(zhǎng)文本。標(biāo)題雖然長(zhǎng)度較短,但是具有提示和評(píng)價(jià)新聞核心內(nèi)容的作用,在區(qū)分話(huà)題類(lèi)別方面具有重要作用。目前,文獻(xiàn)中缺乏充分利用文本邏輯結(jié)構(gòu)特征開(kāi)展話(huà)題歸類(lèi)的研究工作。文本的組織結(jié)構(gòu)包括字—詞語(yǔ)—句層次。為維持良好的上下文結(jié)構(gòu)及完整的語(yǔ)法結(jié)構(gòu),文本通常包含許多與主題相關(guān)度較低的字、詞語(yǔ)和句子。發(fā)現(xiàn)并過(guò)濾這些與主題相關(guān)性低的成分,可以加大對(duì)文本局部信息的注意力,在提高文本分類(lèi)效率的同時(shí)改善分類(lèi)效果。近年來(lái),深度學(xué)習(xí)在自然語(yǔ)言處理領(lǐng)域取得了系統(tǒng)性的突破,但基于深度學(xué)習(xí)、挖掘文本組織結(jié)構(gòu)特征來(lái)解決話(huà)題歸類(lèi)問(wèn)題的研究還有待深入。
本文將充分利用文本邏輯結(jié)構(gòu)特征與文本組織結(jié)構(gòu)特征,基于深度學(xué)習(xí)算法和分層網(wǎng)絡(luò),引入注意力機(jī)制和多策略競(jìng)爭(zhēng)機(jī)制,將重點(diǎn)放在關(guān)鍵字、關(guān)鍵詞語(yǔ)和關(guān)鍵句子上,忽略其他無(wú)關(guān)內(nèi)容,有效提取話(huà)題特征信息,從而提高話(huà)題歸類(lèi)的準(zhǔn)確度,提升模型的泛化能力和健壯能力。為此,本文提出一個(gè)面向文本結(jié)構(gòu)的混合分層注意力網(wǎng)絡(luò)的話(huà)題歸類(lèi)模型(簡(jiǎn)稱(chēng)TSOHHAN),主要貢獻(xiàn)如下:
(1) 更有效地利用了文本的邏輯結(jié)構(gòu)。TSOHHAN模型同時(shí)考慮正文長(zhǎng)文本和標(biāo)題短文本對(duì)話(huà)題歸類(lèi)問(wèn)題的貢獻(xiàn)性。
(2) 更有效地利用了文本的組織結(jié)構(gòu)。TSOHHAN模型針對(duì)中文文本,采用字詞—句層次結(jié)構(gòu);針對(duì)英文文本,采用詞語(yǔ)—句層次結(jié)構(gòu)。為了有效地提取強(qiáng)相關(guān)信息,模型分別采用了字詞混合級(jí)注意力機(jī)制、詞語(yǔ)級(jí)注意力機(jī)制和句級(jí)注意力機(jī)制。
(3) 在標(biāo)題分類(lèi)的置信度選擇上和文本分類(lèi)的置信度選擇上采用多策略競(jìng)爭(zhēng)機(jī)制。一方面因“數(shù)”制宜,另一方面滿(mǎn)足特征融合的需求。
(4) 開(kāi)展CNN、TextCNN、Bi-GRU、Bi-LSTM、基于字—句層次的HAN、基于詞語(yǔ)—句層次的HAN、基于字詞—句層次的HAN和TSOHHAN等模型在話(huà)題歸類(lèi)方面的對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,TSOHHAN話(huà)題歸類(lèi)模型優(yōu)于其他模型。為了說(shuō)明TSOHHAN模型的有效性和泛化性,實(shí)驗(yàn)選取了4個(gè)文本數(shù)據(jù)集,分別包括兩個(gè)中文數(shù)據(jù)集和兩個(gè)英文數(shù)據(jù)集。
本文接下來(lái)首先闡述相關(guān)研究工作,第2節(jié)深入探討面向文本結(jié)構(gòu)的混合分層注意力網(wǎng)絡(luò)的話(huà)題歸類(lèi)模型,第3節(jié)闡述實(shí)驗(yàn)工作并分析實(shí)驗(yàn)結(jié)果,最后對(duì)全文進(jìn)行總結(jié)并對(duì)該研究方向進(jìn)行展望。
話(huà)題歸類(lèi)屬于文本分類(lèi)問(wèn)題。文本分類(lèi)的主要任務(wù)是將給定的文本集合劃分到已知的一個(gè)或者多個(gè)類(lèi)別集合中。例如,新聞文本分類(lèi)就是將新聞文本劃分到其所屬的話(huà)題中,如“國(guó)內(nèi)”“國(guó)際”“體育”等。
傳統(tǒng)文本分類(lèi)基于機(jī)器學(xué)習(xí)方法,主要有樸素貝葉斯(Naive Bayes,NB)、K近鄰(K-Nearest Neighbor,KNN)、支持向量機(jī)(Support Vector Machine,SVM)、決策樹(shù)(Decision Tree)等[2]。其中SVM一直保持不錯(cuò)的效果。傳統(tǒng)文本分類(lèi)方法的性能取決于人工設(shè)計(jì)的特征[3]。再者,由于人為因素的干擾,人工分類(lèi)很難有統(tǒng)一的標(biāo)準(zhǔn),并且還需要一定的先驗(yàn)知識(shí)。當(dāng)領(lǐng)域發(fā)生變化時(shí),分類(lèi)標(biāo)準(zhǔn)也需要重新設(shè)計(jì)。
為了避免過(guò)多的人工設(shè)計(jì)特征,研究者開(kāi)始將深度學(xué)習(xí)方法運(yùn)用到文本分類(lèi)問(wèn)題中。2006年Hinton 教授提出深度學(xué)習(xí)的概念[4],指出深度學(xué)習(xí)模型具有自動(dòng)從大量無(wú)監(jiān)督數(shù)據(jù)中學(xué)習(xí)出任務(wù)所需特征的優(yōu)勢(shì),在自然語(yǔ)言處理(NLP)中表現(xiàn)出強(qiáng)大的實(shí)力。卷積神經(jīng)網(wǎng)絡(luò)(CNN)能夠通過(guò)窗口濾波器從局部文本中提取深層特征[5]。Kim提出了TextCNN[5]模型,利用CNN來(lái)提取句子中類(lèi)似N-Grams 的關(guān)鍵信息。盡管TextCNN在很多任務(wù)里面都有不錯(cuò)的表現(xiàn),然而CNN的局限在于卷積尺寸是固定的,對(duì)變長(zhǎng)句子處理不夠理想。循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)通過(guò)使用帶自反饋的神經(jīng)元,能夠處理任意長(zhǎng)度的序列。長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(LSTM)是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),能夠根據(jù)全局上下文記憶或忽略特征[6]。GRU(gated recurrent unit)[7]是LSTM的一個(gè)變體,能夠很好地處理遠(yuǎn)距離依賴(lài)。可見(jiàn),深度學(xué)習(xí)模型在NLP領(lǐng)域已經(jīng)獲得了很好的表現(xiàn),應(yīng)用前景廣闊。但是仍然存在有待深入研究的問(wèn)題,如上述研究不能高質(zhì)量地從眾多信息中選擇出對(duì)當(dāng)前任務(wù)目標(biāo)更關(guān)鍵的信息。
深度學(xué)習(xí)中的注意力機(jī)制具有選擇特性,它可以降低數(shù)據(jù)維度,讓任務(wù)處理系統(tǒng)更專(zhuān)注于找到輸入數(shù)據(jù)中與當(dāng)前輸出顯著相關(guān)的有用信息,從而提高輸出的質(zhì)量[8]。Yang等[9]提出了分層注意力網(wǎng)絡(luò),用層次結(jié)構(gòu)反映文本結(jié)構(gòu),分別在單詞和句子級(jí)別使用注意力機(jī)制,捕捉不同層次的重要信息,提升了文本分類(lèi)的性能和準(zhǔn)確度。Wang等[10]基于分層注意力網(wǎng)絡(luò)研究視頻的行為識(shí)別。Wang等[11]提出了實(shí)體增強(qiáng)層次注意力神經(jīng)網(wǎng)絡(luò),從生物醫(yī)學(xué)文本中挖掘蛋白質(zhì)的相互作用。Gao等[12]基于分層注意力網(wǎng)絡(luò),改善了非結(jié)構(gòu)化癌癥病理報(bào)告中的多信息提取任務(wù)的效果。Yan等[13]提出分層多尺度注意力網(wǎng)絡(luò)解決計(jì)算機(jī)視覺(jué)領(lǐng)域的動(dòng)作識(shí)別問(wèn)題。Zhou等[14]提出混合注意力網(wǎng)絡(luò)以解決短文本分類(lèi)問(wèn)題。Pappas等[15]基于多語(yǔ)言層次注意力網(wǎng)絡(luò)研究文本的分類(lèi)問(wèn)題。Tarnpradab S等[16]基于層次注意力網(wǎng)絡(luò)研究在線(xiàn)論壇的摘要提交問(wèn)題。Yang等[9]提出的分層次注意力網(wǎng)絡(luò)是在英文數(shù)據(jù)集上開(kāi)展的實(shí)驗(yàn),英文文本組成的最小粒度是詞語(yǔ)級(jí)。而中文數(shù)據(jù)集中文本組成的最小粒度是字級(jí),與英文數(shù)據(jù)集的粒度有所不同,目前針對(duì)中文數(shù)據(jù)集的分層次注意力網(wǎng)絡(luò)的研究還很少。
上述研究?jī)H針對(duì)長(zhǎng)文本或短文本中的一種,而新聞的標(biāo)題和正文對(duì)話(huà)題類(lèi)別的區(qū)分都起到一定作用,目前還沒(méi)有同時(shí)基于長(zhǎng)、短文本的話(huà)題歸類(lèi)研究??傊壳霸?huà)題歸類(lèi)模型的研究工作還沒(méi)有充分利用文本邏輯結(jié)構(gòu)特征和文本組織結(jié)構(gòu)特征。
從詞匯形態(tài)學(xué)來(lái)看,詞語(yǔ)內(nèi)部的深層結(jié)構(gòu)為更深層次地處理和更好地理解整個(gè)句子提供了額外的信息[17]。以字作為最小語(yǔ)言模型的單元,可以解決生僻詞和網(wǎng)絡(luò)新詞不能被識(shí)別的問(wèn)題[18]。針對(duì)中文文本的最細(xì)粒度的組成單元是字這一特點(diǎn),本文在網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)上既蘊(yùn)含了形態(tài)學(xué)上漢字的原始含義,又蘊(yùn)含了中文詞語(yǔ)的語(yǔ)義信息,提出字詞—句的層次結(jié)構(gòu)。從文本的邏輯結(jié)構(gòu)來(lái)看,新聞標(biāo)題屬于短文本,本文基于幾種短文本分類(lèi)性能較優(yōu)的深度學(xué)習(xí)算法,遵循競(jìng)爭(zhēng)機(jī)制,構(gòu)建多策略標(biāo)題分類(lèi)層。新聞?wù)膶儆陂L(zhǎng)文本,采用分層注意力網(wǎng)絡(luò)構(gòu)建話(huà)題歸類(lèi)模型。TSOHHAN模型如圖1所示,包括: 文本表示層、多策略競(jìng)爭(zhēng)標(biāo)題分類(lèi)層、字詞級(jí)/詞級(jí)/句級(jí)Bi-GRU層、字詞級(jí)/詞級(jí)/句級(jí)注意力層和話(huà)題歸類(lèi)層。
一篇文章的表示應(yīng)該首先建立字級(jí)向量、詞語(yǔ)級(jí)向量、句子級(jí)向量,然后再將句子級(jí)向量聚集在一起形成一個(gè)文章的向量表示。另外文獻(xiàn)[9]提出不同的詞和句子對(duì)于一篇文章所能表達(dá)的信息量是不一樣的。所以網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)上包含兩個(gè)級(jí)別的注意力機(jī)制,即詞語(yǔ)級(jí)別和句子級(jí)別。圖1的模型利用各個(gè)層級(jí)的上下文向量產(chǎn)生注意力層,求出每個(gè)字、每個(gè)詞語(yǔ)和每個(gè)句子的任務(wù)相關(guān)程度。實(shí)驗(yàn)表明,與字—句和詞—句相比,中文文本采用字詞—句的層次網(wǎng)絡(luò),效果較優(yōu)。最后,遵循競(jìng)爭(zhēng)機(jī)制,產(chǎn)生標(biāo)題和正文分類(lèi)結(jié)果的綜合置信度,得到話(huà)題歸類(lèi)的最終結(jié)果。
圖1 TSOHHAN話(huà)題歸類(lèi)模型
文本表示層的任務(wù)是將待分類(lèi)文本轉(zhuǎn)換成計(jì)算機(jī)可以識(shí)別的向量表示。預(yù)處理之后得到的文本數(shù)據(jù)集表示如式(1)所示。
Doc=(Class,Title,Con)
(1)
其中,Class是類(lèi)型,Title是標(biāo)題短文本,Con是正文長(zhǎng)文本。在TSOHHAN模型中,標(biāo)題短文本采用的是分布式詞向量表示,正文長(zhǎng)文本采用的是隨機(jī)詞向量表示。
2.1.1 短文本向量表示
短文本采用分布式詞向量表示。分布式表示有效地克服了傳統(tǒng)文本表示中的詞語(yǔ)原子性問(wèn)題。分布式表示(Distributed Representation)最早是Hinton在1986年提出的[19],基本思想是將每個(gè)詞表示成n維稠密、連續(xù)的實(shí)數(shù)向量。分布式表示最大的優(yōu)點(diǎn)是具備非常強(qiáng)的特征表達(dá)能力。盡管Hinton在1986年就提出了詞的分布式表示,Bengio在2003年便提出了NNLM(neural network language model)[20],詞向量的大規(guī)模應(yīng)用卻是從2013年開(kāi)始的。Mikolov在2013年發(fā)表了兩篇關(guān)于Word2Vec的文章[21-22],更重要的是發(fā)布了簡(jiǎn)單好用的Word2Vec工具包。該工具包生成詞向量的效果在語(yǔ)義維度上得到了很好的驗(yàn)證,極大推進(jìn)了文本分析的進(jìn)程。
本文的語(yǔ)料保存在文本文檔中,首先提取訓(xùn)練集、驗(yàn)證集、測(cè)試集文檔中的短文本集合Titles,構(gòu)建詞庫(kù)Voc_Tit,并對(duì)詞庫(kù)中的詞語(yǔ)進(jìn)行詞向量的映射,從而構(gòu)建標(biāo)題特征矩陣Mat_Tit。Titles和Voc_Tit的表示如式(2)和式(3)所示。
2.1.2 長(zhǎng)文本向量表示
長(zhǎng)文本采用隨機(jī)詞向量表示。隨機(jī)詞向量表示,即對(duì)所有詞序進(jìn)行編碼,并將詞序映射為隨機(jī)詞向量,進(jìn)而由詞序構(gòu)成句子向量[23]。本文的語(yǔ)料保存在文本文檔中,首先提取訓(xùn)練集、驗(yàn)證集、測(cè)試集文檔中的長(zhǎng)文本集合Cons,然后讀取Cons中的所有句子,構(gòu)建詞庫(kù)Voc_Con,并對(duì)詞庫(kù)中的詞語(yǔ)進(jìn)行隨機(jī)編序,針對(duì)詞序進(jìn)行詞向量的映射,從而構(gòu)建句子特征矩陣Mat_Con。Cons和Voc_Con的表示如式(4)和式(5)所示。
當(dāng)用隨機(jī)詞向量表示字時(shí),只要把詞語(yǔ)替換成字即可。
本研究中,中文長(zhǎng)文本的輸入處理方式是詞語(yǔ)和構(gòu)成該詞語(yǔ)的每個(gè)漢字混合輸入。這種處理方式與Yang的方法[9]相比,不僅能解決生僻詞和網(wǎng)絡(luò)新詞不能被識(shí)別的問(wèn)題,而且能挖掘漢字更深層次的語(yǔ)義,更好地提升文本分類(lèi)效果。本文采用混合輸入模式,與每種輸入類(lèi)型訓(xùn)練一個(gè)單獨(dú)的文本分類(lèi)模型并做線(xiàn)性插值的方式相比,混合輸入在訓(xùn)練和評(píng)估方面比線(xiàn)性插值更高效[24]。
多策略競(jìng)爭(zhēng)標(biāo)題分類(lèi)層采用“多策略競(jìng)爭(zhēng)機(jī)制”進(jìn)行標(biāo)題文本分類(lèi)?;贑NN、TextCNN、Bi-LSTM和Bi-GRU的分類(lèi)模型具有相同的輸入層和輸出層結(jié)構(gòu),但是隱藏層有所區(qū)別。CNN和Text-CNN的隱藏層增設(shè)了卷積層和最大池化層,側(cè)重于挖掘文本的構(gòu)成特征。Bi-LSTM和Bi-GRU的隱藏層嵌入了循環(huán)神經(jīng)網(wǎng)絡(luò)和門(mén)控機(jī)制,側(cè)重于挖掘序列化的語(yǔ)義特征。要獲得好的多策略集成,每個(gè)分類(lèi)學(xué)習(xí)器應(yīng)“好而不同”,即個(gè)體學(xué)習(xí)器要有一定的“準(zhǔn)確性”,即學(xué)習(xí)器不能太差,并且要有“多樣性”,即學(xué)習(xí)器間具有差異。Krogh和Vedelsby提出的“誤差—分歧分解”明確指出: 個(gè)體學(xué)習(xí)器準(zhǔn)確性越高、多樣性越大,則集成越好[25]。
本文分別采用CNN、TextCNN、Bi-LSTM和Bi-GRU對(duì)4組實(shí)驗(yàn)數(shù)據(jù)的標(biāo)題數(shù)據(jù)進(jìn)行短文本分類(lèi)實(shí)驗(yàn)。本文實(shí)驗(yàn)顯示,Bi-GRU處理Data1和Data2的準(zhǔn)確率比較高,TextCNN處理Data3和Data4的準(zhǔn)確率比較高。因此,為保證集成效果,本文采用“多策略競(jìng)爭(zhēng)機(jī)制”進(jìn)行短文本分類(lèi),即同時(shí)采用多種分類(lèi)模型進(jìn)行類(lèi)別預(yù)測(cè),置信度高的勝出?;诙嗖呗愿?jìng)爭(zhēng)的標(biāo)題分類(lèi)方法在本文簡(jiǎn)寫(xiě)為MTC。每種模型預(yù)測(cè)的置信度向量confModeli如式(6)所示,confi,j表示第i個(gè)模型第j個(gè)類(lèi)別的置信度值。如式(7)所示,confMaxModeli表示第i個(gè)模型預(yù)測(cè)的置信度向量中的置信度最大值,即預(yù)測(cè)的類(lèi)別對(duì)應(yīng)的置信度。標(biāo)題文本的置信度向量confshort如式(8)所示。式(6)和式(7)中,j的值域?yàn)閇1,…,n],n為類(lèi)別數(shù)目。式(6)~式(8)中,i的值域?yàn)閇1,…,m],m表示分類(lèi)模型的數(shù)目,本實(shí)驗(yàn)中m取4。
(11)
候選隱含狀態(tài)使用了重置門(mén)來(lái)控制包含過(guò)去時(shí)刻信息的上一個(gè)隱含狀態(tài)的流入。重置門(mén)提供了丟棄與未來(lái)無(wú)關(guān)的過(guò)去隱含狀態(tài)的機(jī)制,也就是說(shuō),重置門(mén)決定了過(guò)去有多少信息被遺忘。*表示矩陣元素相乘。
(12)
本模型的隱含狀態(tài)hit為正向隱含狀態(tài)和反向隱含狀態(tài)的連接,如式(17)所示。
(17)
注: [ ]表示兩個(gè)向量相連接。
基于字詞級(jí)的注意力層的任務(wù)是使用注意力機(jī)制得到每個(gè)字詞與任務(wù)的相關(guān)程度,以得到相應(yīng)的句子表示。首先,通過(guò)單層神經(jīng)網(wǎng)絡(luò)訓(xùn)練出對(duì)應(yīng)hit的隱含狀態(tài)μit,tanh函數(shù)的作用是將值域壓入[-1,1]中,如式(18)所示。接著,如式(19)所示獲得hit的任務(wù)權(quán)重αit。最后,引入類(lèi)似Softmax的計(jì)算方式對(duì)μit進(jìn)行數(shù)值轉(zhuǎn)換,通過(guò)歸一化,將原始計(jì)算數(shù)值整理成所有元素權(quán)重之和為1的概率分布,同時(shí)也通過(guò)Softmax的內(nèi)在機(jī)制更加突出重要元素的權(quán)重。μwc是一個(gè)隨機(jī)初始化的上下文向量,模型利用它計(jì)算出對(duì)應(yīng)hit的任務(wù)權(quán)重αit,以體現(xiàn)hit與任務(wù)的相關(guān)程度。最后,通過(guò)加權(quán)求和得到基于注意力機(jī)制的句子向量si,如式(20)所示。
針對(duì)英文文本,直接采用詞級(jí)處理?;谠~級(jí)的Bi-GRU層與注意力層的對(duì)應(yīng)公式同Yang的論文[9]。
(21)
基于句子的注意力層的任務(wù)是使用注意力機(jī)制得到每個(gè)句子與任務(wù)的相關(guān)程度,進(jìn)而以對(duì)應(yīng)的文檔表示,即文檔向量。式(22)中的μi是通過(guò)單層神經(jīng)網(wǎng)絡(luò)訓(xùn)練出來(lái)的對(duì)應(yīng)hi的隱含狀態(tài)。式(23)引入類(lèi)似Softmax的計(jì)算方式對(duì)μi進(jìn)行數(shù)值轉(zhuǎn)換,計(jì)算出來(lái)的αi就是對(duì)應(yīng)hi的任務(wù)權(quán)重。如式(24)所示,vlong就是通過(guò)加權(quán)求和得到基于注意力機(jī)制的文檔向量,作為話(huà)題歸類(lèi)層的輸入。
在TSOHHAN模型的話(huà)題歸類(lèi)層,將基于句子注意力層的輸出vlong輸入到Softmax層以獲取類(lèi)別置信度向量conflong[式(25)]。合并短文本的類(lèi)別置信度向量[式(6)]和長(zhǎng)文本的類(lèi)別置信度向量[式(25)],得到最終的全局類(lèi)別置信度向量conf,如式(26)所示。基于多策略競(jìng)爭(zhēng)機(jī)制,最終話(huà)題類(lèi)別為全局類(lèi)別置信度向量中最大的置信度值對(duì)應(yīng)的類(lèi)別Text_cat,如式(27)所示。其中,cat[]是話(huà)題類(lèi)別集合。
實(shí)驗(yàn)是在GPU為NVIDA GeForce GTX 1060 3 GB、CPU為Intel(R) Core(TM) i5-3470 CPU @3.20 GHz、內(nèi)存為14 GB、操作系統(tǒng)為64位Windows 10的計(jì)算機(jī)上運(yùn)行的。開(kāi)發(fā)環(huán)境為: Python 3.6,TensorFlow 1.3。
為了驗(yàn)證模型的有效性,本文采用如下4種標(biāo)準(zhǔn)數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),語(yǔ)料庫(kù)均可以通過(guò)開(kāi)源網(wǎng)站獲得。
(1) 復(fù)旦數(shù)據(jù)(中文)[24](簡(jiǎn)稱(chēng)Data1): 即復(fù)旦大學(xué)文本分類(lèi)數(shù)據(jù),此數(shù)據(jù)集由復(fù)旦大學(xué)計(jì)算機(jī)信息與技術(shù)系國(guó)際數(shù)據(jù)庫(kù)中心自然語(yǔ)言處理小組提供。實(shí)驗(yàn)從中選取了8個(gè)數(shù)據(jù)量超過(guò)1 200的主題。實(shí)驗(yàn)數(shù)據(jù)集的分布情況如圖2所示。
圖2 復(fù)旦大學(xué)數(shù)據(jù)集(Data1)數(shù)據(jù)分布情況
(2) HUCNews(中文)[27](簡(jiǎn)稱(chēng)Data2): 是由清華大學(xué)自然語(yǔ)言處理實(shí)驗(yàn)室推出的中文新聞文本分類(lèi)工具包,能夠自動(dòng)高效地實(shí)現(xiàn)用戶(hù)自定義的文本分類(lèi)語(yǔ)料的訓(xùn)練、評(píng)測(cè)、分類(lèi)功能。實(shí)驗(yàn)從中選取了10個(gè)主題。實(shí)驗(yàn)數(shù)據(jù)集的分布情況如圖3所示。
圖3 HUCnews數(shù)據(jù)集(Data2)數(shù)據(jù)分布情況
(3) 20 news(英文)[28](簡(jiǎn)稱(chēng)Data3): 此新聞數(shù)據(jù)集由Ken Lang收集,包括20 017個(gè)文本,20個(gè)類(lèi)別。實(shí)驗(yàn)數(shù)據(jù)集的分布情況如圖4所示。
圖4 20 news數(shù)據(jù)集(Data3)數(shù)據(jù)分布情況
(4) 路透社(英文)[29](簡(jiǎn)稱(chēng)Data4): 此新聞數(shù)據(jù)集是由路透公司采集的1987年的新聞稿組成的Reutrs-21578文集作為實(shí)驗(yàn)數(shù)據(jù)集。實(shí)驗(yàn)從中選取了10個(gè)主題。實(shí)驗(yàn)數(shù)據(jù)集的分布情況如圖5所示。
圖5 路透社數(shù)據(jù)集(Data4)數(shù)據(jù)分布情況
實(shí)驗(yàn)數(shù)據(jù)集的整體分布情況如表1所示。
表1 實(shí)驗(yàn)數(shù)據(jù)集
對(duì)采集到的中文文本進(jìn)行如下預(yù)處理: 首先采用結(jié)巴(jieba)分詞工具對(duì)數(shù)據(jù)進(jìn)行分詞,并去除中英文文本中的數(shù)字;接著過(guò)濾掉嘆詞、副詞等相關(guān)性較弱的詞語(yǔ)和標(biāo)點(diǎn)符號(hào);最后去除停用詞。
對(duì)采集到的英文文本進(jìn)行如下預(yù)處理: 去除數(shù)字和停用詞;字母全部轉(zhuǎn)為小寫(xiě);用Porter算法進(jìn)行詞干化處理,將英文中單復(fù)數(shù)、時(shí)態(tài)等變形詞轉(zhuǎn)換成原型。
所有字符編碼采用無(wú)BOM的UTF-8格式。
實(shí)驗(yàn)中的短文本實(shí)驗(yàn)數(shù)據(jù)是從各數(shù)據(jù)集中提取的標(biāo)題信息。標(biāo)題提取過(guò)程中,針對(duì)某些標(biāo)題缺失的情況進(jìn)行標(biāo)題補(bǔ)全。
目前,文本分類(lèi)任務(wù)中使用的神經(jīng)網(wǎng)絡(luò)多為卷積神經(jīng)網(wǎng)絡(luò)或者循環(huán)神經(jīng)網(wǎng)絡(luò)。本文選取了9個(gè)模型進(jìn)行對(duì)比實(shí)驗(yàn),以便驗(yàn)證TSOHHAN話(huà)題歸類(lèi)模型的優(yōu)秀性能。具體模型信息如下:
(1) CNN: 卷積神經(jīng)網(wǎng)絡(luò)。
(2) TextCNN: 面向文本分類(lèi)的卷積神經(jīng)網(wǎng)絡(luò)。
(3) Bi-LSTM: 雙向長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)。
(4) Bi-GRU: 雙向門(mén)控循環(huán)單元。
(5) HAN-W: 詞級(jí)分層注意力網(wǎng)絡(luò)。
(6) HAN-C: 字級(jí)分層注意力網(wǎng)絡(luò)。
(7) HAN-WC: 字詞混合級(jí)分層注意力網(wǎng)絡(luò)。
(8) MTC: 基于多策略競(jìng)爭(zhēng)的標(biāo)題分類(lèi)方法。
(9) TSOHHAN: 面向文本結(jié)構(gòu)的混合分層注意力網(wǎng)絡(luò)的話(huà)題歸類(lèi)模型。
通過(guò)模型(7)與模型(1)~(6)基于長(zhǎng)文本的對(duì)比實(shí)驗(yàn),驗(yàn)證HAN-WC對(duì)于中文文本集合的較好的話(huà)題歸類(lèi)效果。通過(guò)模型(1)~(4)和(8)基于短文本的對(duì)比實(shí)驗(yàn),分析各模型對(duì)短文本話(huà)題歸類(lèi)效果。通過(guò)模型(9)與模型(5)~(7)的對(duì)比實(shí)驗(yàn),驗(yàn)證本文提出的TSOHHAN話(huà)題歸類(lèi)模型具有較好的話(huà)題歸類(lèi)效果。
本實(shí)驗(yàn)的訓(xùn)練參數(shù)是通過(guò)多次實(shí)驗(yàn)獲得的最優(yōu)參數(shù)。其中,詞向量的訓(xùn)練過(guò)程中,詞向量維度取200,滑動(dòng)窗口取10,算法選擇為Skip-gram。在神經(jīng)網(wǎng)絡(luò)模型中,文本維度為200,卷積核數(shù)目為128,詞匯表大小為8 000,隱含層層數(shù)為2,學(xué)習(xí)率為10-3。HAN相關(guān)模型中詞單元數(shù)為200,句子單元數(shù)為100。
為了防止過(guò)擬合,TSOHHAN模型在Bi-GRU層采用Dropout機(jī)制進(jìn)行正則化約束。Dropout最先由Hinton等人提出[30],通過(guò)隨機(jī)丟棄——例如在前向傳播的過(guò)程中,每個(gè)隱層單元有p的概率被丟棄——防止隱層單元的共適應(yīng)問(wèn)題。模型采用TensorFlow的自適應(yīng)優(yōu)化器,允許在每個(gè)步驟中為學(xué)習(xí)率計(jì)算不同的值,以使訓(xùn)練效果達(dá)到最優(yōu)。
本節(jié)實(shí)驗(yàn)是基于HAN-C模型與Data1數(shù)據(jù)集。圖6顯示了HAN-C模型歸類(lèi)性能與epoch的關(guān)系。從圖中可以看出,HAN-C模型收斂很慢,迭代次數(shù)epoch的值越大,準(zhǔn)確率越高,在epoch為2 000時(shí),準(zhǔn)確率已經(jīng)達(dá)到84.47%,高于算法(1)~(5)。綜合考慮時(shí)間成本,HAN-W、HAN-C和HAN-WC模型中的epoch值都采用2 000。
圖6 HAN-C模型歸類(lèi)性能與epoch的關(guān)系
圖7顯示了HAN-C模型歸類(lèi)性能與batch_size的關(guān)系。話(huà)題具有漂移特性,話(huà)題歸類(lèi)模型的訓(xùn)練與預(yù)測(cè)需要基于時(shí)間窗口迭代執(zhí)行,所以訓(xùn)練時(shí)間太長(zhǎng)也會(huì)影響歸類(lèi)模型的性能。從圖7可以看出,當(dāng)batch_size=32時(shí),準(zhǔn)確率與訓(xùn)練時(shí)間綜合性能最好。當(dāng)batch_size=16時(shí),準(zhǔn)確率比取32時(shí)提升了0.12%,但訓(xùn)練時(shí)間增加了31.04%。當(dāng)batch_size=8時(shí),準(zhǔn)確率有所下降。當(dāng)batch_size=4時(shí),準(zhǔn)確率比取32時(shí)提升了0.59%,但是訓(xùn)練時(shí)間增加了3倍多。當(dāng)batch_size=2時(shí),準(zhǔn)確率比取32時(shí)提升了0.79%,但是訓(xùn)練時(shí)間增加了7倍多。綜上所述,本實(shí)驗(yàn)batch_size值取32是最好的選擇。
圖7 HAN-C模型歸類(lèi)性能與batch_size的關(guān)系
3.6.1 各分類(lèi)算法的實(shí)驗(yàn)結(jié)果對(duì)比分析
本文是對(duì)話(huà)題歸類(lèi)進(jìn)行的多分類(lèi)實(shí)驗(yàn),在評(píng)價(jià)模型性能時(shí)使用宏平均準(zhǔn)確度。表2是長(zhǎng)文本部分的實(shí)驗(yàn)結(jié)果,分析此結(jié)果可知: 實(shí)驗(yàn)過(guò)程中為了提升文本分類(lèi)效果,應(yīng)保留文檔的出處。無(wú)出處時(shí)Data1基于TextCNN測(cè)試的準(zhǔn)確率是78.73%,有出處時(shí)準(zhǔn)確率是80.91%。由Bi-LSTM和Bi-GRU的執(zhí)行情況可以看出,Bi-GRU在長(zhǎng)文本分類(lèi)中效果優(yōu)于CNN、TextCNN和Bi-LSTM。所以TSOHHAN模型中采用Bi-GRU進(jìn)行字、詞、句的序列編碼。另外,各算法的準(zhǔn)確率與數(shù)據(jù)集的分布情況和數(shù)據(jù)量也相關(guān)。Data2的數(shù)據(jù)分布比較均勻,而且數(shù)據(jù)量大,所以各算法對(duì)應(yīng)的準(zhǔn)確率都最高,HAN-WC的結(jié)果略低于Bi-GRU,差0.01%。中文數(shù)據(jù)Data1和Data2對(duì)應(yīng)的HAN-WC都優(yōu)于HAN-W和HAN-C,說(shuō)明HAN-WC不僅挖掘了形態(tài)學(xué)上漢字的原始含義,還挖掘了中文詞語(yǔ)的語(yǔ)義特征,這種字詞向量混合表示方法對(duì)中文分類(lèi)算法有一定的提升。同時(shí)也說(shuō)明,對(duì)于中文文本來(lái)說(shuō),基于字詞—句的層次注意力網(wǎng)絡(luò)優(yōu)于基于詞語(yǔ)—句和字—句的層次注意力網(wǎng)絡(luò)。從英文數(shù)據(jù)Data3和Data4的運(yùn)行結(jié)果來(lái)看,基于注意力的分層網(wǎng)絡(luò)優(yōu)于其他深度學(xué)習(xí)算法。4個(gè)數(shù)據(jù)集的HAN模型的準(zhǔn)確率比其他神經(jīng)網(wǎng)絡(luò)模型的最高準(zhǔn)確率依次提升了5%、0%、2%、5%。綜上所述,本研究中長(zhǎng)文本分類(lèi)算法采用HAN-WC是有效的,并具有一定的泛化能力。本研究中英文文本的最小粒度為單詞,所以HAN-WC的結(jié)果取自HAN-W的結(jié)果。
表2 長(zhǎng)文本分類(lèi)算法的實(shí)驗(yàn)結(jié)果(準(zhǔn)確率)對(duì)比
由隱藏層特點(diǎn)決定,CNN/TextCNN更適合標(biāo)題特征明顯的數(shù)據(jù),Bi-LSTM/ Bi-GRU更適合需要理解標(biāo)題語(yǔ)義的數(shù)據(jù)。表3是短文本分類(lèi)算法對(duì)比實(shí)驗(yàn)結(jié)果,通過(guò)該結(jié)果可以獲知,不同短文本分類(lèi)算法針對(duì)不同的數(shù)據(jù),其準(zhǔn)確率是不同的。本實(shí)驗(yàn)中,Bi-GRU和TextCNN的表現(xiàn)比較突出,在策略競(jìng)爭(zhēng)機(jī)制中,起主導(dǎo)作用。4個(gè)基礎(chǔ)模型的最高準(zhǔn)確率比最低準(zhǔn)確率分別提升了5%、12%、9%和9%。Data3原始數(shù)據(jù)的標(biāo)題信息完整性相對(duì)較弱,所以對(duì)應(yīng)的分類(lèi)效果較差。從表3可以看出,Data1、Data2、Data3的MTC準(zhǔn)確率微高于4個(gè)基礎(chǔ)模型的最高準(zhǔn)確率,Data4的MTC準(zhǔn)確率接近于4個(gè)基礎(chǔ)模型的最高準(zhǔn)確率。這也體現(xiàn)了Bi-GRU在Data1和Data2短文本分類(lèi)問(wèn)題中的影響力,TextCNN在Data3和Data4短文本分類(lèi)問(wèn)題中的影響力。
表3 短文本分類(lèi)算法的實(shí)驗(yàn)結(jié)果(準(zhǔn)確率)對(duì)比
表4是本文提出的TSOHHAN模型與HAN的實(shí)驗(yàn)結(jié)果對(duì)比。HAN-W、HAN-C和HAN-WC是不考慮標(biāo)題信息的分類(lèi)算法。從結(jié)果可以看出,增加標(biāo)題信息的TSOHHAN模型的性能優(yōu)于未增加標(biāo)題信息的HAN。4個(gè)數(shù)據(jù)集的TSOHHAN模型的準(zhǔn)確率比HAN-W分別提升了9%、2%、0.08%和8%。由表2和表4可知,4個(gè)數(shù)據(jù)集的TSOHHAN模型的準(zhǔn)確率比其他神經(jīng)網(wǎng)絡(luò)模型(CNN、TextCNN、Bi-LSTM和Bi-GRU)的最高準(zhǔn)確率分別提升了7%、1%、2%和13%。這也說(shuō)明,深度挖掘文本邏輯結(jié)構(gòu)特征和組織結(jié)構(gòu)特征對(duì)話(huà)題歸類(lèi)問(wèn)題的研究有積極的推進(jìn)作用。另外,本實(shí)驗(yàn)也驗(yàn)證了TSOHHAN模型采用的多策略競(jìng)爭(zhēng)機(jī)制的有效性。單個(gè)學(xué)習(xí)模型存在一定局限性,因?yàn)槟承W(xué)習(xí)任務(wù)的真實(shí)假設(shè)可能不在其所考慮的假設(shè)空間中。如果結(jié)合多個(gè)學(xué)習(xí)模型,其相應(yīng)的假設(shè)空間有所擴(kuò)大,有可能學(xué)到更好的近似。另外,多個(gè)學(xué)習(xí)模型的集成可降低陷入糟糕局部極小點(diǎn)的風(fēng)險(xiǎn)。
表4 TSOHHAN與HAN算法的實(shí)驗(yàn)結(jié)果(準(zhǔn)確率)對(duì)比
3.6.2 收斂性能分析
為了說(shuō)明模型的收斂性能,本文基于Data1數(shù)據(jù)開(kāi)展了收斂性能的對(duì)比實(shí)驗(yàn)。圖8依次顯示了訓(xùn)練過(guò)程中CNN、TextCNN、Bi-GRU、Bi-LSTM、HAN各個(gè)模型的收斂情況。CNN迭代10次就收斂,TextCNN、Bi-GRU和Bi-LSTM迭代26次就收斂,HAN需要迭代2 000次才能達(dá)到優(yōu)秀的分類(lèi)效果,可見(jiàn)多層次模型不容易收斂,但是分類(lèi)效果有所提升。
圖8 收斂性能比對(duì)分析圖
本文針對(duì)話(huà)題追蹤中的話(huà)題歸類(lèi)問(wèn)題,提出了面向文本結(jié)構(gòu)的混合分層注意力網(wǎng)絡(luò)的話(huà)題歸類(lèi)模型,更充分利用了文本邏輯結(jié)構(gòu)特征和文本組織結(jié)構(gòu)特征,增強(qiáng)了文檔特征數(shù)據(jù)的可區(qū)分性。針對(duì)中文文本,本文提出基于字詞級(jí)混合輸入,既挖掘了詞語(yǔ)的語(yǔ)義特征,又挖掘了漢字的原始含義。在標(biāo)題處理上,采用多策略競(jìng)爭(zhēng)機(jī)制,揚(yáng)長(zhǎng)避短,因“數(shù)”制宜,確定標(biāo)題的最優(yōu)預(yù)測(cè)類(lèi)別。本文提出的模型對(duì)話(huà)題歸類(lèi)問(wèn)題的研究有推動(dòng)作用。
TSOHHAN模型性能有待繼續(xù)提升,后續(xù)的研究工作將進(jìn)一步研究除標(biāo)題之外的其他文本邏輯結(jié)構(gòu)、重要特征與話(huà)題歸類(lèi)模型的相關(guān)性,添加額外信息,增加文檔特征數(shù)據(jù)的可區(qū)分性,例如時(shí)序特征、關(guān)鍵命名實(shí)體、重要段落等信息。