2. 南京邮电大学 江苏省智慧健康大数据分析与位置服务工程实验室, 南京 210023;
3. 南京邮电大学 通信与信息工程学院, 南京 210003
2. Smart Health Big Data Analysis and Location Services Engineering Laboratory of Jiangsu Province, Nanjing University of Posts and Telecommunications, Nanjing 210023, China;
3. College of Telecommunications & Information Engineering, Nanjing University of Posts and Telecommunications, Nanjing 210003, China
开放科学(资源服务)标志码(OSID):
随着常见疾病的攻克和人均寿命的提高,癌症逐渐成为威胁人类健康的主要因素。国际癌症研究机构的分析报告显示,2018年全球癌症新增病例1 810万例,死亡病例960万人[1]。传统医疗主要基于癌症病理类型、患者既往病史等对患者的生存时间进行评估和预测,机器学习技术的发展[2],使其能作为辅助手段被引入到癌症诊断[3]和生存预测[4]中。目前,癌症诊断和治疗技术已能有效降低患者的死亡率、延长患者的存活时间[5]。由于癌症确诊后患者在5年内幸存人数将累计达到4 380万,因此在收集到的现有数据集中,存活患者数量将远大于非存活患者数量。癌症患者原始数据集通常是非平衡的,且传统算法在对非平衡数据集预测分析时,分类器为确保算法模型整体性能,部分少数类样本会被误判[6]。但在实际分类中,少数类样本会携带更多的信息量且更重要,误判代价非常昂贵,所以面向非平衡数据的处理逐渐成为机器学习应用研究的重要组成部分[7-8]。
当前对非平衡数据问题主要从数据和算法[9]2个层面进行研究。在算法层面,通常在不改变原始数据样本的基础上寻找特定的算法以适用于非平衡数据集,如集成算法[10]和代价敏感算法[11]等。MAHDIYAH等[12]提出改进的极限学习机(Extreme Learning Machine,ELM)算法,通过集成数据克服数据非平衡问题,可有效改进非平衡数据分类效果。在数据层面,通过过采样、欠采样[13]等技术,将非平衡数据集采样成为平衡数据集。文献[14]提出过采样算法中最经典的SMOTE算法,通过在少数类样本之间进行线性插值来增加少数类样本数量。文献[15]在SMOTE算法的基础上提出Borderline-SMOTE算法,该算法将原始SMOTE算法和边界信息相结合,只利用边界位置的样本信息产生新样本,减少噪声样本和冗余样本的生成。
针对医疗领域存在的样本数据集非平衡问题,国内外研究人员进行了深入研究[16-17]。如WANG等[18]提出一种基于SMOTE和粒子群优化算法的混合采样算法,评估乳腺癌患者5年的生存率,结果表明在搜索算法和分类器中使用SMOTE算法可以有效提高对非平衡医疗数据集的分类效果。KUO等[19]提出一种基于信息粒化的分类算法处理医疗领域中非平衡数据集,该算法通过自动聚类算法生产一组信息粒化,在预测前列腺癌患者的存活率时表现优异。WANG等[20]为了解决非平衡癌症数据中过拟合问题,提出一种基于自步学习的自适应非平衡采样算法,通过欠采样算法减少数据集中的噪声样本,并选择优质多数类和少数类样本合成新的平衡子集。相较于其他常见非平衡算法,其平均正确率提高了16%,但该算法在合成新平衡的数据子集同时,会主动丢失一部分样本信息。非平衡的数据集中存在大量噪声样本、冗余样本等异常样本[21-22],以美国国立癌症研究院SEER[23]数据库中获取的2015年乳腺癌患者样本数据为例,该数据集中有超过12%的样本是噪声样本。
本文提出一种基于RENN和SMOTE算法的综合采样算法RENN-SMOTE-SVM,通过RENN算法减少多数类样本集中噪声样本的数量,并使用SMOTE算法增加少数类样本的数量,从而使样本集比例达到平衡。在SEER库中乳腺癌患者数据集上对非平衡的癌症患者进行生存预测分析,并与SVM算法、Tomeklinks-SVM算法、RU-SVM等算法相比较,以分析所提算法的预测效果。
1 RENN-SMOTE-SVM算法 1.1 RENN算法为解决癌症数据集中非平衡现象及噪声样本问题,RENN作为一种欠采样算法,基于最近邻规则减少多数类噪声样本数量,提高模型对整体样本的识别能力。RENN算法是在ENN[24]算法基础上的整体优化,ENN算法的基本思想是、如果1个多数类样本的3个最邻近样本中有2个或多个与之异类,那么就将该样本视为噪声样本并删除。但ENN的不足之处在于多数类样本附近的样本绝大部分与之同类,所以可以删除的噪声样本数量有限。RENN算法在ENN算法的基础上进行多次循环删除噪声样本过程,以删除更多的噪声样本,减少噪声样本对分类器的判决影响。
1.2 SMOTE算法在非平衡的癌症数据集中,多数类样本在数据集中占比很高,仅依靠欠采样算法删除部分噪声样本,难以完全平衡数据集。因此,需要采用过采样算法使样本比例达到平衡,增加模型的泛化能力和对少数样本的识别能力。在过采样算法中,本文选取了SMOTE算法,通过在少数类样本之间插值产生新的人工合成少数类样本以平衡数据集。插值方法如式(1)所示:
$ {p}_{i}=X+\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{d}\left(\mathrm{0, 1}\right)\times ({y}_{i}-X), i=\mathrm{1, 2}, \cdots , n $ | (1) |
其中:
通过RENN算法删除多数类样本中的噪声样本,减少噪声样本对结果的干扰。另一方面通过SMOTE算法增加少数类样本的数量,以平衡数据集。在得到新的平衡癌症数据集以后,通过SVM分类器对癌症患者的生存情况进行预测分析,在面对非平衡数据集时,SVM有更好的超平面用于区分样本,获取更佳的泛化能力[25]。本文提出的RENN-SMOTE-SVM算法处理流程如图 1所示。
![]() |
Download:
|
图 1 RENN-SMOTE-SVM算法流程 Fig. 1 Procedure of RENN-SMOTE-SVM algorithm |
RENN-SMOTE-SVM算法步骤如下:
1)输入原始非平衡数据集S,并对原始非平衡数据集S进行数据预处理。
2)设置目标非均衡尺度
3)对多数类样本集Smaj使用RENN算法,删除其噪声样本,得到Somaj。
4)比较Somaj和Smin的数目大小,如果Somaj大于Smin则进行步骤5,否则进行步骤6;
5)对少数类样本集Smin使用SMOTE算法,增加其样本数量,得到Somin。
6)合并Somaj和Somin得到平衡数据集So。
7)计算非均衡
8)输出So,并基于平衡数据集So应用SVM算法对患者生存进行预测分析,得到预测结果。
2 乳腺癌患者生存预测分析 2.1 模型构建本文以乳腺癌患者数据为例,研究面向非平衡数据集的癌症患者生存预测分析,实验数据来自于SEER数据库,该数据库是美国最权威的癌症统计数据库,记录了美国部分州县上百万名恶性肿瘤患者的发病率、死亡率、患病情况等信息。本次实验获取了2015年SEER数据库中11 298条有效的乳腺癌患者数据,数据集分为两类:多数类存活患者样本数量10 646;少数类非存活患者样本数量652。常见的11个癌症主要属性如表 1所示。其中,Vital status属性表示患者一年后的存活状态,用以分类样本。
![]() |
下载CSV 表 1 实验数据属性 Table 1 Experimental data attributes |
训练SVM分类器中的主要参数设置:SVM的内核类型Kernel为rbf;正类和反类的样本权重比class_weight为balanced;目标函数的惩罚系数C为1;数据映射到新的特征空间后的分布gamma为1;其余未提及的参数在本文实验中选用默认值。
2.2 评价指标针对非平衡数据集的评价指标[26],本文采用基于混淆矩阵的评价指标衡量分类器性能,具体指标包括正确率(Accuracy)、召回率(Recall)、精确率(Precision)、F1-score值和G-mean值。以二分类混淆矩阵为例,如表 2所示。
![]() |
下载CSV 表 2 混淆矩阵 Table 2 Confusion matrix |
正确率的计算公式如式(2)所示:
$ {A}_{\mathrm{A}\mathrm{c}\mathrm{c}\mathrm{u}\mathrm{r}\mathrm{a}\mathrm{r}\mathrm{y}}=\frac{{T}_{\mathrm{T}\mathrm{P}}+{T}_{\mathrm{T}\mathrm{N}}}{{T}_{\mathrm{T}\mathrm{P}}+{F}_{\mathrm{F}\mathrm{N}}+{F}_{\mathrm{F}\mathrm{P}}+{T}_{\mathrm{T}\mathrm{N}}} $ | (2) |
精确率的计算公式如式(3)所示:
$ {P}_{\mathrm{P}\mathrm{r}\mathrm{e}\mathrm{c}\mathrm{i}\mathrm{s}\mathrm{i}\mathrm{o}\mathrm{n}}=\frac{{T}_{\mathrm{T}\mathrm{P}}}{{T}_{\mathrm{T}\mathrm{P}}+{F}_{\mathrm{F}\mathrm{P}}} $ | (3) |
召回率的计算公式如式(4)所示:
$ {R}_{\mathrm{R}\mathrm{e}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{l}}=\frac{{T}_{\mathrm{T}\mathrm{P}}}{{T}_{\mathrm{T}\mathrm{P}}+{F}_{\mathrm{F}\mathrm{N}}} $ | (4) |
F1-score是基于精确率和召回率的调和平均数,考察两者之间的折中,其计算公式如式(5)所示:
$ \mathrm{F}1 - \mathrm{s}\mathrm{c}\mathrm{o}\mathrm{r}\mathrm{e}=\frac{2{P}_{\mathrm{P}\mathrm{r}\mathrm{e}\mathrm{c}\mathrm{i}\mathrm{s}\mathrm{i}\mathrm{o}\mathrm{n}}\times {R}_{\mathrm{R}\mathrm{e}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{l}}}{{P}_{\mathrm{P}\mathrm{r}\mathrm{e}\mathrm{c}\mathrm{i}\mathrm{s}\mathrm{i}\mathrm{o}\mathrm{n}}+{R}_{\mathrm{R}\mathrm{e}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{l}}} $ | (5) |
G-mean代表少数类和多数类样本的整体分类准确程度,体现了模型对非平衡数据集的识别性能,其计算公式如式(6)所示:
$ \mathrm{G} - \mathrm{m}\mathrm{e}\mathrm{a}\mathrm{n}=\sqrt{\frac{{T}_{\mathrm{T}\mathrm{P}}}{{T}_{\mathrm{T}\mathrm{P}}+{F}_{\mathrm{F}\mathrm{N}}}\times \frac{{T}_{\mathrm{T}\mathrm{N}}}{{T}_{\mathrm{T}\mathrm{N}}+{F}_{\mathrm{F}\mathrm{P}}}} $ | (6) |
在本文实验数据集中,原始多数类样本数量为10 646,通过RENN算法删除1 339个噪声样本后,剩余9 307个多数类可用样本,其中噪声样本占比12.578%。为验证RENN-SMOTE-SVM算法对非平衡乳腺癌数据集生存预测准确程度,将本文算法与SVM算法、欠采样算法Tomeklinks-SVM、RU-SVM、过采样算法SMOTE-SVM和ADASYN-SVM这5种常用算法进行对比。对所有实验结果使用10次交叉验证后取平均值,其中每次数据集中训练集样本数量占90%,测试集样本数量占10%。实验结果如表 3~表 5所示,表中加粗数字表示该组数据的最大值。
![]() |
下载CSV 表 3 少数类样本的一年生存预测结果 Table 3 One-year survival prediction results of minority samples |
![]() |
下载CSV 表 4 多数类样本的一年生存预测结果 Table 4 One-year survival prediction results of most samples |
![]() |
下载CSV 表 5 非平衡数据集的一年生存预测结果 Table 5 One-year survival prediction results of the unbalanced set |
由表 3少数类样本的生存预测结果可知,通过在数据层面处理以后,其他算法结果均比SVM算法表现更好,说明通过数据层面的处理能够增加模型对少数类样本的识别能力。同时,F1-score值作为代表模型对当前样本整体预测结果好坏的重要参数,表明RENN-SMOTE-SVM算法非常有效地提高了少数类样本的决策边界和预测能力。
由表 4多数类样本的生存预测结果可知,RENN-SMOTE-SVM算法对多数类样本的生存预测表现优异,在3个指标中均取得了最优值。同时,由于RENN算法去除了一些噪声和冗余样本,在多数类样本的预测结果中,该算法相较于增加少数类数量的过采样SMOTE-SVM算法和ADASYN-SVM算法表现更加突出。
由表 5非平衡数据集的生存预测结果可知,RENN-SMOTE-SVM算法的正确率、F1-score和G-mean分别为0.883、0.904和0.779,该算法在3个指标下都取得了最高值。其中G-mean是最重要的评价指标,它代表了分类器对非平衡样本集的整体预测准确程度,而各类欠采样和过采样算法相较于SVM算法均有效地提高了G-mean值,其中RENN-SMOTE-SVM算法提升最多。这表明RENN-SMOTE-SVM算法相较于其他算法而言,能够有效地提高对非平衡乳腺癌数据的生存预测,其预测结果更好。
3 结束语针对癌症数据集中存在非平衡数据和噪声样本的问题,本文提出一种混合采样RENN-SMOTE-SVM算法。利用RENN算法删除多数类样本集中的噪声样本,并通过SMOTE算法增加少数类样本的数量,从而获得均衡数据集。对SEER库中乳腺癌患者进行一年后生存结果预测分析,实验结果表明,RENN-SMOTE-SVM算法相较于其他常用的采样算法在多指标的平均水平上表现更优,可用于对非平衡癌症患者的生存预测分析。由于本文在对癌症患者进行生存预测分析时,采用的数据集均为二分类数据集,下一步将研究该算法在多分类数据集中的表现,从而拓宽该算法的应用范围。
[1] |
BRAY F, FERLAY J, SOERJOMATATRAM I, et al. Global cancer statistics 2018: globocan estimates of incidence and mortality worldwide for 36 cancers in 185 countries[J]. CA Cancer Journal for Clinicians, 2018, 68(6): 394-424. DOI:10.3322/caac.21492 |
[2] |
徐江峰, 谭玉龙. 基于机器学习的HBase配置参数优化研究[J]. 计算机科学, 2020, 47(Z1): 474-479. XU JF, TAN Y L. Research on HBase configuration parameter optimization based on machine learning[J]. Computer Science, 2020, 47(Z1): 474-479. (in Chinese) |
[3] |
PRSON G, ALOK J, TERO A, et al. Phenotypic screening combined with machine learning for efficient identification of breast cancer-selective therapeutic targets[J]. Cell Chemical Biology, 2019, 26(7): 970-979. DOI:10.1016/j.chembiol.2019.03.011 |
[4] |
YUN L, KOHLBERGER T, MOHAMMAD D, et al. Artificial intelligence-based breast cancer nodal metastasis detection: insights into the black box for pathologists[J]. Archives of Pathology & Laboratory Medicine, 2019, 143(7): 859-868. |
[5] |
ZODWA D, FLAVIA Z, RODNEY H, et al. Artificial Intelligence (AI) and big data in cancer and precision oncology[J]. Computational and Structural Biotechnology Journal, 2020, 18(8): 2300-2311. |
[6] |
方秋莲, 王培锦, 隋阳, 等. 朴素Bayes分类器文本特征向量的参数优化[J]. 吉林大学学报(理学版), 2019, 240(6): 1479-1484. FANG Q L, WANG P J, SUI Y, et al. Parameter optimization of text feature vector of naive Bayes classifier[J]. Journal of Jilin University(Science Edition), 2019, 240(6): 1479-1484. (in Chinese) |
[7] |
张忠林, 曹婷婷. 基于重采样与特征选择的不平衡数据分类算法[J]. 小型微型计算机系统, 2020, 41(6): 1327-1333. ZHANG Z L, CAO T T. Unbalanced data classification algorithm based on resampling and feature selection[J]. Journal of Chinese Mini-Micro Computer Systems, 2020, 41(6): 1327-1333. (in Chinese) |
[8] |
CHEN G, LIU Y, GE Z Q. K-means bayes algorithm for imbalanced fault classification and big data application[J]. Journal of Process Control, 2019, 81(3): 54-64. |
[9] |
BI J J, ZHANG C S. An empirical comparison on state of the art multi-class imbalance learning algorithms and a new diversified ensemble learning scheme[J]. Knowledge Based Systems, 2018, 158(6): 81-93. |
[10] |
薛铭龙, 李一博. 基于改进随机森林算法的智能环境活动识别[J]. 计算机工程, 2019, 45(5): 149-154. XUE M L, LI Y B. Intelligent environmental activity recognition based on improved random forest algorithm[J]. Computer Engineering, 2019, 45(5): 149-154. (in Chinese) |
[11] |
王浩旻. 基于代价敏感和集成学习的网络借贷信用评价方法与应用[D]. 成都: 电子科技大学, 2020. WANG H M. Online lending credit evaluation method and application based on cost-sensitive and integrated learning[D]. Chengdu: University of Electronic Science and Technology of China, 2020. (in Chinese) |
[12] |
UMI M, ISA I, ELLY M. Integrating data selection and extreme learning machine for imbalanced data[C]//Proceedings of 2015 International Conference on Computer Science and Computational Intelligence. Washington D. C., USA: IEEE Press, 2015: 221-229.
|
[13] |
MALGORZATA B, ALEKSANDRA W, MATEUSZ P. The proposal of undersampling method for learning from imbalanced datasets[J]. Procedia Computer Science, 2019, 159(4): 125-134. |
[14] |
NITESH V, CHAWLA B, KEVIN W, et al. SMOTE: synthetic minority over-sampling technique[J]. Journal of Artificial Intelligence Research, 2002, 16(1): 321-357. |
[15] |
HAN H, WANG W Y, MAO B H. Borderline-SMOTE: a new over-sampling method in imbalanced data sets learning[C]//Proceedings of International Conference on Advances in Intelligent Computing. Hefei, China: [s. n. ], 2005: 23-26.
|
[16] |
陈旭, 刘鹏鹤, 孙毓忠, 等. 面向非平衡医学数据集的疾病预测模型研究[J]. 计算机学报, 2019, 42(3): 596-609. CHEN X, LIU P H, SUN Y Z, et al. Research on disease prediction models for unbalanced medical data sets[J]. Chinese Journal of Computers, 2019, 42(3): 596-609. (in Chinese) |
[17] |
SARA F, SHAHROKH A, MICHAEL W. A comprehensive data level analysis for cancer diagnosis on imbalanced data[J]. Journal of Biomedical Informatics, 2019, 90(9): 78-89. |
[18] |
WANG K J, MAKOND B, CHEN K H, et al. A hybrid classifier combining SMOTE with PSO to estimate 5-year survivability of breast cancer patients[J]. Applied Soft Computing, 2014, 20(1): 15-24. |
[19] |
KUO R J, SU P Y, ZULVIA F E, et al. Integrating cluster analysis with granular computing for imbalanced data classification problem: a case study on prostate cancer prognosis[J]. Computers and Industrial Engineering, 2018, 125(14): 319-332. |
[20] |
WANG Q Y, ZHOU Y, ZHANG W M, et al. Adaptive sampling using self-paced learning for imbalanced cancer data pre-diagnosis[J]. Expert Systems with Applications, 2020, 152(12): 23-34. |
[21] |
RIVERA W A. Noise reduction a priori synthetic over-sampling for class imbalanced data sets(article)[J]. Information Sciences, 2017, 408(4): 146-161. |
[22] |
JIE L. Fuzzy support vector machine for imbalanced data with borderline noise[J]. Fuzzy Sets and Systems, 2021, 413(5): 64-73. |
[23] |
章鸣嬛, 陈瑛, 汪城, 等. 美国国立癌症研究所SEER数据库概述及应用[J]. 微型电脑应用, 2015, 31(12): 26-28, 32. ZHANG M H, CHEN Y, WANG C, et al. Overview and application of SEER database of National Cancer Institute[J]. Microcomputer Applications, 2015, 31(12): 26-28, 32. (in Chinese) |
[24] |
WILSON D L. Asymptotic properties of nearest neighbor rules using edited data[J]. IEEE Transactions on Systems, Man and Cybernetics, 1972, 31(2): 408-421. |
[25] |
YU L, ZHOU R T, TANG L, et al. A DBN-based resampling SVM ensemble learning paradigm for credit classification with imbalanced data[J]. Applied Soft Computing, 2018, 69(1): 192-202. |
[26] |
林智勇, 郝志峰, 杨晓伟. 若干评价准则对不平衡数据学习的影响[J]. 华南理工大学学报(自然科学版), 2010, 38(4): 147-155. LIN Z Y, HAO Z F, YANG X W. The influence of several evaluation criteria on unbalanced data learning[J]. Journal of South China University of Technology (Natural Science Edition), 2010, 38(4): 147-155. (in Chinese) |