田鴻朋, 張 震, 張思源, 肖宗榮, 董佳兵
(鄭州大學(xué) 電氣與信息工程學(xué)院,河南 鄭州 450001)
不平衡數(shù)據(jù)是指數(shù)據(jù)集不同類(lèi)間的數(shù)據(jù)分布不均衡,其中某一類(lèi)或多類(lèi)的樣本數(shù)量遠(yuǎn)遠(yuǎn)超過(guò)其他類(lèi)[1]。例如,在網(wǎng)絡(luò)安全中,異常行為通常只占一小部分,而大多數(shù)行為都是正常的。一般來(lái)說(shuō),相較于大類(lèi)中的樣本,小類(lèi)中的樣本可能攜帶罕見(jiàn)但更有用的信息[2]。然而,一些基礎(chǔ)分類(lèi)模型,如支持向量機(jī)(SVM)分類(lèi)器[3],致力于最大限度提高整體分類(lèi)精度,大多數(shù)小類(lèi)樣本被分配到大類(lèi),因此對(duì)不平衡數(shù)據(jù)分類(lèi)的性能較差[4]。
近年來(lái),不平衡數(shù)據(jù)分類(lèi)問(wèn)題備受關(guān)注,研究成果豐碩,大致可以分為3類(lèi):采樣方法[5]、代價(jià)敏感學(xué)習(xí)方法[6]和集成學(xué)習(xí)方法[7]。采樣方法側(cè)重于對(duì)不平衡數(shù)據(jù)進(jìn)行預(yù)處理,使類(lèi)間數(shù)據(jù)達(dá)到均衡,然后就可以用基礎(chǔ)分類(lèi)模型分類(lèi)。代價(jià)敏感的學(xué)習(xí)方法是對(duì)小類(lèi)樣本分配較高權(quán)重,這樣可以減小對(duì)其分類(lèi)的錯(cuò)誤率。集成學(xué)習(xí)方法結(jié)合了不同子集訓(xùn)練的多個(gè)分類(lèi)模型,相互間提供了互補(bǔ)性信息,解決了單一分類(lèi)模型對(duì)不平衡數(shù)據(jù)分類(lèi)性能較差的問(wèn)題。
雖然以上的不平衡數(shù)據(jù)分類(lèi)方法在一些場(chǎng)景中具有一定的有效性,但是這些方法只考慮全局最優(yōu),并不一定適合每個(gè)測(cè)試數(shù)據(jù)。例如,位于不同類(lèi)別重疊區(qū)域的數(shù)據(jù)就難以準(zhǔn)確劃分,這些數(shù)據(jù)分布的特殊性導(dǎo)致其類(lèi)別存在一定的不確定性[8],因此容易被錯(cuò)誤分類(lèi)。
針對(duì)上述問(wèn)題,提出了一種復(fù)合可靠性分析下的不平衡數(shù)據(jù)證據(jù)分類(lèi)方法。首先,為了評(píng)估分類(lèi)模型的整體性能,本文設(shè)計(jì)了一種全局可靠性評(píng)估策略,在對(duì)大類(lèi)多次降采樣的基礎(chǔ)上,分別訓(xùn)練多個(gè)分類(lèi)模型,通過(guò)計(jì)算采樣前后數(shù)據(jù)分布的差異性來(lái)評(píng)估不同分類(lèi)模型的全局可靠性。其次,為了提升分類(lèi)模型對(duì)每個(gè)測(cè)試數(shù)據(jù)的局部分類(lèi)性能,本文設(shè)計(jì)了一種局部可靠性評(píng)估策略,通過(guò)評(píng)估分類(lèi)模型對(duì)測(cè)試數(shù)據(jù)鄰域分類(lèi)結(jié)果的性能來(lái)量化該測(cè)試數(shù)據(jù)被正確分類(lèi)的可靠性,這樣能夠使分類(lèi)模型對(duì)每個(gè)測(cè)試數(shù)據(jù)實(shí)現(xiàn)局部最優(yōu)。最后,在證據(jù)推理框架下[9],結(jié)合全局可靠性因子和局部可靠性因子對(duì)不同分類(lèi)模型的結(jié)果做折扣融合并決策分析。
采樣方法側(cè)重于對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)處理,以解決不平衡的問(wèn)題,大致可以分為過(guò)采樣和降采樣兩種方法。過(guò)采樣方法[10-11]致力于生成數(shù)據(jù)來(lái)增加小類(lèi)中的樣本數(shù)量。例如,隨機(jī)過(guò)采樣方法(random over-sampling approach, ROS)[10]通過(guò)隨機(jī)抽樣的方式選取少量數(shù)據(jù),然后將所選樣本添加到原始小類(lèi)中。降采樣方法[12-13]致力于去除一部分樣本來(lái)減少大類(lèi)樣本的數(shù)量。例如,隨機(jī)欠采樣方法(random undersampling approach, RUS)[12]隨機(jī)選取一些與小類(lèi)樣本數(shù)量相同的大類(lèi)樣本,去掉其他樣本,可能會(huì)丟失一些重要信息。
與采樣方法不同,集成學(xué)習(xí)方法是將多個(gè)互補(bǔ)分類(lèi)器組合在一起,以提高分類(lèi)模型的整體性能。EasyensEmble是Liu等[14]提出的一種帶雙層結(jié)構(gòu)的集成學(xué)習(xí)算法,先將大類(lèi)進(jìn)行欠采樣,采樣出多個(gè)子集分別與小類(lèi)結(jié)合成多個(gè)子訓(xùn)練集,再以AdaBoost算法對(duì)每個(gè)子訓(xùn)練集進(jìn)行訓(xùn)練從而生成基礎(chǔ)分類(lèi)模型。
假設(shè)測(cè)試集X={x1,x2,…,xH}在辨識(shí)框架Ω={ωmin,ωmaj}下被訓(xùn)練集Y={y1,y2,…,yG}訓(xùn)練得到的模型分類(lèi),Ymaj、Ymin分別表示數(shù)據(jù)量多的大類(lèi)樣本集合和數(shù)據(jù)量少的小類(lèi)樣本集合。
T=[IR];
(1)
(2)
式中:IR為可用于測(cè)量不平衡數(shù)據(jù)不平衡程度的不平衡比率;|· |表示勢(shì),用于統(tǒng)計(jì)集合中元素?cái)?shù)量;[·]為四舍五入符號(hào)。
每個(gè)子集的樣本數(shù)與Ymin的樣本數(shù)相同,并與Ymaj組合生成新的訓(xùn)練子集{Y1,Y2,…,YT}。每個(gè)訓(xùn)練子集訓(xùn)練一個(gè)基本分類(lèi)模型可用于對(duì)待測(cè)樣本xi分類(lèi),定義為
(3)
(4)
(5)
可以看出,訓(xùn)練子集與原始數(shù)據(jù)分布間的差異性越大,對(duì)應(yīng)分類(lèi)結(jié)果的全局可靠性αit越小。
全局可靠性反映的是分類(lèi)模型的全局最優(yōu)化性能,但是由于不同模型對(duì)于特定測(cè)試樣本的分類(lèi)結(jié)果不同,因此還需要評(píng)估模型對(duì)每個(gè)測(cè)試樣本的局部性能,這將在下一節(jié)中詳細(xì)介紹。
圖1 不同分類(lèi)模型的可靠性示意圖Figure 1 Illustration of the reliability of different classifiers
(6)
(7)
可以看出,分類(lèi)模型Γt分類(lèi)xi近鄰的分類(lèi)性能越好,其分類(lèi)xi得到分類(lèi)結(jié)果的局部可靠性也就越大。
至此,樣本xi分類(lèi)結(jié)果的全局可靠性以及局部可靠性都已計(jì)算得到,在下一節(jié)中會(huì)詳細(xì)介紹如果有效地利用這些可靠性因子并融合多個(gè)分類(lèi)結(jié)果。
(8)
式中:αit和βit分別為xi第t個(gè)分類(lèi)結(jié)果的全局可靠性和局部可靠性。
在獲得復(fù)合可靠性因子后,用折扣融合方法將xi的T個(gè)分類(lèi)結(jié)果進(jìn)行折扣融合,被折扣的分類(lèi)結(jié)果定義如下:
(9)
通過(guò)折扣融合可以將xi分類(lèi)結(jié)果的部分概率值分配給完全未知類(lèi)來(lái)表征數(shù)據(jù)類(lèi)別的不確定性。復(fù)合可靠性因子越高,說(shuō)明該分類(lèi)結(jié)果越可靠,不確定性越小,被折扣掉的信息也就越少。經(jīng)過(guò)折扣后的證據(jù)之間的沖突程度變小,在這種情況下就可以用基礎(chǔ)的DS融合規(guī)則[15]結(jié)合多個(gè)折扣后的結(jié)果:
(10)
經(jīng)DS融合后的結(jié)果mi中還包含有完全未知類(lèi)的基本信任值,為了便于決策,本文將mi轉(zhuǎn)換成pignistic概率[16]BetP(·)進(jìn)行最終決策,定義如下:
(11)
式中:|Ω|為Ω中元素的數(shù)量。最后,測(cè)試樣本xi可以分配到概率最大的類(lèi)別。
本文所提出算法的計(jì)算步驟如下。
輸入:測(cè)試集X={x1,x2,…,xH}、訓(xùn)練集Y={y1,y2,…,yG}、辨識(shí)框架Ω={ωmin,ωmaj}、小類(lèi)樣本集合Ymin和大類(lèi)樣本集合Ymaj;
輸出:測(cè)試集類(lèi)別。
① fort=1 toT
對(duì)訓(xùn)練集的大類(lèi)數(shù)據(jù)Ymaj降采樣;
用Ymaj訓(xùn)練分類(lèi)模型測(cè)試樣本分類(lèi);
依據(jù)式(4)、(5)計(jì)算分類(lèi)的全局可靠性;
② endfor
③ fori= 1 toH
樣本xi在訓(xùn)練集中搜索近鄰并分類(lèi);
④ fort= 1 toT
分類(lèi)模型Γt對(duì)xi的近鄰分類(lèi);
依據(jù)近鄰分類(lèi)結(jié)果計(jì)算局部可靠性;
根據(jù)式(8)計(jì)算復(fù)合可靠性因子;
⑤ endfor
根據(jù)式(10)融合多個(gè)分類(lèi)結(jié)果;
根據(jù)式(11)做最終決策;
⑥ endfor
將本文方法與其他幾種相關(guān)的典型方法進(jìn)行比較。本文中的所有實(shí)驗(yàn)都是在配備英特爾酷睿i7-9750H芯片和16 G運(yùn)行內(nèi)存的計(jì)算機(jī)上進(jìn)行。主要用兩個(gè)常用的不平衡分類(lèi)指標(biāo)FM和GM評(píng)價(jià)不同方法的性能。FM和GM的值越高,該方法的性能就越好。
使用KEEL庫(kù)和UCI數(shù)據(jù)庫(kù)的12個(gè)不平衡數(shù)據(jù)集來(lái)測(cè)試和評(píng)估不同方法的性能。每個(gè)數(shù)據(jù)集使用五折交叉驗(yàn)證進(jìn)行實(shí)驗(yàn),能有效避免偶然性對(duì)結(jié)果的影響。這些數(shù)據(jù)集的基本信息如表1所示,包括數(shù)據(jù)集、數(shù)據(jù)庫(kù)、樣本數(shù)量、屬性個(gè)數(shù)和不平衡比例IR。
表1 不平衡數(shù)據(jù)集基本信息Table 1 Basic information of imbalanced datasets
采用一些典型的不平衡數(shù)據(jù)分類(lèi)方法做對(duì)比實(shí)驗(yàn)。ROS和SMOTE是最具有代表性的過(guò)采樣方法,被用來(lái)生成數(shù)據(jù)集來(lái)增加小類(lèi)樣本的數(shù)量,然后利用平衡訓(xùn)練集對(duì)基本分類(lèi)模型訓(xùn)練。RUS和CBU是欠采樣方法,采用隨機(jī)策略和聚類(lèi)方法從大類(lèi)樣本中抽取一些樣本來(lái)平衡數(shù)據(jù)集。RUSBOOST和EasyEnsemble是集成學(xué)習(xí)方法,對(duì)原始數(shù)據(jù)集進(jìn)行多次采樣,并訓(xùn)練不同的分類(lèi)器做出決策。此外,EATWSVM[17]在TWSVM公式中引入了內(nèi)核增強(qiáng),從而對(duì)不平衡數(shù)據(jù)進(jìn)行分類(lèi)。
實(shí)驗(yàn)中將本文方法與其他對(duì)比方法相比較。不同方法分類(lèi)結(jié)果的FM值和GM值分別見(jiàn)表2和表3,其中最后一行分別代表不同方法在不同數(shù)據(jù)集上得到的FM和GM的平均值。從實(shí)驗(yàn)結(jié)果可以看出,在大多數(shù)情況下,本文方法性能比其他不平衡數(shù)據(jù)分類(lèi)方法更好;從平均值來(lái)看,本文方法的整體性能要明顯優(yōu)于其他方法,FM和GM值相較于其他最優(yōu)的不平衡數(shù)據(jù)分類(lèi)方法分別高出8.1%和4.99%。此外,不同方法在分類(lèi)部分?jǐn)?shù)據(jù)的ROC曲線(xiàn)和PR曲線(xiàn)如圖2和圖3所示。結(jié)果表明,本文方法的ROC曲線(xiàn)[18]和P-R曲線(xiàn)下方面積要大于其他方法,這進(jìn)一步證實(shí)本文方法在分類(lèi)不平衡數(shù)據(jù)的有效性。分析原因是本文方法在處理數(shù)據(jù)不均衡問(wèn)題時(shí)不僅能夠評(píng)估不同分類(lèi)模型的全局性能而且量化了這些模型對(duì)每個(gè)測(cè)試樣本的局部分類(lèi)性能,從而提升了模型的分類(lèi)性能,并在一定程度上避免了錯(cuò)誤分類(lèi)的風(fēng)險(xiǎn)。因此,本文方法相較于其他方法獲得了較好的分類(lèi)性能。
表2 不同方法分類(lèi)不同數(shù)據(jù)集的FM值Table 2 FM values of different datasets classified by various methods
表3 不同方法分類(lèi)不同數(shù)據(jù)集的GM值Table 3 GM values of different datasets classified by various methods
圖2 不同方法分類(lèi)不同數(shù)據(jù)集的ROC曲線(xiàn)Figure 2 ROC curves of different methods in classifying various datasets
圖3 不同方法分類(lèi)不同數(shù)據(jù)集的P-R曲線(xiàn)Figure 3 P-R curves of different methods in classifying various datasets
K值是影響本文方法性能的關(guān)鍵參數(shù),K表示本文方法在評(píng)估模型局部可靠性時(shí)所需要找的近鄰個(gè)數(shù)。圖4所示為K值變化對(duì)本文方法在不同不平衡數(shù)據(jù)分類(lèi)中性能的影響。其中橫坐標(biāo)為K的值,取值為3~15。實(shí)驗(yàn)結(jié)果表明,隨著K的增加,本文方法在不同不平衡數(shù)據(jù)上分類(lèi)性能的變化較小,這表明本文方法對(duì)K值具有一定的魯棒性。在實(shí)際應(yīng)用中推薦K∈[3,15]作為該參數(shù)的取值范圍,默認(rèn)值為7。
圖4 本文方法在K取不同值時(shí)的分類(lèi)結(jié)果Figure 4 Classification results of the proposed method with different K
(1)提出了一種復(fù)合可靠性分析下的不平衡數(shù)據(jù)證據(jù)分類(lèi)方法,該方法通過(guò)評(píng)估分類(lèi)模型的全局可靠性和局部可靠性來(lái)提升模型對(duì)不平衡數(shù)據(jù)的分類(lèi)性能。
(2)實(shí)驗(yàn)用公開(kāi)的不平衡數(shù)據(jù)集驗(yàn)證了本文算法的有效性,FM值和GM值相較于其他不平衡數(shù)據(jù)分類(lèi)方法分別高出8.1%和4.99%。
(3)在未來(lái)的研究中,將嘗試?yán)眉蓪W(xué)習(xí)的思想結(jié)合不同采樣方法的優(yōu)勢(shì),研究更高性能的不平衡數(shù)據(jù)分類(lèi)方法。