周玉 岳學(xué)震 孫紅玉
摘 要:數(shù)據(jù)集類別不平衡問題是分類領(lǐng)域的重要問題之一,每個(gè)數(shù)據(jù)集的不平衡指數(shù)都與其自身有著緊密的聯(lián)系,是數(shù)據(jù)集的重要標(biāo)志。面對(duì)不平衡數(shù)據(jù)集分類設(shè)計(jì)問題,提出了一種改進(jìn)AdaBoost算法(enhanced AdaBoost,EAdaBoost)。該算法將不平衡指數(shù)和不平衡數(shù)據(jù)集中較為重要的少數(shù)類分類正確率考慮到算法的迭代過程中,改進(jìn)了基分類器的權(quán)重更新策略,進(jìn)而提高對(duì)不平衡數(shù)據(jù)集的分類性能?;贓AdaBoost的不平衡數(shù)據(jù)集分類設(shè)計(jì)方法可以根據(jù)樣本的不平衡指數(shù),確定基分類器的權(quán)重參數(shù),進(jìn)而提高分類器性能。利用該方法,結(jié)合多個(gè)經(jīng)典分類器,在人工數(shù)據(jù)集和標(biāo)準(zhǔn)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)分析,并對(duì)比相關(guān)方法,結(jié)果表明,基于EAdaBoost的不平衡數(shù)據(jù)集分類設(shè)計(jì)方法能夠有效提高不平衡數(shù)據(jù)集的分類性能。
關(guān)鍵詞:不平衡分類;改進(jìn)AdaBoost;不平衡指數(shù);權(quán)重
中圖分類號(hào):TP183?? 文獻(xiàn)標(biāo)志碼:A?? 文章編號(hào):1001-3695(2023)12-007-3566-06
doi:10.19734/j.issn.10013695.2023.04.0163
Classification design method of unbalanced data sets considering unbalanced index
Abstract:The imbalance of data sets category is one of the important problems in the classification field.The unbalanced index of each data set is closely related to itself,it is a key indicator of data sets.To deal with the classification design of unbalanced data sets,this paper proposed an enhanced AdaBoost(EAdaBoost) algorithm.In the process of iteration,the algorithm took into account unbalanced index,and the classification accuracy of the minority classed that was more important in unbalanced data sets improving the weight updating strategy of the base classifier,and thus promoting the classification performance of unbalanced data sets.The classification design method of unbalanced data sets based on EAdaBoost could determine the weight parameters of the base classifier according to the sample unbalanced index,so as to improve the performance of the classifier.With this method that was combined with multiple classical classifiers,this paper carried out experimental analysis in terms of artificial data sets and standard data sets,and compared with relevant methods.The results show that the classification design method of unbalanced data sets based on EAdaBoost can effectively improve the classification performance of unbalanced data sets.
Key words:unbalanced classification;enhanced AdaBoost;unbalanced index;weight
0 引言
一個(gè)數(shù)據(jù)集被稱為不平衡數(shù)據(jù)集,必須滿足兩個(gè)條件:各類別數(shù)量不平衡和相同樣本量的信息量不平衡,或誤分類成本不均衡。將此類數(shù)據(jù)集用于訓(xùn)練得到模型后,對(duì)新的樣本進(jìn)行類別評(píng)估的問題稱為不平衡數(shù)據(jù)分類問題[1]。對(duì)于數(shù)據(jù)集中樣本數(shù)量較多的多數(shù)類樣本一般也稱為負(fù)類,反之少數(shù)類樣本稱為正類。不同于普通的數(shù)據(jù)集分類問題,當(dāng)數(shù)據(jù)的不平衡比例過大時(shí),使用較為常見且高效的分類器極有可能將所有的樣本數(shù)據(jù)識(shí)別為多數(shù)類[2]。假設(shè)某數(shù)據(jù)集的多數(shù)類與少數(shù)類樣本比例大于9,將該數(shù)據(jù)集進(jìn)行分類后得到的全局正確率可能會(huì)達(dá)到90%或更高。但該準(zhǔn)確率大概率是由大多數(shù)的多數(shù)類樣本識(shí)別正確所得,若該情況下少數(shù)類樣本均識(shí)別錯(cuò)誤,全局準(zhǔn)確率也不一定會(huì)低于90%,此時(shí)分類器針對(duì)該數(shù)據(jù)集的分類結(jié)果并不具有參考意義。最具特點(diǎn)的例子是支持向量機(jī),如圖1所示。
對(duì)不平衡數(shù)據(jù)集分類后,得到的超平面會(huì)側(cè)向少數(shù)類數(shù)據(jù),導(dǎo)致部分少數(shù)類樣本被誤判為多數(shù)類。目前,數(shù)據(jù)集不平衡分類問題廣泛存在于醫(yī)學(xué)[3,4]、經(jīng)濟(jì)[5~7]和工業(yè)[8,9]等領(lǐng)域。二維不平衡數(shù)據(jù)集分類問題大致可描述如下:
數(shù)據(jù)集S=(xi,yi),…,(xn,yn),yi={-1,1},用S+表示數(shù)據(jù)集中的少數(shù)類樣本(正類),S-表示多數(shù)類樣本(負(fù)類),S+的元素?cái)?shù)目小于S-的元素?cái)?shù)目,b=S-/S+,代表數(shù)據(jù)集不平衡的程度,稱為數(shù)據(jù)集的不平衡指數(shù)。不平衡數(shù)據(jù)集的分類問題,主要體現(xiàn)在數(shù)據(jù)集自身樣本類別不均衡和傳統(tǒng)分類方法局限性兩方面。
在數(shù)據(jù)層面,不平衡分類的問題往往表現(xiàn)在少數(shù)類樣本少且信息有限上,分類器很難在訓(xùn)練過程中充分學(xué)習(xí)到少數(shù)類的特性,使得少數(shù)類難以被識(shí)別。另外,不平衡數(shù)據(jù)集的多數(shù)類與少數(shù)類樣本邊界較為模糊,更導(dǎo)致了不平衡數(shù)據(jù)集的分類困難[10]。文獻(xiàn)[11]提出了一種簡單但有效的基于離群點(diǎn)檢測(cè)的過采樣技術(shù)(ODBOT)來處理多類不平衡問題,通過在少數(shù)類中進(jìn)行聚類來檢測(cè)離群樣本,然后根據(jù)這些離群樣本生成合成樣本,降低了不同類別區(qū)域之間重疊的風(fēng)險(xiǎn),構(gòu)建了效果更優(yōu)的分類模型。合成少數(shù)類過采樣技術(shù)SMOTE[12]被廣泛應(yīng)用于不平衡數(shù)據(jù)集的分類問題中,其采用最近鄰的方法預(yù)先設(shè)定采樣倍率,隨機(jī)選擇少數(shù)類的近鄰樣本進(jìn)行插值,產(chǎn)生新的少數(shù)類數(shù)據(jù)并添加到數(shù)據(jù)集中,對(duì)隨機(jī)過采樣容易導(dǎo)致樣本過擬合的問題起到了一定的改善作用,但這也導(dǎo)致SMOTE會(huì)過度泛化少數(shù)類,反而造成對(duì)多數(shù)類樣本的誤分類,影響模型的整體均衡性[13]。文獻(xiàn)[14]提出的利用局部隨機(jī)仿射陰影采樣方法,克服了SMOTE的這一局限性。Maldonado等人[15]認(rèn)為SMOTE在定義鄰域以創(chuàng)建新的少數(shù)樣本時(shí)存在歐氏距離的使用可能不適用于高維環(huán)境的問題,提出了一種新的SMOTElike方法,利用加權(quán)Minkowski距離為少數(shù)類的每個(gè)樣本定義鄰域。這種方法優(yōu)先考慮那些與分類任務(wù)更相關(guān)的特征,所以相較于SMOTE可以得到更好的鄰域。多個(gè)不平衡數(shù)據(jù)集上的實(shí)驗(yàn)表明了SMOTElike與傳統(tǒng)的SMOTE方法和其他SMOTE變體相比,取得了最好的性能,在不增加算法復(fù)雜度的情況下,充分處理了類重疊等問題。文獻(xiàn)[16]將CGAN與SMOTEENN相結(jié)合,利用由SMOTEENN生成的樣本集訓(xùn)練后的CGAN重新生成更為優(yōu)質(zhì)的少數(shù)類樣本,克服了采樣后樣本數(shù)據(jù)分布與原數(shù)據(jù)不同造成的分類性能較差的問題。
在分類器層面,大多數(shù)傳統(tǒng)分類器使用最小經(jīng)驗(yàn)風(fēng)險(xiǎn)或結(jié)構(gòu)風(fēng)險(xiǎn)作為學(xué)習(xí)目標(biāo),以減少算法識(shí)別錯(cuò)誤的概率或增加類別間隔。文獻(xiàn)[17]提出了一種成本敏感的不平衡類層次分類方法(CSHCIC),將一個(gè)大的層次分類任務(wù)按層次劃分為幾個(gè)小的子分類任務(wù),更精確地使用不同子分類樣本的數(shù)量來建立成本敏感因子,并使用邏輯回歸計(jì)算每個(gè)節(jié)點(diǎn)的概率,使用靈活性因子和樣本數(shù)量來更新成本敏感因子,構(gòu)建了一個(gè)成本敏感因子來平衡多數(shù)類和少數(shù)類之間的關(guān)系。實(shí)驗(yàn)結(jié)果表明,成本敏感的層次分類方法在處理不平衡數(shù)據(jù)集分類問題上取得了優(yōu)異的性能。文獻(xiàn)[18]提出的基于GVM(general vector machine)和BALO(binary ant lion optimizer)算法的代價(jià)敏感特征選擇通用向量機(jī)(CFGVM)來解決不平衡分類問題,為不同類別的樣本提供不同的成本權(quán)重,且BALO 算法能夠確定成本權(quán)重并提取更重要的特征,提高了分類性能。文獻(xiàn)[19]提出的基于AdaBoost的AdaImC算法用于解決不平衡數(shù)據(jù)分類問題,利用統(tǒng)計(jì)分析確定成本參數(shù)值,并提出一種證明AdaImC算法的統(tǒng)計(jì)方法,驗(yàn)證代價(jià)參數(shù)之間的內(nèi)在聯(lián)系。文獻(xiàn)[20]提出一種基于密度的欠采樣算法(DBU),并將其與AdaBoost相結(jié)合,開發(fā)出了一種同時(shí)處理噪聲和類不平衡問題的欠采樣策略(DBUBoost)。文獻(xiàn)[21]針對(duì)以高爐鐵水含硅量為代表的高爐內(nèi)熱狀態(tài)預(yù)測(cè)的不平衡二元分類問題提出了一種基于AdaBoost的加權(quán)支持向量機(jī),集成預(yù)測(cè)器,并將預(yù)測(cè)的結(jié)果作為指導(dǎo)操作人員及時(shí)判斷高爐熱狀態(tài)的依據(jù)。
針對(duì)不平衡數(shù)據(jù)集分類困難的問題,本文從分類器層面出發(fā),提出了一種基于改進(jìn)AdaBoost的不平衡數(shù)據(jù)分類設(shè)計(jì)方法:a)將數(shù)據(jù)集不平衡指數(shù)b添加到算法迭代過程中,使其在對(duì)不同的數(shù)據(jù)集分類時(shí)能夠更好地完成自適應(yīng)調(diào)整過程;b)對(duì)基分類器權(quán)重的計(jì)算公式進(jìn)行調(diào)整,使其在迭代過程中不僅僅只考慮分類器的錯(cuò)誤率,還將較為重要的少數(shù)類樣本分類正確率納入調(diào)整過程中,使最終得到的強(qiáng)分類器能夠針對(duì)不平衡的問題有更好的分類效果。
1 改進(jìn)的AdaBoost算法
AdaBoost的主要思想是在迭代過程中對(duì)同一個(gè)訓(xùn)練集訓(xùn)練多個(gè)不同的基分類器,并將基分類器組合形成一個(gè)更強(qiáng)的最終分類器。算法訓(xùn)練過程中,樣本分類的正確與否以及上一輪迭代過程中的全局準(zhǔn)確率會(huì)影響并參與更新樣本權(quán)值。帶有更新后權(quán)值的新訓(xùn)練樣本集會(huì)送到下一層的基分類器中,最終將每輪迭代訓(xùn)練所得基分類器集成,構(gòu)成強(qiáng)決策分類器。諸多研究人員基于此對(duì)AdaBoost作出了改進(jìn),在數(shù)據(jù)集的分類與聚類[22] 等問題中展現(xiàn)出優(yōu)越的性能,并在實(shí)際社會(huì)問題中加以應(yīng)用,例如用電檢測(cè)等[23]。
1.1 經(jīng)典AdaBoost算法
算法1 AdaBoost算法
弱分類器ht(x)表示從x到{-1,1}的映射。當(dāng)h*t(x)表示從x到R的任何映射時(shí),都可以使用ht(x)=sign(h*t(x))將h*t(x)傳輸?shù)交诸惼?。?dāng)h*t(x)為零時(shí),將xi隨機(jī)設(shè)為正類或負(fù)類。αt是基分類器的權(quán)重。算法1步驟c)中的αt1是基于最小化指數(shù)損失函數(shù)方法選擇的,這意味著弱分類器越準(zhǔn)確,它在構(gòu)建最終強(qiáng)分類器時(shí)的權(quán)值就越大。步驟d)表示樣本的權(quán)重Dt(i),如果樣本(xi,yi)被ht(x)錯(cuò)誤分類,則在ht+1(x)中的Dt+1(i)>Dt(i)。另一方面,如果樣本ht(x)對(duì)樣本(xi,yi)進(jìn)行了正確分類,則ht+1(x)中的Dt+1(i)
針對(duì)不平衡數(shù)據(jù)集分類問題,S+類別的數(shù)據(jù)樣本是本文的重點(diǎn)所在。但AdaBoost算法只根據(jù)全局錯(cuò)誤率εt來選擇αt1,且對(duì)S+和S-中的所有樣本都使用相同的Dt(i),導(dǎo)致少數(shù)類樣本無法被重視,分類結(jié)果偏向少數(shù)類。近年來,針對(duì)類不平衡問題,相關(guān)學(xué)者提出了幾種改進(jìn)的AdaBoost算法,通常包括調(diào)整Dt(i)或αt1兩種思路。AdaCost[24]和基于代價(jià)敏感[25]學(xué)習(xí)的AdaBoost通過給少數(shù)類增加一個(gè)更高的錯(cuò)誤分類成本來調(diào)整Dt(i),使少數(shù)類樣本得到更多的關(guān)注。
本文通過調(diào)整αt1提出了一種基于AdaBoost的 EAdaBoost(enhance AdaBoost)算法來解決類不平衡問題。改進(jìn)的算法考慮了不平衡指數(shù)b,并用其來確定基分類器權(quán)重更新公式的重要參數(shù),確保算法在執(zhí)行過程中,針對(duì)每一個(gè)不同的數(shù)據(jù)集都能依據(jù)具體的情況進(jìn)行自調(diào)整。同時(shí),本文考慮了分類器對(duì)少數(shù)類樣本的分類正確率,保證EAdaBoost算法在數(shù)據(jù)集處于任何不平衡比例下都能得到更好的分類效果。
1.2 改進(jìn)的AdaBoost算法
1.2.1 EAdaBoost算法
算法2 EAdaBoost算法
否則,若m<5重復(fù)此步驟,若m≥5則重新篩選訓(xùn)練集與測(cè)試集并重新執(zhí)行該算法;
c)確定參數(shù)k的取值:
其中:0.505≤γ<1,取值說明在下文中給出。
d)確定弱分類器的權(quán)重:
f)若t=T,停止迭代。反之t=t+1,并返回步驟b)。
算法2對(duì)不平衡數(shù)據(jù)集分類流程如圖2所示。
在算法2中,αt2包含了兩個(gè)重要的參數(shù)εt和γt,這意味著αt2不僅考慮了全局錯(cuò)誤率,還考慮了分類器對(duì)S+的分類能力。在算法2的步驟b)中,b起著重要的作用,本文構(gòu)建了在γt>0.5的情況下對(duì)全局錯(cuò)誤率εt的限制,若達(dá)不到要求則將重復(fù)執(zhí)行,該限制不但包括數(shù)據(jù)集的不平衡指數(shù),也包括少數(shù)類分類準(zhǔn)確率γt,這能夠保證算法在執(zhí)行過程中,針對(duì)每一個(gè)不同的數(shù)據(jù)集都能依據(jù)具體的情況進(jìn)行自調(diào)整。為了避免隨機(jī)選取訓(xùn)練集和測(cè)試集導(dǎo)致持續(xù)無法滿足條件的極端情況,本文限制一個(gè)條件m,表示在該分類器下重復(fù)無法滿足條件的次數(shù),若大于5,則將重新選取訓(xùn)練集與測(cè)試集,保證算法的順利執(zhí)行。當(dāng)b逐漸增大時(shí),該限制條件也逐步變?nèi)酰跇O端不平衡數(shù)據(jù)問題中也是比較容易滿足的。同時(shí)算法2也包含了使算法具有自適應(yīng)功能的參數(shù)k,其確定方法在下文中給出。
1.2.2 參數(shù)k值的確定
αt2除了包含αt1之外,還增加了含有參數(shù)k的一個(gè)調(diào)整模塊。前半部分根據(jù)全局錯(cuò)誤率來確定基分類器的權(quán)重大小,后半部分根據(jù)分類器對(duì)少數(shù)類樣本的分類正確率對(duì)第t個(gè)基分類器作出適當(dāng)?shù)臋?quán)重調(diào)整。這里給出參數(shù)k的推導(dǎo)過程。令
y1=k ln{γt/(1-γt)}(5)
限制0.5<γt<1(令基分類器對(duì)少數(shù)類的分類準(zhǔn)確率大于隨機(jī)猜測(cè)),可以得到y(tǒng)1的函數(shù)圖像如圖3(a)所示,同時(shí)令αt2對(duì)γt求導(dǎo)得到y(tǒng)2,其不含參數(shù)k的函數(shù)圖像如圖3(b)所示。
不難發(fā)現(xiàn),在0.5<γt<1內(nèi),αt2是關(guān)于γt的增函數(shù),隨著基分類器對(duì)少數(shù)類樣本的分類正確率增大,該分類器將適當(dāng)增加一部分權(quán)重,在最終形成的強(qiáng)分類器中占有更高的比重,并為獲得更好的分類性能提供條件。
其中:k作為一個(gè)正參數(shù),決定了在αt2中調(diào)整部分效果的大小。一個(gè)較大的k值可以使調(diào)整效果更加明顯,但如果不加考慮地增加k值,可能會(huì)導(dǎo)致后半部分的調(diào)整能力蓋過前半部分的主要權(quán)值計(jì)算模塊,這就導(dǎo)致分類器較為極端,反而使分類能力大大降低。k越大,就會(huì)使αt2的第一項(xiàng)比重減少。所以,在提高不平衡數(shù)據(jù)集少數(shù)類樣本分類效果與保證分類器整體性能穩(wěn)定之間,確定一個(gè)適當(dāng)?shù)膋值是很重要的。
其中:|·|表示集合中的元素個(gè)數(shù);n為樣本總量;i=1,…,n。
對(duì)于t=1,…,T-1,當(dāng)添加新的基分類器時(shí),全局訓(xùn)練誤差的上邊界應(yīng)該減小以接收更準(zhǔn)確的最終分類器,這意味著需要Zt<1[27]。在EAdaBoost中,Zt為[28]:
Zt=(1-εt)e-αt2+εteαt2(8)
通過解不等式Zt<1,得
根據(jù)算法2:
0<εt<0.5{(1-γt)/(b+1)}<0.5(10)
因此可改寫為
其中:少數(shù)類樣本的正確識(shí)別率γt∈(0.5,1),且保證k的取值恒大于0,b由給定的數(shù)據(jù)集確定。算法2依據(jù)每個(gè)數(shù)據(jù)集不同的b值計(jì)算并確定各個(gè)數(shù)據(jù)集獨(dú)有的參數(shù)k值,實(shí)現(xiàn)自適應(yīng)。k取值時(shí),應(yīng)滿足上述推導(dǎo)的各個(gè)限制條件,b為定值,為保證算式有意義,0.5不可取,因此本文計(jì)算過程中在γt=0.505到γt=0.999間取值計(jì)算,直至滿足所有限制條件。
2 實(shí)驗(yàn)與結(jié)果分析
為了說明基于改進(jìn)AdaBoost算法在不平衡數(shù)據(jù)集分類性能的優(yōu)勢(shì),這里采用了常用的三個(gè)分類器,即支持向量機(jī)、決策樹和BP神經(jīng)網(wǎng)絡(luò),并將三種不同分類方法作為基分類器進(jìn)行實(shí)驗(yàn)對(duì)比。表1為實(shí)驗(yàn)中采用的所有算法。
2.1 不平衡數(shù)據(jù)集分類評(píng)價(jià)指標(biāo)
評(píng)價(jià)指標(biāo)在評(píng)估分類器的性能方面起著至關(guān)重要的作用。在給出評(píng)價(jià)指標(biāo)之前,需要定義二分類的混淆矩陣[29]?;煜仃嚢藢?shí)際分類和預(yù)測(cè)分類的基本信息,其中TP(ture positive)為識(shí)別正確的少數(shù)類;FP(false positive)為識(shí)別錯(cuò)誤的少數(shù)類;FN(false negatives)為錯(cuò)誤識(shí)別的多數(shù)類;TN(ture negatives)為正確識(shí)別的多數(shù)類?;煜仃嚾绫?所示。
在混淆矩陣的基礎(chǔ)上給出了準(zhǔn)確率(accuracy)這一基本評(píng)價(jià)指標(biāo):
特異性(specificity)和F1也是評(píng)估不平衡數(shù)據(jù)集分類問題的常用指標(biāo),定義為
可見,F(xiàn)1值的確定與召回率(recall)和查準(zhǔn)率(precision)有直接聯(lián)系,當(dāng)召回率和查準(zhǔn)率的值都大時(shí),F(xiàn)1值才會(huì)保證隨之增大。ROC曲線橫軸為FPR,縱軸為TPR,是評(píng)價(jià)不平衡數(shù)據(jù)集分類器性能較為常用的指標(biāo)之一。但同一視圖中的多條ROC曲線可能存在交叉重疊。針對(duì)該問題,研究人員開始使用曲線下面積(area under the curve,AUC)來量化分類器的性能。AUC值越高,性能越好。
本文選擇了五個(gè)指標(biāo)對(duì)算法的性能進(jìn)行評(píng)估,即召回率(recall)、特異性(specificity)、F1、AUC與準(zhǔn)確率(accuracy)。
2.2 人工數(shù)據(jù)集
人工數(shù)據(jù)集使用隨機(jī)的方法生成1 050個(gè)二維數(shù)據(jù)樣本,其中多數(shù)類與少數(shù)類的比例為1 000:50,可得人工數(shù)據(jù)集的不平衡比例為b=20。(xim,yi),i=1,…,1 050,m=1,2,yi∈{-1,1}。i=1,…,1 000時(shí),yi=-1,xi1∈[0,1 000],xi2∈[0,1 000],樣本記為多數(shù)類;i=1 001,…,1 050時(shí),yi=1,xi1∈[300,600],xi2∈[950,1 100],樣本記為少數(shù)類。根據(jù)式(11)及實(shí)驗(yàn)測(cè)試,該數(shù)據(jù)集參數(shù)k取值為0.000 2。人工數(shù)據(jù)集的數(shù)據(jù)分布如圖4所示。
2.2.1 支持向量機(jī)作為基分類器
表3為人工數(shù)據(jù)集(b=20)以SVM為基分類器的實(shí)驗(yàn)結(jié)果。可以看出,本文方法在不失去全局分類能力的情況下,明顯地提高了正類樣本的分類能力。圖5為實(shí)驗(yàn)所得的ROC曲線圖,縱軸為TPR,橫軸為FPR,曲線與坐標(biāo)軸圍成面積所得即為AUC面積。曲線越往左上側(cè)靠近,表明該算法對(duì)少數(shù)類的識(shí)別率越高,面積越大,整體性能越好。
2.2.2 決策樹作為基分類器
表4為人工數(shù)據(jù)集(b=20)以決策樹為基分類器的實(shí)驗(yàn)結(jié)果。雖然本文方法雖然對(duì)少數(shù)類樣本的識(shí)別率相較基于AdaBoost的分類器沒有明顯的提高,但從整體的五個(gè)指標(biāo)來看,改進(jìn)后的算法性能仍舊有提升。從圖6可知,改進(jìn)后的算法保證了少數(shù)類樣本的分類正確率,同時(shí)取得了更高的AUC值。
2.2.3 BP神經(jīng)網(wǎng)絡(luò)作為基分類器
表5為人工數(shù)據(jù)集(b=20)以BP神經(jīng)網(wǎng)絡(luò)為基分類器的實(shí)驗(yàn)結(jié)果,基于EAdaBoost的不平衡數(shù)據(jù)集分類設(shè)計(jì)方法對(duì)少數(shù)類樣本的識(shí)別率有明顯的提高,且F1和AUC兩個(gè)指標(biāo)都取得了三種算法中的最大值。從圖7可知,改進(jìn)后算法的整體性能得到了提升。
2.3 標(biāo)準(zhǔn)數(shù)據(jù)集
本文共選取了九個(gè)標(biāo)準(zhǔn)數(shù)據(jù)集,分別來源于KEEL和UCI數(shù)據(jù)庫,如表6所示,除Glass_2與Newthyroid1來自KEEL數(shù)據(jù)庫外,其余七個(gè)數(shù)據(jù)集均來源于UCI數(shù)據(jù)庫。實(shí)驗(yàn)中每個(gè)數(shù)據(jù)集被隨機(jī)劃分為訓(xùn)練部分和測(cè)試部分。其中訓(xùn)練部分與測(cè)試部分的比例為3:1,同時(shí)數(shù)據(jù)集的劃分過程中,分別對(duì)多數(shù)類和少數(shù)類進(jìn)行隨機(jī)篩選,保證了算法迭代過程中訓(xùn)練集和測(cè)試集的不平衡比例均與原數(shù)據(jù)集一致。
2.3.1 支持向量機(jī)作為基分類器
以支持向量機(jī)作為基分類器時(shí),實(shí)驗(yàn)結(jié)果如表7所示。改進(jìn)后的算法實(shí)現(xiàn)了非常顯著的性能提升,隨著數(shù)據(jù)集不平衡比例增大,改進(jìn)算法對(duì)于各項(xiàng)評(píng)價(jià)指標(biāo)的提升也更為明顯,在F1和AUC兩個(gè)評(píng)價(jià)指標(biāo)上尤為突出。
2.3.2 決策樹作為基分類器
以決策樹作為基分類器時(shí),實(shí)驗(yàn)結(jié)果如表8所示。所有數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果在五個(gè)評(píng)價(jià)指標(biāo)中都至少有四個(gè)是優(yōu)于改進(jìn)之前的,基于EAdaBoost的不平衡數(shù)據(jù)集分類設(shè)計(jì)方法在保證全局正確率的情況下,提升了算法對(duì)于少數(shù)類樣本的識(shí)別能力。
2.3.3 BP神經(jīng)網(wǎng)絡(luò)作為基分類器
以BP神經(jīng)網(wǎng)絡(luò)作為基分類器時(shí),實(shí)驗(yàn)結(jié)果如表9所示。改進(jìn)之后的算法全局正確率和F1度量值都得到了提升,數(shù)據(jù)集的不平衡比例增大,少數(shù)類樣本的識(shí)別率也依舊有著不同程度的增加,結(jié)合前文標(biāo)準(zhǔn)數(shù)據(jù)集和人工數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果,基于EAdaBoost的不平衡數(shù)據(jù)集分類設(shè)計(jì)方法在不平衡數(shù)據(jù)集分類問題上有著良好的表現(xiàn),且在不同不平衡程度的情況下都能在分類時(shí)有穩(wěn)定的性能提升。
2.4 分析與討論
以下從三個(gè)方面對(duì)基于EAdaBoost的不平衡數(shù)據(jù)集分類設(shè)計(jì)方法進(jìn)行分析和討論:
a)基于EAdaBoost的不平衡數(shù)據(jù)集分類設(shè)計(jì)方法根據(jù)每個(gè)數(shù)據(jù)集不同不平衡指數(shù),確定基分類器權(quán)重更新公式的參數(shù)k,使得算法在面對(duì)不同數(shù)據(jù)集時(shí)都能隨時(shí)自調(diào)整,同時(shí)將少數(shù)類樣本的分類正確率考慮進(jìn)算法之中,使得分類效果更好的基分類器占有更大權(quán)重,提升分類性能,具有較強(qiáng)的自適應(yīng)性。
b)本文共選擇了三個(gè)分類器進(jìn)行對(duì)比實(shí)驗(yàn),結(jié)果證明在任意一個(gè)分類器上,基于EAdaBoost的不平衡數(shù)據(jù)集分類設(shè)計(jì)方法
性能都能得到提升,取得了較好的實(shí)驗(yàn)結(jié)果。機(jī)器學(xué)習(xí)中的數(shù)據(jù)龐大,各類數(shù)據(jù)的特差異較大,EAdaBoost算法在實(shí)驗(yàn)中的不同基分類器下都有提升效果,展現(xiàn)了其普適性,能夠廣泛應(yīng)用于各種類型的分類器。
c)從大量的實(shí)驗(yàn)數(shù)據(jù)可知,基于EAdaBoost的不平衡數(shù)據(jù)集分類設(shè)計(jì)方法可在提高少數(shù)類樣本的識(shí)別率的同時(shí)保持一定的全局分類正確率。除此之外,其余各項(xiàng)常用的不平衡數(shù)據(jù)集分類評(píng)價(jià)指標(biāo)均有著不同程度的提升,從實(shí)驗(yàn)中的五個(gè)指標(biāo)可以看出,EAdaBoost算法有著良好的綜合性能。
3 結(jié)束語
類別不平衡問題是許多領(lǐng)域的一個(gè)關(guān)鍵問題,給分類造成了相當(dāng)大的困難。為了解決不平衡類問題的挑戰(zhàn),本文提出了改進(jìn)的AdaBoost算法。該方法對(duì)基分類器的加權(quán)投票進(jìn)行調(diào)整,將每個(gè)數(shù)據(jù)集不同的不平衡指數(shù)b考慮到基分類器的權(quán)重更新公式中,保證了算法對(duì)不同數(shù)據(jù)集有相應(yīng)的自調(diào)節(jié)能力。同時(shí)改進(jìn)后的基分類器權(quán)重更新公式包括了少數(shù)類樣本的分類準(zhǔn)確率,以提高不平衡數(shù)據(jù)集少數(shù)類樣本的關(guān)注度,使少數(shù)類的識(shí)別率得到提高的同時(shí)保證了整體分類性能的提升,取得了較佳的實(shí)驗(yàn)結(jié)果。另外,當(dāng)數(shù)據(jù)集不平衡指數(shù)較大時(shí),也能有非常好的改進(jìn)效果。此方法可以用于許多領(lǐng)域,如醫(yī)療診斷、金融欺詐檢測(cè)、網(wǎng)絡(luò)安全(如網(wǎng)絡(luò)攻擊)、罕見事件預(yù)測(cè)(如自然災(zāi)害、事故)等,在這些領(lǐng)域往往由于罕見疾病發(fā)生率低、欺詐行為少、網(wǎng)絡(luò)攻擊少、自然災(zāi)害罕見等,導(dǎo)致數(shù)據(jù)不平衡,如此便可以嘗試將本文方法用于上述領(lǐng)域,以得到更好的效果。
從實(shí)驗(yàn)結(jié)果中不難發(fā)現(xiàn),針對(duì)不同的數(shù)據(jù)集,算法性能有一定的提升,但不同情況下得到的性能指標(biāo)值仍有較大差距,這與數(shù)據(jù)集自身的特性(如數(shù)據(jù)的空間分布形式、數(shù)據(jù)維度等)也相關(guān)聯(lián)。因此,將數(shù)據(jù)集的自身特性有針對(duì)性地考慮到分類過程中是今后研究的方向所在。
參考文獻(xiàn):
[1]周玉,孫紅玉,房倩,等.不平衡數(shù)據(jù)集分類方法研究綜述[J].計(jì)算機(jī)應(yīng)用研究, 2022, 39(6): 16151621.(Zhou Yu,Sun Hongyu,F(xiàn)ang Qian,et al.Review of imbalanced data classification methods[J].Application Research of Computers,2022,39(6):16151621.)
[2]Stefanowsk I J.Dealing with data difficulty factors while learning from imbalanced data[M].Berlin:Springer,2016:333-363.
[3]Liang Jinglun,Ye Guoliang,Guo Jianwen,et al.Reducing falsepositives in lung nodules detection using balanced datasets[J].Frontiers in Public Health,2021,9:671070.
[4]Jahmunah V,Ng E,San T R,et al.Automated detection of coronary artery disease,myocardial infarction and congestive heart failure using GaborCNN model with ECG signals[J].Computers in Biology and Medicine,2021,134:104457.
[5]Zelenkov Y,Volodarskiy N.Bankruptcy prediction on the base of the unbalanced data using multiobjective selection of classifiers[J].Expert Systems with Applications,2021,185:115559.
[6]Du Xudong,Li Wei,Ruan S M,et al.CUSheterogeneous ensemblebased financial distress prediction for imbalanced dataset with ensemble feature selection[J].Applied Soft Computing,2020,97:106758.
[7]Sanz J A,Bernardo D,Herrera F,et al.A compact evolutionary intervalvalued fuzzy rule based classification system for the modeling and prediction of realworld financial applications with imbalanced data[J].Chemical Geology,2015,90(4):973990.
[8]Li Xingqiu,Jiang Hongkai,Liu Shaowei,et al.A unified framework incorporating predictive generative denoising autoencoder and deep coral network for rolling bearing fault diagnosis with unbalanced data[J].Measurement,2021,178:109345.
[9]Ashiquzzaman A,Lee H,Um T W,et al.Deep learningguided production quality estimation for virtual environmentbased applications[J].Tehnicˇki vjesnik,2020,27(6):18071814.
[10]王曜,鄭列.一種新的基于聚類的試探性SMOTE算法[J].重慶理工大學(xué)學(xué)報(bào):自然科學(xué),2022,36(4):187195.(Wang Yao,Zheng Lie.New tentative SMOTE algorithm based on clustering[J].Journal of Chongqing University of Technology:Natural Science,2022,36(4):187195.)
[11]Ibrahim M H.ODBOT:outlier detection based oversampling technique for imbalanced datasets learning[J].Neural Computing and Applications,2021,33(9):1578115806.
[12]Chawla N V,Bowyer K W,Hall L O,et al.SMOTE:synthetic minority oversampling technique[J].Journal of Artificial Intelligence Research,2002,16(1):321-357.
[13]周晶雨,王士同.對(duì)不平衡數(shù)據(jù)的多源在線遷移學(xué)習(xí)算法[J].計(jì)算機(jī)科學(xué)與探索,2023,17(3):687700.(Zhou Jingyu,Wang Shitong.Multisource online transfer learning algorithm for imbalanced data[J].Journal of Frontiers of Computer Science and Technology,2023,17(3):687700.)
[14]Saptarshi B,Narek D,Markus W,et al.LoRAS:an oversampling approach for imbalanced datasets[J].Machine Learning,2021,110:279301.
[15]Maldonado S,Vairetti C,F(xiàn)ernandez A,et al.FWSMOTE:a featureweighted oversampling approach for imbalanced classification[J].Pattern Recognition,2022,124:108511.
[16]劉寧,朱波,陰艷超,等.一種混合CGAN與SMOTEENN的不平衡數(shù)據(jù)處理方法[J].控制與決策,2023,38(9):26143621.(Liu Ning,Zhu Bo,Yin Yanchao,et al.An imbalabced data processing method based on hybrid CGAN and SMOTEENN[J].Control and Decision,2023,38(9):26142621.)
[17]Zheng Weijie,Zhao Hong.Costsensitive hierarchical classification for imbalance classes[J].Applied Intelligence,2020,50:23282338.
[18]Feng Fang,Li Kuanching,Jun Shen,et al.Using costsensitive learning and feature selection algorithms to improve the performance of imbalanced classification[J].IEEE Access,2020,8:6997969996.
[19]Bei Honghan,Wang Yajie,Ren Zhaonuo, et al.A statistical approach to costsensitive AdaBoost for imbalanced data classification[J].Mathematical Problems in Engineering,2021,2021:120.
[20]Hou Yun,Li Li,Li Bailin,et al.An antinoise ensemble algorithm for imbalance classification[J].Intelligent Data Analysis,2019,23(6):12051217.
[21]Luo Shihua,Dai Zian,Chen Tianxin,et al.A weighted SVM ensemble predictor based on AdaBoost for blast furnace ironmaking process[J].Applied Intelligence,2020,50:112.
[22]Deng Xiaoheng,Xu Yuebin,Chen Lingchi,et al.Dynamic clustering method for imbalanced learning based on AdaBoost[J].The Journal of Supercomputing,2020,76(12):123.
[23]Qu Zhijian,Liu Huaxin,Wang Zixiao,et al.A combined genetic optimization with AdaBoost ensemble model for anomaly detection in buildings electricity consumption[J].Energy & Buildings,2021,248:111193.
[24]Cao Peng,Li Bo.A threedimensional method for detection of pulmonary nodules by AdaCost[C]//Proc of IEEE International Conference on Intelligent Computing and Intelligent Systems.2011:427431.
[25]閆明松,周志華.代價(jià)敏感分類算法的實(shí)驗(yàn)比較[J].模式識(shí)別與人工智能,2005,18(5):628635.(Yan Mingsong,Zhou Zhihua.An empirical comparative study of costsensitive classification algorithms[J].Pattern Recognition and Artificial Intelligence,2005,18(5):628-635.)
[26]Schapire R E,Singer Y.Improved boosting algorithms using confidencerated predictions[J].Machine Learning,1999,37(3):297-336.
[27]Li Chuang,Ding Xiaoqing,Wu Youshou.Revised AdaBoost algorithmAD AdaBoost[J].Chinese Journal of Computers,2007,30(1):103109.
[28]Peter H.Machine learning in action[M].[S.l.]:Manning Publications Co.,2012.
[29]楊杏麗.分類學(xué)習(xí)算法的性能度量指標(biāo)綜述[J].計(jì)算機(jī)科學(xué),2021,48(8):209219.(Yang Xingli.Survey for performance measure index of classification learning algorithm[J].Computer Science,2021,48(8):209219.