胡宏章 邱云飛 郭蕾
摘? 要: 針對非均衡數(shù)據(jù)帶來的分類器對少數(shù)類樣本學(xué)習(xí)不充分的問題,提出融合條件熵和TF-IDF的過采樣方法。該方法首先指定參數(shù),組合數(shù)據(jù)特征,然后計(jì)算每種組合方式下的條件熵,判斷每種組合條件下類的不確定性,同時為了避免低詞頻帶來的噪音數(shù)據(jù),將條件熵結(jié)果乘上1/TF-IDF因子,再將結(jié)果按升序排序,最后結(jié)合參數(shù)選定過采樣依據(jù)的特征組合,用以構(gòu)造新數(shù)據(jù),使正負(fù)樣本平衡。將所提方法在7個不均衡數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)仿真,結(jié)果表明,所提方法比其他方法在F-measure、G-mean和AUC等評價指標(biāo)上均有一定提高。
關(guān)鍵詞: 非均衡數(shù)據(jù); 條件熵; TF-IDF; 過采樣
中圖分類號:TP301.6? ? ? ? ? 文獻(xiàn)標(biāo)識碼:A? ? ?文章編號:1006-8228(2023)06-48-06
Oversampling method combining conditional entropy and TF-IDF
Hu Hongzhang, Qiu Yunfei, Guo Lei
(College of Software, Liaoning Technical University, Huludao, Liaoning 125105, China)
Abstract: In order to solve the problem that the classifier does not learn enough from a small number of samples caused by unbalanced data, an oversampling technology combining conditional entropy and TF-IDF is proposed. Firstly, parameters are specified to combine data features. Then the conditional entropy under each combination mode is calculated to judge the uncertainty of classes under each combination condition. At the same time, the conditional entropy results are multiplied by factor in order to avoid noisy data caused by low word frequency, and then the results are sorted in ascending order. Finally, the feature combination based on oversampling is selected combined with parameters to construct new data, which balances the positive and negative samples. The proposed method is simulated on seven unbalanced data sets, and the results show that it has certain improvement compared with other methods in F-measure, G-mean, AUC and other evaluation indicators.
Key words: unbalanced data; conditional entropy; TF-IDF; oversampling
0 引言
非均衡數(shù)據(jù)指各類別標(biāo)簽數(shù)量相差懸殊的數(shù)據(jù),由此帶來的問題被稱為非均衡問題。以SVM(支持向量機(jī))為例,由于數(shù)據(jù)不平衡特性而導(dǎo)致的大規(guī)模協(xié)方差矩陣和有偏支持向量的計(jì)算已被證實(shí)是一個棘手問題[1] 。忽視樣本的不均衡分布或犧牲少數(shù)類樣本都是不可取的。
目前解決非均衡問題的方向主要有:采樣方法的研究、集成算法的改進(jìn)、降維方案的選擇和選擇合適的評價指標(biāo)等。采樣方法會改變原始樣本分布,該方法的關(guān)鍵是既要保留原始數(shù)據(jù)特點(diǎn),又要避免增加噪聲數(shù)據(jù)。集成算法則是均衡不同模型的優(yōu)缺點(diǎn),結(jié)合多個模型的處理方案使正負(fù)樣本具有較高的分類精度,其模型的優(yōu)化以及參數(shù)的選擇具有一定難度。
針對不平衡的文本數(shù)據(jù),G.Sun[2] 等提出了一種非平衡文本數(shù)據(jù)流的集成分類算法。首先,采用改進(jìn)的重采樣方法建立平衡數(shù)據(jù)子集;其次,利用主題模型對平衡數(shù)據(jù)子集進(jìn)行主題建模,建立文檔主題訓(xùn)練子集;最后,利用集成分類模型構(gòu)造集成分類器。而對于高維不平衡數(shù)據(jù),W.Pei[3] 等提出一種新的遺傳規(guī)劃方法,但是該方法更適合于具有輕微不平衡數(shù)據(jù)的分類。另外在采樣方式上更多優(yōu)化的是過采樣方法。如C.Tian[4] 等提出了一種基于NC-Link的層次聚類方法,從少量樣本中合成不同的樣本,從而優(yōu)化聚類效果。
目前過采樣算法中使用更為廣泛的是SMOTE,它通過對原始實(shí)例的插值來人工生成新的實(shí)例。張忠林[5] 等提出了BSL采樣對其改進(jìn),將少數(shù)類樣本分為安全樣本、噪聲樣本、邊界樣本,只對邊界樣本進(jìn)行SMOTE插值,再利用Tomek link清洗數(shù)據(jù),使數(shù)據(jù)集基本達(dá)到均衡的同時減少噪聲樣本的數(shù)量。X.Li[6]等提出了一種改進(jìn)的抽樣算法TDSMOTE,將少量樣本分為三個區(qū)域:稠密區(qū)域、邊界區(qū)域和稀疏區(qū)域。不同地區(qū)的樣品采用不同的采樣方法,BSL采樣和TDSMOTE算法能顯著提高非平衡數(shù)據(jù)的分類指標(biāo),但其劃分區(qū)域需要達(dá)到一定的數(shù)據(jù)量。
本文針對現(xiàn)有方法的不足,同時考慮樣本數(shù)量和不平衡數(shù)據(jù)比例,提出一種依據(jù)統(tǒng)計(jì)學(xué)的過采樣方法,基于條件熵和IFIDF來生成新的人工實(shí)例,可以避免產(chǎn)生較多的偽樣本。最后將本文提出的方法與SMOTE、ADASYN、SCF-ADASYN、BSMOTE、SMOTE+ENN和SVMOM算法在7個數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)對比,結(jié)果表明所提方法在F-measure、G-mean和AUC上均有一定提高。
1 相關(guān)研究
1.1 條件熵
信息熵的提出解決了對信息的量化度量問題。假設(shè)現(xiàn)有兩個獨(dú)立不相關(guān)的事件x和y,則x和y同時發(fā)生所攜帶的信息I(x,y)為各自攜帶信息的和,即:
[Ix,y=Ix+Iy]? ⑴
x和y同時發(fā)生的概率P(x,y)為各自概率的乘積,即:
[Px,y=PxPy] ⑵
由式⑴和式⑵可以得出:I(x)與P(x)的對數(shù)有關(guān),因此事件x其概率分布P(x)的自信息為:
[Ix=-logPx] ⑶
假設(shè)有隨機(jī)變量X(X=x1,x2,x3,...,xn),其信息熵H(X)是對隨機(jī)變量X不確定的度量,是對所有可能發(fā)生的事件產(chǎn)生信息量的期望,即I(X)關(guān)于概率分布P(x)的期望:
[HX=-PxilogPxi] ⑷
信息熵表示隨機(jī)變量的不確定度,條件熵則表示在某一個條件下,隨機(jī)變量的不確定度。條件熵H(Y|X)表示在已知隨機(jī)變量X的條件下隨機(jī)變量Y的不確定性,由式⑷可得條件熵H(Y|X)的計(jì)算方式為X在給定條件下Y的條件概率分布的熵對X的數(shù)學(xué)期望,即:
[HY|X=x∈XPxHY|x]
[=-x∈XPx(y∈YPy|xlogP(y|x))]
[=-x∈Xy∈YP(x,y)logP(y|x)]? ⑸
此時先按一個新變量的每個值x對原變量進(jìn)行分類,然后在每一個小類y里都計(jì)算一個小熵,每一個小熵乘以各個類別的概率,再求和。每個y的小熵越小,說明在x的這種取值下,y的值越收斂,不確定性越小,條件熵越小,說明在X的各種取值下,Y的值都非常收斂,整體不確定性小。在不均衡樣本中過采樣生成的少數(shù)類樣本要盡可能的準(zhǔn)確,這時就可以計(jì)算特征組合的情況下標(biāo)簽的不確定性,因此,在過采樣時融入條件熵,以提升新增少數(shù)類樣本的準(zhǔn)確率。
1.2 TF-IDF技術(shù)
TF-IDF(term frequency-inverse document frequen-cy)是一種用于信息檢索與數(shù)據(jù)挖掘的常用加權(quán)技術(shù)。TF(Term Frequency)是詞頻,表示詞條在文檔中出現(xiàn)的頻率,IDF(Inverse Document Frequency)是逆文本頻率指數(shù),是一個詞語普遍重要性的度量。TF-IDF是一種統(tǒng)計(jì)方法,用以評估一字詞對于一個文件集或一個語料庫中一份文件的重要程度,對于在某一特定文件里的詞語來說,它的重要性可表示為:
[TF-IDF=TF×IDF] ⑹
[TF=某個詞在文章中出現(xiàn)的次數(shù)文章的總詞數(shù)] ⑺
[IDF=log語料庫的文檔總數(shù)包含該詞的文檔數(shù)+1] ⑻
TF-IDF的主要思想是如果某個詞或短語在一篇文章中出現(xiàn)的頻率TF高且在其他文章中很少出現(xiàn),則認(rèn)為該詞或短語具有很好的類別區(qū)分能力,適合用來分類。TF-IDF傾向于過濾掉常見的詞語,保留重要的詞語。因此,在過采樣時需要考慮TF-IDF的值,保留數(shù)據(jù)特點(diǎn),使采樣生成的數(shù)據(jù)更符合真實(shí)特征。
2 基于條件熵和TF-IDF的非均衡數(shù)據(jù)集過采樣算法
2.1 算法的思想
過采樣的目標(biāo)是從不均衡數(shù)據(jù)集中模仿少數(shù)類樣本特征,制造新的樣本集。一個可行方案是,采用信息論的方法,計(jì)算每種隨機(jī)變量X情況下Y的條件熵,再融合TF-IDF值,保留數(shù)據(jù)特點(diǎn)的同時得到信息量的大小,再根據(jù)得到的值創(chuàng)建新的樣本集。
為了解決正負(fù)樣本不均衡分布造成的分類邊界偏移,訓(xùn)練模型對少數(shù)類樣本學(xué)習(xí)不充分的問題,本文提出了融合條件熵和TF-IDF的過采樣方法-HTTE(Oversampling technology based on heat function and TF-IDF)。HTTE算法首先指定數(shù)據(jù)屬性的區(qū)間大小,劃分區(qū)間段,對每一區(qū)間段計(jì)算信息熵H(X),再計(jì)算已知隨機(jī)變量X條件下隨機(jī)變量Y的不確定性,即X給定條件下,Y的條件概率分布的熵對X的數(shù)學(xué)期望。由于低詞頻對于信息的影響很多,一個詞如果頻次不夠多,又主要出現(xiàn)在某個類別里,那么就會出現(xiàn)較低的條件熵,從而給篩選帶來噪音。為了避免出現(xiàn)這種情況,可先用條件熵的結(jié)果乘上1/TF-IDF因子,從而將特征頻率與特征分布考慮進(jìn)去;然后再按照結(jié)果值大小進(jìn)行排序。本文提出的HTTE算法可以讓特征更明顯,計(jì)算復(fù)雜,適用于小規(guī)模數(shù)據(jù)集。
2.2 算法的構(gòu)建
構(gòu)建HTTE算法需先指定參數(shù),接著將連續(xù)型數(shù)據(jù)列劃分為區(qū)域塊,取區(qū)域塊中值替換原數(shù)據(jù),再統(tǒng)計(jì)替換后的數(shù)據(jù)組合種類,計(jì)算其條件熵,最后判斷該組合條件下結(jié)果類的不確定性。
其中取多數(shù)類數(shù)量為0的特征組合,即該特征為少數(shù)類的特征,要將條件熵乘上1/TF-IDF因子,結(jié)果按升序排序,再根據(jù)參數(shù)取排序后的數(shù)量,隨機(jī)取一個安全樣本,將連續(xù)數(shù)據(jù)恢復(fù)區(qū)間塊,取區(qū)間塊內(nèi)的任意值,構(gòu)成新樣本。具體步驟如下。
Step1 對數(shù)據(jù)的每個特征進(jìn)行預(yù)處理。需要將連續(xù)型數(shù)據(jù)離散化,對離散數(shù)據(jù)進(jìn)行獨(dú)熱編碼,進(jìn)行分段標(biāo)記處理。
連續(xù)型數(shù)據(jù)分段標(biāo)記的描述如下:
Step2 拼接數(shù)據(jù)樣本中多維特征,得到組合方式X,計(jì)算每種組合方式的數(shù)量sumi,標(biāo)簽類別Y。
Step3 按照式⑸計(jì)算條件熵。
計(jì)算條件熵的描述如下:
[方法:計(jì)算條件熵 輸入:組合方式X,數(shù)量SUM,標(biāo)簽類別Y 輸出:H(Y/X) (1) for X do (2)? ? for Y do (3) [H(yj|xi)=-P(yj|xi)×logP(Yj|xi)] (4)? ? ?end for (5) end for (6) 得到每種特征組合條件下的信息熵 ]
Step4 對于每種組合對應(yīng)的標(biāo)簽僅為少數(shù)類標(biāo)簽的組合,按照式⑹⑺⑻計(jì)算其TF-IDF值,融合條件熵值和TF-IDF值,得到篩選后的組合方式X_new和新的數(shù)據(jù)選擇指標(biāo)value=條件熵/TF-IDF。
計(jì)算數(shù)據(jù)選擇指標(biāo)value的描述如下:
[方法:計(jì)算數(shù)據(jù)選擇指標(biāo)value 輸入:組合方式X,標(biāo)簽類別Y,條件熵H_Y_X 輸出:組合方式X_new和value值 (1) for X do (2)? ?計(jì)算X下每種標(biāo)簽Y的數(shù)量 (3)? ?if 多數(shù)類標(biāo)簽的數(shù)量 == 0 (4)? ? ? ?TF = ∑xi在少數(shù)類出現(xiàn)/∑少數(shù)類 (5)? ? ? ?IDF = log(∑X/∑(xi+1)) (6)? ? ? ?value=xi條件下的信息熵/(TF×IDF) (7)? ? ? ?X_new = X (8) end for (9) 得到新的數(shù)據(jù)選擇指標(biāo):組合方式X_new和value值 ]
Step5 對value值進(jìn)行升序排序,根據(jù)輸入的參數(shù)split_num和多數(shù)類樣本與少數(shù)類樣本的數(shù)量差diff進(jìn)行計(jì)算,如果經(jīng)過Step4得到的組合方式X_new的數(shù)量[X_new
Step6 創(chuàng)建少數(shù)類樣本。隨機(jī)取一個安全樣本,將連續(xù)數(shù)據(jù)恢復(fù)區(qū)間塊,取區(qū)間塊內(nèi)的任意值,生成新少數(shù)類樣本。
3 實(shí)驗(yàn)結(jié)果與分析
3.1 數(shù)據(jù)集描述
從國際機(jī)器學(xué)習(xí)標(biāo)準(zhǔn)庫UCI中選取七個不均衡數(shù)據(jù)集ThoraricSurgery、Pima、Haberman、Transfusion、credit、German、Ionosphere進(jìn)行對比實(shí)驗(yàn),各數(shù)據(jù)集的屬性和類別信息見表1。
3.2 數(shù)據(jù)集劃分和評價指標(biāo)
本實(shí)驗(yàn)將在上述7個數(shù)據(jù)集上進(jìn)行對比實(shí)驗(yàn)。將正負(fù)樣本進(jìn)行分層采樣,按7:3的比例劃分訓(xùn)練集和測試集,表2為劃分后的數(shù)據(jù)量情況。
由于少數(shù)類數(shù)據(jù)的分類評價在不均衡數(shù)據(jù)分類評價中十分重要,本文使用F-measure、G-mean、AUC作為評價指標(biāo),來衡量分類結(jié)果,式⑼為F-measure的計(jì)算公式,式⑽為總體性能指標(biāo)G-Mean的計(jì)算公式。
[F-measure=(β2+1)×Precision×Recallβ2×Precision+Recall] ⑼
其中,Precision為精確率,Recall為召回率;β為調(diào)和參數(shù)值。在數(shù)據(jù)集分布不均勻的二分類問題中,一般取β=1,當(dāng)精確率和召回率同時上升時,F(xiàn)-measure才會提升。
[G-mean=Precision×Recall] ⑽
G-Mean數(shù)值越大說明精確率和召回率越高,效果越好。ROC曲線以假正率為橫坐標(biāo),以真正率為縱坐標(biāo),在數(shù)據(jù)極其不均衡的情況下,ROC曲線下面積具有很好的魯棒性,故以其曲線下的AUC值作為評價指標(biāo)。
此外由于提出的算法需要調(diào)參,當(dāng)著重少數(shù)樣本的正確率時,PR曲線會因?yàn)镻recision的存在而不斷地將FP的影響顯現(xiàn)出來,因此本文以F-measure、G-mean和AUC(ROC曲線)來評價分類器的性能,以AUC(PR曲線)來選擇參數(shù)。
3.3 算法性能比較
在實(shí)驗(yàn)環(huán)境上,選擇Windows 10操作系統(tǒng),編程語言使用Python 3.6,深度學(xué)習(xí)框架選擇Pytorch 1.0。但由于計(jì)算資源有限,結(jié)合使用的糖尿病數(shù)據(jù)集的數(shù)據(jù)量,BERT的模型參數(shù)選擇使用基準(zhǔn)模型參數(shù)。分類階段均采用集成算法中準(zhǔn)確率和時間效率相對較好的RF算法,數(shù)據(jù)處理階段采用SMOTE算法[7] 、ADASYN算法[8] 、SCF-ADASYN算法[9] 、SMOTE結(jié)合不同的降維方法(BSMOTE[10] 、SMOTE_ENN[11] 、SVMOM[12] ),分別與數(shù)據(jù)預(yù)處理階段算法HTTE進(jìn)行對比。使用F-measure、G-mean、AUC作為評價指標(biāo),取5次結(jié)果的平均值作為最終結(jié)果。表3為幾種方法得到的實(shí)驗(yàn)結(jié)果,為了可以清楚地對比各方法得到的結(jié)果,以數(shù)據(jù)預(yù)處理階段采用的算法為橫坐標(biāo),評價指標(biāo)值為縱坐標(biāo),不同顏色表示使用的不同數(shù)據(jù)集,得到實(shí)驗(yàn)結(jié)果對比如圖1所示。
綜合圖1中的三個評價指標(biāo)圖可以看出本文提出的采樣方法HTTE在數(shù)據(jù)集D1和D3上均明顯優(yōu)于其他算法,在D4、D5、D6和D7上優(yōu)于其他算法,在D2數(shù)據(jù)集上僅次于SCF-ADASYN。因此,HTTE算法在不同比例的不均衡數(shù)據(jù)集上均具有較好的分類效果。
以ThoraricSurgery數(shù)據(jù)集為例,該數(shù)據(jù)集共三個連續(xù)型數(shù)值的屬性,需要給出四個參數(shù),自定義每個參數(shù)的取值范圍為[1,10],得到參數(shù)組合共104種,每個參數(shù)從取值范圍的最大值開始遞減取值,為避免產(chǎn)生過擬合,以PR曲線的AUC值作為評價指標(biāo),當(dāng)每種參數(shù)組合大于當(dāng)前最大的AUC值時,則記錄到表4中。
由表4可以發(fā)現(xiàn)選擇不同的參數(shù)得到的AUC(PR)在[0.4735,0.9002]范圍之間,相差較大,所以算法對于參數(shù)的選擇很關(guān)鍵,實(shí)驗(yàn)中各數(shù)據(jù)集的最優(yōu)參數(shù)配置如表5所示。
另外為了對比各算法的時間性能,表6記錄了各算法采樣的時間,從表6中可以發(fā)現(xiàn)HTTE所耗費(fèi)的時間略優(yōu)于SMOTE、ADASYN和SCF-ADASYN,優(yōu)于BSMOTE、SMOTE+ENN和SVMOM,所以HTTE在時間上具有一定的優(yōu)勢。
4 結(jié)束語
本文針對非均衡數(shù)據(jù)帶來的分類器對少數(shù)類樣本學(xué)習(xí)不充分問題,提出了一種基于條件熵和TF-IDF的過采樣方法(HTTE)。HTTE首先指定參數(shù)組合數(shù)據(jù)特征,然后計(jì)算每種組合的條件熵,判斷每種組合條件下類的不確定性,為了避免低詞頻帶來的噪音,再將條件熵結(jié)果乘上1/TF-IDF因子,結(jié)果按升序排序,最后結(jié)合參數(shù)選定過采樣依據(jù)的特征組合,用以構(gòu)造新數(shù)據(jù),使正負(fù)樣本平衡。對比實(shí)驗(yàn)表明提出的方法適用于大多數(shù)不均衡數(shù)據(jù)集,可以盡可能多地保留原數(shù)據(jù)特征,從F-measure、G-mean和AUC評價方式出發(fā),該算法在不同比例的數(shù)據(jù)集上都可以取得很好的效果,但是,此算法比較依賴于參數(shù)的選擇,連續(xù)型屬性越多的數(shù)據(jù)需要配置的參數(shù)越多,因此優(yōu)化參數(shù)是后續(xù)研究的重點(diǎn)。
參考文獻(xiàn)(References):
[1] C. Wang, J. Zhou, H. Huang and H. Shen, "Classification
Algorithms for Unbalanced High-Dimensional Data with Hyperbox Vertex Over-Sampling Iterative Support Vector Machine Approach," 2020 Chinese Control And Decision Conference (CCDC), Hefei, China,2020:2294-2299
[2] G. Sun, J. Liu, W. Mengxue, W. Zhongxin, Z. Jia and G.
Xiaowen, "An Ensemble Classification Algorithm for Imbalanced Text Data Streams,"2020 IEEE International Conference on Artificial Intelligence and Computer Applications (ICAICA), Dalian, China,2020:1073-1076
[3] W. Pei, B. Xue, L. Shang and M. Zhang, "A Threshold-
free Classification Mechanism in Genetic Programming for High-dimensional Unbalanced Classification," 2020 IEEE Congress on Evolutionary Computation (CEC), Glasgow, United Kingdom,2020:1-8
[4] C. Tian, L. Zhou, S. Zhang and Y. Zhao, "A New Majority
Weighted Minority Oversampling Technique for Classification of Imbalanced Datasets," 2020 International Conference on Big Data, Artificial Intelligence and Internet of Things Engineering (ICBAIE), Fuzhou, China,2020:154-157
[5] 張忠林,曹婷婷.基于重采樣與特征選擇的不均衡數(shù)據(jù)分類
算法[J].小型微型計(jì)算機(jī)系統(tǒng),2020,41(6):1327-1333
[6] X. Li and Q. Zhou, "Research on Improving SMOTE
Algorithms for Unbalanced Data Set Classification," 2019 International Conference on Electronic Engineering and Informatics (EEI), Nanjing, China,2019:476-480
[7] 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(1):321-357
[8] He H, Bai Y, Garcia E A, et al. ADASYN: Adaptive
synthetic sampling approach for imbalanced learning [C]. International Joint Conference on Neural Network,2008:1322-1328
[9] 劉金平,周嘉銘,賀俊賓,等.面向不均衡數(shù)據(jù)的融合譜聚類的
自適應(yīng)過采樣法[J].智能系統(tǒng)學(xué)報(bào),2020:1-8
[10] BunkhumpornpatC,SinapiromsaranK,LursinsapC,etal.
DBSMOTE:Density-BasedSynthetic Minority Over-sampling TEchnique[J]. Applied Intelligence, 2012,36(3):664-684
[11] Batista G E, Prati R C, Monard M C, et al. A study of the
behavior of several methods for balancing machine learning training data[J]. Sigkdd Explorations,2004,6(1):20-29
[12] 張忠林,馮宜邦,趙中愷.一種基于SVM的非均衡數(shù)據(jù)集過
采樣方法[J].計(jì)算機(jī)工程與應(yīng)用,2020:1-10