吳 磊,房 斌,刁麗萍,陳 靜,謝娜娜
1.重慶大學(xué) 計(jì)算機(jī)學(xué)院,重慶400030
2.第三軍醫(yī)大學(xué)新橋醫(yī)院 健康管理科,重慶400037
近幾年來,數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)等領(lǐng)域的快速發(fā)展和面向數(shù)據(jù)挖掘的軟件的開發(fā)和不斷完善更新(如文獻(xiàn)[1-2]提到的weka),以及諸多學(xué)者對(duì)不平衡數(shù)據(jù)集分類的深入研究。在對(duì)不平衡數(shù)據(jù)集分類的研究中,樣本數(shù)很少的類往往更會(huì)受到關(guān)注,比如疾病診斷、體檢數(shù)據(jù)敏感信息挖掘、網(wǎng)絡(luò)入侵、敏感信息檢索和信用卡欺詐檢測(cè)等。上述這些事件的檢測(cè)對(duì)社會(huì)來講意義重大,所以對(duì)不平衡數(shù)據(jù)的分類就顯得尤為重要。軟件缺陷預(yù)測(cè)是典型的數(shù)據(jù)不平衡應(yīng)用問題,從軟件模塊中抽取特征向量,通過分類器判斷軟件模塊有無缺陷,本文使用了包括開放的NASA MDP數(shù)據(jù)庫[3]和來自PROMIS 的AR 數(shù)據(jù)庫[4]中的總共12 個(gè)數(shù)據(jù)集,并且使用了一些早期的預(yù)處理方法和分類器后,實(shí)驗(yàn)結(jié)果顯示某些重采樣方法帶來的效果并不理想,所以需要尋找更好的算法來對(duì)不平衡數(shù)據(jù)進(jìn)行分類。
處理數(shù)據(jù)不平衡問題的方法主要有兩大類:數(shù)據(jù)抽樣方法和代價(jià)敏感學(xué)習(xí)算法,本文研究了抽樣方法的改進(jìn)。數(shù)據(jù)抽樣算法有兩類:過抽樣和欠抽樣。常用的抽樣方法有隨機(jī)向上采樣(過抽樣)、隨機(jī)向下采樣(欠抽樣)、壓縮最近鄰(CNN)[5-6]、鄰域清理(NCL)、虛擬少數(shù)類向上采樣(SMOTE)[7]、Borderline-SMOTE(BSM)[8]、one-sided selection(OSS)、Cluster-Based Oversampling(CBOS)等。還有一些組合的方法,如Gustavo 等人提出的SMOTE+ENN 和SMOTE+Tomek[9]。
本文主要研究了過抽樣和欠抽樣相結(jié)合的方法,使用BSM、CBOS 分別和Tomek links 及ENN 結(jié)合,即BSM+Tomek、BSM+ENN、CBOS+Tomek 和CBOS+ENN;研究這幾種組合算法是因?yàn)閷?duì)于樣本數(shù)較少的數(shù)據(jù)集,進(jìn)行單純的過抽樣和欠抽樣會(huì)帶來不好的影響,過抽樣會(huì)使樣本數(shù)極少的數(shù)據(jù)集中的小類過度擬合,而欠抽樣會(huì)使得樣本數(shù)本來就比較少的數(shù)據(jù)集丟失重要的樣本,組合方法能夠比較折中地處理這兩種問題;其次,已有學(xué)者如Gustavo 等人提出過抽樣和欠抽樣結(jié)合的方法,并表現(xiàn)出了良好的效果,本文試圖通過研究這幾種組合方法來發(fā)掘它們的潛能;第三,這幾種算法在單獨(dú)執(zhí)行時(shí)就表現(xiàn)出了較好的效果,希望通過對(duì)其進(jìn)行組合來發(fā)掘更好的抽樣方法;第四,暫時(shí)沒有文獻(xiàn)對(duì)這幾種算法進(jìn)行組合和分析。
本文在預(yù)處理階段采用了14 種采樣方法,其中包括本文提出的四種方法對(duì)不平衡數(shù)據(jù)進(jìn)行分類,并且使用了12種不同不平衡度的數(shù)據(jù)集和11 種分類器(訓(xùn)練過程采用了10-交叉驗(yàn)證)做比較實(shí)驗(yàn),期間使用了weka 軟件做了一系列實(shí)驗(yàn)分析,評(píng)價(jià)標(biāo)準(zhǔn)為areaUnderROC(AUC),最后給出各算法預(yù)處理后的分類結(jié)果以及實(shí)驗(yàn)結(jié)論。
圖1 兩種數(shù)據(jù)集的比較
在機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘的研究中,不平衡數(shù)據(jù)集往往表現(xiàn)為各類數(shù)據(jù)極度不平衡、小類和大類重疊等現(xiàn)象,所以使用不平衡數(shù)據(jù)訓(xùn)練分類器變得十分困難,這便導(dǎo)致對(duì)不平衡數(shù)據(jù)集的分類也變得非常困難。為了更好地說明問題,文中引用了圖1,其中圖1(a)中有兩個(gè)在一定程度上重疊的極為不平衡的類:大類用“-”表示,小類用“+”表示。圖1(b)中則是兩個(gè)平衡且分類明確的兩個(gè)類。很顯然,圖1(b)更便于訓(xùn)練分類器,本文的目的就是通過對(duì)數(shù)據(jù)進(jìn)行預(yù)處理將圖1(a)中的不便于訓(xùn)練分類器的不平衡數(shù)據(jù)轉(zhuǎn)成圖1(b)中適合訓(xùn)練學(xué)習(xí)的平衡數(shù)據(jù)。
小類中的一些樣本往往會(huì)導(dǎo)致一些像K近鄰之類的分類器的分類效果變差。比如由于小類中的某些樣本的最近鄰樣本屬于大類,所以會(huì)錯(cuò)分小類中的許多樣本。在不平衡度很高的數(shù)據(jù)集中,小類的樣本的最近鄰是大類中樣本的概率可能很大,并且分類結(jié)果中把小類分錯(cuò)的概率高到不可接受。
基于混淆矩陣分析的方法是評(píng)價(jià)一個(gè)分類器性能好壞的最直接的方法。
因?yàn)槎喾诸悊栴}通常可以簡(jiǎn)化為兩類問題來解決,所以不平衡數(shù)據(jù)集的分類問題的研究重點(diǎn)是提高兩類問題中少數(shù)類的分類性能。當(dāng)使用一般的分類精度準(zhǔn)則時(shí),雖然能夠體現(xiàn)出整體數(shù)據(jù)的分類性能,但是它不能正確地評(píng)價(jià)不平衡數(shù)據(jù)集的分類結(jié)果。這是因?yàn)楫?dāng)多數(shù)類樣本比少數(shù)類樣本多得多的情況下,分類器把所有的樣本都分類為多數(shù)類,此時(shí)它的分類精度仍然很高,比如上述的信用卡欺詐問題中,但此時(shí)的分類沒有任何的價(jià)值,因?yàn)樯贁?shù)類樣本的識(shí)別率為零。也就是說在使用一般的分類精度準(zhǔn)則時(shí),少數(shù)類樣本對(duì)分類精度的影響小于多數(shù)類樣本,所以用一般的分類精度準(zhǔn)則顯然是不合適的。因此應(yīng)當(dāng)要選擇一個(gè)合適的準(zhǔn)則,使分類器在其分類性能上能體現(xiàn)出少數(shù)類樣本的影響。不平衡數(shù)據(jù)集分類問題中常用的評(píng)價(jià)準(zhǔn)則有:F-values、G-Means、ROC 曲線[10]、F-Measure等。F-values 和G-Means 都是在兩類的數(shù)據(jù)集的混合矩陣的基礎(chǔ)上提出來的。本文主要使用了areaUnderROC 和F-Measure。
首先了解一下ROC曲線,也稱受試者工作特性(Receiver Operating Characteristic,ROC)曲線,獨(dú)立于數(shù)據(jù)集類間的分布,對(duì)數(shù)據(jù)集的不平衡性有很好的魯棒性,因此可用于不平衡數(shù)據(jù)集分類器性能的評(píng)價(jià)。ROC 曲線圖縱軸表示真實(shí)確定率:TP rate=TP/正例數(shù);橫軸表示虛假確定率:FP rate=FP/負(fù)例數(shù)。ROC 曲線有效地反映了在分類器參數(shù)變換時(shí),真實(shí)確定率(TP rate)與虛假確定率(FP rate)之間的變化關(guān)系。坐標(biāo)中的(1,1)點(diǎn)對(duì)應(yīng)于將所有點(diǎn)歸于正類;直線y=x對(duì)應(yīng)于隨機(jī)猜測(cè);(0,0)點(diǎn)對(duì)應(yīng)于將所有點(diǎn)歸于負(fù)類;(0,1)點(diǎn)對(duì)應(yīng)于最理想的分類情況,即所有樣本均分類正確。曲線越靠近左上角,分類器性能越好。由于ROC曲線沒有給出具體的數(shù)值,所以不方便評(píng)價(jià)不同分類器間性能的優(yōu)劣,于是常使用ROC 曲線下的面積(Area Under ROC,AUC)作為評(píng)價(jià)指標(biāo)。顯然,較大的AUC值對(duì)應(yīng)于較優(yōu)的分類器。AUC是基于ROC 曲線的唯一數(shù)值,它與錯(cuò)分代價(jià)無關(guān),不受與規(guī)則應(yīng)用相關(guān)的因素的影響。本文使用了Weka 軟件中的AUC值的估計(jì)方法,在后面的實(shí)驗(yàn)結(jié)果里給出了具體的數(shù)值。
處理不平衡數(shù)據(jù)集分類的方法主要可分為兩大類:數(shù)據(jù)抽樣方法和代價(jià)敏感分類算法。代價(jià)敏感分類算法主要是通過改進(jìn)傳統(tǒng)的分類算法,提出新的分類思想。例如,傳統(tǒng)的Boosting 算法在處理不平衡數(shù)據(jù)集時(shí)效果不佳,沒有考慮到不平衡數(shù)據(jù)集的情況,正分樣本所減少的權(quán)重與錯(cuò)分樣本所增加的權(quán)重比例是相同的,所以文獻(xiàn)[11]提出的基于Boosting 的支持向量機(jī)算法針對(duì)不平衡數(shù)據(jù)分類得到較好的效果。文獻(xiàn)[12]提出了一種針對(duì)醫(yī)學(xué)數(shù)據(jù)的不平衡數(shù)據(jù)的學(xué)習(xí)算法。數(shù)據(jù)抽樣方法主要有隨機(jī)向上采樣、隨機(jī)向下采樣、壓縮最近鄰(CNN)、鄰域清理(NCL)、虛擬少數(shù)類向上采樣(SMOTE)等,這里著重介紹以下幾種:
(1)Tomek links
該方法的基本思想如下:給定兩個(gè)樣本(xi,xj)屬于不同的類,它們之間的距離用d(xi,xj)表示。若不存在另一樣本x滿足d(xi,x)<d(xi,xj)或d(x,xj)<d(xi,xj),則樣本對(duì)構(gòu)成一個(gè)Tomek links。如果兩個(gè)樣本構(gòu)成Tomek links,則其中某個(gè)樣本為噪點(diǎn),或者兩個(gè)樣本在兩類的邊界上。利用這個(gè)性質(zhì),Tomek links 可作為欠抽樣的方法,即去掉構(gòu)成Tomek links的負(fù)例。
(2)Edited Nearest Neighbor(ENN)
ENN的基本思想是去掉那些類標(biāo)與離它最近的三個(gè)樣本中的兩個(gè)類標(biāo)不同的樣本。但多數(shù)類的樣本附近通常都是多數(shù)類的樣本,因此ENN 去掉的樣本是非常有限的。
(3)Cluster-Based Oversampling(CBOS)
CBOS抽樣方法不僅僅考慮到類間不平衡的處理,而且還考慮到了類內(nèi)不平衡的處理。首先采用k-means 對(duì)訓(xùn)練數(shù)據(jù)集進(jìn)行聚類;然后使用隨機(jī)過抽樣對(duì)大類和小類中的所有cluster進(jìn)一步聚類,對(duì)于大類,除了最大的那個(gè)cluster,都要進(jìn)行進(jìn)一步聚類直到所有的cluster中的樣本數(shù)量與最大的那個(gè)cluster 一樣多;對(duì)于小類,對(duì)每一個(gè)cluster 隨機(jī)過抽樣直到每一個(gè)cluster中包含max_classized/Nsmallclass個(gè)樣本,其中Nsmallclass代表小類中的cluster數(shù)目。
(4)Borderline-SMOTE(BSM)
BSM 是基于SMOTE 的數(shù)據(jù)抽樣算法,與其他抽樣方法不同的是,只對(duì)小類的邊緣樣本做過抽樣,并不是對(duì)小類中所有樣本進(jìn)行過抽樣。具體算法如下:首先,找出小類中的邊緣樣本;然后,利用這些邊緣樣本產(chǎn)生人造樣本并將其加入到原始訓(xùn)練樣本中。假設(shè)整個(gè)訓(xùn)練數(shù)據(jù)集是T,小類是P,大類是N,pnum和nnum分別是小類和大類的樣本數(shù)。對(duì)小類中的每一個(gè)樣本pi,計(jì)算它與整個(gè)數(shù)據(jù)集T中所有樣本的m近鄰,m近鄰中大類樣本的數(shù)量取決于m1(0 <m1<m)。如果m1=m,pi中的所有m近鄰都是大類樣本,pi就被認(rèn)為是噪聲數(shù)據(jù)不會(huì)參加下面的算法;如果,0 ≤m1≤m/2,pi是正確的并且也不會(huì)參與下面的算法;如果m/2 ≤m1≤m,pi的最近鄰中,大類樣本數(shù)量多于小類,pi就被認(rèn)為是誤分并且被放入數(shù)據(jù)集DANGER 中;然后得到一個(gè)數(shù)據(jù)集DANGER(假定有dnum個(gè)樣本),也就是小類P的邊緣數(shù)據(jù),對(duì)于DANGER 中的每一個(gè)樣本pii計(jì)算它與小類P中樣本pi的K近鄰,從中隨機(jī)選擇s個(gè)近鄰計(jì)算它們與pii的歐氏距離dif,然后通過公式:syntheticj=pii+rj×difj產(chǎn)生s個(gè)新的小類樣本,總共產(chǎn)生s×dnum個(gè)人造樣本賦給小類。
以上是基于數(shù)據(jù)抽樣的幾種處理不平衡數(shù)據(jù)的基本方法。近幾年專家們針對(duì)這些基本方法的不足提出了許多改進(jìn)的新方法。Gustavo 等人將過抽樣和欠抽樣方法結(jié)合提出SMOTE+Tomek 和SMOTE+ENN 方法;Taeho 等人提出基于聚類的向上采樣方法,可同時(shí)處理類間和類內(nèi)不平衡。
Gustavo 等人將過抽樣與欠抽樣方法進(jìn)行組合取得了比較好的效果,但是對(duì)其他算法的組合暫時(shí)沒有文獻(xiàn)給出詳細(xì)的研究,所以本文就BSM 和CBOS 與Tomek 和ENN 進(jìn)行組合并驗(yàn)證這種組合的可行性。通過本文的工作發(fā)現(xiàn)這種組合是可行且有效的,有意義的;本文通過對(duì)BSM 和CBOS 進(jìn)行清洗,提出了四種過抽樣和欠抽樣算法結(jié)合的方法:首先通過BSM 對(duì)數(shù)據(jù)集進(jìn)行過抽樣,然后分別運(yùn)用Tomek links 和ENN 對(duì)數(shù)據(jù)集進(jìn)行欠抽樣得到兩種抽樣方法:BSM+Tomek,BSM+ENN;同理,通過CBOS對(duì)數(shù)據(jù)集進(jìn)行過抽樣后,使用Tomek links 和ENN 對(duì)數(shù)據(jù)集進(jìn)行欠抽樣,得到兩種抽樣方法:CBOS+Tomek,CBOS+ENN。
通過實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),這四種抽樣方法在大多數(shù)實(shí)驗(yàn)所用數(shù)據(jù)集和分類器下效果比不做數(shù)據(jù)清洗好,在某些情況下,效果不是很理想,這取決于要使用的數(shù)據(jù)集以及分類方法,當(dāng)然評(píng)價(jià)標(biāo)準(zhǔn)的不同也會(huì)引起實(shí)驗(yàn)結(jié)果的差異,本文將在后面的實(shí)驗(yàn)結(jié)果分析中給出詳細(xì)介紹。
實(shí)驗(yàn)使用了14 種數(shù)據(jù)抽樣方法,包括本文提出的四種抽樣方法;使用了12 個(gè)不平衡數(shù)據(jù)集(表1),為了便于統(tǒng)計(jì)比較,使用了僅有兩類的數(shù)據(jù)集;為了更好地說明數(shù)據(jù)抽樣方法的不同對(duì)不平衡數(shù)據(jù)集分類的影響,文中使用了11種不同的分類器進(jìn)行實(shí)驗(yàn),并且在訓(xùn)練分類器時(shí)使用了10-交叉驗(yàn)證,來處理由于數(shù)據(jù)集過小可能產(chǎn)生的影響。這里選擇使用了12 個(gè)常用的軟件缺陷數(shù)據(jù)庫,軟件缺陷預(yù)測(cè)是典型的數(shù)據(jù)不平衡應(yīng)用問題,從軟件模塊中抽取出特征向量,通過分類器判斷軟件模塊有無缺陷,屬于二分類問題。本文選擇的軟件缺陷數(shù)據(jù)庫來自NASA MDP 數(shù)據(jù)庫和PROMIS 的AR 數(shù)據(jù)庫中的數(shù)據(jù)集,進(jìn)行對(duì)比實(shí)驗(yàn)。表1中對(duì)12 個(gè)數(shù)據(jù)集的屬性進(jìn)行了對(duì)比分析,Obj 表示數(shù)據(jù)集的屬性,DS 代表數(shù)據(jù)集(Data Set),Examples 表示數(shù)據(jù)集中樣本數(shù)量,Atrribues 中表示數(shù)據(jù)集有多少屬性,文獻(xiàn)[13]中提出,數(shù)據(jù)集的不平衡度不同,分類的效果也將有所差異,所以本文使用了不平衡度有差異的數(shù)據(jù)集,其中class(%)表示小類占數(shù)據(jù)集的比例(即不平衡度)。
表1 數(shù)據(jù)集
本文采用的實(shí)驗(yàn)環(huán)境是:MATLAB R2007a 以及weka3.5.8,實(shí)驗(yàn)環(huán)境為Pentium?Dual-Core CPU E5200 2.50 GHz,2 048 MB,Windows XP,其中還調(diào)用了weka 的接口來使用weka 自帶的分類方法和評(píng)價(jià)方法。實(shí)驗(yàn)步驟為:實(shí)驗(yàn)中采用十字交叉驗(yàn)證法。實(shí)驗(yàn)使用了14 種數(shù)據(jù)抽樣方法,包括本文提出的4 種抽樣方法;12 個(gè)不平衡數(shù)據(jù)集(表1)。為了便于統(tǒng)計(jì)比較,采用僅有兩類的數(shù)據(jù)集(二分類問題),并選擇11 種不同的分類器進(jìn)行實(shí)驗(yàn);這樣就得到了一個(gè)三維表,不同的數(shù)據(jù)集,不同的采樣方法和不同的分類器。為了使表格更加直觀明了,文中對(duì)此表格做出了簡(jiǎn)化,分別將抽樣方法和分類器對(duì)應(yīng)的AUC值求平均值,得到兩個(gè)二維表,也就是在不同數(shù)據(jù)集下使用不同的重采樣方法之后進(jìn)行分類,每一個(gè)數(shù)據(jù)集在每一個(gè)采樣方法下使用11 種分類器后得到了11 個(gè)AUC值,將得到的AUC值求平均得到了每一個(gè)數(shù)據(jù)集在每一個(gè)采樣方法下進(jìn)行分類后得到的AUC值,也就是表2 中看到的數(shù)據(jù),這里研究采樣方法對(duì)不平衡數(shù)據(jù)分類的影響;同理,對(duì)于某一個(gè)數(shù)據(jù)集使用14 種采樣方法,進(jìn)而使用某一個(gè)分類器得到的14 個(gè)AUC值,將這些采樣方法對(duì)應(yīng)的AUC值求平均就得到在某一數(shù)據(jù)集下使用某一分類器得到的AUC值,也就是表3 中的數(shù)據(jù),這里研究分類器對(duì)不平衡數(shù)據(jù)分類的影響。
通過一系列對(duì)比實(shí)驗(yàn)發(fā)現(xiàn),本文提出的四種組合方法在多數(shù)情況下優(yōu)于原抽樣方法,表2 中的行代表不同的軟件缺陷數(shù)據(jù)集,列代表不同的重抽樣方法,每一個(gè)值代表著某一采樣方法在某一數(shù)據(jù)集上的AUC值,也就是對(duì)某一數(shù)據(jù)集使用某種采樣方法進(jìn)行重采樣來降低不平衡度,然后再使用分類器進(jìn)行分類,最后計(jì)算AUC值;這里,由于本實(shí)驗(yàn)采用了多個(gè)分類器,每一個(gè)分類器對(duì)應(yīng)一個(gè)AUC值,為了使表格更加直觀,本實(shí)驗(yàn)將每個(gè)分類器對(duì)應(yīng)得到的AUC值求平均值,表格里看到的便是不同分類器下得到的AUC平均值。表2 主要探討數(shù)據(jù)抽樣方法在不平衡數(shù)據(jù)集上的作用。黑體數(shù)字對(duì)應(yīng)效果最好的預(yù)處理算法。從表2 中可以很容易看出來,對(duì)于大多數(shù)數(shù)據(jù)集來講,BSM+Tomek 的預(yù)處理效果要優(yōu)于BSM;CBOS+ENN 的預(yù)處理效果優(yōu)于CBOS;雖然對(duì)BSM 的改進(jìn)(BSM+Tomek 和BSM+ENN)使得數(shù)據(jù)集的分類效果得以提升,但是效果不如Gustavo 等人提出的SMOTE+Tomek 和SMOTE+ENN;Gustavo 等人提出的SMOTE+Tomek 和SMOTE+ENN 效果非常好;對(duì)于數(shù)據(jù)極度不平衡的Mc1 數(shù)據(jù)集,做過抽樣提高了分類效果(SMOTE 和CBOS);對(duì)于數(shù)據(jù)不平衡度較小的數(shù)據(jù)集Kc2和Ar4,做完過抽樣后適當(dāng)做一下清洗(欠抽樣)會(huì)提高分類效果,BSM+ENN 和BSM+Tomek 都表現(xiàn)出較好的效果,CBOS+ENN 也比CBOS 效果優(yōu)越;效果最佳的預(yù)處理方法是SMOTE 和對(duì)SMOTE 的初步改進(jìn)的算法中,本文對(duì)BSM和CBOS的改進(jìn)算法雖然不及SMOTE和Gustavo提出的改進(jìn)算法,但是卻分別比BSM 和CBOS 優(yōu)越。
表2 各種采樣方法在不同數(shù)據(jù)集上的AUC 值
表3 各種分類器在不同數(shù)據(jù)集上的AUC 值
表4 各采樣方法的執(zhí)行時(shí)間 s
表3 的行代表不同的分類器,列代表不同的抽樣方法,每一個(gè)值代表某一采樣方法在不同分類器上的AUC值,探討不同采樣方法與不同的分類器搭配后產(chǎn)生的效果(即AUC值),也就是先通過某種采樣方法對(duì)不平衡數(shù)據(jù)集進(jìn)行重采樣來降低不平衡度,然后在不同的分類器上進(jìn)行分類,最后計(jì)算AUC值,實(shí)驗(yàn)中對(duì)多個(gè)不平衡數(shù)據(jù)集進(jìn)行了處理,為了使表格更加直觀,計(jì)算了在多個(gè)數(shù)據(jù)集下得到的AUC值的平均,這些數(shù)據(jù)集都來自表1 中列出的數(shù)據(jù)集。從圖表中可以看出:對(duì)數(shù)據(jù)集進(jìn)行BSM 和CBOS 處理后,再進(jìn)行適當(dāng)欠抽樣會(huì)提高分類效果;對(duì)于不同的分類器,BSM+Tomek 和CBOS+ENN 的效果也比較穩(wěn)定,多數(shù)情況下效果明顯;本文主要探討數(shù)據(jù)抽樣方法對(duì)不平衡數(shù)據(jù)集分類的影響,不再深入研究分類器的影響。
在本次實(shí)驗(yàn)中,使用了多種評(píng)價(jià)標(biāo)準(zhǔn),除了上邊用到的評(píng)價(jià)指標(biāo)之外,還包括precisionfMeasure,kappa 等。這里僅列出AUC指標(biāo)下的實(shí)驗(yàn)結(jié)果。
在表4 中,本文給出了各采樣方法在同一臺(tái)機(jī)器上的執(zhí)行時(shí)間,作為各采樣方法的計(jì)算代價(jià),用同一個(gè)數(shù)據(jù)集Mw1進(jìn)行運(yùn)行時(shí)間的計(jì)算,得到了各算法的執(zhí)行時(shí)間,很明顯,對(duì)于SMOTE、BSM 和CBOS 的改進(jìn)使得算法的執(zhí)行時(shí)間增加接近一百倍,計(jì)算代價(jià)增大,同時(shí)觀察表2,3,AUC值得到了一定程度的提升。
本文通過在多個(gè)數(shù)據(jù)集下使用多種數(shù)據(jù)抽樣,并用多個(gè)分類器進(jìn)行訓(xùn)練、分類,用多種評(píng)價(jià)指標(biāo)比較分類效果,得到了四種較好的數(shù)據(jù)抽樣方法和有意義的結(jié)論,這四種抽樣方法在大多數(shù)實(shí)驗(yàn)所用數(shù)據(jù)集和分類器下效果比不做數(shù)據(jù)清洗時(shí)的分類效果好,但是本文還有許多值得改進(jìn)的地方。首先所使用的數(shù)據(jù)抽樣方法都不能做到適用于每一個(gè)數(shù)據(jù)集,沒有找到一種穩(wěn)定的數(shù)據(jù)抽樣方法;其次,本文雖然討論了抽樣方法和分類器對(duì)分類效果的影響,但是沒有研究數(shù)據(jù)集對(duì)分類效果的影響,希望在下一步的研究中深入研究數(shù)據(jù)集對(duì)分類效果的影響;第三,本文提出的四種改進(jìn)算法研究了BSM、CBOS、Tomek links 及ENN 的組合,沒有研究其他采樣方法組合的合理性,而且這四種算法效果雖然優(yōu)于原來的算法,但是整體效果低于Gustovo的改進(jìn)算法。
[1] Gewehr J E,Szugat M,Zimmer R.Bio Weka-extending the weak framework for bioinformatics[J].Bioinformatics,2007,23(5):651-653.
[2] Hornik K,Zeileis A,Hothorn T,et al.RWeka:an R Interface to Weka[EB/OL].[2011-11-10].http://www.google.com.hk/#newwindow=1&q=+RWeka:+An+R+Interface+to+Weka%EF%BC%8C2009&safe=strict.
[3] Chapman M,Callis P,Jackson W.Metrics data program[R].NASA IV and V Facility,2004.
[4] Shirabad S,Menzies T J.The PROMISE repository of software engineering databases[EB/OL].[2011-11-10].http://www.google.com.hk/#newwindow=1&q=The+PROMISE+Repository+of+Software+Engineering+Databases&safe=strict.
[5] Tomek I.Two modifications of CNN[J].IEEE Trans on Systems Man and Communications,1976,6:769-772.
[6] Hart P E.The condensed nearest neighbor rule[J].IEEE Trans on Information Theory,1968,14(3).
[7] Chawla N V,Bowyer K W,Hall L O,et al.SMOTE:Synthetic Minority Oversampling Technique[J].Journal of Artificial Intelligence Research,2002,16:321-357.
[8] Han Hui,Wang Wenyuan,Mao Binghuan.Borderline-SMOTE:a new over-sampling method in imbalanced data sets learning[C]//Lecture Notes in Computer Science,2005:878-887.
[9] Gustavo E A,Batista P A,Ronaldo 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.
[10] 宋花玲.ROC 曲線的評(píng)價(jià)研究及應(yīng)用[D].上海:第二軍醫(yī)大學(xué),2006.
[11] Wang B X,Japkowicz N.Boosting support vector machines for imbalanced data sets[J].Knowledge and Information Systems,2010,25:1-20.
[12] Li Der-Chiang,Liu Chiao-Wen,Hu S C.A learning method for the class imbalance problem with medical data sets[J].Computers in Biology and Medicine,2010,40(5).
[13] Zhou L G,Lai K K.Benchmarking binary classification models on data sets with different degrees of imbalance[J].Frontiers of Computer Science in China,2009,2(3):205-216.
[14] Anand A,Pugalenthi G,F(xiàn)ogel G B,et al.An approach for classification of highly imbalanced data using weighting and understanding[J].Amino Acids,2010,39:1385-1391.