閆 慈 田翔華 阿拉依·阿汗 張偉文 曹明芹△
【提 要】 目的 以代謝綜合征為例,探討不平衡數(shù)據(jù)對(duì)分類算法的影響,并運(yùn)用重采樣技術(shù)對(duì)數(shù)據(jù)進(jìn)行平衡化處理,比較神經(jīng)網(wǎng)絡(luò)、決策樹的分類性能。方法 采用隨機(jī)過采樣、隨機(jī)欠采樣、混合采樣和人工合成數(shù)據(jù)四種重采樣技術(shù),比較數(shù)據(jù)重采樣前后及四種數(shù)據(jù)重采樣間使用神經(jīng)網(wǎng)絡(luò)、決策樹分類的性能,以F-Measure,G-mean和AUC作為模型評(píng)價(jià)指標(biāo)。結(jié)果 (1)分類算法性能隨不平衡數(shù)據(jù)集不平衡比例的加劇而降低;(2)四種重采樣技術(shù)中隨機(jī)過采樣后作用于BP神經(jīng)網(wǎng)絡(luò)、C4.5決策樹分類性能最大。結(jié)論 分類性能隨數(shù)據(jù)集中患病率的降低而下降。采用隨機(jī)過采樣提高了算法的分類性能。建議在應(yīng)用分類算法對(duì)醫(yī)學(xué)不平衡數(shù)據(jù)分類前,采用隨機(jī)過采樣技術(shù)以提高分類性能。
不平衡數(shù)據(jù)分類問題已成為數(shù)據(jù)挖掘領(lǐng)域內(nèi)一個(gè)重要的研究課題。不平衡數(shù)據(jù)是指分類數(shù)據(jù)中某一類(多數(shù)類)的數(shù)量遠(yuǎn)大于另一類(少數(shù)類)的數(shù)量[1],這種不平衡在醫(yī)療診斷中頗為常見,如惡性腫瘤。目前流行的分類算法(如決策樹、神經(jīng)網(wǎng)絡(luò))都是基于類分布均衡的假設(shè),以高總體準(zhǔn)確度為目標(biāo)[2]。為診斷惡性腫瘤,將99.9%的個(gè)體診斷為健康,便可達(dá)到99.9%的準(zhǔn)確度,但是這種分類算法并無任何實(shí)際意義。醫(yī)學(xué)中患者的數(shù)量遠(yuǎn)遠(yuǎn)小于健康個(gè)體,在醫(yī)療診斷中病人誤診為健康與健康個(gè)體誤診為病人付出的代價(jià)是不同的,因此,準(zhǔn)確的識(shí)別出病人更加重要。那么,如何增加患者的識(shí)別率,同時(shí)兼顧健康個(gè)體的準(zhǔn)確度,是亟待解決的分類問題。
目前,解決不平衡數(shù)據(jù)的分類問題主要包括數(shù)據(jù)處理及算法設(shè)計(jì)兩方面。前者主要是對(duì)數(shù)據(jù)進(jìn)行重新采樣以達(dá)到平衡,然后再應(yīng)用傳統(tǒng)的分類算法對(duì)數(shù)據(jù)集分類[3];后者主要結(jié)合不平衡數(shù)據(jù)的特點(diǎn),對(duì)傳統(tǒng)分類算法進(jìn)行改進(jìn),使它更偏向于少數(shù)類,以提高不平衡數(shù)據(jù)集的整體分類性能[4]。
本文以代謝綜合征為切入點(diǎn),通過計(jì)算機(jī)模擬不同比例的不平衡數(shù)據(jù)集,探討不同患病率疾病分類性能間的差異,并對(duì)原代謝綜合征不平衡數(shù)據(jù)集從數(shù)據(jù)處理角度進(jìn)行重采樣處理,以神經(jīng)網(wǎng)絡(luò)、決策樹兩種分類算法為例,比較兩種分類算法智能甄別體檢中代謝綜合征患者的性能。
本研究共收集新疆某體檢中心2014-2016年63861份體檢數(shù)據(jù),其中男性32403例,女性31458例,年齡3~93(43.06±13.47)歲,代謝綜合征患者占4.34%,不平衡比例達(dá)22。共14個(gè)變量,其中13個(gè)生理、生化指標(biāo),1個(gè)分類指標(biāo)。代謝綜合征的診斷嚴(yán)格參照中華醫(yī)學(xué)會(huì)糖尿病分會(huì)的標(biāo)準(zhǔn)[5]。數(shù)據(jù)集變量特征見表1。
表1 數(shù)據(jù)集變量特征
從數(shù)據(jù)處理角度解決類別不平衡問題中最重要的方法就是重采樣技術(shù),其主要思想是通過合理地增加或者減少一些樣本達(dá)到平衡數(shù)據(jù)分布的目的,從而降低數(shù)據(jù)不平衡對(duì)分類算法帶來的不良影響[6]。過采樣、欠采樣和混合采樣是目前較為成熟的重采樣技術(shù)。過采樣通過對(duì)少數(shù)類樣本進(jìn)行復(fù)制或人工合成一些新的樣本產(chǎn)生數(shù)據(jù)集的超集使數(shù)據(jù)集樣本量達(dá)到平衡,分為隨機(jī)過采樣和人工合成數(shù)據(jù),欠采樣則以一定的策略選取多數(shù)類樣本中的一個(gè)子集達(dá)到同樣的目的[7]。混合采樣則融合過采樣和欠采樣兩種技術(shù)。
(1)BP神經(jīng)網(wǎng)絡(luò)BP神經(jīng)網(wǎng)絡(luò)(back propagation neural network)是一種按誤差逆向傳播算法的多層前饋網(wǎng)絡(luò),其學(xué)習(xí)規(guī)則使用最速下降法,通過反向傳播來不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)的誤差平方和最小[8]。其網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)包括輸入層、隱含層和輸出層[9],見圖1。
圖1 BP神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)
本研究以所有生理、生化指標(biāo)作輸入層,以是否患代謝綜合征為輸出層,設(shè)置單個(gè)隱含層。隱含層神經(jīng)元個(gè)數(shù)的選擇直接關(guān)系到神經(jīng)網(wǎng)絡(luò)的規(guī)模和精度。目前,隱含層神經(jīng)元個(gè)數(shù)的選取尚無理論指導(dǎo)。公式(1)可用于選擇最佳隱含層神經(jīng)元時(shí)的參考公式[10]:
(1)
N表示隱含層神經(jīng)元個(gè)數(shù),P表示輸入神經(jīng)元個(gè)數(shù),Q表示輸出層神經(jīng)元個(gè)數(shù)。經(jīng)過試驗(yàn),得最佳隱含層神經(jīng)元個(gè)數(shù)為8。
(2)C4.5決策樹決策樹從一個(gè)無次序、無規(guī)則的實(shí)例集中歸納出一組采用樹形結(jié)構(gòu)表示的分類規(guī)則。本研究采用C4.5決策樹算法。該算法將定量變量采用離散化的取值空間策略,進(jìn)行優(yōu)化二分,并采用信息增益率進(jìn)行分類性能評(píng)估。離散化方法為:①尋找連續(xù)型變量的最小值和最大值,分別賦值為min和max;②設(shè)置區(qū)間[min,max]中N個(gè)等分段點(diǎn)Ai,其中,i=1,2,……,N;③分別計(jì)算[min,Ai]和[Ai+1,max](i=1,2,……,N)作為區(qū)間值時(shí)的Gain值,并進(jìn)行比較;④選取Gain值最大的AK作為該連續(xù)型變量的斷點(diǎn),將變量值設(shè)置為[min,Ak]和[Ak+1,max]兩個(gè)區(qū)間[11]。決策樹的剪枝策略從根節(jié)點(diǎn)開始遞歸對(duì)決策樹各節(jié)點(diǎn)進(jìn)行檢查,若該節(jié)點(diǎn)的某一子樹所含集合的全局支持度小于最小全局支持度閾值,則直接剪掉該子樹;若該節(jié)點(diǎn)存在葉節(jié)點(diǎn)作為子樹,并且該節(jié)點(diǎn)所含集合對(duì)某一葉節(jié)點(diǎn)的類支持度大于最大類支持度閾值,則剪掉此節(jié)點(diǎn)直接指向該葉節(jié)點(diǎn)的其他子樹[12]。
不平衡數(shù)據(jù)更加關(guān)注對(duì)少數(shù)類樣本的識(shí)別,所以僅僅依靠準(zhǔn)確率作為評(píng)價(jià)標(biāo)準(zhǔn)并無適用性。為了更有意義地衡量不平衡數(shù)據(jù)的分類,需要構(gòu)建混淆矩陣來確定相應(yīng)的評(píng)價(jià)標(biāo)準(zhǔn)[13]。二分類問題中,混淆矩陣記錄了每一類中正確和錯(cuò)誤識(shí)別樣本的結(jié)果,如表2所示。
表2 二分類數(shù)據(jù)的混淆矩陣
不平衡數(shù)據(jù)分類性能的評(píng)價(jià)指標(biāo)如下:
(1)F值(F-Measure)
(2)
在不平衡數(shù)據(jù)評(píng)價(jià)中,F-Measure是一個(gè)綜合性的評(píng)價(jià)標(biāo)準(zhǔn),其公式如(2)所示,其中查全率(recall)表示被正確分類的樣本占總樣本的比例。查準(zhǔn)率(precision)表示分類陽性在真正陽性中所占的比例。當(dāng)查全率和查準(zhǔn)率都比較大時(shí),F-Measure才會(huì)相應(yīng)的增大,故F-Measure可以正確的評(píng)價(jià)分類器對(duì)于每一類的分類性能。
(2)幾何均數(shù)(G-mean)
(3)
由公式(3)所示,只有當(dāng)靈敏度和特異度都比較高的時(shí)候,G-mean才會(huì)相對(duì)較高[14]。因此,G-mean綜合考慮了少數(shù)類樣本的準(zhǔn)確率和多數(shù)類樣本的準(zhǔn)確率,體現(xiàn)了分類算法在多數(shù)樣本和少數(shù)樣本上的整體分類性能。
(3)ROC曲線下面積(area under receiver operating characteristic,AUC)
ROC曲線分別以TPrate和FPrate為橫縱坐標(biāo),曲線越靠近左上角表示分類器性能越好。在很多情況下直接比較不同模型的ROC曲線并不方便,因此使用ROC曲線的量化指標(biāo),即AUC的值作為分類算法的評(píng)價(jià)指標(biāo)更為普遍[15]。
本研究以AUC為最重要的評(píng)價(jià)標(biāo)準(zhǔn),描述指標(biāo)的取值范圍均為[0,1],取值越大表示對(duì)不平衡數(shù)據(jù)集的分類性能越好。此外,為提高分類算法的可靠性,采用十折交叉驗(yàn)證。
利用原代謝綜合征不平衡數(shù)據(jù)集,根據(jù)不同疾病的患病率,計(jì)算機(jī)模擬不同比例的不平衡數(shù)據(jù)集。BP神經(jīng)網(wǎng)絡(luò)分類不同比例的代謝綜合征數(shù)據(jù)集,結(jié)果見表3。隨著數(shù)據(jù)集不平衡比例的加劇,即患病率逐漸降低,BP神經(jīng)網(wǎng)絡(luò)的F-Measure不斷增大,但G-mean和AUC不斷降低。綜合考慮F-Measure、G-mean和AUC,認(rèn)為BP神經(jīng)網(wǎng)絡(luò)的分類性能隨數(shù)據(jù)集不平衡比例的加劇而降低,C4.5決策樹也得出同樣結(jié)論。
表3 BP神經(jīng)網(wǎng)絡(luò)分類不同不平衡比例數(shù)據(jù)集的結(jié)果
BP神經(jīng)網(wǎng)絡(luò)分類四種重采樣后的數(shù)據(jù)集結(jié)果見表4。相較于原不平衡數(shù)據(jù)集,四種重采樣后的數(shù)據(jù)集經(jīng)BP神經(jīng)網(wǎng)絡(luò)分類后F-Measure均降低,表明平衡數(shù)據(jù)后降低了算法的分類性能;G-mean均有提升,隨機(jī)過采樣G-mean最大;除人工合成數(shù)據(jù)外,采用隨機(jī)過采樣、隨機(jī)欠采樣和混合采樣的AUC均有提升,隨機(jī)過采樣AUC最大。綜合考慮F-Measure、G-mean和AUC,隨機(jī)過采樣+BP神經(jīng)網(wǎng)絡(luò)的分類性能最佳。
表4 BP神經(jīng)網(wǎng)絡(luò)分類結(jié)果
運(yùn)用四種重采樣技術(shù)后,C4.5決策樹分類體檢中的代謝綜合征患者結(jié)果見表5。相較于原不平衡數(shù)據(jù)集,隨機(jī)過采樣和混合采樣的F-Measure增大,表明這兩種數(shù)據(jù)平衡化方法提高了數(shù)據(jù)集的分類性能;G-mean與AUC均有提升,且隨機(jī)過采樣技術(shù)的G-mean和AUC均最大,人工合成數(shù)據(jù)均最小,表明采用四種數(shù)據(jù)平衡化方法均提高了分類性能,其中隨機(jī)過采樣技術(shù)分類性能最高,采用人工合成數(shù)據(jù)分類性能最小。綜合考慮上述三個(gè)指標(biāo),認(rèn)為隨機(jī)過采樣+C4.5決策樹的分類性能最佳。
表5 C4.5決策樹分類結(jié)果
重采樣技術(shù)平衡數(shù)據(jù)集前后決策樹產(chǎn)生的樹狀圖大致相同,見圖2~3。從決策樹可看出,代謝綜合征的影響因素主要是:空腹血糖、高密度脂蛋白、BMI、舒張壓和年齡。但隨機(jī)過采樣平衡數(shù)據(jù)集后,產(chǎn)生的決策樹更接近診斷標(biāo)準(zhǔn)。此外,決策樹分類規(guī)則提示,如果體檢者FPG≤6.1,HDL-C≤0.99,BMI≤24.94,age≤61,那么不患代謝綜合征等。
通過計(jì)算機(jī)模擬二分類中不同比例的數(shù)據(jù)集,即模擬不同疾病的患病率,結(jié)果證實(shí),隨著數(shù)據(jù)集不平衡比例的加劇,BP神經(jīng)網(wǎng)絡(luò)、C4.5決策樹的分類性能逐漸降低,即分類算法的性能隨患病率的降低而降低。這與相關(guān)報(bào)道[11]一致。
本研究中BP神經(jīng)網(wǎng)絡(luò)、C4.5決策樹分類體檢中的代謝綜合征患者,分類性能均大于0.9,均取得了較好的分類性能,這可能與樣本量的大小有關(guān),該樣本由63861份14個(gè)變量的體檢數(shù)據(jù)組成。此外,從決策樹節(jié)點(diǎn)看,與目前大規(guī)模流行病學(xué)調(diào)查得出的代謝綜合征發(fā)病高危因素一致[16],這表明決策樹產(chǎn)生的樹狀結(jié)構(gòu)具有實(shí)際意義,與醫(yī)學(xué)認(rèn)識(shí)水平相同。且從決策樹的根節(jié)點(diǎn)到葉節(jié)點(diǎn)對(duì)應(yīng)著一條合理的規(guī)則,并可根據(jù)規(guī)則對(duì)體檢人群進(jìn)行代謝綜合征風(fēng)險(xiǎn)評(píng)估。
圖2 原始不平衡數(shù)據(jù)集決策樹產(chǎn)生的樹狀圖
圖3 隨機(jī)過采樣平衡數(shù)據(jù)集后決策樹產(chǎn)生的樹狀圖
分別采用隨機(jī)過采樣、隨機(jī)欠采樣、混合采樣和人工合成數(shù)據(jù)平衡原代謝綜合征不平衡數(shù)據(jù)集后,C4.5決策樹的分類性能(G-mean、AUC)較平衡數(shù)據(jù)集前均有明顯提高。而BP神經(jīng)網(wǎng)絡(luò)中,除人工合成數(shù)據(jù)外,采用隨機(jī)過采樣、隨機(jī)欠采樣和混合采樣的分類性能(G-mean、AUC)均提高。上述4種數(shù)據(jù)平衡化方法相比較,隨機(jī)過采樣技術(shù)更有助于提高分類算法的性能。平衡數(shù)據(jù)集后,兩種分類算法相比較,C4.5決策樹分類性能更優(yōu)。因此,綜合考慮表4、表5,認(rèn)為隨機(jī)過采樣+C4.5決策樹可顯著提高體檢數(shù)據(jù)代謝綜合征分類性能。
此外,研究發(fā)現(xiàn)采用四種重采樣技術(shù)的F-Measure大多小于原始數(shù)據(jù)集,這是因?yàn)?雖然采用數(shù)據(jù)平衡化方法可以增加正確分類的患者數(shù)量(即TP增大,FN減小),但是,同時(shí)也增加了誤分類的健康個(gè)體的數(shù)量(即TN減小,FP增大)。也就是說,重采樣雖然可以提高患者的查全率,但是當(dāng)兩類樣本數(shù)量相差較大時(shí),誤分類的健康個(gè)體的數(shù)量有時(shí)會(huì)比正確分類的患者的數(shù)量還要大,故根據(jù)公式(2),數(shù)據(jù)平衡化方法中F-Measure值不會(huì)得到很大的提高,甚至降低[17]。
綜上所述,數(shù)據(jù)集不平衡比例越高,患病率越低,數(shù)據(jù)挖掘技術(shù)分類該疾病的性能越差。通過隨機(jī)過采樣、隨機(jī)欠采樣、混合采樣和人工合成數(shù)據(jù)四種方法改善數(shù)據(jù)集的不平衡性,證實(shí)數(shù)據(jù)集整體的分類性能將得到提升,且采用隨機(jī)過采樣后的分類性能最優(yōu)。因此,在采用分類算法對(duì)醫(yī)學(xué)不平衡數(shù)據(jù)進(jìn)行分類前,可采用隨機(jī)過采樣技術(shù)對(duì)不平衡數(shù)據(jù)進(jìn)行平衡化處理,從而提高分類算法的分類性能。