江結(jié)林,朱永偉,許小龍,崔 燕,趙英男
1.南京信息工程大學(xué)軟件學(xué)院,南京 210044
2.南京信息工程大學(xué)江蘇省大氣環(huán)境與裝備技術(shù)協(xié)同創(chuàng)新中心,南京 210044
3.南京特殊教育師范學(xué)院數(shù)學(xué)與信息科學(xué)學(xué)院,南京 210038
4.南京信息工程大學(xué)計(jì)算機(jī)學(xué)院、網(wǎng)絡(luò)空間安全學(xué)院,南京 210044
文本分類(lèi)是自然語(yǔ)言處理中一項(xiàng)基礎(chǔ)任務(wù),旨在為句子、段落和文檔等文本單元分配標(biāo)簽或者標(biāo)記[1-2],被廣泛應(yīng)用于情緒分析、新聞分類(lèi)、用戶(hù)意圖分類(lèi)和內(nèi)容審核等任務(wù),對(duì)獲取和管理文本信息發(fā)揮著重要作用。相較于長(zhǎng)文本,短文本數(shù)據(jù)存在上下文信息短缺和語(yǔ)句歧義多等特點(diǎn)。因此,實(shí)現(xiàn)精準(zhǔn)的短文本分類(lèi)是一項(xiàng)具有挑戰(zhàn)性的任務(wù)。傳統(tǒng)人工文本分類(lèi)不僅耗時(shí),而且效率低下。隨著卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)等深度學(xué)習(xí)方法的快速發(fā)展,基于深度學(xué)習(xí)的文本分類(lèi)方法已取得優(yōu)異的分類(lèi)效果[3]。
基于深度學(xué)習(xí)的文本分類(lèi)方法可劃分為基于詞級(jí)模型、基于字符級(jí)模型和基于字詞混合級(jí)模型?;谠~級(jí)模型側(cè)重利用詞級(jí)特征來(lái)精準(zhǔn)表達(dá)語(yǔ)句含義[4-6]。英文文本由于擁有空格作為單詞之間的分隔符,使得詞級(jí)模型在英文文本分類(lèi)方面表現(xiàn)出優(yōu)異效果;對(duì)中文文本而言,由于中文文本不包含類(lèi)似分割符,因此基于詞級(jí)模型需具備優(yōu)秀的分詞能力,否則會(huì)導(dǎo)致錯(cuò)誤的分類(lèi)結(jié)果。基于字符級(jí)模型以字符為主要特征從而避免分詞問(wèn)題[7-8],同時(shí)還可解決分詞結(jié)果過(guò)多所導(dǎo)致的不良影響。但是,由于中文字符含義較多,基于字符級(jí)模型可能無(wú)法準(zhǔn)確表達(dá)語(yǔ)句含義。
近年來(lái),基于字詞混合級(jí)模型已被證明是一種有效方式,并被廣泛應(yīng)用于自然語(yǔ)言處理,如中文問(wèn)題回答[9]、文本分類(lèi)[10]等。Tao 等[11]提出radical-aware attentionbased four-granularity(RAFG)模型,其聯(lián)合字符、單詞、字符級(jí)詞根和詞級(jí)詞根四種特征實(shí)現(xiàn)文本分類(lèi)。此外,RAFG 采用序列化的雙向長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)和注意力機(jī)制來(lái)捕獲和整合特征。Hao 等[12]提出mutualattention convolutional neural network(MACNN),通過(guò)單詞和字符特征生成兩個(gè)具有兩級(jí)特征的對(duì)齊信息矩陣,同時(shí)使用卷積神經(jīng)網(wǎng)絡(luò)生成集成特征,提高中文短文本的分類(lèi)性能。然而,由于中文字符存在一詞多義情況,這些基于字詞混合級(jí)模型并沒(méi)有解決字符級(jí)特征表示不準(zhǔn)確的問(wèn)題。因此,為進(jìn)一步提高中文短文本分類(lèi)的性能,本文提出一種混合特征及多頭注意力(hybrid features and multi-head attention,HF-MHA)的中文短文本分類(lèi)方法。HF-MHA 不僅利用預(yù)訓(xùn)練模型ERNIE有效解決了字詞混合模型中的一詞多義問(wèn)題,從而獲得了更準(zhǔn)確的文本特征表示,而且結(jié)合了多頭注意力機(jī)制和卷積神經(jīng)網(wǎng)絡(luò),來(lái)提取文本的全局信息和局部信息。在三個(gè)中文短文本數(shù)據(jù)集上的實(shí)驗(yàn)表明,HF-MHA具有良好的分類(lèi)效果。本文具體貢獻(xiàn)如下:
(1)提出基于字詞混合網(wǎng)絡(luò)架構(gòu)HF-MHA。利用預(yù)訓(xùn)練模型ERNIE 計(jì)算字符級(jí)特征向量,可有效解決中文字詞中存在的一詞多義情況。
(2)利用卷積神經(jīng)網(wǎng)絡(luò)結(jié)合注意力機(jī)制,可以更好地融合文本全局和局部特征信息。
(3)在三個(gè)公共數(shù)據(jù)集上的大量實(shí)驗(yàn)結(jié)果表明,本文提出的HF-MHA實(shí)現(xiàn)了良好的分類(lèi)效果。
目前,文本分類(lèi)方法主要分為傳統(tǒng)的機(jī)器學(xué)習(xí)方法和深度學(xué)習(xí)方法。典型的傳統(tǒng)機(jī)器學(xué)習(xí)方法包括term frequency-inverse document frequency[13]、K-nearest neighbors[14]和Naive Bayesian model[15]。這類(lèi)方法高度依賴(lài)手工定義,存在難以推廣和不能有效利用大量訓(xùn)練數(shù)據(jù)等缺陷。近年來(lái),深度學(xué)習(xí)得到了快速發(fā)展,并在文本分類(lèi)領(lǐng)域取得優(yōu)異效果。下面將介紹文本分類(lèi)任務(wù)中特征提取和文本表示方面的工作。
在特征提取方面,深度學(xué)習(xí)方法采用非線(xiàn)性激活的神經(jīng)網(wǎng)絡(luò)來(lái)處理大量輸入數(shù)據(jù),避免了繁重和耗時(shí)的特征工程。其中,循環(huán)神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)被廣泛應(yīng)用于文本分類(lèi)領(lǐng)域。Kim 等[16]首次將CNN 應(yīng)用于文本分類(lèi)任務(wù),提出text convolutional neural network(TextCNN)。TextCNN 利用不同大小卷積核提取文本局部靜態(tài)特征,能夠有效提取文本局部信息。在TextCNN架構(gòu)基礎(chǔ)上,Liu 等[17]提出一種新的CNN 模型。首先,采用動(dòng)態(tài)最大池化捕捉文本更豐富的信息。其次,為了進(jìn)一步提高分類(lèi)精度,在池化層后增加一層隱藏的瓶頸層。Johnson 等[18]提出基于詞級(jí)的deep pyramid convolutional neural networks,該模型通過(guò)堆疊卷積層和最大池化層,使模型能夠捕獲文本中長(zhǎng)距離依賴(lài)關(guān)系。然而,卷積操作不能考慮序列的文本位置信息。RNN雖能在提取文本上下文信息的同時(shí)考慮文本位置信息,但在訓(xùn)練過(guò)程中存在梯度爆炸問(wèn)題,會(huì)嚴(yán)重影響實(shí)驗(yàn)結(jié)果。
近些年,注意力機(jī)制在文本分類(lèi)領(lǐng)域被廣泛應(yīng)用。Shen 等[19]提出定向自注意力網(wǎng)絡(luò),該網(wǎng)絡(luò)在沒(méi)有使用CNN 和RNN 結(jié)構(gòu)的情況下,僅使用注意力機(jī)制便取得不錯(cuò)的實(shí)驗(yàn)效果。Jang等[20]結(jié)合CNN和注意力機(jī)制,利用注意力機(jī)制計(jì)算出與文本語(yǔ)義更高相關(guān)性的詞權(quán)重后,通過(guò)CNN進(jìn)一步提取語(yǔ)義特征。Zhang等[21]提出一種coordinated CNN-LSTM-attention(CCLA)模型。該模型首先使用CCLA學(xué)習(xí)文本序列表示,然后通過(guò)分類(lèi)器獲取文本中的情感傾向。Liu等[22]提出基于注意力機(jī)制的attention-based multichannel convolutional neural network(AMCNN),AMCNN先將單詞信息轉(zhuǎn)化為高維表示,接著利用向量注意力得到多通道表示,可以有效豐富語(yǔ)句語(yǔ)義。
在文本表示方面,Mikolov等[23-24]提出靜態(tài)詞向量表示模型word2vec,該模型不同于以往高維稀疏的one-hot向量,可以將文本序列映射為低維稠密的向量,同時(shí)還能考慮到序列所在文本的上下文語(yǔ)義信息。近些年,預(yù)訓(xùn)練模型也在文本表示上取得了不錯(cuò)的效果。Devlin等[25]提出基于Transformer的預(yù)訓(xùn)練模型BERT。該模型訓(xùn)練任務(wù)分為兩步,第一步利用大規(guī)模語(yǔ)料庫(kù)進(jìn)行無(wú)監(jiān)督預(yù)訓(xùn)練;第二步對(duì)模型進(jìn)行微調(diào)從而適應(yīng)不同的NLP任務(wù)。Zhang等[26]在BERT基礎(chǔ)上提出enhanced language representation with informative entities(ERNIE)。ERNIE改進(jìn)了掩碼語(yǔ)義模型,利用全局信息來(lái)預(yù)測(cè)掩碼部分內(nèi)容,同時(shí)利用知識(shí)圖譜中信息實(shí)體,使模型能夠更好學(xué)習(xí)完整的語(yǔ)義表示。Sun 等[27]提出可持續(xù)學(xué)習(xí)的ERNIE2.0。該模型利用大量語(yǔ)料模型進(jìn)行無(wú)監(jiān)督訓(xùn)練任務(wù),然后利用預(yù)訓(xùn)練任務(wù)持續(xù)更新模型,進(jìn)一步提高模型的語(yǔ)言表征能力。
傳統(tǒng)的字詞混合模型雖具有良好的特征表達(dá)能力,但其中字符級(jí)特征未能考慮到中文字符一詞多義情況。因此,本文提出一種混合特征及多頭注意力(HFMHA)的中文短文本分類(lèi)方法,從而實(shí)現(xiàn)中文短文本的分類(lèi)任務(wù)。如圖1 所示,HF-MHA 包括四層,分別為輸入層、編碼層、特征層和輸出層,其具體細(xì)節(jié)如下。
圖1 模型架構(gòu)Fig.1 Model architecture
輸入層主要解決文本的序列劃分問(wèn)題。考慮一個(gè)中文句子S,它被劃分為兩個(gè)不同的序列:詞級(jí)Sword={w1,w2,…,wn} 和字符級(jí)Schar={c1,c2,…,ct} 。其中n和t分別為句子按照詞和字所劃分所得到的序列長(zhǎng)度。為更好說(shuō)明序列劃分問(wèn)題,以“今天我們吃西瓜”為例,圖2給出了中文文本的詞級(jí)序列和字符級(jí)序列劃分結(jié)果。
圖2 文本序列劃分Fig.2 Text sequence division
編碼層的主要功能是將來(lái)自輸入層的文本序列在一個(gè)連續(xù)的空間中進(jìn)行表示。它接收兩級(jí)特征(即Sword和Schar),通過(guò)預(yù)訓(xùn)練模型輸出兩個(gè)嵌入矩陣,即字向量表示和詞向量表示。
2.2.1 字向量表示
傳統(tǒng)的語(yǔ)言表征方法是靜態(tài)的,無(wú)法解決中文文本中一詞多義的問(wèn)題。因此,本文采用ERNIE 完成對(duì)文本的字符級(jí)向量表示,將傳統(tǒng)的靜態(tài)表征方法優(yōu)化為動(dòng)態(tài)表征方法。ERNIE 在BERT 基礎(chǔ)上改進(jìn)了掩碼策略,同時(shí)引入知識(shí)圖譜的增強(qiáng)語(yǔ)言表示模型,可以更準(zhǔn)確地完成中文字符向量化表示。ERNIE模型采用多層Transformer 模塊,并使用雙向Transformer 結(jié)構(gòu)進(jìn)行文本向量化表示。首先將文本序列Schar輸入多頭自注意力層中以獲取上下文信息。然后,將上下文信息輸入Add&Normalize層進(jìn)行殘差連接和規(guī)范化操作,再通過(guò)前饋神經(jīng)網(wǎng)絡(luò)線(xiàn)性變化處理。重復(fù)上一步驟后,結(jié)合知識(shí)外部實(shí)體信息和掩蔽策略的先驗(yàn)語(yǔ)義信息,得到動(dòng)態(tài)詞向量表示。通過(guò)訓(xùn)練得到的向量表示,編碼層將字符級(jí)文本序列Schar轉(zhuǎn)化為字符級(jí)向量。
2.2.2 詞向量表示
本文采用常用的word2vec 模型計(jì)算短文本的詞級(jí)向量。word2vec是一種訓(xùn)練靜態(tài)詞向量的模型,可以將高維的、稀疏的one-hot向量映射為低維的、稠密的詞向量。word2vec 具有兩種訓(xùn)練模式[28],分別為CBOW 和Skip-gram。由于Skip-gram 在生僻詞學(xué)習(xí)效果強(qiáng)于CBOW,所以Skip-gram的準(zhǔn)確性更高。因此,本文使用Skip-gram 模式訓(xùn)練詞向量。通過(guò)訓(xùn)練得到的詞向量,將輸入文本序列Sword轉(zhuǎn)化為詞級(jí)向量,。
特征層旨在通過(guò)將上下文詞級(jí)特征和字符級(jí)特征結(jié)合在一起,生成輸入文本S的綜合特征表示。由于詞級(jí)和字符級(jí)嵌入矩陣位于兩個(gè)相互獨(dú)立的空間,沿著時(shí)間序列直接融合特征會(huì)損害文本表示信息,因此本文采用兩個(gè)獨(dú)立的特征層分別提取字符級(jí)和詞級(jí)文本特征。特征層由注意力層和卷積層組成,具體細(xì)節(jié)如下。
注意力層:為整合特征時(shí)凸顯出與文本語(yǔ)義高相關(guān)性的特征,并增強(qiáng)其權(quán)重。本文采用Transformer[28]中多頭注意力編碼器捕獲全文上下文信息。多頭注意力即使用多個(gè)注意力進(jìn)行計(jì)算,然后將每個(gè)注意力結(jié)果拼接,以獲得不同層面語(yǔ)義信息,計(jì)算如公式(1)所示:
其中,Q、K、V為加權(quán)矩陣,dk表向量的維度,softmax函數(shù)對(duì)輸出結(jié)果行歸一化。
接下來(lái),結(jié)合每個(gè)自注意力輸出,得到多頭注意力輸出,計(jì)算如公式(2)所示:
其中,y為自注意力總數(shù),WT為對(duì)拼接結(jié)果進(jìn)行轉(zhuǎn)換維度的矩陣。
卷積層:為防止在注意力層中的語(yǔ)義信息丟失,將字符級(jí)向量和詞級(jí)向量進(jìn)一步提取得到的特征與編碼層中文本嵌入矩陣分別疊成兩個(gè)二維張量。與帶有三個(gè)通道的圖片類(lèi)似,這些堆疊特征張量可以視為帶有兩個(gè)通道的圖像。將特征堆疊為二維張量后,卷積層可從多通道特征向量中提取不同維度的特征信息。
卷積層由CNN、relu 函數(shù)和一維最大池化組成,其結(jié)構(gòu)如圖3所示。它具有強(qiáng)大的局部特征提取能力,可以捕獲重要的短語(yǔ)特征。并且此卷積層使用多個(gè)卷積核來(lái)進(jìn)行特征映射,相比單個(gè)卷積核可提取更多的特征信息。在卷積神經(jīng)網(wǎng)絡(luò)中,一個(gè)子特征ci由一個(gè)濾波器w和一個(gè)特征窗口zi:i+k-1計(jì)算得到,如公式(3)所示:
圖3 卷積層結(jié)構(gòu)圖Fig.3 Structure diagram of convolution layer
其中,b是偏置項(xiàng),f為relu 函數(shù)。該濾波器作用于特征表示z={zl,z2,…,zl-k+1},得到特征向量:
其中,k為步維長(zhǎng)度,l為文本序列長(zhǎng)度。在雙通道架構(gòu)中,濾波器作用于每個(gè)通道。并且在計(jì)算出ci后將其輸入到池化層。池化層的作用是在保存主要特征的情況下,減少模型參數(shù)和降低模型過(guò)擬合風(fēng)險(xiǎn)。
此外,本文使用j種卷積核,并且每種卷積核個(gè)數(shù)為m。每種卷積核得到的輸出結(jié)果為Hi(1 ≤i≤j),其計(jì)算公式如(5)所示:
其中,max為一維池化操作,concat為拼接操作。
通過(guò)特征層,分別獲得基于詞級(jí)的特征向量Vw和基于字符級(jí)的特征向量Vc后,對(duì)兩個(gè)特征向量進(jìn)行拼接,得到融合的特征向量V,即是輸入文本的最終表示。然后,將V輸入到全連接神經(jīng)網(wǎng)絡(luò)中,得到輸出向量O∈RK(K為類(lèi)別數(shù)量),如公式(6)所示:
其中,Wf為全連接網(wǎng)絡(luò)的權(quán)重矩陣,sigmoid為非線(xiàn)性激活函數(shù)。最后,通過(guò)softmax將O中的值映射為條件概率S,條件概率中概率最高的類(lèi)別即為預(yù)測(cè)類(lèi)別。其中,S的計(jì)算如公式(7)所示:
本章將先介紹實(shí)驗(yàn)中所使用的數(shù)據(jù)集、實(shí)驗(yàn)環(huán)境與參數(shù)設(shè)置和基線(xiàn)方法。然后,給出HF-MHA 和基線(xiàn)方法在三個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)評(píng)估,最后給出HF-MHA 的消融實(shí)驗(yàn)分析。
實(shí)驗(yàn)針對(duì)三個(gè)中文短文本數(shù)據(jù)集進(jìn)行分類(lèi)任務(wù):搜狗新聞數(shù)據(jù)集(Sogou News)、中文期刊論文數(shù)據(jù)集(CLS)、頭條新聞數(shù)據(jù)集(Toutiao News)。數(shù)據(jù)集的匯總統(tǒng)計(jì)如表1所示。
表1 數(shù)據(jù)集Table 1 Data set
CLS:此數(shù)據(jù)集為包含文章標(biāo)題的中文期刊論文數(shù)據(jù)集[29]。隨機(jī)選擇40 000 個(gè)樣本進(jìn)行訓(xùn)練、5 000 個(gè)樣本用于驗(yàn)證和5 000個(gè)樣本用于測(cè)試。從每個(gè)樣本中截取了前32個(gè)字符(包含標(biāo)點(diǎn)符號(hào))組成一個(gè)新的數(shù)據(jù)集。
Sogou News:此數(shù)據(jù)集為包含標(biāo)題的社會(huì)新聞數(shù)據(jù)集,包含10 000個(gè)樣本用于訓(xùn)練,1 000個(gè)樣本用于驗(yàn)證,1 000 個(gè)樣本用于測(cè)試。從每個(gè)樣本中截取了前32個(gè)字符(包含標(biāo)點(diǎn)符號(hào))組成了一個(gè)新的數(shù)據(jù)集。
Toutiao News:此數(shù)據(jù)集分為15類(lèi),保留了200 000個(gè)樣本用于訓(xùn)練,10 000 個(gè)樣本用于驗(yàn)證,10 000 個(gè)樣本用于測(cè)試。從每個(gè)樣本中截取前36 個(gè)字符(包含標(biāo)點(diǎn)字符)作為一個(gè)新的數(shù)據(jù)集。
本文實(shí)驗(yàn)是在Python 3.7 和Pytorch 1.8.0 中進(jìn)行,使用Intel?Core i5-10600KF CPU和Nvidia RTX 3050Ti。
實(shí)驗(yàn)?zāi)P偷闹饕獏?shù)設(shè)置如表2 所示。在Sogou News和CLS數(shù)據(jù)集上,padding size設(shè)置為32;在Toutiao News數(shù)據(jù)集上,padding size設(shè)置為36。同時(shí)為避免模型過(guò)擬合和計(jì)算資源的無(wú)效消耗,當(dāng)模型經(jīng)過(guò)1 000 個(gè)batch 后訓(xùn)練效果無(wú)提升時(shí),提前結(jié)束模型的訓(xùn)練過(guò)程。此外,本文使用word2vec模型訓(xùn)練詞向量時(shí),詞向量的維度為300,訓(xùn)練的窗口大小為5,詞頻的閾值為5,訓(xùn)練迭代次數(shù)為5。
表2 實(shí)驗(yàn)的主要參數(shù)配置Table 2 Main parameter configuration of experiment
為驗(yàn)證HF-MHA 在中文短文本分類(lèi)中的有效性,本文將HF-MHA與以下方法進(jìn)行比較,詳情如下:
TextRNN[30]:分別將單詞、字符和字詞混合輸入到word2vec 得到文本特征,并應(yīng)用TextRNN 作為分類(lèi)器。TextRNN 分別使用前向LSTM 模塊和后向LSTM 模塊獲得前向和后向隱藏向量的和,最后將兩者拼接送入softmax層得到分類(lèi)結(jié)果。
RCNN[31]:分別將單詞、字符和字詞混合輸入到word2vec得到文本特征,并應(yīng)用RCNN為分類(lèi)器。RCNN為兩層網(wǎng)絡(luò)組成的混合網(wǎng)絡(luò)模型。其中,第一層應(yīng)用RNN 學(xué)習(xí)帶有詞嵌入的文本表示,第二層應(yīng)用CNN 和最大池化提取最明顯特征。
ERNIE[32]:ERNIE設(shè)計(jì)了一個(gè)新的連續(xù)多范式統(tǒng)一預(yù)訓(xùn)練框架,并利用特定的自注意力碼來(lái)控制預(yù)測(cè)條件的內(nèi)容。
Attention+CNN:以ERNIE 和word2vec 輸出為文本特征,并應(yīng)用注意力機(jī)制和CNN為分類(lèi)器。
由于準(zhǔn)確率在數(shù)據(jù)集不平衡或不規(guī)則時(shí),不能準(zhǔn)確評(píng)價(jià)模型。實(shí)驗(yàn)采用F1 值作為性能評(píng)價(jià)指標(biāo),并以精確率和召回率作參考。F1 計(jì)算公式如式(8)所示:
其中,Precision(P)表示精確率,Recall(R)表示召回率。
為評(píng)估HF-MHA 的有效性,分別在三個(gè)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)。以精確率、召回率和F1 作為評(píng)價(jià)指標(biāo),實(shí)驗(yàn)結(jié)果如表3、表4和表5所示,可以注意到本文提出的模型HF-MHA相比其他方法獲得了更高的性能。為了找到內(nèi)部原因,對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行了如下詳細(xì)分析。
表3 在CLS數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Table 3 Experimental results on CLS dataset單位:%
表4 在Sogou News數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Table 4 Experimental results on Sogou News dataset單位:%
表5 在Toutiao News數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Table 5 Experimental results on Toutiao News dataset單位:%
表3、表4和表5中通過(guò)比較TextRNN_w、TextRNN_c和TextRNN_wc在三個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果,可以發(fā)現(xiàn)TextRNN_wc的分類(lèi)性能最好,其次是TextRNN_w。結(jié)果表明具有兩級(jí)特征的TextRNN_wc 擁有更高的F1值。這不僅證明了字符級(jí)特征和詞級(jí)特征可以很好地結(jié)合使用,而且說(shuō)明了字符級(jí)特征和詞級(jí)特征是相互促進(jìn)的。同時(shí),從RCNN_w、RCNN_c 和RCNN_wc 的比較結(jié)果中可以得出相似結(jié)論。
接下來(lái),對(duì)HF-MHA 與ERNIE 的實(shí)驗(yàn)結(jié)果進(jìn)行比較,本文提出的HF-MHA 的性能明顯更好。該結(jié)果證明將動(dòng)態(tài)特征表示模型ERNIE與傳統(tǒng)靜態(tài)特征表示模型word2vec 結(jié)合,對(duì)短文本內(nèi)容進(jìn)行字詞混合特征表示,有助于提高文本分類(lèi)性能。此外,通過(guò)TextRNN_wc、RCNN_wc和HF-MHA的實(shí)驗(yàn)結(jié)果表明,HF-MHA使用動(dòng)態(tài)詞向量來(lái)表示字符級(jí)特征,可以更準(zhǔn)確地表示文本信息,從而能夠有助于短文本特征的表示。
最后,在三個(gè)數(shù)據(jù)集上HF-MHA 比Attention+CNN都擁有更優(yōu)的分類(lèi)性能。Attention+CNN 雖然引入了CNN 和注意力機(jī)制,但未考慮到特征提取過(guò)程中可能會(huì)存在特征信息丟失的情況。而HF-MHA在CNN提取局部關(guān)鍵特征前堆疊文本嵌入矩陣,保留更多的文本信息,可以使模型獲得更高的性能。
雖然上述實(shí)驗(yàn)論證了HF-MHA 具有良好的文本分類(lèi)性能,但為了展現(xiàn)模型各部分功能。在本節(jié)中,將對(duì)HF-MHA進(jìn)行消融實(shí)驗(yàn),以便更好地展示模型各部分的貢獻(xiàn),消融實(shí)驗(yàn)結(jié)果如表6、表7和表8所示。
表6 在CLS數(shù)據(jù)集上的消融實(shí)驗(yàn)結(jié)果Table 6 Results of ablation experiment on CLS dataset單位:%
表7 在Sogou News數(shù)據(jù)集上的消融實(shí)驗(yàn)結(jié)果Table 7 Results of ablation experiment on Sogou News dataset 單位:%
表8 在Toutiao News數(shù)據(jù)集上的消融實(shí)驗(yàn)結(jié)果Table 8 Results of ablation experiment on Toutiao News dataset 單位:%
由于本文提出的模型是結(jié)合詞級(jí)特征和字符級(jí)特征的模型。因此,以HF-MHA-only模型為基線(xiàn),同時(shí),對(duì)HF-MHA-Attention和HF-MHA-CNN兩個(gè)模型進(jìn)行了實(shí)驗(yàn):
(1)HF-MHA-only:沒(méi)有注意力層和卷積層的HFMHA框架,直接拼接兩級(jí)特征的編碼層輸出。
(2)HF-MHA-Attention:沒(méi)有卷積層的HF-MHA 框架,直接拼接兩級(jí)特征的注意力層輸出。
(3)HF-MHA-CNN:沒(méi)有注意力層的HF-MHA 框架,編碼層輸出直接輸入到卷積層后進(jìn)行拼接。
消融實(shí)驗(yàn)結(jié)果正如表6、表7和表8所示。將HF-MHAAttention 與HF-MHA-only 比較,可以看到HF-MHAAttention分類(lèi)性能優(yōu)于HF-MHA-only,此實(shí)驗(yàn)結(jié)果證明注意力層可以凸顯出與文本語(yǔ)義高相關(guān)性的特征,并增強(qiáng)其權(quán)重。再?gòu)腍F-MHA-CNN 和HF-MHA-only 的實(shí)驗(yàn)中可以發(fā)現(xiàn),HF-MHA-CNN 的分類(lèi)性能更高。這也表示卷積層中不同卷積核能夠提取關(guān)鍵短語(yǔ),其有助于文本分類(lèi)。最后對(duì)HF-MHA-Attention、HF-MHA-CNN和HF-MHA 進(jìn)行比較,本文所提出的HF-MHA 在三個(gè)數(shù)據(jù)集上取得了更高的性能。結(jié)果證明在注意力層構(gòu)建更豐富的語(yǔ)義信息的情況下,卷積層能很好地彌補(bǔ)注意力層局部特征提取能力不足,且模型的計(jì)算效率更高。
針對(duì)中文短文本分類(lèi)任務(wù)中存在文本表示和特征難以提取問(wèn)題,本文提出一種混合特征及多頭注意力(HF-MHA)的中文短文本分類(lèi)方法。首先,結(jié)合詞級(jí)特征和字符級(jí)特征,對(duì)短文本數(shù)據(jù)進(jìn)行多層次的特征表示。然后使用注意力層和卷積層分別提取文本全局和局部特征。最后融合兩級(jí)特征并通過(guò)全連接層和softmax層預(yù)測(cè)文本類(lèi)別。在三個(gè)公共數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),并與目前主流的分類(lèi)模型進(jìn)行了比較。實(shí)驗(yàn)結(jié)果表明,與基線(xiàn)模型相比較,HF-MHA具有良好的分類(lèi)性能。
本文提出的HF-MHA 雖然擁有一定的性能,但是也存在一些明顯的不足。模型的參數(shù)量較大,計(jì)算成本較高。下一步工作將在更多數(shù)據(jù)集上驗(yàn)證算法的有效性。同時(shí)考慮到模型不足,對(duì)模型進(jìn)行更細(xì)粒度的研究。