張海豐,曾 誠,2,3*,潘 列,郝儒松,溫超東,何 鵬,2,3
(1.湖北大學(xué)計(jì)算機(jī)與信息工程學(xué)院,武漢 430062;2.湖北省軟件工程工程技術(shù)研究中心,武漢 430062;3.智慧政務(wù)與人工智能應(yīng)用湖北省工程研究中心,武漢 430062)
新聞文本分類包括主題分類和內(nèi)容分類,而新聞主題文本分類任務(wù)中,新聞主題文本通常是由一些高度概括新聞內(nèi)容的詞匯組成,由于用詞缺乏規(guī)范、語義模糊,使得現(xiàn)有的文本分類方法表現(xiàn)不佳。新聞主題文本長(zhǎng)度短,在有限長(zhǎng)度的新聞主題文本中提取其完整語義特征進(jìn)行分類挑戰(zhàn)極大。
新聞主題分類屬于自然語言處理(Natural Language Processing,NLP)短文本分類任務(wù),文本分類任務(wù)首先需要對(duì)相關(guān)文本進(jìn)行文本處理,并進(jìn)行文本向量化表示。隨著深度學(xué)習(xí)方法的興起,目前普遍使用的詞嵌入方式有兩種,一種是靜態(tài)的語言模型Word2Vec、GloVe;另一種是預(yù)訓(xùn)練模型BERT(Bidirectional Encoder Representations from Transformers)、XLNet 等動(dòng)態(tài)語言模型。Word2Vec 方法可以較好地體現(xiàn)上下文信息,被大量應(yīng)用于自然語言任務(wù)中。而預(yù)訓(xùn)練模型BERT 的出現(xiàn),解決了靜態(tài)詞向量無法解決的一詞多義問題,在多個(gè)NLP 任務(wù)中表現(xiàn)優(yōu)異。
本文結(jié)合BERT 和特征投影網(wǎng)絡(luò)(Feature Projection network,F(xiàn)Pnet),提出了新聞主題分類方法BERT-FPnet,通過梯度反轉(zhuǎn)網(wǎng)絡(luò)提取共性特征,以特征投影方式,將BERT 模型提取特征進(jìn)行特征投影提純,提取強(qiáng)分類特征,提升新聞主題文本分類效果。
新聞主題分類是指將新聞主題通過NLP 技術(shù)對(duì)新聞文本進(jìn)行特征處理、模型訓(xùn)練、輸出分類。新聞主題分類是當(dāng)前NLP 文本分類的重要研究方向之一,互聯(lián)網(wǎng)發(fā)展至今,每天產(chǎn)生海量新聞,各種新聞?lì)悇e混雜其中,如何更好地對(duì)其分類有著重要研究意義。
文本向量化表示就是用數(shù)值向量來表示文本的語義,對(duì)文本進(jìn)行向量化,構(gòu)建合適的文本表示模型,讓機(jī)器理解文本,是文本分類的核心問題之一。傳統(tǒng)的機(jī)器學(xué)習(xí)中樸素貝葉斯模型不需要將文本向量化表示,它記錄詞語的條件概率值,對(duì)輸入各詞語的條件概率值進(jìn)行計(jì)算即可得到預(yù)測(cè)數(shù)值。但是目前絕大多數(shù)線性分類模型還是需要對(duì)文本進(jìn)行向量化表示,必須輸入一個(gè)數(shù)值向量才能計(jì)算得到預(yù)測(cè)數(shù)值。傳統(tǒng)的特征表示中,使用詞袋表示文本,這種方式容易導(dǎo)致特征出現(xiàn)高維、稀疏問題,不僅影響文本分析的效率和性能,可解釋性也比較差。隨著深度學(xué)習(xí)的發(fā)展,一些優(yōu)秀的神經(jīng)網(wǎng)絡(luò)語言模型被提出,極大地推動(dòng)了NLP 領(lǐng)域的發(fā)展。Mikolov 等提出一種神經(jīng)網(wǎng)絡(luò)概率語言模型Word2Vec,它包括連續(xù)詞袋(Continuous Bag-Of-Words,CBOW)和Skip-Gram 兩種模型訓(xùn)練方法,讓詞向量很好地表達(dá)上下文信息,并提出了負(fù)采樣的方式來減少Softmax 的計(jì)算時(shí)間,但它只考慮了文本的局部信息,未有效利用整體信息。針對(duì)此問題,Pennington 等提出全局詞向量(Global Vectors,GloVe)模型,同時(shí)考慮了文本的局部信息與整體信息。
Word2Vec、GloVe 模型等訓(xùn)練詞向量的方法,得到的詞向量文本特征表示為下游文本分類任務(wù)性能帶來了有效提升,但是它們的本質(zhì)是一種靜態(tài)的預(yù)訓(xùn)練技術(shù),在不同的上下文中,同一詞語具有相同的詞向量,這顯然是不合常理的,它無法解決自然語言中經(jīng)常出現(xiàn)的一詞多義問題,也導(dǎo)致下游分類任務(wù)的性能受到限制。隨著預(yù)訓(xùn)練技術(shù)的發(fā)展,GPT(Generative Pre-Training)、BERT、XLNet 等一些優(yōu)秀的預(yù)訓(xùn)練模型相繼被提出,其中最具代表的BERT預(yù)訓(xùn)練模型,它的動(dòng)態(tài)字向量可以更好地表示文本特征,有效地解決一詞多義問題,并在多個(gè)NLP 任務(wù)上效果顯著,尤其適合新聞主題短文本分類任務(wù)。因此本文利用BERT 模型在短文本處理上的優(yōu)勢(shì),在其基礎(chǔ)上結(jié)合FPnet 進(jìn)行改進(jìn)。
現(xiàn)有的深度學(xué)習(xí)文本分類方法主要包括卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)、注意力機(jī)制以及根據(jù)這些模型的優(yōu)缺點(diǎn)互相融合的組合模型。Kim提出一種文本卷積神經(jīng)網(wǎng)絡(luò)TextCNN,利用多窗口一維CNN 在Word2Vec 詞向量上進(jìn)行特征提取分類,效果卓越;Zhang 等提出了一種字符級(jí)的卷積神經(jīng)網(wǎng)絡(luò)(character-level CNN,char-CNN)分類模型,采用字符級(jí)向量輸入的6 層卷積網(wǎng)絡(luò),并將多卷積層網(wǎng)絡(luò)連接到一個(gè)雙向循環(huán)層在短文本分類上進(jìn)行文本分類。在RNN 的應(yīng)用上,Mikolov 等利用RNN進(jìn)行文本分類,取得了不錯(cuò)的效果。但CNN 不能直接獲得數(shù)據(jù)中的長(zhǎng)期依賴關(guān)系,RNN 在處理文本時(shí)可能會(huì)出現(xiàn)梯度爆炸和消失問題。針對(duì)這些問題,一些組合模型相繼被提出,Lai等針對(duì)可能導(dǎo)致上下文語義缺失的問題,使用RNN 提取上下文語義信息,并融合原有的特征,通過結(jié)合單層池化網(wǎng)絡(luò)提出了一個(gè)循環(huán)卷積神經(jīng)網(wǎng)絡(luò)模型TextRCNN;Xiao 等提出了一個(gè)char-CRNN(character-level Convolutional RNN)模型,用另一種方式將CNN 與雙向長(zhǎng)短期記憶(Bidirectional Long Short-Term Memory,BiLSTM)結(jié)合,先進(jìn)行卷積操作,然后再進(jìn)行RNN 特征提取。
注意力機(jī)制的提出,讓神經(jīng)網(wǎng)絡(luò)模型對(duì)訓(xùn)練文本中的不同語句有不同的關(guān)注度,實(shí)現(xiàn)了更加合理的自然語言建模,越來越多的神經(jīng)網(wǎng)絡(luò)中開始加入注意力機(jī)制。Zhou等提出的TextRNN-Attention 模型結(jié)合雙向RNN 與注意力機(jī)制,在特定任務(wù)上取得了不錯(cuò)的效果。而BERT 模型所基于的Transformer 架構(gòu)更是一種完全基于注意力機(jī)制的模型。
在新聞主題分類任務(wù)上過去一般使用TextCNN 在Word2Vec 訓(xùn)練的字向量上進(jìn)行特征提取,分類效果比詞粒度效果更好,但詞向量也有其價(jià)值。楊春霞等提出了一種字粒度和詞粒度融合的新聞主題分類方法,將字粒度的Word2Vec 向量和詞粒度的Word2Vec 向量進(jìn)行融合。付靜等將詞向量和位置向量作為BERT 的輸入,通過多頭自注意力機(jī)制獲取長(zhǎng)距離依賴關(guān)系,提取全局語義特征;然后利用Word2Vec 模型融合LDA(Linear Discriminant Analysis)主題模型擴(kuò)展短文本的特征表示方法,解決短文本數(shù)據(jù)稀疏和主題信息匱乏的問題。
BERT 模型性能強(qiáng)大,許多優(yōu)秀的模型都是在BERT 模型基礎(chǔ)上進(jìn)行改進(jìn)。Lan 等提出一種基于BERT 的輕量級(jí)預(yù)訓(xùn)練語言模型ALBERT(A Lite BERT),通過嵌入層參數(shù)因式分解減少BERT 參數(shù)量,擴(kuò)展了BERT 模型的可用性。溫超東等結(jié)合ALBERT 與門控循環(huán)單元(Gated Recurrent Unit,GRU)模型在專利文本分類任務(wù)上取得了不錯(cuò)的效果,但模型分類精度相較于BERT 會(huì)有一定程度的下降。Chen等提出了一種半監(jiān)督文本分類方法MixText,使用一種全新文本增強(qiáng)方式TMix,在BERT 編碼層進(jìn)行隱空間插值,生成全新樣本,相較于直接在輸入層進(jìn)行Mixup,TMix 的數(shù)據(jù)增強(qiáng)的空間范圍更加廣闊。Meng 等提出一種不需要任何標(biāo)注數(shù)據(jù),只利用標(biāo)簽進(jìn)行文本分類的方法LOTClass,使用BERT 模型訓(xùn)練標(biāo)簽的類別詞匯,利用BERT 的MLM(Mask Language Model)進(jìn)行標(biāo)簽名稱替換、類別預(yù)測(cè),然后通過自訓(xùn)練加強(qiáng)分類效果,達(dá)到了接近有監(jiān)督學(xué)習(xí)的分類效果。
本文主要研究有監(jiān)督方法對(duì)BERT 模型進(jìn)行改進(jìn)提升。Qin 等在2020 年首次提出一種提升文本分類的特征投影網(wǎng)絡(luò)(FPnet),在多個(gè)文本分類模型上加入FPnet,有效提升了分類模型的文本分類效果。本文在其基礎(chǔ)上以雙BERT模型融合FPnet,提取域共性特征和特性特征,結(jié)合特征投影方法,以端到端的方式采用兩種融合方式進(jìn)行融合。
BERT 模型采用雙向Transformer 編碼器獲取文本的特征表示,模型結(jié)構(gòu)如圖1 所示,將訓(xùn)練文本以字符級(jí)別輸入到多層雙向Transformer 編碼器中進(jìn)行訓(xùn)練,輸出文本字符級(jí)特征。
圖1 BERT模型結(jié)構(gòu)Fig.1 BERT model structure
在預(yù)訓(xùn)練階段,BERT 模型通過MLM 任務(wù)結(jié)合Transformer 架構(gòu)注意力機(jī)制本身全局可視性,增加了BERT模型的信息獲取,且隨機(jī)掩碼使得BERT 模型不能獲得全量信息,避免過擬合。通過NSP(Next Sentence Prediction)任務(wù)讓模型更好地理解句子之間的聯(lián)系,從而使預(yù)訓(xùn)練模型更好地適應(yīng)下游任務(wù)。因此,BERT 模型具有強(qiáng)大的文本語義理解能力,在文本分類任務(wù)上效果顯著。
FPnet 是一種強(qiáng)化文本分類效果的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。主要利用梯度反轉(zhuǎn)網(wǎng)絡(luò)來實(shí)現(xiàn),使用梯度反向?qū)樱℅radient Reversal Layer,GRL)提取多個(gè)類的共性特征。Ganin等詳細(xì)介紹了GRL 的實(shí)現(xiàn)原理,并將其用于領(lǐng)域自適應(yīng)(Domain Adaptation)中提取共性特征。它將領(lǐng)域自適應(yīng)嵌入到學(xué)習(xí)表示的過程中,以便最終分類決策對(duì)于域的改變?nèi)阅芴崛〉讲蛔兲卣?。FPnet 利用GRL 的這一特點(diǎn)來提取共性特征,并采用類似對(duì)抗學(xué)習(xí)方法通過特征投影改進(jìn)表示學(xué)習(xí)。
如圖2 所示,F(xiàn)Pnet 由兩個(gè)子網(wǎng)絡(luò)組成:右邊為共性特征學(xué)習(xí)網(wǎng)絡(luò)(Common feature learning network,C-net);左邊為投影網(wǎng)絡(luò)(Projection network,P-net)。
圖2 特征投影網(wǎng)絡(luò)的結(jié)構(gòu)Fig.2 Structure of FPnet
FPnet 的主要重點(diǎn)在于使用雙網(wǎng)絡(luò)進(jìn)行不同的任務(wù),兩個(gè)神經(jīng)網(wǎng)絡(luò)所提取的特征不同,通過特征投影的方式,強(qiáng)化主網(wǎng)絡(luò)的分類特征,從而提升文本分類效果。FPnet 可以與現(xiàn)有的LSTM、CNN、Transformer、BERT 神經(jīng)網(wǎng)絡(luò)進(jìn)行融合,在與不同的神經(jīng)網(wǎng)絡(luò)相結(jié)合時(shí)候,只需要將FPnet 結(jié)構(gòu)中的神經(jīng)網(wǎng)絡(luò)P 和神經(jīng)網(wǎng)絡(luò)C 特征提取器換成LSTM、CNN、Transformer、BERT 即可。FPnet 作為一種神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)并沒有固定的形式,其主要思想在于強(qiáng)化提純特征,從而達(dá)到強(qiáng)化神經(jīng)網(wǎng)絡(luò)的分類效果。在TextCNN-FPnet中使用了2 個(gè)TextCNN 網(wǎng)絡(luò)作為FPnet 的C-net 和P-net 特征提取器來提取共性特征和特性特征。OPL(Original Projection Layer)處于卷積池化層之后,在神經(jīng)網(wǎng)絡(luò)最后一層進(jìn)行特征投影,從而提升了TextCNN 模型的分類性能。
C-net 模塊在正常的文本分類神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中加入GRL會(huì)使得神經(jīng)網(wǎng)絡(luò)C 所提取的特征F
為共性特征。由于C-net輸出通過損失函數(shù)計(jì)算,在反向傳播過程中受到GRL 反轉(zhuǎn)作用,使得整個(gè)網(wǎng)絡(luò)損失函數(shù)loss 值逐漸增大,無法正確分類,神經(jīng)網(wǎng)絡(luò)C 所提取的特征F
在神經(jīng)網(wǎng)絡(luò)參數(shù)更新過程中逐漸丟棄類別信息,只帶有共性信息,在向量空間中表現(xiàn)為沒有正確的類別指向。圖3 特征投影Fig.3 Feature projection
FPnet 使用雙網(wǎng)絡(luò)合作進(jìn)行文本分類任務(wù),神經(jīng)網(wǎng)絡(luò)Pnet 和神經(jīng)網(wǎng)絡(luò)C-net 結(jié)構(gòu)相同但參數(shù)并不共享,C-net 中加入梯度反轉(zhuǎn)層GRL,P-net 中加入特征投影層OPL,雙網(wǎng)絡(luò)使用相同的交叉熵?fù)p失函數(shù),C-net 中的梯度反轉(zhuǎn)使得網(wǎng)絡(luò)提取的特征并不能正確分類,即提取到了共性特征。
在新聞主題文本分類任務(wù)難點(diǎn)主要包括兩個(gè)方面:1)主題文本長(zhǎng)度過短,語義信息少,普通文本分類模型不易提取其有效分類語義信息,一些主題詞可能屬于多個(gè)類別,而另一些主題詞并不能指向任何類別,更適合使用BERT 模型作為特征提取器;2)部分新聞包含多個(gè)類別信息,例如財(cái)經(jīng)類新聞與房產(chǎn)類新聞通常不易區(qū)分,科技新聞?dòng)秩菀缀推囶愋侣劵煜?。使用FPnet 后,通過計(jì)算凈化提純后的向量特征,可以將學(xué)習(xí)到的輸入新聞主題文本的信息向量投影到更具區(qū)分性的語義空間中來消除共同特征的影響。
BERT 模型與一般的文本分類模型不同,不僅可以使用分類器最終提取的特征進(jìn)行特征投影融合,也可以在BERT網(wǎng)絡(luò)的隱藏層中融合FPnet 進(jìn)行改進(jìn)。
本文BERT-FPnet 新聞主題文本分類方法主要包括兩種實(shí)現(xiàn)方式:
1)BERT-FPnet-1。使用BERT-FPnet 的MLP 層輸出進(jìn)行特征投影結(jié)合,使用預(yù)訓(xùn)練模型BERT 構(gòu)建文本分類模型時(shí)需要在BERT 的輸出后加入MLP(MultiLayer Perceptron)層進(jìn)行進(jìn)一步特征提取,MLP 層使用多個(gè)全連接網(wǎng)絡(luò)。
2)BERT-FPnet-2。使用BERT-FPnet 模型中BERT 的隱藏層進(jìn)行特征投影結(jié)合。
BERT-FPnet-1 的整體模型結(jié)構(gòu)如圖4 所示,模型網(wǎng)絡(luò)主要分為兩部分,左邊為BERT 投影網(wǎng)絡(luò)P-net,右邊為BERT 共性特征學(xué)習(xí)網(wǎng)絡(luò)C-net。
圖4 BERT-FPnet模型框架Fig.4 BERT-FPnet model framework
BERT-FPnet-1 模型工作流程如下:在新聞文本輸入到BERT 層之前需要進(jìn)行特征處理,將輸入新聞文本的開頭加上[CLS]字符,然后根據(jù)BERT 字典將所有的字符轉(zhuǎn)化為字典中對(duì)應(yīng)id,輸入到BERT 模型中。如式(1)~(2)所示:
E
取出,放入MLP 層中進(jìn)行進(jìn)一步特征提取,得到文本特征E
和E
。如式(3)~(5)所示:在MLP 層中包含2 個(gè)全連接層和激活函數(shù)tanh,第一個(gè)全連接層維度參數(shù)設(shè)置為[768,768],輸出特征通過激活函數(shù)tanh 后進(jìn)入第二個(gè)全連接層,其維度參數(shù)設(shè)置為[768,class_dim],class_dim 根據(jù)新聞文本標(biāo)簽類別數(shù)來設(shè)置,如式(6)~(7)所示:
分別通過P-net 模塊和C-net 模塊的MLP 層提取原始特征和共性特征,如式(8)~(9)所示:
如前文所述,C-net 模塊主要提取共性特征,共性特征是指對(duì)分類任務(wù)不做區(qū)分的特征,它是所有類的共性特征,C-net 通過MLP 層后特征提取完畢,將特征放入GRL 中進(jìn)行梯度反轉(zhuǎn)。如式(10)~(11)所示:
λ
值為GRL 梯度反轉(zhuǎn)超參數(shù)。梯度反轉(zhuǎn)層在正向傳播時(shí)對(duì)特征f
不做修改,在反向傳播時(shí)傳遞了-λ
使得整個(gè)C-net 網(wǎng)絡(luò)的損失函數(shù)LOSS 求反。特征投影方法是將特征向量投影到共性特征向量上,投影公式如式(12)所示:
f
向量中只包含公共語義信息。而第二次投影得到提純后的特征向量,只包含分類語義信息,如式(13)~(14)所示:兩個(gè)網(wǎng)絡(luò)在結(jié)構(gòu)上相同,參數(shù)上并不共享。C-net 中加入GRL 梯度反轉(zhuǎn)層后,和P-net 的輸出一樣,P-net 和C-net 的輸出都使用Softmax 歸一化激活函數(shù),如式(15)~(16)所示:
雙網(wǎng)絡(luò)使用交叉熵?fù)p失函數(shù)進(jìn)行計(jì)算。C-net 通過GRL使網(wǎng)絡(luò)損失增大,所提取的特征不能正確分類,即提取到了共性特征。如式(17)~(18)所示:
Loss
反向傳播只更新右側(cè)C-net 網(wǎng)絡(luò)參數(shù),Loss
反向傳播只更新左側(cè)P-net 網(wǎng)絡(luò)參數(shù)。C-net 中雖然同樣使用Softmax 和交叉熵?fù)p失函數(shù),但是由于在反向傳播時(shí)候C-net模塊中GRL 層進(jìn)行梯度反轉(zhuǎn),因此Loss
的值會(huì)逐漸變大。進(jìn)行Loss
計(jì)算和反向傳播只是為讓神經(jīng)網(wǎng)絡(luò)得到共性特征。P-net 模塊中Loss
為最終整個(gè)模型預(yù)測(cè)分類損失函數(shù)值,Y
值為整個(gè)特征投影網(wǎng)絡(luò)的最終預(yù)測(cè)輸出。BERT-FPnet-2 主要區(qū)別在于OPL 特征投影層處于BERT內(nèi)部的隱藏層之間。BERT-BASE 中文預(yù)訓(xùn)練模型為12 層Transformer 結(jié)構(gòu),由于BERT 模型各個(gè)隱藏層中所提取的語義信息各不相同,從低層到高層分別提取的是短語級(jí)別、句法級(jí)別以及深度語義級(jí)別的特征語義信息,而文本特征的長(zhǎng)期依賴需要對(duì)模型多層輸出進(jìn)行建模。因此本文分別對(duì)BERT 的低、中、高隱藏層進(jìn)行特征投影結(jié)合,通過實(shí)驗(yàn)對(duì)比提出了BERT-FPnet模型第二種特征投影方式BERT-FPnet-2。
BERT 隱藏層特征投影是將當(dāng)前隱藏層輸出進(jìn)行特征投影后,輸入到下一層隱藏層中,BERT-BASE 中文預(yù)訓(xùn)練模型隱藏層為12 層,如圖5 所示,以BERT 模型第6 層特征投影為例,在BERT-FPnet-2 的第6 層加入OPL 層進(jìn)行特征投影提純,BERT-Cnet 網(wǎng)絡(luò)結(jié)構(gòu)不變。
圖5 BERT-FPnet-2隱藏層特征投影Fig.5 BERT-FPnet-2 hidden layer feature projection
由于BERT模型有多個(gè)隱藏層,本文通過多種實(shí)驗(yàn)選取不同的隱藏層進(jìn)行特征投影實(shí)驗(yàn)對(duì)比,從而得到最優(yōu)實(shí)驗(yàn)效果。
本文實(shí)驗(yàn)環(huán)境如表1 所示。為了評(píng)估本模型方法在新聞主題文本分類任務(wù)上的有效性,本文使用四個(gè)新聞主題數(shù)據(jù)集進(jìn)行模型實(shí)驗(yàn),如表2 所示。
表1 實(shí)驗(yàn)環(huán)境Tab 1 Experimental environment
表2 數(shù)據(jù)集詳情Tab 2 Dataset details
1)今日頭條數(shù)據(jù)集:根據(jù)今日頭條客戶端收集而來,分別包括民生、文化、娛樂、體育、財(cái)經(jīng)、房產(chǎn)、汽車、教育、科技、軍事、旅游、國(guó)際、證券、農(nóng)業(yè)、電競(jìng)共15 個(gè)類別。
2)搜狐新聞數(shù)據(jù)集:通過網(wǎng)絡(luò)開源搜狐新聞數(shù)據(jù)集進(jìn)行數(shù)據(jù)清洗,去除數(shù)據(jù)中部分缺少標(biāo)簽數(shù)據(jù),去除新聞內(nèi)容,只保留新聞主題。數(shù)據(jù)集共包含娛樂、財(cái)經(jīng)、房地產(chǎn)、旅游、科技、體育、健康、教育、汽車、新聞、文化、女人共12 個(gè)類別。
3)THUCNews-L 數(shù)據(jù)集:THUCNews 是根據(jù)新浪新聞RSS訂閱頻道2005—2011 年的歷史數(shù)據(jù)篩選過濾生成,包含約74 萬篇新聞文檔。本文在原始數(shù)據(jù)集上進(jìn)行數(shù)據(jù)清洗,重新整合劃分出財(cái)經(jīng)、房產(chǎn)、股票、教育、科技、社會(huì)、時(shí)政、體育、游戲、娛樂,共計(jì)10 個(gè)類別,每個(gè)類別數(shù)據(jù)約2 萬條。
4)THUCNews-S 數(shù)據(jù)集:在THUCNews 基礎(chǔ)上進(jìn)行數(shù)據(jù)清洗的小型數(shù)據(jù)集,共包含財(cái)經(jīng)、股票、科技、社會(huì)、時(shí)政、娛樂6 個(gè)類別,每個(gè)類別數(shù)據(jù)1 萬條。
為驗(yàn)證本文所提出的結(jié)合BERT 和特征投影網(wǎng)絡(luò)的新聞主題分類方法的有效性,選擇了8 個(gè)在新聞文本分類上效果較好的分類模型作為對(duì)比。其中:TextCNN、FastText、Transformer 和DPCNN,結(jié)合Word2Vec 字粒度詞向量進(jìn)行文本分類實(shí) 驗(yàn);ALBERT-FC、BERT-FC、BERT-CNN 和BERTBIGRU 結(jié)合預(yù)訓(xùn)練模型進(jìn)行文本分類實(shí)驗(yàn)。具體如下:
1)TextCNN:多窗口超參數(shù)設(shè)置為[2,3,4],4 窗口可以很好地提取中文新聞數(shù)據(jù)的四字成語語義,卷積核數(shù)量設(shè)置為256。
2)FastText:將輸入文本的序列投射到詞嵌入空間,然后通過池化層得到文本特征向量分類,F(xiàn)astText 沒有卷積操作,模型結(jié)構(gòu)簡(jiǎn)單、速度快。
3)Transformer:使用encoder 作為特征提取器,本次實(shí)驗(yàn)使用了單組注意力機(jī)制和3 個(gè)encoder 塊作為模型組成。
4)深層金字塔模型(Deep Pyramid Convolutional Neural Network,DPCNN):該模型參考深度殘差網(wǎng)絡(luò)(Residual Network,ResNet),解決深層模型的梯度消失問題。通過固定特征圖(feature map)的數(shù)量,采用步長(zhǎng)為2 的最大池化操作,使每個(gè)卷積層的數(shù)據(jù)大小減半,同時(shí)相應(yīng)的計(jì)算時(shí)間減半,從而形成一個(gè)金字塔(Pyramid)。
5)ALBERT:使用ALBERT-BASE 中文預(yù)訓(xùn)練模型,在模型最后一層pooling 層輸出連接全連接層(Fully Connected layer,F(xiàn)C)進(jìn)行Softmax 分類。
6)BERT-FC:使用BERT 模型最后的[CLS]向量連接FC進(jìn)行分類。
7)BERT-CNN:使用BERT 模型的最后一層的encoder輸出的每個(gè)字向量特征,通過卷積池化進(jìn)一步提取特征進(jìn)行分類任務(wù),其中CNN 也使用[2,3,4]窗口卷積池化,卷積核數(shù)量256。
8)BERT-BIGRU(BERT-Bidirectional Gated Recurrent Unit):使用BERT 模型的最后一層的encoder 輸出,提取每個(gè)字向量特征,輸入雙向門控單元(Bidirectional Gated Recurrent Unit,BiGRU)提取上下文語義特征從而進(jìn)行文本分類。
在實(shí)驗(yàn)之前對(duì)四個(gè)新聞數(shù)據(jù)集進(jìn)行預(yù)處理,過濾掉非ASCII 字符,清洗換行符等標(biāo)點(diǎn)符號(hào),對(duì)英文字符進(jìn)行大小寫轉(zhuǎn)換,并對(duì)中文文字進(jìn)行簡(jiǎn)繁字體轉(zhuǎn)換。
對(duì)比實(shí)驗(yàn)中TextCNN、FastText、Transformer 和DPCNN 模型結(jié)合Word2Vec 字粒度詞向量進(jìn)行文本分類實(shí)驗(yàn),并分別在訓(xùn)練集上訓(xùn)練Word2Vec 字向量,本次對(duì)比實(shí)驗(yàn)中Word2Vec 字典大小設(shè)置為5 000,字符映射為300 維字向量。
對(duì)比實(shí)驗(yàn)中ALBERT-FC、BERT-FC、BERT-CNN 和BERT-BIGRU 結(jié)合預(yù)訓(xùn)練模型進(jìn)行文本分類實(shí)驗(yàn)。ALBERT-FC 使用ALBERT-BASE-CHINESE 中文預(yù)訓(xùn)練模型,BERT-FC、BERT-CNN 和BERT-BIGRU 使 用BERT-BASECHINESE 中文預(yù)訓(xùn)練模型。對(duì)比模型超參數(shù)均在新聞主題文本分類數(shù)據(jù)集上進(jìn)行調(diào)優(yōu)。
P
(Precision)與召回率R
(Recall)的F
1 值對(duì)模型效果進(jìn)行評(píng)價(jià),其計(jì)算公式如下:TP
表示實(shí)際正樣本預(yù)測(cè)為正,TN
表示負(fù)樣本預(yù)測(cè)為負(fù),FP
表示負(fù)樣本預(yù)測(cè)為正,FN
表示正樣本預(yù)測(cè)為負(fù)。由于本次實(shí)驗(yàn)任務(wù)為多類別新聞主題文本分類任務(wù),因此使用精確率P
、召回率R
和F
1 值的宏平均(Macroaveraging)值M_F1 作為評(píng)價(jià)指標(biāo)。宏平均計(jì)算方式將每個(gè)類別的精確率、召回率和F
1 值分別計(jì)算出來,然后對(duì)所有類求算術(shù)平均值,如式(23)~(25)所示。宏平均值更適合作為多類別分類任務(wù)評(píng)價(jià)指標(biāo)。本文所提出的結(jié)合BERT 和FPnet 的新聞主題分類方法的兩種實(shí)現(xiàn)方式的基本參數(shù)設(shè)置相同,主要包括BERT 模型參數(shù)和綜合模型訓(xùn)練參數(shù)設(shè)置,BERT 模型采用谷歌開源的BERT-BASE 中文預(yù)訓(xùn)練語言模型。模型主要參數(shù)如表3所示。
表3 BERT模型主要參數(shù)Tab 3 Major parameters of BERT model
優(yōu)化策略使用更適合于BERT 模型的BertAdam 優(yōu)化器,warmup 模型預(yù)熱設(shè)置為0.05,模型學(xué)習(xí)率設(shè)置為5E-5,并且使用動(dòng)態(tài)學(xué)習(xí)率策略進(jìn)行學(xué)習(xí)率衰減,衰減系數(shù)為0.9。
由于四個(gè)數(shù)據(jù)集的平均長(zhǎng)度都在20 左右,多次微調(diào)長(zhǎng)度超參數(shù)后選取文本輸入長(zhǎng)度超參數(shù)pad_size
=32,梯度反轉(zhuǎn)GRL 超參數(shù)λ
設(shè)置為[0.05,0.1,0.2,0.4,0.8,1.0],隨著模型訓(xùn)練梯度下降變化,可以有效提取共性特征,具體如表4所示。表4 BERT-FPnet模型超參數(shù)Tab 4 Hyperparameters of BERT-FPnet model
在BERT-FPnet-2 中,對(duì)BERT 模型各個(gè)隱藏層進(jìn)行特征投影,對(duì)比各個(gè)隱藏層特征投影分類效果:
1)單層投影:分別對(duì)BERT 模型第3、6、9、12 層隱藏層進(jìn)行特征投影;
2)雙層投影:分別在第3、6、9、12 層隱藏層以及最后一層MLP 層進(jìn)行特征投影;
3)所有層投影:在BERT 模型的12 個(gè)隱藏層均進(jìn)行特征投影。
如表5 所示,在搜狐新聞數(shù)據(jù)集上進(jìn)行BERT-FPnet-2 隱藏層特征投影實(shí)驗(yàn),3、6、9、12 分別表示在BERT 的單層隱藏層特征投影層;3-MLP、6-MLP、9-MLP、12-MLP 分別是表示雙層特征投影;ALL 代表所有層均進(jìn)行特征投影;MLP 為BERT-FPnet最后一層MLP 層。
表5 搜狐新聞數(shù)據(jù)集上BERT-FPnet-2隱藏層特征投影實(shí)驗(yàn)結(jié)果Tab 5 Experimental results of BERT-FPnet-2 hidden layer feature projection on Sohu News dataset
在單層特征投影對(duì)比可以看出,第12 層隱藏層特征投影效果最好,準(zhǔn)確率和F1 值分別達(dá)到了0.861 7 和0.862 7。從雙層特征投影對(duì)比實(shí)驗(yàn)可以看出,6-MLP 投影和12-MLP層特征投影效果最好,但是雙層投影效果相較于單層第12層隱藏層投影效果有所降低。而使用所有層進(jìn)行特征投影分類效果下降較多。對(duì)比BERT-FPnet-1 可以發(fā)現(xiàn),在BERTFPnet-2 使用第12 層隱藏層進(jìn)行特征投影效果最好。
為進(jìn)一步驗(yàn)證BERT-FPnet 第12 層隱藏層特征投影的效果,將其在THUCNews-S 數(shù)據(jù)集上進(jìn)行對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表6 所示??梢钥吹皆赥HUCNews-S 數(shù)據(jù)集下隱藏層投影分類效果和BERT-FPnet-1 效果接近。
表6 THUCNews-S數(shù)據(jù)集上BERT-FPnet的特征投影結(jié)果對(duì)比Tab 6 Comparison of BERT-FPnet feature projection results on THUCNews-S dataset
上述實(shí)驗(yàn)通過在BERT 模型部分隱藏層進(jìn)行層次特征投影實(shí)驗(yàn)對(duì)比,表明BERT 模型融合特征投影層適合在語義特征提取層進(jìn)行特征投影。
在四個(gè)數(shù)據(jù)集上進(jìn)行多個(gè)模型實(shí)驗(yàn)對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表7 所示,其中BERT-FPnet-1 為在模型MLP 層最終特征輸出進(jìn)行特征投影,而BERT-FPnet-2 為在BERT 輸出的第12 層隱藏層進(jìn)行特征投影后再放入MLP 層進(jìn)行分類。
表7 各模型在不同數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Tab 7 Experimental results of different models on different datasets
從表7 可以看出本文所提出的結(jié)合BERT 和FPnet 的新聞主題分類方法的兩種實(shí)現(xiàn)方式,在準(zhǔn)確率、宏平均F1 值都優(yōu)于其他文本分類模型,尤其優(yōu)于目前基于BERT 模型融合較好的BERT-CNN 和BERT-BIGRU。為更加直觀地對(duì)各模型性能進(jìn)行分析,采用柱狀圖的形式對(duì)各模型的M_F1(宏平均F1 值)實(shí)驗(yàn)結(jié)果進(jìn)行展示,如圖6 所示。
圖6 各模型在不同數(shù)據(jù)集上的宏平均F1值Fig.6 M_F1 value of different models on different datasets
從圖6 可以看出,本文模型在各個(gè)數(shù)據(jù)集上效果均優(yōu)于其他對(duì)比模型,在THUCNews-L 和THUCNews-S 數(shù)據(jù)集上只有BERT-CNN 模型F1 值接近本文模型。
并且分析表7 中數(shù)據(jù)可知,使用Word2Vec 向量的TextCNN、FastText、Transformer、DPCNN,分類效果顯然差于融合預(yù)訓(xùn)練模型的ALBERT-FC、BERT-FC、BERT-CNN 和BERT-BIGRU 方法,說明預(yù)訓(xùn)練語言模型在提取的句子語義特征表示比Word2Vec 更好,這也是本文使用BERT 模型融合特征投影的原因。而ALBERT 模型雖然在BERT 模型上進(jìn)行創(chuàng)新,消減了BERT 模型的參數(shù),但是在一定程度上降低了模型準(zhǔn)確率。
在今日頭條、THUCNews-L、THUCNews-S 這3 個(gè)數(shù)據(jù)集上BERT-FPnet-1 在MLP 層投影效果更好,而搜狐新聞數(shù)據(jù)集上在BERT-FPnet-2 使用BERT 模型第12 層隱藏層投影效果更好,因此可以針對(duì)不同數(shù)據(jù)集選擇不同的特征投影方式得到最好的分類效果。
pad_size
、GRL 梯度反轉(zhuǎn)參數(shù)λ
以及雙網(wǎng)絡(luò)學(xué)習(xí)率。新聞主題文本一般長(zhǎng)度不一,模型輸入長(zhǎng)度pad_size
不宜過長(zhǎng)也不宜過短:過短的輸入長(zhǎng)度顯然無法有效獲取完整語義信息;而設(shè)置過長(zhǎng)的pad_size
進(jìn)行數(shù)據(jù)對(duì)齊時(shí),填充值會(huì)造成噪聲影響語義提取效果,并且由于BERT 模型注意力機(jī)制的特性,模型的計(jì)算時(shí)間也會(huì)呈指數(shù)增長(zhǎng),從而影響模型分類性能。GRL 梯度反轉(zhuǎn)參數(shù)主要作用在于幫助C-net 提取有效的共性特征。雙網(wǎng)絡(luò)學(xué)習(xí)率在微調(diào)時(shí)可分為同步學(xué)習(xí)率和異步學(xué)習(xí)率。同步學(xué)習(xí)率是指雙網(wǎng)絡(luò)采用相同梯度下降策略和學(xué)習(xí)率,異步學(xué)習(xí)率是指雙網(wǎng)絡(luò)采用不同的梯度下降策略和學(xué)習(xí)率。雖然在DANN 中采用的是ADam 和SGD的雙網(wǎng)絡(luò)不同優(yōu)化策略,文獻(xiàn)[22]中也是使用這種方式,但是本文使用同步學(xué)習(xí)率獲得了更好的效果。在THUCNews-S 數(shù)據(jù)集上進(jìn)行參數(shù)對(duì)比實(shí)驗(yàn),結(jié)果如表8 所示??梢钥闯?p>pad_size取值從平均長(zhǎng)度18 到40,本文模型的準(zhǔn)確率和F1 值變化。從實(shí)驗(yàn)結(jié)果中可以看到pad_size
值依次取18、24、32 時(shí),模型的準(zhǔn)確率和F1 值逐步提升,但當(dāng)pad_size
值取40 時(shí),模型準(zhǔn)確率和F1 值并未得到有效提升。表8 各pad_size 下本文模型在THUCNews-S數(shù)據(jù)集上的性能對(duì)比Tab 8 Perfomance comparison of proposed models under different pad_size on THUCNews-S dataset
GRL 超參數(shù)λ
分別取靜態(tài)值1 和兩種動(dòng)態(tài)λ
進(jìn)行實(shí)驗(yàn)對(duì)比,實(shí)驗(yàn)結(jié)果如表9 所示??梢钥闯霾煌?p>λ值對(duì)模型分類效果會(huì)產(chǎn)生細(xì)微影響,更加細(xì)膩度的λ
變化幅度對(duì)模型的分類效果更好,更有助于C-net 提取共性特征。表9 各λ下本文模型在THUCNews-S數(shù)據(jù)集上的性能對(duì)比Tab 9 Performance comparison of proposed models under different λ on THUCNews-S dataset
在雙網(wǎng)絡(luò)優(yōu)化策略方面,本文對(duì)比了文獻(xiàn)[22]中所用的ADam 和SGD 的雙網(wǎng)絡(luò)不同優(yōu)化策略,以及本文所用的雙BERTAdam、同步學(xué)習(xí)率方式。實(shí)驗(yàn)結(jié)果如表10 所示??梢钥闯霰疚乃梅椒▽?duì)以BERT為基礎(chǔ)的FPnet分類效果更好。
表10 各優(yōu)化策略下本文模型在THUCNews-S數(shù)據(jù)集上的性能對(duì)比Tab 10 Performance comparison of proposed models under different optimization strategies on THUCNews-S dataset
因此最終各數(shù)據(jù)集實(shí)驗(yàn)對(duì)比部分并未參照文獻(xiàn)[22]中在FPnet 的雙網(wǎng)絡(luò)結(jié)構(gòu)中使用Adam 和SGD 兩種梯度下降優(yōu)化策略,而是使用了更適合于BERT 模型的雙BERTAdam 優(yōu)化器。
本文提出兩種結(jié)合BERT 和FPnet 的新聞主題文本分類方法。利用BERT 模型對(duì)新聞主題文本的完美語義特征提取能力,使用雙BERT 模型以特征投影的方式結(jié)合完成新聞主題文本分類任務(wù)。在其中一個(gè)BERT 網(wǎng)絡(luò)中加入GRL 梯度反轉(zhuǎn)層,提取新聞主題文本的共性特征;然后使用另一個(gè)BERT 網(wǎng)絡(luò)OPL 將提取的特征在共性特征上進(jìn)行投影,從而提取特性特征,提升文本分類效果。在四個(gè)新聞主題數(shù)據(jù)集上進(jìn)行大量對(duì)比實(shí)驗(yàn),驗(yàn)證了本文所提出的結(jié)合BERT 和FPnet 的新聞主題文本分類方法的有效性。
本文模型缺點(diǎn)在于模型參數(shù)量較大,可嘗試使用知識(shí)蒸餾消減模型參數(shù)。在下一步工作中,將使用BERT 的字序列向量通過CNN、RNN 進(jìn)行特征提取后融合特征投影進(jìn)行網(wǎng)絡(luò)融合,以完成新聞主題分類任務(wù)。