翟一鳴,王斌君,周枝凝,仝 鑫
中國(guó)人民公安大學(xué) 警務(wù)信息工程與網(wǎng)絡(luò)安全學(xué)院,北京100038
隨著互聯(lián)網(wǎng)的迅猛發(fā)展,其上的海量文本信息與日俱增,如何快速有效地對(duì)互聯(lián)網(wǎng)上的文本信息進(jìn)行過(guò)濾、管理、挖掘一直是自然語(yǔ)言處理領(lǐng)域的研究熱點(diǎn)和主攻研究方向,而文本分類是其中的關(guān)鍵技術(shù)。
在早期,文本分類一般選用特征工程與傳統(tǒng)機(jī)器學(xué)習(xí)模型相結(jié)合的技術(shù)路線[1]。如Joachims[2]第一個(gè)提出使用支持向量機(jī)SVM進(jìn)行自動(dòng)文本分類,在當(dāng)時(shí)與其他四種標(biāo)準(zhǔn)方法的比較中取得了最好的結(jié)果。傳統(tǒng)機(jī)器學(xué)習(xí)分類模型主要有SVM[3]、KNN[4]、樸素貝葉斯[5]等,其問(wèn)題是對(duì)文本特征的表達(dá)能力有限,在學(xué)習(xí)的過(guò)程中需要很多人工設(shè)計(jì)的特征進(jìn)行輔助,很難提取到深層次的復(fù)雜文本特征,使得其分類的精度受到限制。
除了分類模型的不足外,傳統(tǒng)文本分類方法中的文本表示也有一定的問(wèn)題,如應(yīng)用廣泛的詞袋模型(Bag of word,Bow)將文本表示為高維且稀疏的One-hot向量,這種做法沒(méi)有考慮到文本中的上下文或詞序信息,且無(wú)法表示出單詞的詞義信息。為優(yōu)化文本表示問(wèn)題,Hinton[6]提出了詞的分布式表示概念,將詞表示為低維的、稠密的連續(xù)實(shí)數(shù)向量。Bengio等人[7]提出使用神經(jīng)網(wǎng)絡(luò)構(gòu)建語(yǔ)言模型,在過(guò)程中將詞的One-hot表示轉(zhuǎn)化為分布式表示。Mikolov等[8-9]提出了基于CBOW架構(gòu)和Skip-gram架構(gòu)的word2vec模型,以進(jìn)行詞向量計(jì)算。這些文本表示方法的研究為深度學(xué)習(xí)技術(shù)在文本分類領(lǐng)域的應(yīng)用奠定了堅(jiān)實(shí)的基礎(chǔ)。
隨著研究的深入,深度學(xué)習(xí)的各類技術(shù)方法開(kāi)始廣泛應(yīng)用。Kim[10]提出了經(jīng)典的TextCNN模型,使用一層卷積和一層最大池化的結(jié)構(gòu)對(duì)文本進(jìn)行特征提取,隨后進(jìn)行分類??笛愕热薣11]提出了textSE-ResNeXt集成模型用于文本情感分類,在其中采用了動(dòng)態(tài)卷積核策略,這樣卷積操作能更好地適應(yīng)輸入文本,更有效地提取文本數(shù)據(jù)特征。張曼等人[12]將全卷積的思想引入到字符級(jí)文本分類任務(wù)中,使用卷積層替換全連接層,且將LRN層添加至卷積池化層后,在加快模型收斂速度的同時(shí)也提高了模型分類的準(zhǔn)確性。以上各類方法都使用CNN對(duì)文本進(jìn)行特征提取,其問(wèn)題是卷積操作受限于卷積窗口的大小,只能夠挖掘文本的局部特征信息,很難提取到文本中的長(zhǎng)期依賴關(guān)系。為有效提取文本中的長(zhǎng)期依賴關(guān)系,各類研究將循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)結(jié)構(gòu),特別是LSTM[13]、BiLSTM[14]、GRU[15]等加入到了文本特征提取中。Zhou等人[16]提出了基于注意力的BiLSTM模型,在BiLSTM的特征提取層與分類層之間加入了注意力層,通過(guò)注意力機(jī)制對(duì)BiLSTM每個(gè)時(shí)刻的輸出進(jìn)行特征提取,以得到最終的文本特征表示?;谧⒁饬Φ腂iLSTM模型能夠在不使用外部信息的情況下自動(dòng)關(guān)注對(duì)文本分類貢獻(xiàn)大的詞語(yǔ),進(jìn)而提取文本重要特征,但其本身結(jié)構(gòu)較為簡(jiǎn)單,進(jìn)行文本分類的準(zhǔn)確率并不是很高。為減少對(duì)人為設(shè)計(jì)特征的依賴以及解決CNN的特征提取受限于卷積窗口的問(wèn)題,Lai等人[17]提出了循環(huán)卷積神經(jīng)網(wǎng)絡(luò)(Recurrent Convolutional Neural Network,RCNN)模型用于文本分類,RCNN使用雙向循環(huán)神經(jīng)網(wǎng)絡(luò)對(duì)文本特征進(jìn)行提取,再將提取到的上下文信息與原本詞向量結(jié)合,生成新的詞表示,以此代替CNN中的卷積結(jié)構(gòu),最后使用最大池化得到文本中最重要的潛在語(yǔ)義信息。RCNN解決了固定窗口的卷積操作使得每一個(gè)詞向量上下文受限的問(wèn)題,新的詞表示盡可能多地包含了上下文信息。但RCNN在池化層使用了最大池化,即在所有新的詞表示中選取了特征值最突出的一個(gè)來(lái)代表整條文本。這種最大池化策略較為單一,不能在訓(xùn)練過(guò)程中根據(jù)任務(wù)情況動(dòng)態(tài)優(yōu)化,只選取了最突出的特征,忽略了其他可能的對(duì)分類也有貢獻(xiàn)的特征。
為解決RCNN存在的問(wèn)題,進(jìn)一步提高文本分類的效果,本文提出一種基于多頭注意力池化的循環(huán)卷積神經(jīng)網(wǎng)絡(luò)(Multi-Head Attention Pooling-based Recurrent Convolutional Neural Network,MHAP-RCNN)模型,主要內(nèi)容如下:
(1)在RCNN模型的基礎(chǔ)上,對(duì)池化層的策略進(jìn)行改進(jìn),不使用最大池化,而是結(jié)合注意力機(jī)制的思想,進(jìn)行注意力池化。在注意力池化的過(guò)程中,根據(jù)新的詞表示對(duì)分類的重要程度,為其分配不同的權(quán)重,重要程度越大,其權(quán)重系數(shù)就越高,再將權(quán)重與其對(duì)應(yīng)新詞表示的特征值加權(quán)求和,得到文本特征表示。使用注意力池化策略可以盡可能多地考慮對(duì)分類貢獻(xiàn)大的各個(gè)特征,且注意力權(quán)重的分布能在訓(xùn)練過(guò)程中進(jìn)行動(dòng)態(tài)優(yōu)化。
(2)在注意力池化的基礎(chǔ)上,引入多頭機(jī)制,進(jìn)行多頭注意力池化。雖然注意力池化策略可以盡可能多地考慮對(duì)分類貢獻(xiàn)大的各個(gè)特征,但其也有一定的側(cè)重點(diǎn),僅進(jìn)行一次注意力池化提取到的文本特征仍有局限性。因此,對(duì)新的詞表示進(jìn)行多次不同映射[18],在其多個(gè)特征表示子空間中分別進(jìn)行注意力池化,最后再將多頭結(jié)果進(jìn)行融合,可使模型更加充分地提取重要特征,提高模型的學(xué)習(xí)能力。
為進(jìn)一步提升文本分類的效果,針對(duì)上文中提到的經(jīng)典RCNN所存在的問(wèn)題,本文提出MHAP-RCNN模型,其總體架構(gòu)如圖1所示。
在MHAP-RCNN模型中,使用word2vec模型預(yù)訓(xùn)練的詞嵌入向量對(duì)文本中的詞進(jìn)行表示。Word2vec模型可以通過(guò)對(duì)大規(guī)模文本數(shù)據(jù)的訓(xùn)練得到低維且稠密的詞向量,這些詞向量能夠表示詞的語(yǔ)義信息。Word2vec模型有CBOW和Skip-gram兩種結(jié)構(gòu),分別如圖2所示。
這兩種結(jié)構(gòu)的組成部分相同,即包括輸入層、映射層和輸出層,不同的是在訓(xùn)練過(guò)程中,CBOW結(jié)構(gòu)使用周圍的詞來(lái)預(yù)測(cè)中間詞,Skip-gram結(jié)構(gòu)則使用中間詞來(lái)預(yù)測(cè)周圍的詞。CBOW結(jié)構(gòu)訓(xùn)練詞嵌入的速度較快,但從表達(dá)語(yǔ)義信息的準(zhǔn)確性方面來(lái)看,Skip-gram模型的效果更好[9],因此本文選用Skip-gram結(jié)構(gòu)的word2vec模型。在訓(xùn)練過(guò)程中,通過(guò)最大化公式(1)中的對(duì)數(shù)似然函數(shù)來(lái)得到所有單詞的詞嵌入。其中,w t+j表示單詞w t的上下文內(nèi)容。
圖1 基于MHAP-RCNN模型的文本分類結(jié)構(gòu)
圖2 CBOW結(jié)構(gòu)和Skip-gram結(jié)構(gòu)
假定一條文本中有N個(gè)詞,該文本可以表示為[w1,w2,…,w N],在經(jīng)過(guò)詞嵌入層后,文本表示轉(zhuǎn)換為E=[e1,e2,…,e N],e i∈Rd,d為詞向量維度。
在詞表示學(xué)習(xí)部分中,采取與經(jīng)典RCNN相同的做法,使用雙向循環(huán)神經(jīng)網(wǎng)絡(luò)獲取詞語(yǔ)的上下文信息,再將該上下文信息與詞向量結(jié)合生成新的詞表示。雙向循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)是正向循環(huán)神經(jīng)網(wǎng)絡(luò)和反向循環(huán)神經(jīng)網(wǎng)絡(luò)的結(jié)合,正向循環(huán)神經(jīng)網(wǎng)絡(luò)的輸入為正常順序的文本,反向循環(huán)神經(jīng)網(wǎng)絡(luò)的輸入則是逆序的文本,兩個(gè)網(wǎng)絡(luò)獨(dú)立進(jìn)行計(jì)算。由于循環(huán)神經(jīng)網(wǎng)絡(luò)能夠?qū)⒁逊治鰞?nèi)容的語(yǔ)義信息存儲(chǔ)下來(lái),因此采用雙向循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)可以較為充分地提取文本中某個(gè)詞的上文信息和下文信息。對(duì)于文本中的某個(gè)詞來(lái)說(shuō),其上文信息就可用上一個(gè)詞輸入正向循環(huán)神經(jīng)網(wǎng)絡(luò)時(shí)該時(shí)刻的輸出來(lái)表示,而其下文信息就可用下一個(gè)單詞輸入反向循環(huán)神經(jīng)網(wǎng)絡(luò)時(shí)該時(shí)刻的輸出來(lái)表示。
e i表示第i個(gè)單詞w i的詞向量,設(shè)l i表示單詞w i的上文,r i表示單詞w i的下文,l i與r i均為維度為c的向量。單詞w i的上文l i和下文r i可分別通過(guò)公式(2)和公式(3)獲得。
其中,l i-1為上一個(gè)單詞w i-1的上文,r i+1為下一個(gè)單詞w i+1的下文;e i-1和e i+1分別為上一個(gè)單詞w i-1和下一個(gè)單詞w i+1的詞向量;W(r),W l∈Rc×c為隱藏層的轉(zhuǎn)換矩陣;W(sl),W(sr)∈Rc×d分別為用于當(dāng)前單詞w i與上一單詞w i-1和下一單詞w i+1進(jìn)行語(yǔ)義信息結(jié)合的矩陣;f為非線性激活函數(shù)。需要注意的是,對(duì)于輸入模型的任意文本,其第一個(gè)單詞w1的上文和最后一個(gè)單詞w N的下文分別使用相同的l1和r N,在本文中使用0填充。
隨后,使用公式(4)得到單詞w i的新的詞表示x i。新的詞表示能夠在一定程度上消除單詞歧義,同時(shí)包含原單詞信息及其上下文信息。
在經(jīng)典RCNN模型中,對(duì)詞表示學(xué)習(xí)部分的結(jié)果進(jìn)行一次tanh函數(shù)激活的非線性轉(zhuǎn)換,再進(jìn)行最大池化,將不同長(zhǎng)度的文本轉(zhuǎn)換為一個(gè)固定長(zhǎng)度的特征向量表示,這樣做是使用特征最突出的一個(gè)新詞表示來(lái)表示整條文本,但最終對(duì)分類有貢獻(xiàn)的文本重要特征可能存在于任意一個(gè)新詞表示中,而不是只存在于特征值最突出的新詞表示中,因此需要考慮每個(gè)新詞表示中的信息對(duì)分類的貢獻(xiàn)。針對(duì)以上問(wèn)題,MHAP-RCNN模型不采取原本的最大池化策略,而是結(jié)合注意力的思想和多頭機(jī)制,進(jìn)行多頭注意力池化。
在經(jīng)過(guò)詞表示學(xué)習(xí)部分后,一條文本的表示變?yōu)閄=[x1,x2,…,x N],x i∈Rd+2c。假設(shè)多頭機(jī)制中的頭數(shù)為H,那么第i頭對(duì)于新文本表示X的映射輸出如公式(5)所示:
對(duì)于每一頭的映射輸出,進(jìn)行一次注意力池化。根據(jù)注意力機(jī)制的思想,注意力池化將會(huì)動(dòng)態(tài)地為每一頭映射輸出中的每個(gè)表示分配一個(gè)權(quán)重,以體現(xiàn)其對(duì)分類結(jié)果的貢獻(xiàn),隨后將每個(gè)表示的特征值與其權(quán)重進(jìn)行加權(quán)求和,并使用tanh函數(shù)激活,得到每一頭的最終輸出。以第i頭為例,處理過(guò)程如公式(6)所示:
其中,u i∈Rk表示第i頭中隨機(jī)初始化的參數(shù)向量,并將會(huì)在整個(gè)學(xué)習(xí)的過(guò)程中進(jìn)行動(dòng)態(tài)更新,每一頭將會(huì)學(xué)習(xí)一個(gè)不同的u。αi∈RN表示第i頭得到的注意力權(quán)重,表示第i頭根據(jù)注意力權(quán)重進(jìn)行加權(quán)求和的結(jié)果,表示第i頭進(jìn)行注意力池化的最終輸出。
由于頭數(shù)為H,將得到H個(gè)注意力池化的輸出對(duì)其進(jìn)行融合,處理過(guò)程如公式(7)所示:
其中,y(5)∈RHk表示對(duì)H個(gè)注意力池化輸出進(jìn)行拼接的結(jié)果,y(6)表示融合的結(jié)果,W(6)∈RHk×o,b(6)∈Ro,o為融合輸出維度。
根據(jù)多頭注意力池化部分得到的結(jié)果對(duì)文本進(jìn)行分類,處理過(guò)程如公式(8)所示:
其中,y(7)為輸入文本的預(yù)測(cè)概率分布,W(7)∈Ro×C,b(7)∈RC,C為分類類別個(gè)數(shù)。
同時(shí),在詞表示學(xué)習(xí)部分的雙向循環(huán)神經(jīng)網(wǎng)絡(luò)中以及多頭注意力池化和分類層之間加入dropout,進(jìn)一步防止過(guò)擬合,提高模型的泛化能力。
為證明所提模型的有效性,本文選取譚松波酒店評(píng)論數(shù)據(jù)集、中文文本分類數(shù)據(jù)集THUCNews的子集和復(fù)旦大學(xué)文本分類語(yǔ)料庫(kù)進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)所用具體數(shù)據(jù)集情況如表1所示。
表1 數(shù)據(jù)集劃分
譚松波酒店評(píng)論數(shù)據(jù)集由中科院計(jì)算所譚松波博士整理收集,原數(shù)據(jù)集包含10 000條數(shù)據(jù),劃分為兩個(gè)類別,其中正向7 000條,負(fù)向3 000條。在對(duì)原始數(shù)據(jù)集進(jìn)行去重和篩選后,本文在每個(gè)類別中選取2 700條數(shù)據(jù),共計(jì)5 400條數(shù)據(jù)進(jìn)行實(shí)驗(yàn)。
中文文本分類數(shù)據(jù)集THUCNews是根據(jù)新浪新聞的歷史數(shù)據(jù)篩選過(guò)濾生成,包含74萬(wàn)篇新聞文檔,共劃分為14個(gè)類別。本文選取其中的12個(gè)類別,每個(gè)類別選取8 000篇文檔,共計(jì)96 000篇文檔進(jìn)行實(shí)驗(yàn)。
復(fù)旦大學(xué)文本分類語(yǔ)料庫(kù)由復(fù)旦大學(xué)李榮路老師整理并提供,共劃分為20個(gè)類別,數(shù)據(jù)集分為訓(xùn)練和測(cè)試兩個(gè)集合,其中訓(xùn)練集包含9 804篇文檔,測(cè)試集包含9 833篇文檔,共計(jì)19 637篇文檔。本文使用數(shù)據(jù)集全集,并采取與文獻(xiàn)[17]相同的做法,將訓(xùn)練集中的10%劃分到驗(yàn)證集當(dāng)中。
針對(duì)三個(gè)分類數(shù)據(jù)集,均采用jieba分詞,實(shí)驗(yàn)過(guò)程中沒(méi)有去除文本中的任何停用詞。
關(guān)于模型中的超參數(shù)設(shè)置。實(shí)驗(yàn)中的詞向量由Skipgram結(jié)構(gòu)的word2vec訓(xùn)練得到,且使用word2vec的默認(rèn)參數(shù),詞向量維度d=50;雙向循環(huán)神經(jīng)網(wǎng)絡(luò)使用雙向LSTM,詞上文及詞下文向量的維度c=50,對(duì)新的詞表示做映射后的維度k=100,頭數(shù)H=10,融合輸出維度o=100;dropout保留率設(shè)置為0.5,隨機(jī)梯度下降的學(xué)習(xí)率設(shè)置為0.01,批處理大小batch_size=128。
為體現(xiàn)模型的有效性,除經(jīng)典RCNN模型外,本文還選取了多個(gè)在文本分類任務(wù)中應(yīng)用廣泛且效果較好的經(jīng)典模型進(jìn)行復(fù)現(xiàn)比較,包括TextCNN[10]、BiLSTM、ATT-BiLSTM[16]。其中,TextCNN選用3、4、5三個(gè)大小的卷積核,卷積核數(shù)目為150;BiLSTM和ATT-BiLSTM中隱層維度選用50,其他主要參數(shù)設(shè)置與2.1節(jié)中的實(shí)驗(yàn)設(shè)置保持一致。同時(shí)設(shè)計(jì)了基于注意力池化的循環(huán)卷積神經(jīng)網(wǎng)絡(luò)(Attention Pooling-based Recurrent Convolutional Neural Network,AP-RCNN)模型,該模型中僅將RCNN中的最大池化改為注意力池化,沒(méi)有使用多頭注意力池化。通過(guò)AP-RCNN與RCNN、MHAP-RCNN之間的的對(duì)比,來(lái)體現(xiàn)進(jìn)行注意力池化和引入多頭機(jī)制對(duì)模型的影響。
本文還引用了在相同數(shù)據(jù)集上已有的工作成果進(jìn)行比較,包括:文獻(xiàn)[19]將文本使用句向量表示,并輸入到BGRU-CNN混合模型中,其模型也是經(jīng)典RCNN模型的一種變體,在THUCNews數(shù)據(jù)集上取得了較好的效果;文獻(xiàn)[20]使用自注意力機(jī)制對(duì)詞向量進(jìn)行處理,提出一種關(guān)鍵詞提取與CNN相結(jié)合的self-attention+cnn文本分類模型,其模型在復(fù)旦數(shù)據(jù)集上取得了較好的效果。
實(shí)驗(yàn)選用測(cè)試集準(zhǔn)確率及Macro-F1值評(píng)估各個(gè)模型的效果,為使實(shí)驗(yàn)結(jié)果更加真實(shí)有效,選取三次重復(fù)實(shí)驗(yàn)結(jié)果的中值作為作為最終結(jié)果,具體對(duì)比結(jié)果如表2所示。
從表2中可以看出,無(wú)論是測(cè)試集準(zhǔn)確率還是Macro-F1值,本文模型MHAP-RCNN在三個(gè)數(shù)據(jù)集上都取得了最好的結(jié)果。重點(diǎn)對(duì)RCNN、AP-RCNN、MHAP-RCNN三個(gè)模型的實(shí)驗(yàn)結(jié)果進(jìn)行分析。對(duì)比RCNN,AP-RCNN在將最大池化改變?yōu)樽⒁饬Τ鼗螅齻€(gè)數(shù)據(jù)集上的測(cè)試集準(zhǔn)確率和F1值都有所提升;對(duì)比AP-RCNN,MHAP-RCNN在引入多頭機(jī)制,進(jìn)行多頭注意力池化后,其性能又有顯著增強(qiáng)。這也驗(yàn)證了前文所述,注意力池化相比最大池化,由于考慮了每個(gè)新的詞表示所包含的信息對(duì)分類的貢獻(xiàn),提取到了更多有助于分類的重要特征,但一次注意力池化仍有局限;多頭注意力池化在不同的特征表示子空間中進(jìn)行多次注意力池化,更加充分地提取了文本重要特征。
表2 各模型實(shí)驗(yàn)結(jié)果 %
從數(shù)據(jù)集類型來(lái)看。酒店評(píng)論數(shù)據(jù)集為二分類數(shù)據(jù)集,THUCNews和復(fù)旦數(shù)據(jù)集為多分類數(shù)據(jù)集。與其他各模型相比,MHAP-RCNN模型在文本二分類和多分類任務(wù)中都表現(xiàn)更優(yōu)。同時(shí)不論是對(duì)各類別訓(xùn)練數(shù)據(jù)量少、整體數(shù)據(jù)規(guī)模較小的酒店評(píng)論和復(fù)旦數(shù)據(jù)集,還是對(duì)各類別訓(xùn)練數(shù)據(jù)量比較充足、整體數(shù)據(jù)規(guī)模較大的THUCNews數(shù)據(jù)集,MHAP-RCNN模型都表現(xiàn)更好。對(duì)于各種類型和規(guī)模的文本分類來(lái)說(shuō),模型分類結(jié)果優(yōu)劣的關(guān)鍵是模型對(duì)文本的特征提取能力,MHAP-RCNN中的多頭注意力池化機(jī)制能夠更加充分、準(zhǔn)確地提取文本重要特征,因此能夠取得更好的文本分類效果。
為更加形象地體現(xiàn)MHAP-RCNN模型的優(yōu)越性,本文對(duì)各模型的訓(xùn)練過(guò)程進(jìn)行了進(jìn)一步探究,結(jié)果如圖3所示。圖3繪制了在復(fù)旦數(shù)據(jù)集中,各個(gè)模型在訓(xùn)練過(guò)程中的驗(yàn)證集準(zhǔn)確率(Valaccuracy)隨訓(xùn)練周期(Epoch)變化的曲線。
圖3 驗(yàn)證集準(zhǔn)確率變化曲線
從圖3中可以直觀地看出,與其他各模型相比,MHAP-RCNN模型收斂速度快,訓(xùn)練過(guò)程穩(wěn)定,整個(gè)曲線相對(duì)平穩(wěn),且準(zhǔn)確率高。與AP-RCNN和RCNN相比,MHAP-RCNN在第一個(gè)Epoch就達(dá)到了較高的準(zhǔn)確率,且在隨后的訓(xùn)練過(guò)程中準(zhǔn)確率一直領(lǐng)先,體現(xiàn)了多頭注意力池化所帶來(lái)的優(yōu)勢(shì)。
在其他參數(shù)保持完全一致的情況下,本文還以不同的頭數(shù)做實(shí)驗(yàn)例證以觀察模型預(yù)測(cè)準(zhǔn)確率的變化,結(jié)果如圖4所示。圖4中繪制了在復(fù)旦數(shù)據(jù)集中,MHAP-RCNN模型的測(cè)試集準(zhǔn)確率(Test accuracy)隨頭數(shù)(Number of heads)變化的曲線。
圖4 頭數(shù)對(duì)測(cè)試集準(zhǔn)確率的影響
從圖4中可以看出,當(dāng)頭數(shù)小于10時(shí),測(cè)試集準(zhǔn)確率隨頭數(shù)的增多而逐漸上升;當(dāng)頭數(shù)等于10時(shí),測(cè)試集準(zhǔn)確率達(dá)到最高;當(dāng)頭數(shù)大于10時(shí),雖然有所波動(dòng),但測(cè)試集準(zhǔn)確率整體呈下降趨勢(shì)。這說(shuō)明對(duì)于復(fù)旦數(shù)據(jù)集,頭數(shù)為10的MHAP-RCNN模型對(duì)文本的特征提取能力最佳,且頭數(shù)并不是越多越好,對(duì)于不同數(shù)據(jù)集,其最佳頭數(shù)可能不同,具體還需根據(jù)數(shù)據(jù)集情況確定。
通過(guò)改變池化層的策略,使用多頭注意力池化,本文提出了MHAP-RCNN模型。在酒店評(píng)論、THUCNnews和復(fù)旦三個(gè)文本分類數(shù)據(jù)集上的實(shí)驗(yàn)驗(yàn)證了MHAPRCNN模型的有效性和優(yōu)越性,實(shí)驗(yàn)結(jié)果表明,本文提出的模型在一定程度上解決了經(jīng)典RCNN模型使用最大池化存在的問(wèn)題,取得了更好的文本分類效果。從模型的實(shí)時(shí)性表現(xiàn)來(lái)看,MHAP-RCNN訓(xùn)練和測(cè)試的耗時(shí)比經(jīng)典RCNN略久一些,但差別較小,這是因?yàn)樽⒁饬Τ鼗枰秒S機(jī)初始化的參數(shù)向量來(lái)得到注意力權(quán)重,同時(shí)還要將注意力權(quán)重和對(duì)應(yīng)新詞表示的特征值加權(quán)求和,與只選擇最突出特征值的最大池化相比計(jì)算量更大。但上述部分都可利用矩陣并行計(jì)算,且多個(gè)注意力頭之間也可以并行計(jì)算,實(shí)際耗費(fèi)時(shí)間較少。但MHAP-RCNN的實(shí)時(shí)性表現(xiàn)與TextCNN相比相差較大,這是因?yàn)樵~表示學(xué)習(xí)部分中的BiLSTM結(jié)構(gòu)相比CNN更加復(fù)雜,且無(wú)法像CNN一樣進(jìn)行并行計(jì)算。下一步的研究將探索把自注意力機(jī)制融入到詞表示學(xué)習(xí)中,減少詞表示學(xué)習(xí)的時(shí)間,進(jìn)一步提升模型的文本分類性能。