梁健力 商豪
[收稿日期]20210923
[第一作者]梁健力(1996-),男,廣東佛山人,湖北工業(yè)大學(xué)碩士研究生,研究方向?yàn)閿?shù)據(jù)挖掘
[通信作者]商豪(1982-),女,湖北羅田人,湖北工業(yè)大學(xué)副教授,研究方向?yàn)殡S機(jī)分析與算法
[文章編號]1003-4684(2023)02-0033-07
[摘要]在不平衡數(shù)據(jù)下,文本分類模型容易把樣本數(shù)量較少的類別錯分成數(shù)量較多的類別。在采樣層面上提出一種平滑采樣方法,在損失函數(shù)層面上根據(jù)不平衡分布改進(jìn)交叉熵?fù)p失和標(biāo)簽平滑。復(fù)旦文本數(shù)據(jù)集上的實(shí)驗(yàn)表明,每種層面的改進(jìn)都較基準(zhǔn)模型有一定提高。當(dāng)結(jié)合使用采樣和損失函數(shù)的改進(jìn)時,TextCNN、BiLSTM+Attention、TextRCNN和HAN模型在宏平均F1值上分別提高4.17%、5.13%、5.06%和6.21%,在G-mean上分別提高6.56%、3.03%、3.92%和5.32%,較好解決了不平衡數(shù)據(jù)下文本分類任務(wù)。
[關(guān)鍵詞]文本分類; 不平衡比例; 平滑采樣; 損失函數(shù)
[中圖分類號]TP391? [文獻(xiàn)標(biāo)識碼]A
文本分類是自然語言處理領(lǐng)域中一項(xiàng)基礎(chǔ)又重要的任務(wù),可用于情感分析、新聞分類和意圖識別等應(yīng)用場景,也可以為搜索、排序等大型的復(fù)雜系統(tǒng)提供技術(shù)支持。從傳統(tǒng)的手工特征結(jié)合分類器[1-2]的機(jī)器學(xué)習(xí)時代,再到使用循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network)[3-5]、卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network)[6]和大規(guī)模預(yù)訓(xùn)練語言模型(Pretrained Language Model)[7-8]對數(shù)據(jù)進(jìn)行自動學(xué)習(xí)的深度學(xué)習(xí)時代,模型不斷被創(chuàng)新和優(yōu)化,文本分類效果得到了飛躍性的突破。例如,TextCNN[6]汲取N元語法(n-gram)[9]的思想,使用不同大小的卷積核來捕捉句子中的局部信息,取得了當(dāng)時文本分類最好的結(jié)果。TextRCNN[10]在雙向長短時記憶網(wǎng)絡(luò)(BiLSTM)的基礎(chǔ)上,使用1×1卷積核在通道維度上進(jìn)行卷積運(yùn)算,并通過時序全局最大池化獲取重要特征。帶注意力機(jī)制的雙向長短時記憶網(wǎng)絡(luò)(BiLSTM-Attention)[11]在充分利用RNNs的時序建模優(yōu)良性的同時,使用長短時記憶網(wǎng)絡(luò)(LSTM)和注意力機(jī)制來緩解梯度消失的問題,進(jìn)一步提升模型的效果。HAN[12]模型利用注意力機(jī)制,從單詞層面和句子層面對文檔進(jìn)行分類,從而捕捉句子中的重要詞匯以及文檔中的重要句子,獲取較好的分類效果。
然而,文本分類性能的提升與訓(xùn)練數(shù)據(jù)的質(zhì)量、規(guī)模以及類別平衡性有著一定的關(guān)系。當(dāng)出現(xiàn)數(shù)據(jù)標(biāo)簽不平衡時,由于每個訓(xùn)練樣本對目標(biāo)函數(shù)的貢獻(xiàn)均等,模型在學(xué)習(xí)過程中會主動偏向樣本數(shù)量較多的類別標(biāo)簽。一方面相當(dāng)于模型對多數(shù)類別有著更大的權(quán)重,另一方面也意味著模型對多數(shù)類別過擬合。但測試階段所采用的評價指標(biāo)對多數(shù)類別與少數(shù)類別都同等看待,最終導(dǎo)致在類別不平衡的場景下,訓(xùn)練結(jié)果與實(shí)際的測試結(jié)果相差甚遠(yuǎn)。
由于現(xiàn)實(shí)收集的數(shù)據(jù)基本都存在類別不平衡的現(xiàn)象,需要進(jìn)一步研究在類別不平衡場景下的文本分類。過去機(jī)器學(xué)習(xí)和深度學(xué)習(xí)時代,主要通過3種方式來處理類別不平衡的問題,即對原始數(shù)據(jù)進(jìn)行重抽樣[13-16]、修改損失函數(shù)[17-18]以及采用集成學(xué)習(xí)算法[19]。在采樣方法上,本文利用數(shù)據(jù)的不平衡比例,基于指數(shù)平滑的思想,提出了一種降低數(shù)據(jù)不平衡度的平滑重抽樣方法;在損失函數(shù)上,以不平衡分布來改進(jìn)標(biāo)簽平滑以及交叉熵?fù)p失,提出了一種結(jié)合不平衡分布和標(biāo)簽平滑的交叉熵?fù)p失函數(shù)以提升文本分類的效果。同時結(jié)合采樣方法和在損失函數(shù)上的改進(jìn),深度學(xué)習(xí)模型對不平衡數(shù)據(jù)的分類能力得到進(jìn)一步提升。
1??? 方法設(shè)計(jì)
1.1??? 采樣方法
在過去,無論是機(jī)器學(xué)習(xí)中的經(jīng)典采樣方法,還是深度學(xué)習(xí)中的數(shù)據(jù)增強(qiáng)方法,對不平衡數(shù)據(jù)采樣后是否配平并沒有統(tǒng)一的定論。有的學(xué)者采用完全配平的方式來完成樣本的重抽樣,有的則認(rèn)為這種配平方式可能會損害最終的分類效果。所以,在采樣后保持多大的不平衡比例仍然是一個需要深入研究的問題。但總體來看,增加數(shù)據(jù)量、降低數(shù)據(jù)的不平衡度對文本分類效果有一定增益。
指數(shù)平滑多用于時間序列,其是對歷史觀測值按時間進(jìn)行加權(quán)平均作為當(dāng)前時間的預(yù)測值。雖然訓(xùn)練數(shù)據(jù)的不平衡比例序列和時間并沒有關(guān)聯(lián),但由于指數(shù)平滑具有一定的平滑數(shù)據(jù)功能,能夠在降低不平衡比例的同時,保證平滑后的類別不平衡度與平滑前有相似的分布。本文提出的平滑采樣方法的定義如下:
假設(shè)原始數(shù)據(jù)有k個類別,記為c1,c2,…,ck。記#ci為第i個類別的樣本數(shù)量,其中i取1,2,…,k,可定義各類別的不平衡比例如下:
θi=#cimin(#c1,#c2,…,#ck)
對于k個類別可得到長度為k的不平衡序列{θt}kt=1,將該序列從小到大排序得到有序的不平衡序列{θ′t}kt=1,根據(jù)指數(shù)平滑思想計(jì)算不平衡序列的平滑值,其中t取1,2,…,k:
vt=0,t=0βvt-1+(1-β)θ′t,t≥1
修正平滑值,其中t取1,2,…,k:
v′t=vt1-βt
根據(jù)修正后的平滑值與原始的不平衡比例,可計(jì)算各類別中欠采樣(式(1))與過采樣(式(2))的比例,其中minv′tθ′tkt=1是指k個欠采樣比例的最小值,且t取1,2,…,k:
dt=v′tθ′t(1)
ot=v′tθ′t/minv′tθ′tkt=1(2)
由于式(2)并不能保證過采樣比例大于1,因此對過采樣比例ot進(jìn)行修正,使得修正后的過采樣比例恒大于1。
o′t=ot+log1ot
1.2??? 損失函數(shù)
在深度學(xué)習(xí)模型訓(xùn)練中,由于需要使用損失函數(shù)根據(jù)正向傳播的結(jié)果計(jì)算出誤差,再進(jìn)行反向傳播實(shí)現(xiàn)梯度更新,因此模型的效果往往跟選用何種損失函數(shù)有一定關(guān)系,好的損失函數(shù)可能會帶來性能上的提升。在文本分類問題上,一般采用交叉熵?fù)p失,其具體定義如下:
loss=-1N∑Nn=1∑kc=1y(n)clog(n)c(3)
假定訓(xùn)練數(shù)據(jù)中有k個類別,一個批的樣本數(shù)量為N,記類別c的獨(dú)熱編碼向量為yhot,其具體形式為[I(1=c),I(2=c),…,I(k=c)]T。使用y(n)c來代表批中第n個樣本是否屬于第c個類別,其中y(n)c∈{0,1}。而(n)c表示該樣本屬于第c個類別的預(yù)測概率。
由于交叉熵?fù)p失對多數(shù)類樣本和少數(shù)類樣本的錯誤同等看待,為了使模型在訓(xùn)練過程中更加關(guān)注少數(shù)類別,本文根據(jù)訓(xùn)練數(shù)據(jù)的不平衡分布對交叉熵?fù)p失進(jìn)行改進(jìn),記原始數(shù)據(jù)或采樣數(shù)據(jù)的類別不平衡比例為{θc}kc=1,對于改進(jìn)后的帶不平衡分布的交叉熵?fù)p失
weight_loss=-1N∑Nn=1∑kc=11θcy(n)clog(n)c
此外,為了防止模型在訓(xùn)練過程中對標(biāo)簽的預(yù)測過于自信,本文還對損失函數(shù)引入標(biāo)簽平滑[20]的正則化方式。其結(jié)合均勻分布的思想來修改傳統(tǒng)的獨(dú)熱編碼向量,可以減少類內(nèi)距離,增加類間距離,從而提升模型的泛化能力[21]。記α為平滑值,標(biāo)簽平滑的具體形式為:
y(i)smooth=1-α,i=targetα/(k-1),i≠target(4)
但在不平衡數(shù)據(jù)中,各類別標(biāo)簽的分布并不均勻,因此本文使用數(shù)據(jù)不平衡比例對標(biāo)簽平滑進(jìn)行改進(jìn)。首先利用原始的不平衡比例序列{θi}ki=1求出用于標(biāo)簽平滑的不平衡比例序列θ(i)smoothki=1,其具體形式如下:
θ(i)smooth=0,i=target1θi,i≠target
對不平衡序列θ(i)smoothki=1進(jìn)行歸一化處理,可得到改進(jìn)后的標(biāo)簽平滑向量y′smooth,其元素值
y′(i)smooth=1-α,i=targetα·softmax(θsmooth)(i),i≠target(4)
結(jié)合式(3)和式(4),可得到用帶不平衡分布的標(biāo)簽平滑來改進(jìn)交叉熵?fù)p失的形式:
smooth_loss=1N∑Nn=1∑kc=1y(n)smooth,clogc(n)
最后將帶不平衡分布的交叉熵?fù)p失和帶改進(jìn)標(biāo)簽平滑的交叉熵?fù)p失加權(quán)平均,得到本文最終提出的損失函數(shù),其具體形式如下:
our_loss=βweight_loss+(1-β)smooth_loss
其中β是需要調(diào)節(jié)的超參數(shù)。當(dāng)β等于1時,該損失函數(shù)退化為帶不平衡分布的交叉熵?fù)p失;當(dāng)β等于0時,該損失函數(shù)退化為帶改進(jìn)標(biāo)簽平滑的交叉熵?fù)p失。
2??? 實(shí)驗(yàn)設(shè)置
2.1??? 實(shí)驗(yàn)數(shù)據(jù)集
實(shí)驗(yàn)數(shù)據(jù)集主要采用復(fù)旦大學(xué)的文本分類語料庫,其包含9804個訓(xùn)練文檔與9833個測試文檔,并涵蓋了20個主題類別。其中,原始數(shù)據(jù)中各類別的樣本數(shù)量和文檔長度差異較大,數(shù)量不平衡比例高達(dá)64∶1。此外,數(shù)據(jù)集中有大量的重復(fù)數(shù)據(jù),且部分文檔并沒有包含實(shí)質(zhì)性的內(nèi)容。因此,本文先對原始數(shù)據(jù)集進(jìn)行數(shù)據(jù)清洗,并提取文檔中的正文部分進(jìn)行分析。清洗后的訓(xùn)練集和測試集包含8184和8197個文檔,訓(xùn)練數(shù)據(jù)的不平衡比例降為54.84∶1。訓(xùn)練集清洗前后的數(shù)量和文檔字符長度分布如圖1所示。
(a)原始訓(xùn)練數(shù)據(jù)集的類別分布/比例
(b)清洗訓(xùn)練數(shù)據(jù)集的類別分布/比例
(c)原始訓(xùn)練數(shù)據(jù)集的字符長度分布
(d)清洗訓(xùn)練數(shù)據(jù)集的字符長度分布圖 1??? 訓(xùn)練集清洗前后數(shù)量和字符長度分布
此外,在模型訓(xùn)練和測試前,還需要對文本進(jìn)行分詞和去除停用詞。本文使用jieba分詞工具對清洗后的訓(xùn)練集和測試集進(jìn)行分詞,并引入停詞表對其進(jìn)行去停詞處理。
2.2??? 評價指標(biāo)
準(zhǔn)確率(accuracy)是衡量模型好壞的標(biāo)準(zhǔn)之一。但當(dāng)數(shù)據(jù)是類別不平衡或者不同類別的錯誤所造成的后果不同的時候,準(zhǔn)確率這一指標(biāo)實(shí)際并不適用。通常來說,模型的分類性能應(yīng)綜合使用查全率和查準(zhǔn)率進(jìn)行度量。此外,也有學(xué)者建議使用G-mean來度量模型在不平衡數(shù)據(jù)中的表現(xiàn)。因此,本文將把宏F1和G-mean作為主要的性能評價指標(biāo),多分類情況下的性能指標(biāo)定義如下:
假設(shè)數(shù)據(jù)集中有k個類別,Ck×k為分類的混淆矩陣,Cij為該矩陣中的第i行第j列的元素,其中i,j∈{1,2,…,k}。記Ci.=[Ci1,Ci2,…,Cik]T,C.j=[C1j,C2j,…,Ckj]T,可計(jì)算各類別中真正例(TPv)、假正例(FPv)、真反例(TNv)、假反例(FNv)向量:
TPv=diag(Ck×k)=[C11,C22,…,Ckk]T
FPv=∑ki=1Ci.-diag(Ck×k)
FNv=∑kj=1C.j-diag(Ck×k)
TNv=[∑i∑jCk×k,…,∑i∑jCk×k]k×1-(TPv+FPv+FNv)
根據(jù)TPv、FPv、TNv和FNv可計(jì)算宏查準(zhǔn)率(macro-Pv)、宏查全率(macro-Rv)和宏特異度(macro-Sv)向量為:
macro-Pv=TPvTPv+FPv
macro-Rv=TPvTPv+FNv
macro-Sv=TNvTNv+FPv
根據(jù)向量macro-Pv、macro-Rv和macro-Sv可計(jì)算得到本文使用的宏F1和G-mean:
macro-F1=1k∑2×macro-Pv⊙macro-Rvmacro-Pv+macro-Rv
G-mean=1k∑macro-Rv⊙macro-Sv
2.3??? 文本分類模型
為了呈現(xiàn)改進(jìn)方法的效果,本文將使用BiLSTM-Attention、TextCNN、TextRCNN和HAN等幾個較先進(jìn)的深度學(xué)習(xí)模型來進(jìn)行實(shí)驗(yàn)。
1)設(shè)置BiLSTM-Attention模型的輸入序列長度、詞向量維度、隱藏層單元數(shù)和隱藏層數(shù)量分別為2000、200、200和2。
2)對于TextCNN模型,本文使用窗寬為3、4、5的卷積核來提取特征,每組不同卷積核的輸出維度都為200。此外,設(shè)置模型輸入的序列長度為3000,詞向量維度為200,模型的輸入維度為400。其中,模型的輸入由兩組序列詞向量合并而成,一組為固定的詞向量,一組隨著模型的訓(xùn)練而更新。
3)本文設(shè)置TextRCNN模型的輸入序列長度為3000,詞向量維度為200,BiLSTM模塊的隱藏層單元數(shù)和隱藏層數(shù)量分別為100和1,卷積模塊的輸出維度為300。其中將BiLSTM模塊的輸出和原始序列的詞向量在通道維度上進(jìn)行連接,作為卷積模塊的輸入。
4)本文設(shè)置HAN模型的單個文檔中的最大句子數(shù)和句子中的最大單詞數(shù)分別為20、80,雙向門控循環(huán)神經(jīng)網(wǎng)絡(luò)(BiGRU)模塊的隱藏層單元數(shù)和隱藏層數(shù)量分別為200和1。
由于復(fù)旦文本數(shù)據(jù)集中的文檔字符長度不一,因此,本文對較短的文檔進(jìn)行補(bǔ)0,對較長的文檔從中間進(jìn)行截取。在將文本轉(zhuǎn)化成詞向量的過程中,采用預(yù)訓(xùn)練的騰訊詞向量,其詞向量維度為200。在訓(xùn)練過程中,采用學(xué)習(xí)率衰減的方法,每更新1000步時進(jìn)行一次衰減。此外,各種模型的輸出節(jié)點(diǎn)數(shù)都為20,Dropout的概率采用0.5,激活函數(shù)皆采用ReLU。
3??? 實(shí)驗(yàn)結(jié)果和分析
為了單獨(dú)呈現(xiàn)采樣方法的效果,本文還將利用BOW、TFIDF、LDA和Fasttext來進(jìn)行特征提取,并在經(jīng)過不同采樣處理的數(shù)據(jù)集上建模。在采樣方式上,本文分別進(jìn)行隨機(jī)欠采樣、隨機(jī)過采樣和回譯過采樣三種實(shí)驗(yàn);在采樣比例上,本文采用0.44、0.74、0.86、0.9、0.96和0.98等6種采樣平滑值,并與原始比例以及完全配平的數(shù)據(jù)集實(shí)驗(yàn)結(jié)果進(jìn)行對照。為了避免其他數(shù)據(jù)增強(qiáng)方法對實(shí)驗(yàn)結(jié)果的干擾,表1僅展示9種模型在不同隨機(jī)過采樣比例上的具體表現(xiàn),其余采樣方式的實(shí)驗(yàn)結(jié)果如圖2所示。其中,9種模型對比系統(tǒng)如下。
1)BOW:使用詞袋模型表示文本,特征維度為20 000,并用邏輯回歸(LR)和隨機(jī)森林(RF)對文本進(jìn)行分類。
2)TFIDF:使用詞頻逆詞頻表示文本,特征維度為20 000,并用支持向量機(jī)(SVM)和極端梯度提升樹(Xgboost)對進(jìn)行文本分類。
3)LDA:使用概率主題模型將文本映射到低維空間向量,再用RF和SVM進(jìn)行分類,其中主題個數(shù)為130。
4)Fasttext:先采用有監(jiān)督方式直接進(jìn)行文本分類,再使用無監(jiān)督的方法生成文本詞向量,并用LR和SVM進(jìn)行分類。
由表1可以看出,9種模型系統(tǒng)的最佳結(jié)果皆在非原始比例數(shù)據(jù)集上取得。其中,完全配平的采樣方式更傾向于在BOW、TFIDF等稀疏的向量表示空間上取得更好的效果,但在LDA、Fasttext等稠密的低維空間上的表現(xiàn)甚至比原始比例數(shù)據(jù)集的效果差。這表明雖然不平衡比例的降低和樣本數(shù)量的增加會對模型效果有一定增益,但完全配平的方式會極大改變原始數(shù)據(jù)分布,可能會導(dǎo)致模型性能下降。此外,隨著采樣比例的調(diào)整,本文提出的采樣方法在9種模型系統(tǒng)上均取得比原始比例更好的效果。在BOW、LDA和Fasttext三種模型系統(tǒng)中,對比采樣平滑值0.74和0.98的結(jié)果,可發(fā)現(xiàn)后者都有一定的提升,但其不平衡比例從41.66下降到17.71,數(shù)據(jù)量卻基本保持不變,表明適當(dāng)降低不平衡比例可能會給模型帶來提升,尤其是在低維稠密的向量空間中。
圖2a顯示不同采樣平滑值下各類別不平衡比例的變化情況。相比于完全配平,該采樣方式在降低不平衡比例的同時,仍保持與原始數(shù)據(jù)相似的分布。從圖2b可以看出,在絕大部分實(shí)驗(yàn)?zāi)P椭?,欠采樣會極大地?fù)p害模型的性能,這是由于樣本數(shù)量的銳減使得文本中的重要信息缺失,從而導(dǎo)致分類效果的下降。而圖2c和d則表明,在過采樣時,采用回譯等其他增強(qiáng)方式可能會降低直接隨機(jī)復(fù)制樣本帶來的過擬合風(fēng)險,從而進(jìn)一步提升分類的效果。
圖 2??? 不同改進(jìn)采樣方法在復(fù)旦數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果
為了進(jìn)一步說明平滑采樣方法和帶不平衡分布與標(biāo)簽平滑的損失函數(shù)的有效性,本文以TextCNN為基準(zhǔn),開展一系列的對比工作。表2和表3分別呈現(xiàn)使用預(yù)訓(xùn)練的騰訊詞向量前后,改進(jìn)的采樣方法和損失函數(shù)較基準(zhǔn)方法的提升。其中,CE和Smooth分別表示僅使用交叉熵?fù)p失和帶標(biāo)簽平滑的交叉熵?fù)p失的情況;Weight_CE和Weight_Smooth分別代表利用不平衡分布改進(jìn)的交叉熵?fù)p失和標(biāo)簽平滑的情況;Weight_CE_Smooth是指結(jié)合使用帶不平衡分布的交叉熵?fù)p失和帶改進(jìn)標(biāo)簽平滑的交叉熵?fù)p失的結(jié)果,其中超參數(shù)選取0.9;+0.98是指TextCNN模型在利用0.98采樣平滑率得到的數(shù)據(jù)集下的建模效果,其中采樣方式默認(rèn)為隨機(jī)過采樣,而trans表示使用回譯的方式來進(jìn)行過采樣。表3呈現(xiàn)了本文實(shí)驗(yàn)的最佳效果。
從表2和表3可以看出,無論是單獨(dú)使用本文提出的采樣方法,還是單獨(dú)使用損失函數(shù)上的改進(jìn),其在宏F1和G-mean上都較基準(zhǔn)模型上有一定的提升。而當(dāng)結(jié)合使用帶不平衡分布的交叉熵?fù)p失和帶改進(jìn)標(biāo)簽平滑的交叉熵?fù)p失時,文本分類效果能夠得到進(jìn)一步改善。此外,當(dāng)融合采樣方法以及損失函數(shù)的改進(jìn)時,模型在宏F1上會有進(jìn)一步的提升,但相比只使用損失函數(shù)改進(jìn)時,G-mean會有輕微下降。
當(dāng)未使用預(yù)訓(xùn)練的騰訊詞向量時,本文提出的方法較基準(zhǔn)模型分別在準(zhǔn)確率、宏查全率、宏F1和G-mean上提升1.18%、10.12%、8.73%和7.49%,但在宏查準(zhǔn)率上輕微損失了0.53%;當(dāng)使用預(yù)訓(xùn)練的騰訊詞向量時,本文提出的方法較基準(zhǔn)模型在宏查全率上提升了10.21%,在宏F1上提升了4.17%,在G-mean上提升了6.56%,但在準(zhǔn)確率和宏查準(zhǔn)率上分別損失了0.23%和3.95%。
圖3a展示了在使用預(yù)訓(xùn)練詞向量的情況下,本文使用的改進(jìn)方法與基準(zhǔn)模型在20個主題類別中的宏F1值對比??梢钥闯觯倪M(jìn)方法在多數(shù)類別中保持與基準(zhǔn)模型一致的分類效果,而其區(qū)分少數(shù)類別的性能有了較大的改善,從而提升了整體的分類效果。
(a)改進(jìn)方法和基準(zhǔn)模型在各個主題上的實(shí)驗(yàn)結(jié)果
圖3b呈現(xiàn)了在不同采樣平滑率下聯(lián)合采樣方法和損失函數(shù)改進(jìn)的模型效果??梢钥闯?,使用回譯代替簡單隨機(jī)復(fù)制的過采樣方法,可以進(jìn)一步提升模型的效果。
(b)不同采樣比例下的方法結(jié)果對比圖 3??? 聯(lián)合改進(jìn)方法在復(fù)旦數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果
為了表明改進(jìn)方法的適用性,表4還顯示了BiLSTM+Attention、TextRCNN和HAN等3種模型在改進(jìn)前后的效果對比。改進(jìn)后的這3種深度學(xué)習(xí)模型都在宏F1和G-mean上有著較大的提升,且在準(zhǔn)確率、宏查準(zhǔn)率和宏查全率都沒有性能的損失。其中BiLSTM+Attention模型在宏F1上提升了5.31%、在G-mean上提升了3.03%;TextRCNN模型在宏F1和G-mean分別提升了5.06%和3.92%;HAN模型獲得了6.21%的宏F1和5.32%的G-mean性能提升。
通過上述實(shí)驗(yàn)結(jié)果可以看出,適當(dāng)降低不平衡比例,以及利用不平衡分布改進(jìn)交叉熵?fù)p失和標(biāo)簽平滑,可以提高少數(shù)類別的分類性能。此外,融合采樣方法和損失函數(shù)的改進(jìn)能夠?yàn)檎w的分類效果帶來進(jìn)一步的提升。雖然本文的改進(jìn)方法可能會犧牲部分宏查準(zhǔn)率的性能,但其能大幅提升宏查全率,且保持準(zhǔn)確率基本不變,從而獲得模型在宏F1和G-mean等綜合指標(biāo)的改善。
4??? 結(jié)論
本文從采樣方法和損失函數(shù)上進(jìn)行改進(jìn),并在復(fù)旦文本數(shù)據(jù)上進(jìn)行驗(yàn)證。實(shí)驗(yàn)表明,單獨(dú)使用本文提出的平滑采樣方法、帶不平衡分布的改進(jìn)交叉熵?fù)p失和改進(jìn)標(biāo)簽平滑時,都較基準(zhǔn)模型有一定提升。而當(dāng)聯(lián)合使用采樣方法和損失函數(shù)的改進(jìn)時,以宏F1和G-mean作為性能評判標(biāo)準(zhǔn),其在4種深度學(xué)習(xí)模型中都取得較大的性能提高。因此,本文提出的算法可以較好地解決不平衡數(shù)據(jù)的分類問題,在大量數(shù)據(jù)中能夠更好地檢測出少數(shù)類別的數(shù)據(jù)。
[參考文獻(xiàn)]
[1]CAVNAR W B, TRENKLE J M. N-gram-based text categorization[C].∥Proceedings of SDAIR-94, 3rd annual symposium on document analysis and information retrieval,1994,161175.
[2]SALTON G, BUCKLEY C. Term-weighting approaches in automatic text retrieval[J]. Information processing & management, 1988, 24(05):513-523.
[3]HOCHREITER S, SCHMIDHUBER J. Long short-term memory[J]. Neural computation, 1997, 9(08):1735-1780.
[4]Chung J,Gulcehre C,Cho K H,et al. Empirical evaluation of gated recurrent neural networks on sequence modeling[C].∥NIPS 2014 Workshop on Deep Learning,2014.
[5]LAI S, XU L, LIU K, et al. Recurrent convolutional neural networks for text classification[C].∥Proceedings of the AAAI Conference on Artificial Intelligence,2015.
[6]KIM Y. Convolutional neural networks for sentence classification[J]. EMNLP, 2014.
[7]VASWANI A, Shazeer N, Parmar N, et al. Attention is all you need[C].∥Advances in neural information processing systems,2017:5998-6008.
[8]DEVLIN J, CHANG M W, LEE K, et al. Bert: Pre-training of deep bidirectional transformers for language understanding[C].∥Proceedings of NAACL-HLT,2018.
[9]CAVNAR W B, TRENKLE J M. N-gram-based text categorization[C].∥Proceedings of SDAIR-94, 3rd annual symposium on document analysis and information retrieval,1994:161 175.
[10] LAI S, XU L, LIU K, et al. Recurrent convolutional neural networks for text classification[C].∥Proceedings of the AAAI Conference on Artificial Intelligence,2015.
[11] ZHOU P, SHI W, TIAN J, et al. Attention-based bidirectional long short-term memory networks for relation classification[C].∥Proceedings of the 54th annual meeting of the association for computational linguistics (volume 2: Short papers),2016:207-212.
[12] YANG Z, YANG D, DYER C, et al. Hierarchical attention networks for document classification[C].∥Proceedings of the 2016 conference of the North American chapter of the association for computational linguistics: human language technologies,2016:1480-1489.
[13] KUBAT M, MATWIN S. Addressing the curse of imbalanced training sets: one-sided selection[J].Icml, 1997, 97:179-186.
[14] CHAWLA N V, BOWYER K W, HALL L O, et al. SMOTE: synthetic minority over-sampling technique[J]. Journal of artificial intelligence research, 2002, 16:321-357.
[15] WEI J, ZOU K. EDA: Easy data augmentation techniques for boosting performance on text classification tasks[C].∥Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP), 2019:6382-6388.
[16] YU A W, DOHAN D, LUONG M T, et al. QANet: Combining local convolution with global self-attention for reading comprehension[C].∥International Conference on Learning Representations,2018.
[17] LIN T Y, GOYAL P, GIRSHICK R, et al. Focal loss for dense object detection[C].∥Proceedings of the IEEE international conference on computer vision, 2017:2980-2988.
[18] LI X, SUN X, MENG Y, et al. Dice loss for data-imbalanced NLP tasks[C].∥Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, 2020:465-476.
[19] SUN Y, KAMEL M S, Wong A K C, et al. Cost-sensitive boosting for classification of imbalanced data[J]. Pattern Recognition, 2007, 40(12):3358-3378.
[20] SZEGEDY C, VANHOUCKE V, IOFFE S, et al. Rethinking the inception architecture for computer vision[C].∥Proceedings of the IEEE conference on computer vision and pattern recognition, 2016:2818-2826.
[21] MLLER R, KORNBLITH S, HINTON G.When doeslabelsmoothinghelp? [C].∥NeurIPS,2019.
Unbalanced Text Classification Based on SmoothSampling and Improved Loss
LIANG Jianli, SHANG Hao
(School of Science, Hubei Univ. of Tech., Wuhan 430068, China)
Abstract:When data are imbalanced, text classification models are easy to misclassify minority class to majority class. This paper proposes a smooth sampling method at the sampling level, and improves the cross entropy loss and label smoothing based on the imbalanced distribution at the loss function level. Experiments on the Fudan text corpus show that the improved method in each level outperforms the benchmark method. With the combination of the improved method in sampling level and loss function level, the TextCNN, BiLSTM+Attention, TextRCNN and HAN models can obtain 4.17%, 5.31%, 5.06%, and 6.21% macro? F1 improvement and increase 6.56%, 3.03%, 3.92%, and 5.32% on G mean respectively. The methods proposed in this paper have been verified the effectiveness on imbalanced corpora.
Keywords: text classification; unbalanced percent; sampling; loss function
[責(zé)任編校: 張眾]