苗立志,白瑞思蒙,劉成良,翟月昊
(1.南京郵電大學(xué) 地理與生物信息學(xué)院,南京 210023;2.南京郵電大學(xué)江蘇省智慧健康大數(shù)據(jù)分析與位置服務(wù)工程實(shí)驗(yàn)室,南京 210023;3.南京郵電大學(xué) 通信與信息工程學(xué)院,南京 210003)
隨著常見疾病的攻克和人均壽命的提高,癌癥逐漸成為威脅人類健康的主要因素。國(guó)際癌癥研究機(jī)構(gòu)的分析報(bào)告顯示,2018 年全球癌癥新增病例1 810 萬例,死亡病例960 萬人[1]。傳統(tǒng)醫(yī)療主要基于癌癥病理類型、患者既往病史等對(duì)患者的生存時(shí)間進(jìn)行評(píng)估和預(yù)測(cè),機(jī)器學(xué)習(xí)技術(shù)的發(fā)展[2],使其能作為輔助手段被引入到癌癥診斷[3]和生存預(yù)測(cè)[4]中。目前,癌癥診斷和治療技術(shù)已能有效降低患者的死亡率、延長(zhǎng)患者的存活時(shí)間[5]。由于癌癥確診后患者在5 年內(nèi)幸存人數(shù)將累計(jì)達(dá)到4 380 萬,因此在收集到的現(xiàn)有數(shù)據(jù)集中,存活患者數(shù)量將遠(yuǎn)大于非存活患者數(shù)量。癌癥患者原始數(shù)據(jù)集通常是非平衡的,且傳統(tǒng)算法在對(duì)非平衡數(shù)據(jù)集預(yù)測(cè)分析時(shí),分類器為確保算法模型整體性能,部分少數(shù)類樣本會(huì)被誤判[6]。但在實(shí)際分類中,少數(shù)類樣本會(huì)攜帶更多的信息量且更重要,誤判代價(jià)非常昂貴,所以面向非平衡數(shù)據(jù)的處理逐漸成為機(jī)器學(xué)習(xí)應(yīng)用研究的重要組成部分[7-8]。
當(dāng)前對(duì)非平衡數(shù)據(jù)問題主要從數(shù)據(jù)和算法[9]2 個(gè)層面進(jìn)行研究。在算法層面,通常在不改變?cè)紨?shù)據(jù)樣本的基礎(chǔ)上尋找特定的算法以適用于非平衡數(shù)據(jù)集,如集成算法[10]和代價(jià)敏感算法[11]等。MAHDIYAH 等[12]提出改進(jìn)的極限學(xué)習(xí)機(jī)(Extreme Learning Machine,ELM)算法,通過集成數(shù)據(jù)克服數(shù)據(jù)非平衡問題,可有效改進(jìn)非平衡數(shù)據(jù)分類效果。在數(shù)據(jù)層面,通過過采樣、欠采樣[13]等技術(shù),將非平衡數(shù)據(jù)集采樣成為平衡數(shù)據(jù)集。文獻(xiàn)[14]提出過采樣算法中最經(jīng)典的SMOTE 算法,通過在少數(shù)類樣本之間進(jìn)行線性插值來增加少數(shù)類樣本數(shù)量。文獻(xiàn)[15]在SMOTE 算法的基礎(chǔ)上提出Borderline-SMOTE 算法,該算法將原始SMOTE 算法和邊界信息相結(jié)合,只利用邊界位置的樣本信息產(chǎn)生新樣本,減少噪聲樣本和冗余樣本的生成。
針對(duì)醫(yī)療領(lǐng)域存在的樣本數(shù)據(jù)集非平衡問題,國(guó)內(nèi)外研究人員進(jìn)行了深入研究[16-17]。如WANG 等[18]提出一種基于SMOTE 和粒子群優(yōu)化算法的混合采樣算法,評(píng)估乳腺癌患者5 年的生存率,結(jié)果表明在搜索算法和分類器中使用SMOTE 算法可以有效提高對(duì)非平衡醫(yī)療數(shù)據(jù)集的分類效果。KUO 等[19]提出一種基于信息?;姆诸愃惴ㄌ幚磲t(yī)療領(lǐng)域中非平衡數(shù)據(jù)集,該算法通過自動(dòng)聚類算法生產(chǎn)一組信息?;?,在預(yù)測(cè)前列腺癌患者的存活率時(shí)表現(xiàn)優(yōu)異。WANG 等[20]為了解決非平衡癌癥數(shù)據(jù)中過擬合問題,提出一種基于自步學(xué)習(xí)的自適應(yīng)非平衡采樣算法,通過欠采樣算法減少數(shù)據(jù)集中的噪聲樣本,并選擇優(yōu)質(zhì)多數(shù)類和少數(shù)類樣本合成新的平衡子集。相較于其他常見非平衡算法,其平均正確率提高了16%,但該算法在合成新平衡的數(shù)據(jù)子集同時(shí),會(huì)主動(dòng)丟失一部分樣本信息。非平衡的數(shù)據(jù)集中存在大量噪聲樣本、冗余樣本等異常樣本[21-22],以美國(guó)國(guó)立癌癥研究院SEER[23]數(shù)據(jù)庫(kù)中獲取的2015 年乳腺癌患者樣本數(shù)據(jù)為例,該數(shù)據(jù)集中有超過12%的樣本是噪聲樣本。
本文提出一種基于RENN和SMOTE 算法的綜合采樣算法RENN-SMOTE-SVM,通過RENN 算法減少多數(shù)類樣本集中噪聲樣本的數(shù)量,并使用SMOTE算法增加少數(shù)類樣本的數(shù)量,從而使樣本集比例達(dá)到平衡。在SEER 庫(kù)中乳腺癌患者數(shù)據(jù)集上對(duì)非平衡的癌癥患者進(jìn)行生存預(yù)測(cè)分析,并與SVM 算法、Tomeklinks-SVM 算法、RU-SVM等算法相比較,以分析所提算法的預(yù)測(cè)效果。
為解決癌癥數(shù)據(jù)集中非平衡現(xiàn)象及噪聲樣本問題,RENN 作為一種欠采樣算法,基于最近鄰規(guī)則減少多數(shù)類噪聲樣本數(shù)量,提高模型對(duì)整體樣本的識(shí)別能力。RENN 算法是在ENN[24]算法基礎(chǔ)上的整體優(yōu)化,ENN 算法的基本思想是、如果1 個(gè)多數(shù)類樣本的3 個(gè)最鄰近樣本中有2 個(gè)或多個(gè)與之異類,那么就將該樣本視為噪聲樣本并刪除。但ENN 的不足之處在于多數(shù)類樣本附近的樣本絕大部分與之同類,所以可以刪除的噪聲樣本數(shù)量有限。RENN 算法在ENN 算法的基礎(chǔ)上進(jìn)行多次循環(huán)刪除噪聲樣本過程,以刪除更多的噪聲樣本,減少噪聲樣本對(duì)分類器的判決影響。
在非平衡的癌癥數(shù)據(jù)集中,多數(shù)類樣本在數(shù)據(jù)集中占比很高,僅依靠欠采樣算法刪除部分噪聲樣本,難以完全平衡數(shù)據(jù)集。因此,需要采用過采樣算法使樣本比例達(dá)到平衡,增加模型的泛化能力和對(duì)少數(shù)樣本的識(shí)別能力。在過采樣算法中,本文選取了SMOTE 算法,通過在少數(shù)類樣本之間插值產(chǎn)生新的人工合成少數(shù)類樣本以平衡數(shù)據(jù)集。插值方法如式(1)所示:
其中:X表示少數(shù)類樣本;rand(0,1)表示區(qū)間(0,1)中的一個(gè)隨機(jī)數(shù);yi表示距離數(shù)據(jù)樣本X的n個(gè)最近鄰樣本中的第i個(gè),在本文實(shí)驗(yàn)中n取5。SMOTE 算法通過以上過程增加少數(shù)類樣本數(shù)目,使整體數(shù)據(jù)集趨于平衡。
通過RENN 算法刪除多數(shù)類樣本中的噪聲樣本,減少噪聲樣本對(duì)結(jié)果的干擾。另一方面通過SMOTE算法增加少數(shù)類樣本的數(shù)量,以平衡數(shù)據(jù)集。在得到新的平衡癌癥數(shù)據(jù)集以后,通過SVM 分類器對(duì)癌癥患者的生存情況進(jìn)行預(yù)測(cè)分析,在面對(duì)非平衡數(shù)據(jù)集時(shí),SVM 有更好的超平面用于區(qū)分樣本,獲取更佳的泛化能力[25]。本文提出的RENN-SMOTE-SVM 算法處理流程如圖1 所示。
圖1 RENN-SMOTE-SVM 算法流程Fig.1 Procedure of RENN-SMOTE-SVM algorithm
RENN-SMOTE-SVM 算法步驟如下:
1)輸入原始非平衡數(shù)據(jù)集S,并對(duì)原始非平衡數(shù)據(jù)集S進(jìn)行數(shù)據(jù)預(yù)處理。
2)設(shè)置目標(biāo)非均衡尺度ao=1,ao用于限制輸出數(shù)據(jù)集So的非均衡度。同時(shí)根據(jù)患者目前生存狀態(tài),將原始數(shù)據(jù)集S分為兩類,其中存活患者樣本數(shù)量相對(duì)較多,設(shè)為多數(shù)類樣本集Smaj,死亡患者樣本數(shù)量相對(duì)較少,設(shè)為少數(shù)類樣本集Smin。
3)對(duì)多數(shù)類樣本集Smaj使用RENN 算法,刪除其噪聲樣本,得到Somaj。
4)比較Somaj和Smin的數(shù)目大小,如果Somaj大于Smin則進(jìn)行步驟5,否則進(jìn)行步驟6;
5)對(duì)少數(shù)類樣本集Smin使用SMOTE 算法,增加其樣本數(shù)量,得到Somin。
6)合并Somaj和Somin得到平衡數(shù)據(jù)集So。
7)計(jì)算非均衡a尺度;a=Somaj/Somin,判斷a是否等于ao,如果兩者不相等則返回步驟2,否則進(jìn)行步驟8。
8)輸出So,并基于平衡數(shù)據(jù)集So應(yīng)用SVM 算法對(duì)患者生存進(jìn)行預(yù)測(cè)分析,得到預(yù)測(cè)結(jié)果。
本文以乳腺癌患者數(shù)據(jù)為例,研究面向非平衡數(shù)據(jù)集的癌癥患者生存預(yù)測(cè)分析,實(shí)驗(yàn)數(shù)據(jù)來自于SEER 數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)是美國(guó)最權(quán)威的癌癥統(tǒng)計(jì)數(shù)據(jù)庫(kù),記錄了美國(guó)部分州縣上百萬名惡性腫瘤患者的發(fā)病率、死亡率、患病情況等信息。本次實(shí)驗(yàn)獲取了2015 年SEER 數(shù)據(jù)庫(kù)中11 298 條有效的乳腺癌患者數(shù)據(jù),數(shù)據(jù)集分為兩類:多數(shù)類存活患者樣本數(shù)量10 646;少數(shù)類非存活患者樣本數(shù)量652。常見的11 個(gè)癌癥主要屬性如表1 所示。其中,Vital status 屬性表示患者一年后的存活狀態(tài),用以分類樣本。
表1 實(shí)驗(yàn)數(shù)據(jù)屬性Table 1 Experimental data attributes
訓(xùn)練SVM 分類器中的主要參數(shù)設(shè)置:SVM 的內(nèi)核類型Kernel 為rbf;正類和反類的樣本權(quán)重比class_weight 為balanced;目標(biāo)函數(shù)的懲罰系數(shù)C為1;數(shù)據(jù)映射到新的特征空間后的分布gamma 為1;其余未提及的參數(shù)在本文實(shí)驗(yàn)中選用默認(rèn)值。
針對(duì)非平衡數(shù)據(jù)集的評(píng)價(jià)指標(biāo)[26],本文采用基于混淆矩陣的評(píng)價(jià)指標(biāo)衡量分類器性能,具體指標(biāo)包括正確率(Accuracy)、召回率(Recall)、精確率(Precision)、F1-score 值和G-mean 值。以二分類混淆矩陣為例,如表2 所示。
表2 混淆矩陣Table 2 Confusion matrix
正確率的計(jì)算公式如式(2)所示:
精確率的計(jì)算公式如式(3)所示:
召回率的計(jì)算公式如式(4)所示:
F1-score 是基于精確率和召回率的調(diào)和平均數(shù),考察兩者之間的折中,其計(jì)算公式如式(5)所示:
G-mean 代表少數(shù)類和多數(shù)類樣本的整體分類準(zhǔn)確程度,體現(xiàn)了模型對(duì)非平衡數(shù)據(jù)集的識(shí)別性能,其計(jì)算公式如式(6)所示:
在本文實(shí)驗(yàn)數(shù)據(jù)集中,原始多數(shù)類樣本數(shù)量為10 646,通過RENN 算法刪除1 339 個(gè)噪聲樣本后,剩余9 307 個(gè)多數(shù)類可用樣本,其中噪聲樣本占比12.578%。為驗(yàn)證RENN-SMOTE-SVM 算法對(duì)非平衡乳腺癌數(shù)據(jù)集生存預(yù)測(cè)準(zhǔn)確程度,將本文算法與SVM算法、欠采樣算法Tomeklinks-SVM、RU-SVM、過采樣算法SMOTE-SVM 和ADASYN-SVM 這5 種常用算法進(jìn)行對(duì)比。對(duì)所有實(shí)驗(yàn)結(jié)果使用10 次交叉驗(yàn)證后取平均值,其中每次數(shù)據(jù)集中訓(xùn)練集樣本數(shù)量占90%,測(cè)試集樣本數(shù)量占10%。實(shí)驗(yàn)結(jié)果如表3~表5 所示,表中加粗?jǐn)?shù)字表示該組數(shù)據(jù)的最大值。
表3 少數(shù)類樣本的一年生存預(yù)測(cè)結(jié)果Table 3 One-year survival prediction results of minority samples
表4 多數(shù)類樣本的一年生存預(yù)測(cè)結(jié)果Table 4 One-year survival prediction results of most samples
表5 非平衡數(shù)據(jù)集的一年生存預(yù)測(cè)結(jié)果Table 5 One-year survival prediction results of the unbalanced set
由表3 少數(shù)類樣本的生存預(yù)測(cè)結(jié)果可知,通過在數(shù)據(jù)層面處理以后,其他算法結(jié)果均比SVM 算法表現(xiàn)更好,說明通過數(shù)據(jù)層面的處理能夠增加模型對(duì)少數(shù)類樣本的識(shí)別能力。同時(shí),F(xiàn)1-score 值作為代表模型對(duì)當(dāng)前樣本整體預(yù)測(cè)結(jié)果好壞的重要參數(shù),表明RENN-SMOTE-SVM 算法非常有效地提高了少數(shù)類樣本的決策邊界和預(yù)測(cè)能力。
由表4 多數(shù)類樣本的生存預(yù)測(cè)結(jié)果可知,RENN-SMOTE-SVM 算法對(duì)多數(shù)類樣本的生存預(yù)測(cè)表現(xiàn)優(yōu)異,在3 個(gè)指標(biāo)中均取得了最優(yōu)值。同時(shí),由于RENN 算法去除了一些噪聲和冗余樣本,在多數(shù)類樣本的預(yù)測(cè)結(jié)果中,該算法相較于增加少數(shù)類數(shù)量的過采樣SMOTE-SVM 算法和ADASYN-SVM 算法表現(xiàn)更加突出。
由表5 非平衡數(shù)據(jù)集的生存預(yù)測(cè)結(jié)果可知,RENN-SMOTE-SVM算法的正確率、F1-score 和G-mean 分別為0.883、0.904 和0.779,該算法在3 個(gè)指標(biāo)下都取得了最高值。其中G-mean 是最重要的評(píng)價(jià)指標(biāo),它代表了分類器對(duì)非平衡樣本集的整體預(yù)測(cè)準(zhǔn)確程度,而各類欠采樣和過采樣算法相較于SVM 算法均有效地提高了G-mean 值,其中RENNSMOTE-SVM 算法提升最多。這表明RENNSMOTE-SVM 算法相較于其他算法而言,能夠有效地提高對(duì)非平衡乳腺癌數(shù)據(jù)的生存預(yù)測(cè),其預(yù)測(cè)結(jié)果更好。
針對(duì)癌癥數(shù)據(jù)集中存在非平衡數(shù)據(jù)和噪聲樣本的問題,本文提出一種混合采樣RENN-SMOTESVM 算法。利用RENN 算法刪除多數(shù)類樣本集中的噪聲樣本,并通過SMOTE 算法增加少數(shù)類樣本的數(shù)量,從而獲得均衡數(shù)據(jù)集。對(duì)SEER 庫(kù)中乳腺癌患者進(jìn)行一年后生存結(jié)果預(yù)測(cè)分析,實(shí)驗(yàn)結(jié)果表明,RENN-SMOTE-SVM 算法相較于其他常用的采樣算法在多指標(biāo)的平均水平上表現(xiàn)更優(yōu),可用于對(duì)非平衡癌癥患者的生存預(yù)測(cè)分析。由于本文在對(duì)癌癥患者進(jìn)行生存預(yù)測(cè)分析時(shí),采用的數(shù)據(jù)集均為二分類數(shù)據(jù)集,下一步將研究該算法在多分類數(shù)據(jù)集中的表現(xiàn),從而拓寬該算法的應(yīng)用范圍。