楊 磊,陸慧娟,嚴(yán) 珂,葉敏超
(中國計(jì)量大學(xué) 信息工程學(xué)院,浙江 杭州 310018)
一種計(jì)算代價(jià)敏感算法分類精度的方法
楊 磊,陸慧娟,嚴(yán) 珂,葉敏超
(中國計(jì)量大學(xué) 信息工程學(xué)院,浙江 杭州 310018)
代價(jià)敏感普遍應(yīng)用于解決分類不平衡問題,但代價(jià)敏感算法一直沒有一個(gè)客觀的評(píng)價(jià)標(biāo)準(zhǔn).本文提出一種針對(duì)代價(jià)敏感算法的分類精度計(jì)算方法,以平衡精度替換總體精度來有效地評(píng)定代價(jià)敏感算法的分類性能.相比于傳統(tǒng)的總體精度,該平衡精度不會(huì)忽略小類樣本的貢獻(xiàn).通過代價(jià)敏感超限學(xué)習(xí)機(jī)對(duì)基因表達(dá)數(shù)據(jù)進(jìn)行分類對(duì)比實(shí)驗(yàn),結(jié)果表明,平衡精度可以更為客觀、合理地表示代價(jià)敏感算法的分類性能.
代價(jià)敏感;平衡精度;超限學(xué)習(xí)機(jī);基因表達(dá)數(shù)據(jù)
傳統(tǒng)的機(jī)器學(xué)習(xí)分類算法通常假定訓(xùn)練集是平衡的.因此,在面對(duì)不平衡數(shù)據(jù)集時(shí),以總體分類精度為最終目標(biāo)的傳統(tǒng)分類算法會(huì)過多地關(guān)注多數(shù)類,但在實(shí)際應(yīng)用中,少數(shù)類樣本被誤分的代價(jià)要比多數(shù)類被誤分的代價(jià)大,所以往往得不到更為可靠的分類結(jié)果[1-3].代價(jià)敏感學(xué)習(xí)(cost-sensitive learning, CSL)的引入有效的彌補(bǔ)了傳統(tǒng)分類算法在不平衡數(shù)據(jù)分類方面的缺陷[4].
Chai等提出了使誤分類代價(jià)和測(cè)試代價(jià)最小化的測(cè)試代價(jià)敏感貝葉斯算法[5].在此基礎(chǔ)上,鄭恩輝等提出了代價(jià)敏感支持向量機(jī)[6].之后,安春霖等將代價(jià)敏感嵌入超限學(xué)習(xí)機(jī)中并進(jìn)行相異性集成,提出了代價(jià)敏感超限學(xué)習(xí)機(jī)(cost sensitive extreme learning machine, CS-ELM)[7-8].Lu等將代價(jià)敏感應(yīng)用于旋轉(zhuǎn)森林算法,提出了嵌入代價(jià)敏感的旋轉(zhuǎn)森林算法[9],與傳統(tǒng)的旋轉(zhuǎn)森林算法相比,該算法能夠在保證正確率的同時(shí)降低分類代價(jià).楊強(qiáng)等研究了代價(jià)敏感機(jī)制與決策樹及貝葉斯分類器的結(jié)合,以及代價(jià)敏感分類時(shí)的數(shù)據(jù)預(yù)處理問題[10-12].
但是,在代價(jià)敏感學(xué)習(xí)的發(fā)展過程中,代價(jià)敏感算法僅被當(dāng)作一個(gè)協(xié)助分類的工具,用于提高傳統(tǒng)分類器對(duì)不平衡數(shù)據(jù)的分類性能[13],其算法本身少有改進(jìn).其原因主要是,一直以來都沒有一個(gè)針對(duì)代價(jià)敏感算法的評(píng)價(jià)方法,無法合理的探究算法的分類性能,自然也就無法進(jìn)行合理的優(yōu)化.傳統(tǒng)的分類性能指標(biāo),如準(zhǔn)確率、召回率、F值以及ROC曲線等,雖然可以有效地評(píng)定不平衡數(shù)據(jù)的分類情況,但是受約束于二分類問題,無法完美地應(yīng)用于基因表達(dá)數(shù)據(jù)的分類.針對(duì)該問題,本文引入Cohen等[14]在分析系統(tǒng)狀態(tài)時(shí)提出的平衡精度并加之改進(jìn),用平衡精度替換總體精度,提出一種針對(duì)代價(jià)敏感算法的分類精度計(jì)算方法.
代價(jià)敏感在現(xiàn)實(shí)中普遍存在.代價(jià)敏感學(xué)習(xí)可以彌補(bǔ)分類器只注重分類精度的片面性,其合理性在于通過引入代價(jià)敏感而尋求總體的最小代價(jià),而不是單純的精度最高.分類代價(jià)有多種類型,本文的研究主要討論錯(cuò)分代價(jià).
錯(cuò)分代價(jià)是由于錯(cuò)誤分類而引起的,是對(duì)錯(cuò)誤分類的一種懲罰,本文以二分類問題加以說明.對(duì)于一個(gè)二分類的問題,兩種不同的錯(cuò)誤所造成的代價(jià)是不一樣的,定義第一類為P,第二類為N,構(gòu)造代價(jià)矩陣C.
表1 代價(jià)矩陣
其中:C00(True Positive, TP)和C11(True False, TF)表示正確分類的代價(jià)值,一般為0;C01(False Positive, FP)和C10(False Negative, FN)表示錯(cuò)誤分類的代價(jià)值,C01表示把P類分成N類的代價(jià),C10表示把N類分成P類的代價(jià).通常可以簡(jiǎn)單的表示為
(1)
將代價(jià)矩陣嵌入超限學(xué)習(xí)機(jī)中,用得到的CS-ELM對(duì)基因表達(dá)數(shù)據(jù)集進(jìn)行分類,分類流程圖如圖1,分類結(jié)果如表2.
圖1 基因表達(dá)數(shù)據(jù)分類流程圖Figure 1 Flow chart of gene expression data classification
表2 不同基因表達(dá)數(shù)據(jù)集的分類精度
由表2可以看出,在分類算法嵌入代價(jià)敏感后,其分類的整體精度有所下降.這是因?yàn)榍度氪鷥r(jià)敏感后的算法不再僅以精度為目標(biāo),犧牲了一部分精度以降低其整體代價(jià)值.但其實(shí)不管如何設(shè)置代價(jià)的權(quán)值,其精度都會(huì)有所下降,因此并不能通過其總體精度的降低來評(píng)判所嵌入的代價(jià)是否得當(dāng).因此,需要一個(gè)更為客觀的標(biāo)準(zhǔn)來評(píng)判代價(jià)敏感算法.以此為基礎(chǔ),引入平衡精度概念,為代價(jià)敏感算法的分類性能進(jìn)行一個(gè)有效的度量.
對(duì)一個(gè)二類分類問題,稱樣本數(shù)量少的那個(gè)類別為正類(positive class)或小類、少數(shù)類(minority class);反之,樣本數(shù)量多的為負(fù)類(negative class)或大類、多數(shù)類(majority class).下表用混淆矩陣進(jìn)行表示.
表3 二分類問題的混淆矩陣
在傳統(tǒng)的算法中,通常所指的分類精度是總體精度(overall accuracy),即所有測(cè)試樣本被正確分類的比例,其計(jì)算公式如下:
(2)
但是基因表達(dá)數(shù)據(jù)由于其數(shù)據(jù)不平衡性,即正類樣本和負(fù)類樣本的數(shù)量相差極大,這樣計(jì)算分類精度很容易出現(xiàn)錯(cuò)誤.例如,測(cè)試樣本有1個(gè)正類樣本,99個(gè)負(fù)類樣本,分類器很可能將所有樣本都分類為負(fù)類,而通過總體精度的計(jì)算方法,其分類精度為99/100=0.99,但其對(duì)正類樣本的分類準(zhǔn)確率則為0.為解決這一問題,調(diào)整精度的計(jì)算公式,修改后的平衡精度(balance accuracy)表示如下:
(3)
對(duì)于多分類問題,平衡精度的表示可以相應(yīng)修正為
(4)
上式中,n表示樣本的類別數(shù),Mi(i=1,2,…,n)表示第i類樣本的樣本個(gè)數(shù),TMi(i=1,2,…,n)表示第i類樣本分類正確的個(gè)數(shù).
用平衡精度再次計(jì)算上述例子,其平衡精度為1/2×(0+99/99)=0.5,平衡精度可以很清楚地標(biāo)識(shí)分類算法對(duì)于不平衡數(shù)據(jù)的分類缺陷.
將整體精度替換為平衡精度,并嵌入CS-ELM分類器中,在Prostate,Leukemia,Lung和Colon 4個(gè)基因表達(dá)數(shù)據(jù)集上分別進(jìn)行5組實(shí)驗(yàn),得到的分類精度如表4.
表4 不同基因表達(dá)數(shù)據(jù)分類的平衡精度
如圖2、3、4、5所示,用平衡精度作為測(cè)量標(biāo)準(zhǔn)后,傳統(tǒng)的分類器的分類精度明顯下降,而嵌入代價(jià)敏感的分類器的分類精度有所上升,可以更為直觀的看出傳統(tǒng)分類器在嵌入代價(jià)敏感后的提升,精度越高,性能越好.
圖2 Prostate數(shù)據(jù)集分類的平衡精度Figure 2 Balance accuracy of Prostate data classification
圖3 Leukemia數(shù)據(jù)集分類的平衡精度Figure 3 Balance accuracy of Leukemia data classification
圖4 Lung數(shù)據(jù)集分類的平衡精度Figure 4 Balance accuracy of Lung data classification
圖5 Colon數(shù)據(jù)集分類的平衡精度Figure 5 Balance accuracy of Colon data classification
最后,針對(duì)不同數(shù)據(jù)集,修改CS-ELM的代價(jià)權(quán)值,以從小到大的順序設(shè)計(jì)5組試驗(yàn),得到表5所示實(shí)驗(yàn)結(jié)果.
表5 嵌入不同代價(jià)權(quán)值后的CS-ELM分類情況
通過圖6可以明顯看出,嵌入不同的代價(jià)權(quán)值可以得到不同的平衡精度.對(duì)于Prostate、Leukemia和Lung數(shù)據(jù)集來說,第二組的實(shí)驗(yàn)結(jié)果相比其他組更優(yōu),說明第二組的代價(jià)權(quán)值設(shè)定對(duì)于這3個(gè)數(shù)據(jù)集能更好的提升分類性能.對(duì)于Colon數(shù)據(jù)集,嵌入第一組的代價(jià)權(quán)值的代價(jià)敏感算法擁有較優(yōu)的分類性能,這是由于該數(shù)據(jù)集多數(shù)類和少數(shù)類數(shù)量差距較小,因此較小的代價(jià)權(quán)值更為適合該數(shù)據(jù)集.
圖6 嵌入不同代價(jià)權(quán)值后的CS-ELM分類性能Figure 6 Performance of CS-ELM with different cost weights
本文將平衡精度引入代價(jià)敏感分類,提出了一種針對(duì)代價(jià)敏感算法的分類精度計(jì)算方法.實(shí)驗(yàn)證明,平衡精度可以更為準(zhǔn)確地描述基因表達(dá)數(shù)據(jù)的分類情況,因此可以用平衡精度的高低判斷所使用的代價(jià)敏感算法的分類性能.以此為基礎(chǔ),可以尋找和設(shè)立最優(yōu)的代價(jià)敏感權(quán)值等參數(shù),以實(shí)現(xiàn)對(duì)代價(jià)敏感算法的優(yōu)化.
[1] CHAWLA N V, JAPKOWICZ N, KOTCZ A. Editorial: special issue on learning from imbalanced data sets[J].ACM SIGKDD Explorations Newsletter,2004,6(1):1-6.
[2] 陶新民,郝思媛,張冬雪,等.不均衡數(shù)據(jù)分類算法的綜述[J].重慶郵電大學(xué)學(xué)報(bào)(自然科學(xué)版),2013,25(1):101-110. TAO X M, HAO S Y, ZHANG D X, et al. Overview of classification algorithms for unbalanced data[J].Journal of Chongqing University of Posts and Telecommunications(Natural Science Edition),2013,25(1):101-110.
[3] 李勇,劉戰(zhàn)東,張海軍.不平衡數(shù)據(jù)的集成分類算法綜述[J].計(jì)算機(jī)應(yīng)用研究,2014(5):1287-1291. LI Y, LIU Z D, ZHANG H J. Review on ensemble algorithms for imbalanced data classification[J].Application Research of Computers,2014(5):1287-1291.
[4] CHARLES E. The foundatins of cost-sensitive learning[C]//Proc of the 17th Int Joint Conf on Artificial Intelligence.New York: ACM,2011:973-978.
[5] CHAI X Y, DENG L, YANG Q, et al. Test-cost sensitive naive bayes classification[C]// Proc of the 4th IEEE Int Conf on Data Mining. Piscataway, NJ: IEEE,2004:51-58.
[6] 鄭恩輝,李平,宋執(zhí)環(huán).代價(jià)敏感支持向量機(jī)[J].控制與決策,2006(4):473-476. ZHENG E H, LI P, SONG Z H. Cost sensitive support vector machines[J].Control and Decision,2006(4):473-476.
[7] 安春霖,陸慧娟,鄭恩輝,等.嵌入誤分類代價(jià)和拒識(shí)代價(jià)的極限學(xué)習(xí)機(jī)基因表達(dá)數(shù)據(jù)分類[J].山東大學(xué)學(xué)報(bào):工學(xué)版,2013(4):18-25. AN C L, LU H J, ZHENG E H, et al. Gene expression data classification of the extreme learning machine with misclassification cost and rejection cost [J].Journal of Shandong University: Engineering Science,2013(4):18-25.
[8] 安春霖,陸慧娟,魏莎莎,等.嵌入代價(jià)敏感的極限學(xué)習(xí)機(jī)相異性集成的基因表達(dá)數(shù)據(jù)分類[J].計(jì)算機(jī)科學(xué),2014(12):211-215. AN C L, LU H J, WEI S S, et al. Dissimilarity based ensemble of extreme learning machine with cost-sensitive for gene expression data classification[J].Computer Science,2014(12):211-215.
[9] LU H J, YANG L, YAN K, et al. A cost-sensitive rotation forest algorithm for gene expression data classification [J].Neurocomputing,2016,228:270-276.
[10] YANG Q, LING C, CHAI X Y, et al. Test-cost sensitive classification on data with missing values[J].IEEE Transactions on Knowledge & Data Engineering,2006,18(5):626-638.
[11] PAN J F, YANG Q, YANG Y M, et al. Cost-sensitive-data preprocessing for mining customer relationship management databases[J].IEEE Intelligent Systems,2007,22(1):46-51.
[12] LING C X, SHENG V S, YANG Q. Test strategies for cost-sensitive decision trees[J].IEEE Transactions on Knowledge & Data Engineering,2006,18(8):1055-1067.
[13] LING C X, SHENG V S. A comparative study of cost-sensitive classifiers[J].Chinese Journal of Computers,2007,30(8):1203-1212.
[14] COHEN I, GOLDSZMIDT M, KELLY T, et al. Correlating instrumentation data to system states: A building block for automated diagnosis and control[C]//Conference on Symposium on Opearting Systems Design & Implementation. San Francisco: ACM,2013:231-244.
A method of classification accuracy calculation for cost sensitive algorithms
YANG Lei, LU Huijuan, YAN Ke, YE Minchao
(College of Information Engineering, China Jiliang University, Hangzhou 310018, China)
Cost sensitive algorithms are widely applied to solve the problem of unbalanced classification. However, there is no objective evaluation criteria for cost sensitive algorithms. This paper proposes a method of classification accuracy calculation for cost sensitive algorithms. Balance accuracy is utilized instead of overall accuracy to effectively assess the performance of cost sensitive algorithms. Compared with overall accuracy, the proposed balance accuracy will not neglect the contribution of samples in small classes. In the experiment, we classified gene expression data with cost sensitive extreme learning machines. The result shows the balance accuracy is a valid criterion for evaluating classification performance.
cost sensitive; balance accuracy; extreme learning machine; gene expression data
2096-2835(2017)01-0092-05
10.3969/j.issn.2096-2835.2017.01.016
2016-12-07 《中國計(jì)量大學(xué)學(xué)報(bào)》網(wǎng)址:zgjl.cbpt.cnki.net
國家自然科學(xué)基金資助項(xiàng)目(No.61272315,61602431),浙江省自然科學(xué)基金資助項(xiàng)目(No.Y1110342).
楊 磊(1992- ),男,山東省泰安人,碩士研究生,主要研究方向?yàn)闄C(jī)器學(xué)習(xí).E-mail:499196799@qq.com 通信聯(lián)系人:陸慧娟,女,教授.E-mail:hjlu@cjlu.edu.cn
TP391
A