陸妙芳,楊有龍
西安電子科技大學(xué) 數(shù)學(xué)與統(tǒng)計學(xué)院,西安 710126
在數(shù)據(jù)集中,如果存在某些類的樣本數(shù)量多于其他類的樣本數(shù)量的情況,就出現(xiàn)了不平衡。樣本數(shù)量較多的那一類稱為多數(shù)類,相對應(yīng)的,樣本數(shù)量較少的類稱為少數(shù)類。這種類與類之間存在的不平衡問題稱為類間不平衡問題。傳統(tǒng)的分類器都是針對平衡數(shù)據(jù)集而設(shè)計的,在處理不平衡數(shù)據(jù)時就會出現(xiàn)偏向于多數(shù)類的現(xiàn)象,從而導(dǎo)致少數(shù)類樣本的不正確分類,進(jìn)而是分類性能的下降[1]。當(dāng)訓(xùn)練集處于高度不平衡狀態(tài)時,少數(shù)類樣本甚至可能被忽略,為了達(dá)到最好的分類效果,僅僅對多數(shù)類正確分類[2]。例如,在一個包含了1 000個樣本的二類數(shù)據(jù)集中,一類的樣本數(shù)量為998,而另一類的樣本數(shù)量只有2。傳統(tǒng)的分類器為這樣的數(shù)據(jù)集分類時,只要正確地分類多數(shù)類樣本,就能達(dá)到99.8%的分類準(zhǔn)確率,少數(shù)類樣本不會被檢測。如果這是一個罕見疾病的診斷,錯分少數(shù)類樣本意味著未能將疾病病例診斷出來,就會導(dǎo)致患了疾病的患者錯失最佳治療時機(jī),甚至為此付出生命。這樣的代價是人們?nèi)f萬不想見到的。因此,不平衡數(shù)據(jù)分類問題的研究是極為重要的。
在現(xiàn)實(shí)生活中,不平衡數(shù)據(jù)也是無處不在的。特別是在醫(yī)療疾病診斷[3]、信用欺詐檢測[4]、網(wǎng)絡(luò)入侵檢測[5]、文本分類[6]等領(lǐng)域。過去的20多年中,由于不平衡數(shù)據(jù)集分類問題的難度及普遍性,研究學(xué)者們提出了許多方法來解決它。解決不平衡數(shù)據(jù)的方法主要分為三類:數(shù)據(jù)級方法、算法級方法、分類器集成方法。
數(shù)據(jù)級方法:通過數(shù)據(jù)預(yù)處理的方式,使用重采樣技術(shù)來平衡數(shù)據(jù)的類分布。重采樣技術(shù)包括過采樣、欠采樣和混合采樣[7]。過采樣通過增加少數(shù)類樣本的數(shù)量來平衡數(shù)據(jù)集。過采樣方法中較為流行的是Chawla 等人[8]提出的綜合少數(shù)類過采樣(SMOTE)方法,該方法通過在原少數(shù)類樣本及其近鄰樣本中間線性插值生成新的少數(shù)類樣本。但這種方法沒有考慮多數(shù)類的樣本分布,可能會產(chǎn)生噪聲樣本。為彌補(bǔ)這一不足,Bunkhumpornpat 等人[9]提出了安全水平過采樣(Safe-Level-SMOTE)方法,該方法通過為少數(shù)類樣本分配安全水平值來選擇合適的樣本以合成新少數(shù)類樣本,安全水平值定義為k個近鄰中其他類樣本的個數(shù),但生成的樣本大多數(shù)離分類邊界較遠(yuǎn)。邊界過采樣方法(Borderline-SMOTE)方法[10]首先識別類邊界,然后對接近類邊界的少數(shù)類樣本過采樣。但該方法只考慮了近鄰的數(shù)量,而沒有將所有靠近類邊界的少數(shù)類樣本納入考慮范圍。前面的這些方法大多是基于近鄰進(jìn)行過采樣。Yang 等人[11]提出了一種基于馬氏距離的采樣方法,該方法的目標(biāo)是使生成的新少數(shù)類樣本與其對應(yīng)的類均值有相同的馬氏距離[12]。Cieslak 等人[13]提出了基于K-means 的過采樣算法,該算法通過K-means 將少數(shù)類樣本集劃分為幾個子簇,再分別對子簇過采樣。Bunkhumpornpa 等人[14]提出一種基于密度的過采樣算法,將少數(shù)類劃分為幾個任意形狀的子簇,然后在隨機(jī)選擇的少數(shù)類樣本和它對應(yīng)的子簇的偽簇中心之間生成新樣本。但這兩種基于聚類的過采樣算法容易造成重疊且無法識別邊界樣本。欠采樣通過移除多數(shù)類樣本平衡數(shù)據(jù)集。最先提出的欠采樣方法為隨機(jī)欠采樣(RUS),該方法通過隨機(jī)地移除多數(shù)類樣本來平衡數(shù)據(jù)集。Anand等人[15]提出了一種基于加權(quán)的歐氏距離的欠采樣算法,利用加權(quán)的距離對多數(shù)類樣本進(jìn)行排序,按照排列順序移除樣本。Kubat等人[16]提出一種單側(cè)選擇的欠采樣算法,把Tomek links算法和CNN算法結(jié)合起來用在不平衡問題中,檢測出多數(shù)類中的冗余樣本和噪聲樣本,并將其刪除。還有基于聚類的欠采樣[17],先對數(shù)據(jù)集聚類,再隨機(jī)刪除每個簇的多數(shù)類樣本?;旌喜蓸邮沁^采樣和欠采樣的結(jié)合。Song 等人[18]提出了一種基于K-means 的雙邊采樣方法,用K-means 方法分別為多數(shù)類樣本和少數(shù)類樣本聚類,再為多數(shù)類子簇保留距離簇心近的樣本,同時為樣本量少的少數(shù)類子簇過采樣。
算法級方法:修改現(xiàn)有算法或創(chuàng)建新算法,使其適用于不平衡數(shù)據(jù)集。此類方法需要研究者對待改進(jìn)的學(xué)習(xí)算法有很好的了解,并能準(zhǔn)確地知道待改進(jìn)算法在學(xué)習(xí)不平衡數(shù)據(jù)時失敗的原因。單類學(xué)習(xí)算法是一種算法級上解決不平衡數(shù)據(jù)分類問題的方法。此類算法專門用于處理高度不平衡數(shù)據(jù)集,它只學(xué)習(xí)少數(shù)類樣本,而不對多數(shù)類樣本進(jìn)行學(xué)習(xí),從而得到一個分類器。這類算法的主要目的是對高密度的目標(biāo)類區(qū)域進(jìn)行估計,用來描述數(shù)據(jù)。它的任務(wù)是識別目標(biāo)函數(shù),設(shè)置有效閾值是這個算法的關(guān)鍵。如果閾值過于緊湊,可能目標(biāo)類的某些樣本就會被放棄,而如果閾值過于寬松,非目標(biāo)類的樣本則會被誤認(rèn)為是目標(biāo)樣本。代價敏感度方法[19]的思想是不同類別的誤分類懲罰是不相同的。此類方法會給少數(shù)類樣本設(shè)置更高的誤分類懲罰,在訓(xùn)練時,錯分了少數(shù)類樣本就會有更大的懲罰,這樣最終得到的分類器對少數(shù)類的分類準(zhǔn)確率就會提高。這種方法雖然能夠有效地提高少數(shù)類的預(yù)測精度,但有一定局限性。一方面,很多情況下,只知道少數(shù)類的誤分類代價比較高,但實(shí)際實(shí)踐中,很難準(zhǔn)確地估計分類成本。另一方面,雖然許多學(xué)習(xí)算法如神經(jīng)網(wǎng)絡(luò)、決策樹等可以直接使用代價敏感度,但也有不能夠直接利用代價敏感度的算法。在不能直接利用的情況下,只能通過調(diào)整數(shù)據(jù)集中各類別樣本的比例或設(shè)置閾值的間接方式來進(jìn)行代價敏感度學(xué)習(xí)。
分類器集成方法:將采樣技術(shù)與Bagging或Boosting結(jié)合,對最終學(xué)習(xí)到的所有分類器投票。如SMOTEBoost[20]、RUSBoost[21]、OverBagging[22]等。該類方法已被證明能有效地解決數(shù)據(jù)集不平衡問題。例如,Easy-Ensemble 和BalanceCascade 方法,EasyEnsemble 利用隨機(jī)欠采樣方法將不平衡數(shù)據(jù)集均分為幾個平衡的數(shù)據(jù)子集,再用集成方法處理數(shù)據(jù)集。BalancedCascade 對多數(shù)類樣本進(jìn)行隨機(jī)欠采樣以創(chuàng)建第一個訓(xùn)練子集,再利用這個子集訓(xùn)練獲得的分類模型來預(yù)測訓(xùn)練子集的類標(biāo)簽,從訓(xùn)練子集中移除正確分類的多數(shù)類樣本,并在其位置上添加新的多數(shù)類樣本,這樣,就有了一個新的訓(xùn)練子集。
盡管目前還沒有一種方法可以很好地解決所有的不平衡數(shù)據(jù)分類問題。但采樣方法在處理不平衡數(shù)據(jù)集的分類問題上已表現(xiàn)出很大的潛力。因?yàn)椴蓸臃椒ǖ哪康氖瞧胶鈹?shù)據(jù)集而不是改進(jìn)分類器,可以獨(dú)立于分類器而存在。平衡后的數(shù)據(jù)集可以用所有傳統(tǒng)分類器進(jìn)行分類,有廣泛的適用性。
類間不平衡并不是影響分類器處理不平衡數(shù)據(jù)集時的分類性能的唯一原因。研究發(fā)現(xiàn),類內(nèi)不平衡、類間重疊和小間隔都可能導(dǎo)致分類器在處理不平衡數(shù)據(jù)集時有較差的實(shí)驗(yàn)效果。類內(nèi)不平衡發(fā)生在少數(shù)類樣本存在多個子簇并且其中一些子簇的樣本數(shù)量少于其他子簇的樣本數(shù)量,或者由于缺乏足夠的采樣而分布稀疏的情況下。類重疊發(fā)生在來自不同類的一些樣本在部分或者全部特征中具有非常相似的值的情況下。小間隔發(fā)生在少數(shù)類有多個子簇,并且這些子簇至少有一個被多數(shù)類樣本所包圍且被包圍的子簇的樣本數(shù)量比其他子簇的樣本數(shù)量少的情況下。
現(xiàn)有的算法不能同時解決這些問題,但與其他方法相比,基于聚類的采樣方法在處理具有類內(nèi)不平衡和類間不平衡問題的數(shù)據(jù)集時有巨大的潛力。由于欠采樣可能會刪除攜帶重要信息的多數(shù)類樣本,所以本文主要關(guān)注過采樣技術(shù)。目前,大多數(shù)基于聚類的過采樣算法都是基于K-means 的算法。但K-means 通常只適用于超球形數(shù)據(jù)且聚類的簇數(shù)需要事先給定。而密度峰值聚類方法能解決不同形狀和大小的數(shù)據(jù)集,且對密度峰值聚類算法加以改進(jìn)可以使算法自動地確定簇中心。
大多數(shù)過采樣算法在合成新樣本時只關(guān)注少數(shù)類樣本的分布,而忽略多數(shù)類樣本的分布,所以容易造成重疊問題?;趶较蚧瘮?shù)的過采樣方法利用相互類分布信息來合成新樣本,可以同時考慮多數(shù)類樣本的分布和少數(shù)類樣本的分布,避免了重疊。
針對二類數(shù)據(jù)集的類間不平衡和類內(nèi)不平衡問題,以及大多數(shù)過采樣算法只考慮少數(shù)類樣本的分布而忽略多數(shù)樣本分布的缺陷,本文提出了基于密度峰值和徑向基函數(shù)的自適應(yīng)過采樣方法。該方法使用密度峰值聚類方法對少數(shù)類聚類,自動確定子簇個數(shù),將少數(shù)類樣本劃分為幾個簇,再根據(jù)子簇的局部密度給每個子簇分配權(quán)重,通過權(quán)重計算每個子簇需要生成的少數(shù)類的樣本數(shù)。另一方面,該方法用徑向基函數(shù)為少數(shù)類樣本計算相互類勢,通過相互類勢的大小選定作為生成新少數(shù)類樣本的原樣本,最后為少數(shù)類生成新樣本。
密度峰值聚類(density peaks clustering,DPC)算法[23]于2014 年被提出,它是一種基于密度的聚類算法。該算法有兩個簡單且直觀的假設(shè):簇中心有最高的局部密度,簇中心之間有相對較大的距離。根據(jù)這兩個假設(shè),DPC 算法首先需要確定簇中心,然后依次將每個樣本分配到離它最近且局部密度較高的簇中。由于DPC算法實(shí)現(xiàn)簡單且聚類效果較好,目前已被應(yīng)用到許多領(lǐng)域[24]。從DPC算法的兩個假設(shè)出發(fā),需要引入兩個重要的量,樣本點(diǎn)xi的局部密度ρi和局部密度比xi大的最近鄰的距離δi。假設(shè)數(shù)據(jù)集為X={x1,x2,…,xn}T,其中n為數(shù)據(jù)集的樣本數(shù),對于每一樣本xi,用高斯核函數(shù)計算它的局部密度ρi:
其中,dqiqj為樣本xqi和樣本xqj之間的距離。δqi被定義為xqi的近鄰中比它局部密度高的樣本與它本身的距離,具有最大局部密度的樣本xq1的δq1被定義為最大δqj,j≥2值,從而保證xq1具有更大的δ值。一般來說,局部密度和距離都較高的樣本最有可能是簇中心。通常以ρi為橫坐標(biāo),δi為縱坐標(biāo)畫二維決策圖,然后根據(jù)決策圖將右上角的點(diǎn)選為簇中心,但這種方法不能自動地確定簇中心。為了使算法能夠自動地確定簇中心,首先將δi和ρi歸一化:
最后將i >icut的si對應(yīng)的所有樣本都確定為簇中心。確定簇中心后,就可以為其他樣本點(diǎn)分配相對應(yīng)的聚類標(biāo)簽。DPC 的分配策略是每個樣本的聚類標(biāo)簽與其局部密度較高的最近鄰之一相同[23]。
為了解決數(shù)據(jù)集具有不同密度和大小的問題,這里基于樣本的局部比例信息引入了一種補(bǔ)償策略。對于給定樣本xqi,xqj為局部密度大于xqi局部密度的任意樣本。為了使簇中心能夠脫穎而出,將δqi定義為樣本xqi和xqj的最小距離乘以它們的k個近鄰的距離,具體表達(dá)式為:
現(xiàn)有的基于聚類的過采樣方法中,過采樣后所有子簇的大小都趨于一致。但這只解決了因大小不同而造成的類內(nèi)不平衡問題,實(shí)際上,類內(nèi)不平衡還可能是由于子簇的復(fù)雜性和密度不同而造成的。Nekooeimehr等人[26]提出了一種基于分類復(fù)雜性和交叉驗(yàn)證的自適應(yīng)確定過采樣子簇大小的方法。但該方法對分類器比較敏感,且分類復(fù)雜度會受到類間不平衡的影響,顯著提高了計算復(fù)雜度。Douzas 等人[27]提出了一種過采樣分布策略,在少數(shù)類稀疏區(qū)域合成更多的樣本。該方法以子簇內(nèi)所有少數(shù)類樣本的平均距離作為密度,導(dǎo)致算法對異常值極其敏感。本文將使用DPC算法的局部密度為每個子簇分配過采樣量。
假設(shè)少數(shù)類被分為C個子簇Cminj,j=1,2,…,C,每個子簇Cminj的密度SDminj和權(quán)重Weightminj定義如下:
其中,m是總過采樣量,本文將其設(shè)置為多數(shù)類樣本數(shù)與少數(shù)類樣本數(shù)的差值。
使用過采樣方法處理不平衡數(shù)據(jù)時,最為關(guān)鍵的一步是選擇感興趣的區(qū)域,即放置生成的新少數(shù)類樣本的區(qū)域。過于集中的區(qū)域會導(dǎo)致過擬合現(xiàn)象,如隨機(jī)過采樣方法生成的新樣本容易造成過擬合。若將新樣本放在高密度的多數(shù)類樣本區(qū)域,又會對多數(shù)類的正確分類造成影響?;卩徲虻倪^采樣方法如SMOTE算法及其衍生算法在處理具有噪聲、異常值和不相交數(shù)據(jù)分布的復(fù)雜數(shù)據(jù)集時,生成的新樣本容易與多數(shù)類樣本重疊。此類現(xiàn)象產(chǎn)生的原因是這些方法在生成新樣本時只考慮了少數(shù)類樣本的分布,而忽略了多數(shù)類樣本的分布。
基于勢的方法則利用相互類分布信息來生成新樣本,既考慮了多數(shù)類樣本的分布,也考慮了少數(shù)類樣本的分布。這里首先介紹勢的概念。對于數(shù)據(jù)集X中的任意樣本,它的勢代表該點(diǎn)與數(shù)據(jù)集的累計接近程度。也就是說,如果一個樣本xi位于數(shù)據(jù)集大部分樣本的附近,它的勢就會比較高。使用高斯徑向基函數(shù)(RBF)為其建模,勢函數(shù)定義為:
其中,Xmaj為多數(shù)類樣本集,Xmin為少數(shù)類樣本集。
由公式可看出,高的相互多數(shù)類類勢表示多數(shù)類的類勢高于少數(shù)類的類勢,低的少數(shù)類相互類勢表示少數(shù)類的類勢高于多數(shù)類的類勢。而勢函數(shù)代表的是樣本點(diǎn)與樣本集的累積接近程度,當(dāng)某一點(diǎn)對于某一類的類勢較高時,可以認(rèn)為該點(diǎn)靠近該類,即該點(diǎn)周圍分布著大量同類樣本點(diǎn)。因此當(dāng)少數(shù)類樣本點(diǎn)的相互類勢較低時,該樣本點(diǎn)屬于少數(shù)類的可能性更高。本文在此基礎(chǔ)上,選擇相互類勢小的少數(shù)類樣本作為原樣本合成新的少數(shù)類樣本。
新少數(shù)類樣本的合成過程為:以現(xiàn)有的少數(shù)類樣本xi為原樣本,從它的k個近鄰少數(shù)類樣本中隨機(jī)選取一個樣本xj,再從[0,1]區(qū)間中隨機(jī)取一個數(shù)t,接著生成新少數(shù)類樣本,計算公式如下:
在生成新樣本后,還需計算新樣本的相互類勢,如果其絕對值較低,則留下該樣本,否則重復(fù)生成新樣本的過程。
基于聚類的采樣方法能很好地解決二類數(shù)據(jù)集的類間不平衡和類內(nèi)不平衡問題,且密度峰值聚類方法適用于各種形狀、大小的數(shù)據(jù)集,本文提出了基于密度峰值和徑向基函數(shù)的自適應(yīng)過采樣算法(adaptive oversampling based on density peaks clustering and radial basis function,ADPCRBO)。算法首先利用改進(jìn)的密度峰值聚類方法自適應(yīng)地為少數(shù)類樣本聚類,接著利用密度峰值聚類過程中計算所得的局部密度為少數(shù)類自適應(yīng)過采樣量,然后利用考慮了相互類分布信息的徑向基函數(shù)為少數(shù)類選擇合成新樣本所需的原樣本,最后再以徑向基函數(shù)的值的大小為依據(jù)保留合成的新樣本。算法的具體步驟如算法1所示。
算法1 ADPCRBO算法
輸入:訓(xùn)練集X,近鄰數(shù)k,參數(shù)β,迭代次數(shù)iteration。
輸出:新少數(shù)類樣本集Xnew。
步驟1 令Xnew=?。
步驟2 將X分為多數(shù)類Xmaj和少數(shù)類Xmin。
步驟3 使用改進(jìn)的DPC 算法為Xmin聚類,得到C個子簇Cminj,j=1,2,…,C。
步驟4 用公式(10)~(12)為每個子簇Cminj計算子簇的過采樣量OSminj。
步驟5 對于子簇Cminj中的任意樣本xi,用公式(14)為其計算相互類勢。
步驟6 用公式(15)生成一個新的少數(shù)類樣本xnew,并計算其相互類勢Φnew。
步驟8 重復(fù)步驟6、步驟7,直到滿足迭代次數(shù)。
步驟9 將生成的少數(shù)類樣本放到Xnew中。
步驟10 返回Xnew。
為了驗(yàn)證算法的適用性,本文實(shí)驗(yàn)用到了KEEL上的8個數(shù)據(jù)集。本文是針對二分類不平衡問題的研究,所有數(shù)據(jù)集都是二類的。為了說明本文算法在不同程度的不平衡數(shù)據(jù)集中都適用,本文選取的數(shù)據(jù)集的不平衡率有低于10 的,也有高于80 的。數(shù)據(jù)集的詳細(xì)信息如表1所示。
表1 實(shí)驗(yàn)數(shù)據(jù)集Table 1 Experimental datasets
為了驗(yàn)證算法的有效性,實(shí)驗(yàn)中將本文算法與六個對比算法進(jìn)行對比,對比算法分別為:RUS、SMOTE、Borderline-SMOTE、Safe-Level-SMOTE、K-means-SMOTE、SMOTE-RUS。其中包含了過采樣方法、欠采樣方法和混合采樣方法,用不同方法與本文算法比較以便更好評估算法的分類性能。
因算法在每個分類器上的實(shí)驗(yàn)效果不一樣,一種算法并不是在所有分類器上都取得好的分類效果。故本文的實(shí)驗(yàn)中,選用三個分類器與本文算法及對比算法結(jié)合進(jìn)行實(shí)驗(yàn)。三個分類器分別是多層感知機(jī)(MLP)、k近鄰(KNN)和決策樹(Tree)。
同樣的,算法用不同指標(biāo)來評價分類效果獲得的結(jié)果是不盡相同的。本文使用三個分類評價指標(biāo)對算法進(jìn)行分類性能的評估。這里,首先介紹一個常見的分類評價工具——混淆矩陣,其表示如表2所示。
表2 混淆矩陣Table 2 Confusion matrix
一般將少數(shù)類記為正類,多數(shù)類記為負(fù)類。本文用到的評價指標(biāo)基于表2而得。
(1)Recall,正類樣本被正確分類的比例:
為了使實(shí)驗(yàn)更具有客觀性,避免結(jié)果受隨機(jī)的影響,本文使用交叉驗(yàn)證法進(jìn)行實(shí)驗(yàn),重復(fù)實(shí)驗(yàn)10次再取平均結(jié)果。
表3~表5 分別表示本文算法與對比算法結(jié)合MLP分類器、KNN 分類器和決策樹在實(shí)驗(yàn)數(shù)據(jù)集上進(jìn)行分類實(shí)驗(yàn)所得的AUC 指標(biāo)值的對比結(jié)果,表中加粗的數(shù)字為對比發(fā)現(xiàn)較好的結(jié)果。
從表3可以看出,在MLP分類器上,用AUC來評價分類性能時,本文提出的方法能在所有實(shí)驗(yàn)數(shù)據(jù)集上取得較優(yōu)AUC值。在不平衡率較高的abalone-3_vs_11數(shù)據(jù)集和poker-8_vs_6數(shù)據(jù)集上的AUC值也較高,說明即使是在高度不平衡的數(shù)據(jù)集中,本文算法也能很好地為數(shù)據(jù)集分類。從表4 可看出,在KNN 分類器上用AUC評價分類性能時,本文算法在多數(shù)數(shù)據(jù)集中都能取得較好實(shí)驗(yàn)結(jié)果。從表5可以發(fā)現(xiàn),在Tree分類器上用AUC評價分類性能時,本文算法能在一半以上數(shù)據(jù)集上取得好的分類效果。
表3 各算法在MLP分類器上用AUC評價結(jié)果Table 3 AUC comparison of different menthods combined with MLP 單位:%
表4 各算法在KNN分類器上用AUC評價結(jié)果Table 4 AUC comparison of different menthods combined with KNN 單位:%
表5 各算法在決策樹上用AUC評價結(jié)果Table 5 AUC comparison of different menthods combined with Tree單位:%
對比三個表格,不難發(fā)現(xiàn),本文算法與MLP分類器結(jié)合進(jìn)行實(shí)驗(yàn)的實(shí)驗(yàn)效果是較好的,與KNN 分類器結(jié)合進(jìn)行實(shí)驗(yàn)的實(shí)驗(yàn)效果次之,與Tree分類器結(jié)合進(jìn)行實(shí)驗(yàn)的實(shí)驗(yàn)效果略差。這表明,與不同分類器結(jié)合對算法的分類性能是有一定影響的。實(shí)驗(yàn)時,應(yīng)為算法找到一個合適的分類器,以便應(yīng)用到實(shí)際問題時能更好地為人們服務(wù)。
圖1~圖3 是本文算法及對比算法結(jié)合三個分類器在實(shí)驗(yàn)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)的指標(biāo)值對比結(jié)果。在對比圖中,綠色表示本文算法優(yōu)于對比算法,黃色表示本文算法與對比算法有等同實(shí)驗(yàn)效果,紅色表示本文算法比對比算法差。
從三個對比圖中可看出,結(jié)合三個分類器進(jìn)行實(shí)驗(yàn)時,本文算法的分類效果都是較優(yōu)的,能在大多數(shù)數(shù)據(jù)集上取得較好的結(jié)果。具體來說,在與MLP 分類器結(jié)合進(jìn)行實(shí)驗(yàn)時(實(shí)驗(yàn)結(jié)果如圖1所示),本文算法能取得更好的實(shí)驗(yàn)結(jié)果,用三個指標(biāo)評價的結(jié)果都優(yōu)于其他算法的。與KNN分類器結(jié)合進(jìn)行實(shí)驗(yàn)時(實(shí)驗(yàn)結(jié)果如圖2所示),用三個指標(biāo)來評價,本文算法都能在一半數(shù)據(jù)集上取得較優(yōu)實(shí)驗(yàn)結(jié)果。與決策樹分類器結(jié)合進(jìn)行實(shí)驗(yàn)時(實(shí)驗(yàn)結(jié)果如圖3所示),僅在用AUC指標(biāo)評價的情況下,能優(yōu)于對比算法,用其他兩個指標(biāo)評價時的效果較差。分析三個對比圖還可看出,當(dāng)用AUC 指標(biāo)評價分類效果時,本文算法的分類效果均優(yōu)于對比算法的。
綜上所述,本文算法在與MLP、KNN、Tree 分類器結(jié)合進(jìn)行實(shí)驗(yàn)時,都能取得較好的實(shí)驗(yàn)結(jié)果。用AUC指標(biāo)評價分類結(jié)果能取得較高的值,表明本文算法整體分類性能較優(yōu)。
針對二類數(shù)據(jù)集的類間不平衡和類內(nèi)不平衡問題,本文提出了一種基于密度峰值和徑向基函數(shù)的自適應(yīng)過采樣方法。對于數(shù)據(jù)集具有不同密度和大小的問題,引入基于樣本局部比例信息的補(bǔ)償策略,使簇中心能夠脫穎而出。同時將多數(shù)類樣本的分布信息加入考慮范圍,用徑向基函數(shù)為少數(shù)類選取用于合成新樣本的原樣本。通過將算法在不同平衡率的數(shù)據(jù)集上與不同分類器結(jié)合進(jìn)行實(shí)驗(yàn),并用不同評價指標(biāo)評價分類性能,驗(yàn)證了本文算法的有效性。本文算法只研究了二類問題,實(shí)際上,多類不平衡問題在現(xiàn)實(shí)生活中更普遍存在,下一步將探討算法在多類不平衡數(shù)據(jù)集中的應(yīng)用。