王弘中,劉漳輝,2,3,郭 昆,2,3
1(福州大學(xué) 數(shù)學(xué)與計算機科學(xué)學(xué)院,福州 350116)2(福建省網(wǎng)絡(luò)計算與智能信息處理重點實驗室,福州 350116)3(空間數(shù)據(jù)挖掘與信息共享教育部重點實驗室,福州 350116)
文本分類是自然語言處理中一項基本任務(wù),在信息檢索、搜索引擎、 問答系統(tǒng)、主題分類與情感分析等領(lǐng)域發(fā)揮著十分重要的作用.
近年來,利用深度學(xué)習(xí)來建立語言模型的研究思路逐漸走向成熟,大大提升了文本的特征質(zhì)量.2003年,Bengio[1]等人總結(jié)出了一套用神經(jīng)網(wǎng)絡(luò)建立統(tǒng)計語言模型的框架, 首次提出了詞向量的概念,隨后不斷有學(xué)者對該理論進一步實現(xiàn):Mikolov[2]提出的 word2vec詞向量模型,是一種構(gòu)建上下文與目標詞之間關(guān)系的神經(jīng)網(wǎng)絡(luò)語言模型,根據(jù)訓(xùn)練方式的不同,word2vec又分為 CBOW 和Skip-gram兩種模型,其中,CBOW 模型通過將一個詞所在的上下文中的詞作為輸入,而該詞本身作為輸出的方式訓(xùn)練神經(jīng)網(wǎng)絡(luò); Skip-gram則相反,以一個詞作為輸入,該詞的上下文詞作為輸出來訓(xùn)練神經(jīng)網(wǎng)絡(luò).通過在大規(guī)模語料上訓(xùn)練模型,得到了每個詞到網(wǎng)絡(luò)隱含層的每個維度的權(quán)重,也就是每個詞的向量;Pennington[3]等人分析了 Skip-gram 模型能夠挖掘出詞與詞之間線性關(guān)系的背后成因,然后通過在共現(xiàn)矩陣上構(gòu)造相似的條件,得到基于全局信息的 GloVe 詞向量模型.除此之外,F(xiàn)acebook公司提出的Fasttext詞向量[4]當下也被廣泛使用在自然語言處理的眾多領(lǐng)域.這些詞向量模型得到的向量不僅維度低,而且相似語義的詞之間的相對距離較小,即詞的語義分布在向量的各個維度上適合機器理解計算,因此使得詞向量被廣泛地應(yīng)用在各種基于深度學(xué)習(xí)模型的文本任務(wù)中.
在詞向量作為深度學(xué)習(xí)輸入的基礎(chǔ)上,傳統(tǒng)的向量空間模型表示的文本向量存在稀疏性和高維度的缺點,同時還忽略了詞與詞之間的語義關(guān)系難以去衡量兩個向量的語義相關(guān)度.如何將神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與文本的詞向量進行結(jié)合,構(gòu)建深度神經(jīng)網(wǎng)絡(luò)模型,從文本中挖掘更多的語義信息,提升模型的學(xué)習(xí)能力,成為當前深度學(xué)習(xí)在文本分類乃至自然語言處理中一項重要挑戰(zhàn).
本文提出了一種混合詞向量的方法,首先,將兩種差異性大的詞向量進行向量拼接,對于缺失詞部分通過利用Fasttext詞向量模型有對子詞進行訓(xùn)練的特點去計算缺失詞與Fasttext子詞詞典詞匯的相似度,將具有最大相似度的詞典詞匯作為缺失詞的近義詞,對缺失詞進行替換,并且為了防止Fasttext模型對于缺失詞計算時出現(xiàn)“過匹配”的現(xiàn)象,通過引入外部詞典對于字節(jié)小于8的缺失詞使用詞形還原的策略來降低其“過匹配”現(xiàn)象的出現(xiàn),并且采用實驗自適應(yīng)調(diào)整相似度閾值的策略篩除相似度過低的缺失詞,防止給詞向量帶來過多噪聲數(shù)據(jù)從而得到少噪聲高信息量的混合詞向量.并且設(shè)計了一種融合膠囊網(wǎng)絡(luò)與循環(huán)神經(jīng)網(wǎng)絡(luò)的混合神經(jīng)網(wǎng)絡(luò)模型,利用膠囊網(wǎng)絡(luò)獲得局部特征與整體之間的關(guān)聯(lián)特征信息,并利用循環(huán)神經(jīng)網(wǎng)絡(luò)GRU經(jīng)過最大池化層在提取上下文顯著特征信息的同時加快收斂防止梯度消失現(xiàn)象的出現(xiàn),最終將兩者特征進行拼接融合得到含有豐富文本信息的高階特征從而更好地完成文本分類任務(wù).
本文主要貢獻如下:
1)設(shè)計了一種基于膠囊網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò)的混合深度網(wǎng)絡(luò)模型,利用膠囊網(wǎng)絡(luò)學(xué)習(xí)文本局部和整體的關(guān)聯(lián)信息,以及利用循環(huán)神經(jīng)網(wǎng)絡(luò)經(jīng)過最大池化層去提取顯著的上下文信息,融合兩個神經(jīng)模型的優(yōu)點從而更好地提高文本分類效果.
2)在嵌入層中提出一種混合詞向量的方法.對于兩種差異性大的詞向量進行拼接,利用Fasttext詞向量模型單詞訓(xùn)練的特點對于缺失詞部分進行補全,并且針對缺詞補全過程中可能出現(xiàn)的“過匹配”和“帶入過多噪聲詞向量”的問題,采取兩種策略進行解決從而獲得高信息量低噪聲的混合詞向量.
近年來,在基于深度學(xué)習(xí)的文本分類任務(wù)中,最為常用的兩種深度神經(jīng)網(wǎng)絡(luò)為卷積神經(jīng)網(wǎng)絡(luò)(Convolutional NeuralNetwork, CNN)與循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN).卷積神經(jīng)網(wǎng)絡(luò)的應(yīng)用方面, Kim[5]等人較早將卷積神經(jīng)網(wǎng)絡(luò)用于句子分類,提出了一種經(jīng)典的網(wǎng)絡(luò)模型結(jié)構(gòu),模型以文本的詞向量矩陣作為輸入,在卷積層中,通過多個不同尺度的卷積核在詞向量矩陣上的滑動,計算出輸入文本的特征圖,然后對這些特征圖進行池化操作提取主要特征.最后,在全連接層中,利用池化得到的特征及softmax 分類器,計算出輸入文本在各類別上的概率.Wang[6]等人提出了一種改進雙通道CNN模型利用卷積神經(jīng)網(wǎng)絡(luò)雙通道來獲取更多特征信息從而提高文本分類的準確度.
對于循環(huán)神經(jīng)網(wǎng)絡(luò),目前多采用如長短期記憶網(wǎng)絡(luò)以及門控神經(jīng)網(wǎng)絡(luò)[7]等優(yōu)化的循環(huán)神經(jīng)網(wǎng)絡(luò)模型用來解決標準的循環(huán)神經(jīng)網(wǎng)絡(luò)存在梯度消失及梯度爆炸等問題.在網(wǎng)絡(luò)中,文本中的詞按照其在文中的順序,被處理為一個有序序列,網(wǎng)絡(luò)中前一個輸入的詞信息會被傳遞到下一個輸入詞的計算中,循環(huán)層輸出經(jīng)過全連接層后計算文本屬于各類別的概率.Tang[8]等人提出一種層次神經(jīng)網(wǎng)絡(luò)用于長文本分類,將文檔按照詞,句,文檔三個層次依次建模,每個層次通過門控循環(huán)單元編碼; Zhang[9]等人提出一種結(jié)合長短期記憶網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)的模型,該模型先將文本輸入至長短期記憶網(wǎng)絡(luò)初步提取語義特征,然后將長短期記憶網(wǎng)絡(luò)的輸出作為卷積層的輸入,進一步提取出高階特征,從而提高文本分類效果.
由于CNN是通過不同的卷積窗口將底層的特征進行加權(quán)求和來表示上層的特征信息,而這樣抽取出來的高階特征雖然考慮到了主要特征的影響,卻缺少了對于局部特征之間的層次關(guān)系,丟失了信息當中大量的空間關(guān)聯(lián)特征信息,從而導(dǎo)致對象被錯誤分類.
在CNN網(wǎng)絡(luò)中,神經(jīng)元是獨立運行調(diào)整的,彼此之間并不存在著相互的聯(lián)系,Sabour等人[10]提出了基于動態(tài)路由的膠囊網(wǎng)絡(luò)模型,將子層膠囊層的輸出向量通過轉(zhuǎn)換矩陣轉(zhuǎn)換來預(yù)測父層膠囊向量,并且提出了動態(tài)路由算法的概念,其本質(zhì)上是一種聚類算法摒棄了反向傳播,取而代之的是通過多次的路由迭代調(diào)整權(quán)重,最后通過使用壓縮函數(shù)得到最終的父層膠囊向量表征.因為父層膠囊向量是由子層膠囊向量通過迭代路由調(diào)整權(quán)重通過壓縮函數(shù)計算得來,由多個神經(jīng)元一同決定與整體之間的關(guān)系,使得膠囊網(wǎng)絡(luò)能夠?qū)W習(xí)得到文本局部和整體之間的關(guān)聯(lián)信息.
因為膠囊網(wǎng)絡(luò)擁有學(xué)習(xí)局部與整體空間位置關(guān)系信息的能力,使其在圖像處理方面得到了廣泛地應(yīng)用,然而在于自然語言方面目前來說算是一個比較新的領(lǐng)域,可以應(yīng)用在文本分類領(lǐng)域之中用來提取文本段落與全文之間關(guān)聯(lián)特征信息,本文采用膠囊網(wǎng)絡(luò)作為混合模型的一部分用于提取局部與整體之間的關(guān)系作為整體高階特征組成的一部分,從而獲得信息更加豐富的高階特征來更好地預(yù)測地對文本進行分類.
本文設(shè)計了一種新型的混合膠囊網(wǎng)絡(luò)模型并在嵌入層中提出了一種詞向量混合方法來提高詞向量質(zhì)量.首先在嵌入層中將輸入的文本通過詞向量映射成為分布式向量表示形式,并且在其中采用兩種不同的詞向量進行映射,然后將映射完的詞向量進行混合拼接,對于其中出現(xiàn)的缺失詞部分利用Fasttext模型有對子詞進行訓(xùn)練的特性根據(jù)向量間余弦相似度進行缺失詞補全,在其中采用兩種策略來防止“過匹配”現(xiàn)象的產(chǎn)生以及過濾噪聲缺失詞從而獲得高信息量低噪聲的混合詞向量.然后將混合后的詞向量輸入GRU循環(huán)神經(jīng)網(wǎng)絡(luò)層之中用于抽取文本特征信息,通過最大池化層將GRU層所獲得的特征向量抽取最為顯著的上下文特征作為高階特征的一部分.與此同時,將GRU層所獲得的特征向量作為低階膠囊投入膠囊層之中,根據(jù)膠囊網(wǎng)絡(luò)的特性去學(xué)習(xí)獲得文本局部與整體之間的關(guān)聯(lián)特征信息即高階膠囊特征向量,最后將通過最大池化層所獲得的顯著高階上下文特征與高階膠囊特征信息進行拼接獲得文本整體高階特征,將輸出經(jīng)過全連接后計算得到最終的文本分類結(jié)果,該基于混合詞向量的膠囊網(wǎng)絡(luò)模型簡稱為CGMM(Capsule GRU Maxpool Mixed)模型,如圖1所示.
圖1 基于混合詞向量的膠囊網(wǎng)絡(luò)模型Fig.1 CGMM model
在嵌入層中提出一種混合詞向量方法,將兩種詞向量進行混合并且采用兩種策略來減少噪聲詞向量的產(chǎn)生從而獲得語義豐富且少噪聲的高質(zhì)量詞向量.CGMM模型采用Glove詞向量[3]同F(xiàn)asttext詞向量[4]進行詞向量拼接,來增強詞向量的健壯性并且在拼接的過程之中利用Fasttext模型對缺失詞進行處理,通過計算詞典中詞匯與缺失詞的相似度,找到字典之中同缺失詞相似度最大的詞即缺失詞的近義詞進行替換,在Fasttext缺失詞補全方法中采用兩種策略來減少噪聲詞向量從而將缺失的語義進行補充,豐富了詞向量的語義信息,更好地去理解文本語義,從而獲得高信息量的混合詞向量用來提升文本分類效果.
3.2.1 Fasttext計算缺失詞相似度
Fasttext詞向量模型對于每個單詞通過使用不同的向量來進行表示,由于其詞向量預(yù)訓(xùn)練過程中使用到skipgram模型將單詞進行拆分,忽略了單詞的內(nèi)部結(jié)構(gòu)使得每個詞可以由多種不同的分詞組合而成.Bojanowski[4]等人在論文中提出了一個不同的評分函數(shù),如公式(1)所示,以便考慮到子詞信息考慮在內(nèi),每個單詞w都是由多個n字節(jié)片段序列所組成的詞袋,在單詞的開頭和結(jié)尾添加了特殊的邊界符號
假設(shè)有一本n字節(jié)片段字典,其分詞總數(shù)量為g,給定一個詞w,用Gw?{1,…g}來代表在詞w中出現(xiàn)的n字節(jié)片段序列的集合.對于每一個n字節(jié)片段序列獲得其的向量表示,記為Zp,最后將單詞w的所有的n字節(jié)片段序列Zp進行相加求和最后進行求平均得到單詞w的詞向量表示,見公式(2).
(1)
(2)
根據(jù)公式(2)可得知Fasttext詞向量的每個單詞表示中含有子詞、前綴以及后綴的信息.由于Fasttext獨特的詞向量表示方法,一個單詞由它在單詞字典中的索引和它所包含的一組的n字節(jié)片段序列子詞表示,其中也包括了前后綴以及單詞子詞的信息,使得其可以根據(jù)單詞子詞信息通過余弦相似度計算得到與缺失詞之間相對可靠的表示,這便是CGMM模型利用Fasttext詞向量模型進行缺失詞補全的理論依據(jù).
3.2.2 過匹配現(xiàn)象以及簡單詞糾錯策略
根據(jù)Fasttext詞向量中包含的子詞信息對于缺失詞進行相似度計算,能夠為缺失詞找到詞典中詞形相近的單詞并且在一定程度上有拼寫糾錯的能力,但是在實驗當中發(fā)現(xiàn)其糾錯能力是有限的.由于使用到的Fasttext詞向量模型[4]是在維基百科數(shù)據(jù)集中訓(xùn)練出來的300維的詞向量,子詞信息結(jié)構(gòu)豐富,對于字節(jié)長的單詞由于詞向量其中包含著前后綴信息可以較為準確地找到近義詞,然而由于子詞信息過于豐富會造成對于一些簡單詞匯的拼寫錯誤出現(xiàn)“過匹配”問題,如圖2所示.
圖2 Fasttext相似度過匹配問題
Fig.2 Fasttext similarity overmatch problem
由圖2可以看出,因為簡單詞的字節(jié)數(shù)較短難以通過分詞去學(xué)習(xí)其中的有用信息,對于一些簡單詞的拼寫錯誤Fasttext模型的糾錯能力有限,容易過匹配成為一些詞形類似的分詞,如果將這些分詞進行表示為詞向量形式則容易帶入噪聲數(shù)據(jù),這顯然會對模型分類預(yù)測產(chǎn)生影響,所以CGMM模型對于簡單詞匯首先采用單詞糾錯的策略對于詞匯進行處理,然后再使用Fasttext模型進行相似度預(yù)測能夠在一定程度上減少過匹配現(xiàn)象的產(chǎn)生.
arg maxc∈candidatesp(c|w)
(3)
(4)
arg maxc∈candidatesP(c)
(5)
其中P(w)表示外部字典中單詞總數(shù),P(c)表示經(jīng)過簡單詞形還原的詞匯在外部詞典中該詞匯出現(xiàn)的概率,P(w|c)表示在詞典中該單詞正確的概率,由于沒辦法合理評估P(w|c)大小,所以實驗?zāi)J值設(shè)置為1,又因為是在同一本字典中進行查詢所以P(w)相同,因此可以得到公式(5)的結(jié)論即選擇在外部詞典中出現(xiàn)率最高的的單詞作為詞形還原的單詞將不完整的簡單詞匯進行替換.
3.2.3 基于缺詞補全的混合詞向量方法
基于缺詞補全的混合詞向量方法步驟:
步驟1.是否遍歷完所有唯一單詞?是則進入步驟6,否則進入步驟2;
步驟2.該單詞是否存在于Fasttext詞向量中,是則將詞向量前300維填入Fasttext詞向量然后進入步驟3,否則,進入步驟2.1;
步驟2.1.判斷是否該單詞字節(jié)大于8個字節(jié),如果大于8字節(jié)則進入步驟2.2.如果不大于則使用單詞還原策略,并把詞的字節(jié)數(shù)設(shè)置為9防止重復(fù)進入單詞還原決策,將經(jīng)過單詞還原之后的詞進入步驟2.
步驟2.2.根據(jù)公式(2)Fasttext子詞訓(xùn)練特性計算得到與其相似度較高的詞,通過實驗去噪優(yōu)化閾值,提取其中相似度最大詞作為近義詞替換缺失詞,將詞向量前300維補入Fasttext詞向量然后進入步驟3,如果單詞相似度低于優(yōu)化閾值則進入步驟2.3.
步驟2.3.將詞向量600維全部補零返回步驟1.
步驟3.單詞是否存在于Glove詞向量中,是則進入步驟4,否則進入步驟3.1;
步驟3.1.詞向量后300維補零,進入步驟5;
步驟4.詞向量后300維補Glove詞向量,進入步驟5;
步驟5.返回步驟1;
步驟6.詞向量混合部分完成輸出經(jīng)過缺詞補全的混合詞向量.
混合詞向量生成流程圖如圖3所示.
圖3 混合詞向量生成流程圖Fig.3 Mixed word vector generation flow chart
綜上所述,F(xiàn)asttext模型是根據(jù)子詞訓(xùn)練得到的,其中子詞豐富,因此對簡單拼寫錯誤詞容易出現(xiàn)過度匹配成子詞從而帶來噪聲,故采用簡單詞糾錯策略對于簡單詞先進行還原,來減少“過匹配”現(xiàn)象的出現(xiàn);并且采取實驗的方式自適應(yīng)調(diào)整優(yōu)化閾值的策略,將Fasttext模型計算得到缺失詞的最大相似度值進行提取,引入閾值對相似度低于閾值的缺失詞進行過濾從而最終獲得高質(zhì)量低噪聲的詞向量表示.
RNN模型在許多的自然語言任務(wù)中表現(xiàn)出了很強的學(xué)習(xí)能力,它能夠?qū)π蛄袛?shù)據(jù)進行很好建模,充分利用到序列前后的信息,然而傳統(tǒng)的RNN模型在處理長期依賴的問題上在訓(xùn)練過程中會面臨梯度爆炸或者梯度消失的現(xiàn)象,因此許多的優(yōu)化結(jié)構(gòu)被提出,而LSTM(長短期記憶網(wǎng)絡(luò))和GRU門限模型被作為其中兩個經(jīng)典的改進模型被廣泛使用,它們的優(yōu)勢在于在訓(xùn)練的過程之中,可以對之前的信息通過設(shè)置一些門限來決定接受或是遺忘多少信息,并且向后傳遞信息.
zt=σ(Wzxt+Uzht-1)
(6)
rt=σ(Wrxt+Urht-1)
(7)
hc=tanh(Wxt+rtUht-1)
(8)
ht=(1-zt)·ht-1+zt·hc
(9)
圖4 GRU模型Fig.4 GRU model
膠囊網(wǎng)絡(luò)當中的膠囊向量是一組神經(jīng)元,而不是單獨的神經(jīng)元節(jié)點.膠囊層輸入輸出向量表示為特定實體類別的屬性,使用動態(tài)路由算法在訓(xùn)練過程之中通過不斷迭代來調(diào)整子層膠囊向量與父層膠囊向量的關(guān)系強度即權(quán)重cij,子層膠囊向量根據(jù)多次迭代調(diào)整后的權(quán)重通過壓縮函數(shù)共同來決定某父層膠囊向量表示,最后將通過動態(tài)路由得到的所有父層膠囊向量進行拼接來得到最終的高階膠囊向量表示.
(10)
(11)
(12)
(13)
(14)
bij=bij+aij
(15)
將由GRU層所提取得到的特征作為子階膠囊向量輸入到膠囊網(wǎng)絡(luò)層中進行處理.假設(shè)有ns個父層膠囊向量,首先,每一個父層膠囊向量通過上述的動態(tài)路由過程來增加或者減少與低階膠囊向量之間的連接強度,然后將修正之后的耦合系數(shù)通過公式(13)計算得到父層膠囊向量vj,最后將所有父層膠囊向量進行拼接從而得到最終高階膠囊向量表示vc=
(16)
最后將總體高階向量特征vf輸入全連接層,二分類問題使用sigmoid函數(shù),多分類問題使用softmax函數(shù)作為激活函數(shù)進行歸一化處理,最終計算出最后的文本分類結(jié)果.
分別通過在4個常規(guī)文本分類數(shù)據(jù)集中對提出的CGMM模型進行評估,使用準確度作為各模型的評價指標,指在通過二分類以及多分類數(shù)據(jù)集當中進行實驗,來驗證該模型和方法的有效性.
IMDB(Maas et al.,2011)[11]是爛番茄影評的數(shù)據(jù)集,一共有50000條數(shù)據(jù),標簽設(shè)置共有兩類,正面情感和負面情感,其中訓(xùn)練集和測試集都為25000條.
MR(2005)(Pang and Lee,2005)[12]是一個電影評論二分類數(shù)據(jù)集,其中包括5331條積極評論,5331條消極評論.
Subj(Pang and Lee,2004)[13],主觀性二分類評論數(shù)據(jù)集.
AG′s(Conneau et al.,2017)[14]新聞種類分類數(shù)據(jù)集,其中有127600條數(shù)據(jù),一共將新聞文本數(shù)據(jù)分成World、Sport、Business以及Science四類.
表1 各數(shù)據(jù)集詳細情況表Table 1 Details of each dataset
這些數(shù)據(jù)集包含情感分類、觀點分類以及新聞分類等經(jīng)典的文本分類數(shù)據(jù)集,覆蓋了文本二分類以及文本多分類方面的自然語言處理任務(wù).主要數(shù)據(jù)集主要細節(jié)見表1.
模型實驗采用準確率作為度量標準,見公式(17).
(17)
其中predict_correct表示模型預(yù)測正確的文本數(shù)量,test_correct表示模型預(yù)測的文本總數(shù).
表2中的gru_len表示GRU層的隱藏層節(jié)點數(shù)量,Routing膠囊網(wǎng)絡(luò)路由迭代次數(shù),Num_capsule膠囊個數(shù),Dim_capsule膠囊維度.
CGMM模型是在Keras平臺上進行實驗,在預(yù)訓(xùn)練詞向量方面,使用從各網(wǎng)站爬取語料庫中進行預(yù)訓(xùn)練得到的包含220萬詞匯的Glove詞向量[3],以及維基百科中預(yù)訓(xùn)練得到的300維Fasttext詞向量[4]通過提出的混合詞向量方法得到高質(zhì)量的600維詞嵌入表示.采用Adam優(yōu)化方法,學(xué)習(xí)率設(shè)置為0.01,輟學(xué)率設(shè)置為0.25,batch_size為100,以真實類別與預(yù)測類別的交叉熵作為損失函數(shù),以最小化損失函數(shù)來訓(xùn)練整個模型,其余模型超參設(shè)置見表2.
表2 膠囊網(wǎng)絡(luò)中的超參數(shù)設(shè)置Table 2 Hyperparameter settings in the capsule network
將CGMM模型同14個文本分類目前為止相對先進的模型及它們在4個數(shù)據(jù)集上表現(xiàn)最優(yōu)的方法進行比較,采用準確率作為評價指標,來驗證CGMM模型的有效性.
CNN-rand/CNN-static/CNN-non-static(Kim,2014)來自Kim[15]等人提出采用卷積神經(jīng)網(wǎng)絡(luò)進行語義分類,包含論文中涉及的三種改進算法,DSCNN(2015)為Zhang[16]等人提出的一種結(jié)合了CNN和LSTM的混合模型,CL-CNN(2015)Zhang[17]等人提出的基于字符嵌入的卷積神經(jīng)網(wǎng)絡(luò)模型,VDCNN(2017)為Conneau[18]等人提出的一種深層卷積網(wǎng)絡(luò)模型,LSTM/bi-LSTM(2014)是由Cho[19]等人提出的長短期記憶神經(jīng)網(wǎng)絡(luò),Tree-LSTM(2015)為Tai[20]等人提出的樹形長短期記憶網(wǎng)絡(luò)模型,LR-LSTM(2016)為Qian[21]等人提出的通過知識回歸進行正則化處理的模型,capsule-A/capsule-B(2018)為Zhao[22]等人提出的結(jié)合卷積神經(jīng)網(wǎng)絡(luò)與膠囊網(wǎng)絡(luò)的兩種混合膠囊網(wǎng)絡(luò)模型,dynamic/static-routing(2018)為Kim[23]等人提出的膠囊網(wǎng)絡(luò)基于動態(tài)路由和靜態(tài)路由的兩種膠囊網(wǎng)絡(luò)模型.
表3以準確度作為評價指標,其中CGMM-A模型是指不使用詞向量混合方法的CGMM模型,將兩種模型與14種不同的對比模型在各數(shù)據(jù)集上最優(yōu)的方法進行比較,其中最佳實驗結(jié)果用粗體標出.從表3中可以看出CGMM模型在4個常規(guī)文本分類數(shù)據(jù)集中與對比算法相比表現(xiàn)出很好的準確度,尤其在IMDB數(shù)據(jù)集中比最優(yōu)模型提升了2.14%,AG′s數(shù)據(jù)集中提升了0.93%.
表3 不同模型在各數(shù)據(jù)集上的準確度結(jié)果對比表Table 3 Comparison of accuracy results of different models on each dataset
由此證明提出的CGMM模型在文本分類任務(wù)上的能有效地提高文本分類的準確度,并且同傳統(tǒng)的循環(huán)神經(jīng)網(wǎng)絡(luò)和2018年提出的4個膠囊網(wǎng)絡(luò)模型相對比,CGMM模型在4個數(shù)據(jù)集上均有一定的提高,這說明了該混合模型在一定程度上可以更好地彌補單一神經(jīng)模型所缺失的學(xué)習(xí)能力.
表4表示基于Fasttext詞向量在4個文本分類數(shù)據(jù)集中缺失詞的個數(shù)統(tǒng)計,各個數(shù)據(jù)集中經(jīng)過詞去重之后單詞總數(shù)稱為唯一詞總數(shù),缺失率是指缺失詞在唯一詞總數(shù)中的占比.
表4 各個數(shù)據(jù)集缺失詞數(shù)量表Table 4 Number of missing words in each dataset
在4個數(shù)據(jù)集中,使用CGMM-A模型在5種情況之下進行實驗,實驗結(jié)果是通過5次5折檢驗取平均計算得出,通過比較在5種處理情況下的實驗結(jié)果,從而驗證缺失詞補全方法的有效性.表5中Glove_300d_840表示僅使用Glove詞向量作為詞向量映射的情況,Wiki_fasttext表示僅使用Fasttext詞向量作為詞向量映射的情況,Wooovmix表示將Glove詞向量同F(xiàn)asttext詞向量進行混合,Mix_norestore在混合詞向量過程中采用缺失詞補全方法中沒有對于簡單詞進行還原的情況,Mix表示在混合詞向量過程中采用缺失詞補全方法使用優(yōu)化策略的情況,最佳實驗結(jié)果用粗體標出.
表5 詞向量在5種處理情況下準確度對比表Table 5 Comparison of accuracy results of the word vector in 5 cases
對于表5進行分析可以得出,在IMDB數(shù)據(jù)集中經(jīng)過缺失詞補全方法后的詞向量相較于其他情況中的最好結(jié)果提升了0.27%;在MR數(shù)據(jù)集中,盡管Fasttext詞向量在該數(shù)據(jù)集中表現(xiàn)不佳,然而混合之后的詞向量相較于Fasttext詞向量提升了1.8%,與僅用Glove詞向量的結(jié)果相近,可以看出混合詞向量不因單個詞向量訓(xùn)練效果不佳從而帶來不好的效果,體現(xiàn)了混合詞向量的健壯性;在Subj數(shù)據(jù)集中經(jīng)過詞向量混合之后的實驗結(jié)果相較于單獨使用一個詞向量提升了0.4%證明了通過詞向量混合使得詞向量擁有更加豐富的語義信息能更好地理解語義,并通過表4可得知Subj數(shù)據(jù)集中的缺失率僅為1.65%,缺失詞補全方法在該數(shù)據(jù)集當中進行使用大致提升了0.1%,可以看出在缺失率不大的數(shù)據(jù)集中使用該補全方法所能帶來的提升有限;在AG′s數(shù)據(jù)集中,詞向量混合帶來了0.12%的提升,引入缺失詞補全方法再次提升了0.36%,這是由于AG′s數(shù)據(jù)集的缺失率高達55.8%說明該數(shù)據(jù)集中缺失詞的數(shù)量比較大,缺失詞補全方法對于該數(shù)據(jù)集的缺失詞向量進行近義詞詞向量補全的數(shù)量相對比較多,該方法對于缺失詞進行語義補全豐富了原本語義,所以帶來了相較于其他數(shù)據(jù)集更多的提升,相較于不使用缺詞補全方法提升了0.48%,證明了基于缺失詞補全的混合詞向量方法的有效性,并且在缺失詞數(shù)量比較大的數(shù)據(jù)集中該方法會提升會更加明顯.
使用CGMM模型在AG′s數(shù)據(jù)集中進行文本分類實驗,在其中對于CGMM模型的閾值進行自適應(yīng)優(yōu)化,將閾值范圍設(shè)置為[0.7-0.9]之間,閾值初始化設(shè)為0.7,以0.05作為一個跨度,通過5折交叉驗證對模型進行多次試驗,根據(jù)實驗準確度結(jié)果反饋來調(diào)整閾值,并將實驗準確度最高的閾值作為優(yōu)化閾值,最佳實驗結(jié)果用粗體標出,如表6所示,其中閾值為0表示不采用閾值調(diào)整策略,閾值為1表示對于缺失詞全部過濾.
表6 基于閾值優(yōu)化的噪聲缺失詞過濾對比表Table 6 Noise-missing word filtering based on threshold optimization
由表6可以看出,當閾值設(shè)置為0.7時準確度為93.43%其中缺詞填補率為75.20%,而當閾值設(shè)為0.8時相較于閾值設(shè)置為0.7準確率提升0.1%其中缺詞填補率降低到30.17%,可以看出并不是補充越多的缺失詞向量越好,在數(shù)據(jù)集中的缺失詞并不是全部都是有必要的,其中可能是因為數(shù)據(jù)采集時出現(xiàn)的特殊符號也可能是由于分詞處理之后出現(xiàn)的片段字母串,這些缺失詞本身就無意義,如果對于所有的缺失詞進行引入顯然是不合理的.
圖5 基于閾值優(yōu)化的噪聲 缺失詞過濾方法Fig.5 Noise-missing word filtering method based on threshold optimization
引入閾值過大會導(dǎo)致絕大部分的缺失詞的詞向量得不到補充從而無法學(xué)習(xí)缺失詞中的語義信息,閾值過小會導(dǎo)致部分Fasttext模型也無法很好分辨的缺失詞被引入,給文本分類判別帶來過多的噪聲詞向量從而影響分類效果.通過閾值自適應(yīng)調(diào)整選擇適當閾值的策略將Fasttext模型所預(yù)測出的缺失詞最大相似度進行提取,將低于閾值的缺失詞進行剔除采用統(tǒng)一詞向量進行表示,由圖5可知當閾值設(shè)置為0.8時文本分類的準確度最高,所以以0.8作為優(yōu)化閾值進行過濾能達到引入缺失詞近似向量的同時減少噪聲詞向量的效果.通過實驗可得知,采用自適應(yīng)調(diào)整閾值的策略與未使用閾值自適應(yīng)調(diào)整策略相比提升了0.3%的文本分類準確度,與將缺失詞全部過濾的情況相比提升了0.36%,證明了該策略方法能有效地對噪聲詞向量進行過濾,獲得高質(zhì)量詞向量從而更好地進行文本分類任務(wù).
本文提出了一種基于混合詞向量的膠囊網(wǎng)絡(luò)模型應(yīng)用在文本分類任務(wù)之中,并在包含文本二分類以及多分類任務(wù)的數(shù)據(jù)集中對模型進行評估.通過與目前為止相較流行多種模型的最優(yōu)方法進行對比實驗,表明了提出的混合膠囊網(wǎng)絡(luò)模型在考慮到了上下文的語義信息的同時通過膠囊網(wǎng)絡(luò)去學(xué)習(xí)到了局部與整體之間的關(guān)系深入理解文本的位置信息,從而更加地豐富了語義信息,優(yōu)化了特征提取過程之中信息大量丟失的問題,并且提出了一種基于Fasttext詞向量模型缺失詞補全的混合詞向量方法,采用兩種策略防止“過匹配”現(xiàn)象的產(chǎn)生、降低了噪聲詞向量的引入從而得到高質(zhì)量的單詞表示向量,并通過實驗證明了其的有效性.
在未來的研究工作中,針對上述詞向量混合方法進行改進,本實驗缺失詞的補全過于依賴Fasttext詞向量的訓(xùn)練質(zhì)量,在今后的研究中會對于混合方法進行優(yōu)化改進,并且研究更多關(guān)于膠囊網(wǎng)絡(luò)的模型,使本文中的混合膠囊網(wǎng)絡(luò)模型能夠在文本分類中獲得更好的表現(xiàn),并且考慮將其應(yīng)用在不同的場景之中,擴展其應(yīng)用范圍.