2. 首都医科大学附属北京天坛医院 国家神经系统疾病临床研究中心;
3. 北京交通大学信息管理学院
中风是全球第二大死亡原因,也是导致长期残疾的最常见原因,其中约有80 %的中风是缺血性的[1 – 2],且卒中预后易受到医疗或预防措施的影响。针对性采取二级预防措施,不仅能控制医疗经济成本,而且能有效改善卒中预后[3]。随着大数据时代的到来,在医疗领域,繁杂专业的医疗信息被整合为大数据,为将机器学习方法引入医疗领域创造了条件。同时,算法的革新使得数据驱动引导的临床辅助决策支持系统(clinical decision support system,CDSS)成为可能[4]。智能辅助决策支持系统依据海量知识库可以帮助医生在临床诊断决策过程中更高效、更快捷地运用复杂医学知识处理各种医学问题,避免遗漏、错过重要的信息和线索,为疑难杂症寻找更多的解决方案。为此,本研究收集2007年9月 — 2008年8月中国国家卒中登记项目(the China National Stroke Registry, CNSR)第1期数据库中12 415例缺血性卒中患者资料,以logistic回归模型为基准,采用支持向量机(support vector machine,SVM)、随机森林、极端梯度提升(extreme gradient boosting, XGBoost)和自适应提升(adaptive boosting, Adaboost)4种监督算法作为机器学习模型对缺血性脑卒中患者出院1年后死亡结局进行预测,旨在评价机器学习模型对缺血性脑卒中患者出院1年后死亡结局预测效果,为脑卒中大数据预后研究提供有效评价工具。结果报告如下。
1 资料与方法 1.1 资料来源资料来源于CNSR第1期数据库。CNSR是全国范围内的前瞻性、观察性急性卒中登记平台,其中CNSR第1期数据库资料于2007年9月 — 2008年8月连续登记了全国27个省和4个直辖市(包括香港)132家医院的22 216例急性卒中患者信息,排除1 765例从其他非登记医院转入患者、1 437例未同意随访患者、314例基线信息不完整患者、120例最终诊断不明确患者和6 165例非缺血性卒中患者后,本研究最终纳入12 415例缺血性卒中患者进行分析。收集内容包括性别、年龄、体质指数(body mass index, BMI)、吸烟、饮酒、糖尿病、高血压、卒中家族史、发病前改良RANKIN量表(Modified Rankin Scale,mRS)[5]评分、上肢无力、下肢无力、失语、认知功能障碍、入院即刻血糖、入院美国国立卫生研究院卒中量表(National Institute of Health Stroke Scale,NIHSS)[6]得分、到院时间、到院时意识状态、就诊时意识水平、就诊时语言、就诊时忽视症、缺血性卒中史、脑出血史、蛛网膜下腔出血史、心力衰竭史、心脏瓣膜疾病史、下肢深静脉血栓/肺栓塞史、艾滋病史、癌症史、痴呆史、肝硬化史、哮喘史、消化道溃疡史、消化道出血史、关节炎、精神障碍史、妊娠史、短暂性脑缺血发作(transient ischaemic attack,TIA)史、血脂异常史、周围血管病史、心房颤动/心房扑动史、颈动脉内膜切除术或支架植入术、颅内动脉成形术、心瓣膜换置术、颈动脉内膜剥脱术、血管成形术、支架植入、动脉瘤栓塞术、其他血管内操作、开颅手术、气管插管、机械通气、胃造瘘术、肾透析、抗血小板药物、抗凝药物、阿司匹林、波立维(氯吡格雷)、缓释阿司匹林/潘生丁混合制剂(如艾诺思)、苯丙酮(华法林)、静脉注射肝素、全量低分子肝素、其他药物、降血脂药物、抗高血压药物、口服降糖药物、胰岛素、同型半胱氨酸检查等共67个因素。
1.2 统计分析删去不合逻辑的异常值,缺失值用中位数填补。采用python 3.7中sklearn包的train_test_split函数对数据按8 : 2比例进行随机分组,分为训练集和验证集,重复分组3次,用于对模型重复训练,验证模型稳定性。采用imblearn包中SMOTE函数对训练集进行合成少数过采样技术采样,避免不平衡数据对模型建立的影响。结局变量死亡赋值为1,存活为0;其余自变量中分类变量按照1表示肯定意义,0表示否定意义的规则赋值,连续变量做min-max normalization处理。应用 SAS 9.4统计软件进行多因素logistic 回归模型的建立,使用后退法,进入标准为0.05,排除标准为0.10。应用python 3.7软件,XGBoost调用xgboost API,Adaboost、随机森林和SVM均调用scikit-learn API,XGBoost、Adaboost和随机森林3个分类器均基于分类与回归决策树(classification and regression Tree,CART);参考模型既往应用经验[7 – 10]预设模型参数范围,采用scikit-learn中GridSearchCV函数做参数遍历选择;classification_report函数报告模型分类结果,matplotlib API提供作图支持,绘制各模型预测的ROC曲线。应用受试者工作特征曲线下面积(area under the curve,AUC)综合评价各模型整体分类效果,并用准确率和F1-score[11]描述模型选择的截断点的分类效果。每个模型重复3次实验,结果以
12 415例缺血性卒中患者中,男性7 658例(61.68 %),女性4 757例(38.32 %);平均年龄为(65.5 ± 12.3)岁,发病前mRS平均分为(0.42 ± 0.92)分,平均入院即刻血糖值为(6.77 ± 2.36)mmol/L,平均BMI值为(24.37 ± 3.68)kg/m2,入院NIHSS平均分为(7.39 ± 10.95)分,平均到院时间为(4.49 ± 2.16)h。出院1年内死亡1 664例,占全部缺血性卒中患者的13.40 %。其中男性875例(52.58 %),女性789例(47.42 %);不吸烟者1 160例(69.71 %),曾经吸烟者216例(12.98 %),吸烟者288例(17.31 %);不饮酒者1 294例(77.76 %),曾经饮酒者90例(5.41 %),适量饮酒者177例(10.64 %),中度饮酒者65例(3.91 %),重度饮酒者24例(1.44 %),不详者14例(0.84 %);上肢肌力下降者1 188例(71.39 %);下肢肌力下降者1 221例(73.38 %);失语者646例(38.82 %);认知功能障碍252例(15.14 %);到院时清醒者1 005例(60.40 %),到院时嗜睡或昏睡者414例(24.88 %),到院时昏迷者245例(14.72 %);就诊时清醒995例(59.80 %),就诊时嗜睡286例(17.19 %),就诊时昏睡或反应迟钝251例(15.08 %),就诊时仅有反射活动或自发反应或完全无反应132例(7.93 %);就诊时语言正常702例(42.19 %),轻到中度失语228例(13.70 %),严重失语213例(12.80 %),哑或完全失语521例(31.31 %);无忽视症者1 386例(83.29 %),视、触、听、空间觉或个人的忽视或对任何一种感觉的双侧同时刺激消失者118例(7.09 %),严重的偏身或忽视超过一种形式的偏身忽视或只对一侧空间定位者160例(9.62 %);有卒中家族史者151例(9.07 %);发病前mRS得分为0分者1 063例(63.88 %),1分者275例(16.53 %),2分者108例(6.49 %),3分者80例(4.81 %),4分者100例(6.01 %),5分者38例(2.28 %);糖尿病者382例(22.96 %);高血压者1 095例(65.81 %);缺血性卒中者645例(38.76 %);陈旧性心梗者105例(6.31 %);视野缺失者54例(3.25 %);卒中亚型为大动脉粥样硬化者1 259例(75.66 %),腔隙性梗死者110例(6.61 %),心源性栓塞者249例(14.96 %),其他46例(2.77 %);脑出血者69例(4.15 %);蛛网膜下腔出血者7例(0.42 %);心力衰竭者83例(4.99 %);心脏瓣膜疾病者96例(5.77 %);下肢深静脉血栓/肺栓塞者23例(1.38 %);艾滋病者1例(0.06 %);癌症者55例(3.31 %);痴呆者53例(3.195 %);肝硬化者12例(0.72 %);哮喘者33例(1.98 %);有消化道溃疡史者45例(2.70 %);消化道出血者34例(2.04 %);关节炎者56例(3.37 %);精神障碍者11例(0.66 %);妊娠者2例(0.12 %);TIA者 52例(3.12 %);血脂异常126例(7.57 %);周围血管病者19例(1.14 %);心房颤动/心房扑动者309例(18.57 %);既往颈动脉内膜切除术或支架植入术者4例(0.24 %);做颅内动脉成形术者25例(1.50 %);做心瓣膜换置术者21例(1.26 %);做肾透析者3例(0.18 %);用抗血小板药物者306例(18.39 %);用抗凝药物者51例(3.06 %);用阿司匹林者33例(1.98 %);用波立维(氯吡格雷)者7例(0.42 %);用缓释阿司匹林/潘生丁混合制剂(如艾诺思)者0例(0.00 %);用苯丙酮(华法林)者1例(0.06 %);静脉注射肝素者0例(0.00 %);用全量低分子肝素者4例(0.24 %);用其他抗凝药物者6例(0.36 %);做同型半胱氨酸检查者221例(13.28 %);做颈动脉内膜剥脱术者0例(0.00 %);做血管成形术者2例(0.12 %);支架植入者3例(0.18 %);做动脉瘤栓塞术者2例(0.12 %);其他血管内操作者1例(0.06 %);做开颅手术者9例(0.54 %);气管插管者94例(5.65 %);机械通气者110例(6.61 %);做胃造瘘术者3例(0.18 %);用降血脂药物者30例(1.80 %);用抗高血压药物者780例(46.88 %);口服降糖药物者223例(13.40 %);用胰岛素者84例(5.05 %)。
2.2 数据集结局分布情况(表1)![]() |
表 1 训练集和测试集的结局比例 |
总数据集按8:2随机分为训练集和测试集,训练集经SMOTE采样平衡其正负样本,总计3次。训练集和测试集的结局比例如表1所示。
2.3 缺血性脑卒中患者出院1年后死亡预测 2.3.1 logistic回归模型分析(表2)![]() |
表 2 缺血性脑卒中患者出院1年后死亡影响因素多因素logistic回归分析 |
以缺血性脑卒中患者出院后1年是否死亡为因变量(0 = 否,1 = 是),以全部67个因素为自变量进行多因素logistic回归分析。结果显示,认知功能障碍、到院时意识状态差、就诊时语言障碍、就诊时忽视症、糖尿病、缺血性卒中、心脏瓣膜疾病、动脉瘤栓塞术、机械通气、年龄、发病前mRS评分和心房颤动/心房扑动是缺血性脑卒中患者出院1年后死亡的危险因素,做同型半胱氨酸检查是缺血性脑卒中患者出院1年后死亡的保护因素。
2.3.2 机器学习模型及logistic回归模型预测结果(表3)![]() |
表 3 缺血性脑卒中患者出院1年后死亡各模型预测效果 |
通过GridSearchCV函数筛选出各机器学习模型的最优参数,Adaboost树的数量为300,学习率为0.05,算法为SAMME.R;随机森林的分类标准用熵是基尼系数,树的数量为100,单个决策树使用特征的最大数量为特征总数的平方根;SVM的核函数为径向基核函数,gamma为0.001,C为1 000;XGBoost的学习率为0.01,树的数量为500,最大深度为5,subsample为0.8,colsample_bytree为0.6,gamma为0.1,reg_alpha为1。采用Adaboost、随机森林、SVM和XGBoost 4种机器学习模型对数据进行训练,各重新分组采样训练3次,获得各模型结果,并与logistic回归模型作对比。结果显示,按准确率从高到低排列依次为XGBoost、随机森林、Adaboost、SVM和logistic,按F1-score从高到低排列依次为XGBoost、随机森林、Adaboost、SVM和logistic,按AUC从高到低排列依次为随机森林、logistic、XGBoost、Adaboost和SVM。
3 讨 论以往研究表明,logistic回归模型作为一种便捷、高效、准确的传统预测模型[12],在缺血性脑卒中的死亡结局预测中应用较多,且发挥着不错的效果。在本研究中,logistic回归模型预测效果与既往研究使用传统量表预测结果[13 – 14]一致。同时,logistic回归模型筛选出的危险因素在传统卒中预后预测量表[15 – 18]及既往研究[19 – 21]结果基本一致。因此在本研究中可采用logistic回归模型预测结果作为基准,与各机器学习算法模型相对比,以衡量机器学习算法模型预测效果。
在本研究中,各机器学习模型的AUC与logistic回归模型均相近,与游佳等[22]的监督学习K近邻应用于卒中死亡预测研究一致。与logistic回归模型相比,各机器学习模型选取的截断点的准确率和F1-score均较高,但要做到精准预测,要求灵敏度和阳性预测值均同时较高还有一定难度。但可通过改变分类阈值提高灵敏度或阳性预测值某一项,将机器学习预测结果作为一种临床辅助医师判断手段,为临床诊疗提供参考意见,以适应实际临床应用环境。本研究通过重新分配训练集和测试集(8 : 2),3次重复实验,各机器学习模型所获预测结果仍能保持良好且稳定的预测效果,说明模型预测精度高的同时鲁棒性也很好。此外,Adaboost、随机森林、SVM和XGBoost 4种机器学习模型还有对数据质量要求更少、支持大数据和高维数据、可提取变量之间的交互作用的优点。本研究中,在相同硬件条件下,拟合模型所耗时间以SVM模型耗时最长,Adaboost模型第二,随机森林模型与XGBoost模型次之,logistic回归模型最短。
本研究中,结合准确率及F1-score来看,XGBoost综合表现第一,与其他研究结果一致[23]。XGBoost算法是集成学习boosting方法的一种,具有运行速度快、分类效果好、有效避免过拟合、支持自定义损失函数等优点,在机器学习领域受到追捧和青睐。在本研究数据中,随机森林各项预测效果评价指标表现优异。随机森林是一种基于决策树的集成学习bagging方法[24],其通过生成多棵决策树并进行投票来弥补决策树的过拟合缺陷,对于多特征的数据集具有较高的分类效率,还能进行属性的重要性的选择,在其他研究中具有较高的运行效率和准确率[25 – 26],应用场景广泛。Adaboost在本研究中预测效果优良,属于集成学习boosting方法[27],它有着泛化错误率低、无需参数调整的优点,但同时Adaboost算法也有某些缺陷,如,离群点对模型影响较大,同时由于是串行计算,所以当数据量较大时训练较慢[27],应针对其特点选择应用场景。SVM的预测准确率和F1-score表现稍逊于其他几种机器学习模型。SVM在小样本、非线性、高维模式下有优势[28],但本研究的数据量较大,直接应用SVM算法构建模型的预测效果欠佳,若对数据进行相应处理和降维后再训练SVM模型可能预测效果更好[29]。SVM模型在本研究中AUC指标并不高,是因为AUC计算需要调用预测概率,而SVM本身不支持输出预测概率,仅能使用多次交叉训练模拟,因此所获结果可能与直接预测结果略有不同[30],故AUC不适合作为SVM预测价值评判标准。同时,SVM运算速度较慢,调参训练过程耗时过久[31],这也与其需要多次交叉训练模拟预测概率有关。
综上所述,本研究利用CNSR第1期数据库将机器学习模型与logistic回归模型在缺血性脑卒中患者中建立1年死亡预测模型,并比较预测效果。在AUC方面,除SVM较低外,其余模型AUC均相近。从准确率和F1-score来看,分类效果最好的为XGBoost,随机森林、Adaboost、SVM 3种机器学习模型建模的预测效果也较logistic回归模型预测效果好。说明与logistic回归模型相比,机器学习模型适用于缺血性卒中患者出院1年后死亡的预测,并有截断点更优选择的优势。在今后的研究中可考虑利用深度学习算法提取之前舍弃的稀疏数据的特征,并加入影像学信息和组学信息,增加可进入模型特征数量,同时采用Stacking集成算法结合多个不同的分类算法进一步提高机器学习算法模型的分类性能。但本研究中的机器学习模型还有其他不足之处,相比简单的logistic回归模型,机器学习模型调参过程复杂、运算速度慢,今后可侧重优化环节,提高分类的速度,利用大数据平台和日渐强大的算力为智能医疗的真正实现贡献一份力量。
[1] | Lloydjones D, Adams RJ, Brown TM, et al. Heart disease and stroke statistics-2010 update: a report from the American Heart Association[J]. Circulation, 2010, 121(7): e46 – 215. |
[2] | Moon BH, Park SK, Jang DK, et al. Use of APACHE II and SAPS II to predict mortality for hemorrhagic and ischemic stroke patients[J]. Journal of Clinical Neuroscience, 2015, 22(1): 111–115. DOI:10.1016/j.jocn.2014.05.031 |
[3] | Bushnell CD, Colón-Emeric CS. Secondary stroke prevention strategies for the oldest patients: possibilities and challenges[J]. Drugs and Aging, 2009, 26(3): 209–230. DOI:10.2165/00002512-200926030-00003 |
[4] | 陈旭, 刘鹏鹤, 孙毓忠, 等. 面向不均衡医学数据集的疾病预测模型研究[J]. 计算机学报, 2019(3): 596–609. |
[5] | Kreutzer JS, Deluca J, Caplan B. Encyclopedia of clinical neuro-psychology [M]. New Yok: Springer, 2011: 1653. |
[6] | Appelros P, Terent A. Characteristics of the National Institute of Health Stroke Scale: results from a population-based stroke cohort at baseline and after one year[J]. Cerebrovascular Diseases, 2004, 17(1): 21–27. DOI:10.1159/000073894 |
[7] | 刘凯. 随机森林自适应特征选择和参数优化算法研究[D]. 长春: 长春工业大学, 2018. |
[8] | 徐彬心. 基于优化的xgboost模型的商业银行电话营销效果分析[D]. 兰州: 兰州大学, 2017. |
[9] | 王健峰, 张磊, 陈国兴, 等. 基于改进的网格搜索法的SVM参数优化[J]. 应用科技, 2012, 39(3): 28–31. |
[10] | 邱仁博, 娄震. 一种改进的带参数AdaBoost算法[J]. 计算机工程, 2016, 42(7): 199–202. DOI:10.3969/j.issn.1000-3428.2016.07.033 |
[11] | Powers DM. Evaluation: from precision, recall and F-measure to ROC, informedness, markedness and correlation[J]. Machine Learning Technologies, 2011, 2(1): 37–63. |
[12] | 林树生, 张佳滢, 张仕东, 等. 模拟退火结合Logistic算法在分类中的应用[J]. 科技创新导报, 2016(17): 92–93. |
[13] | 张江, 王大力, 彭延波, 等. 脑卒中常用量表对急性脑梗死患者死亡预测的价值[J]. 中华老年心脑血管病杂志, 2011, 13(12): 1108–1111. DOI:10.3969/j.issn.1009-0126.2011.12.017 |
[14] | 李姝雅, 赵性泉, 刘丽萍, 等. 3种评分工具对缺血性卒中伴心房颤动患者1年死亡风险评估的验证[J]. 中国卒中杂志, 2018, 13(8): 818–822. DOI:10.3969/j.issn.1673-5765.2018.08.012 |
[15] | CAPRIE Steering Committee. A randomised, blinded, trial of clopidogrel versus aspirin in patients at risk of ischaemic events (CAPRIE). CAPRIE Steering Committee[J]. Lancet, 1996, 348(9038): 1329–1339. DOI:10.1016/S0140-6736(96)09457-3 |
[16] | Saposnik G, Kapral MK, Ying L, et al. IScore clinical perspective:: a risk score to predict death early after hospitalization for an acute ischemic stroke[J]. Circulation, 2011, 123(7): 739–749. DOI:10.1161/CIRCULATIONAHA.110.983353 |
[17] | Ntaios G, Faouzi M, Ferrari J, et al. An integer-based score to predict functional outcome in acute ischemic stroke: the ASTRAL score[J]. Neurology, 2012, 78(24): 1916–1922. DOI:10.1212/WNL.0b013e318259e221 |
[18] | O'Donnell MJ, Fang J, D'Uva C, et al. The PLAN score: a bedside prediction rule for death and severe disability following acute ischemic stroke[J]. Archives of Internal Medicine, 2012, 172(20): 1548. DOI:10.1001/2013.jamainternmed.30 |
[19] | 马翠, 李岩, 李熙东, 等. 不同肥胖指标及糖尿病与缺血性脑卒中关系[J]. 中国公共卫生, 2013, 29(10): 1502–1505. DOI:10.11847/zgggws2013-29-10-31 |
[20] | 王大力, 甄志刚, 彭延波, 等. 老年缺血性脑卒中患者死亡危险因素的研究[J]. 疑难病杂志, 2010, 9(2): 99–101. DOI:10.3969/j.issn.1671-6450.2010.02.009 |
[21] | 陈峰, 姜宝法. 青岛地区缺血性脑卒中发病危险因素分析[J]. 中国公共卫生, 2010, 26(11): 1369–1371. DOI:10.11847/zgggws2010-26-11-12 |
[22] | 游佳, 李爱阳, 王森林, 等. SPSS Modeler在脑卒中患者预后建模中的应用[J]. 中国医疗设备, 2018, 33(10): 60–63. DOI:10.3969/j.issn.1674-1633.2018.10.015 |
[23] | 许源, 马健勇, 葛艳秋, 等. XGboost模型对缺血性脑卒中出院后90 d内复发再入院风险的预测效果分析[J]. 中华神经医学杂志, 2018, 17(8): 813. DOI:10.3760/cma.j.issn.1671-8925.2018.08.010 |
[24] | 薛薇. R语言与数据挖掘[M]. 北京: 中国人民大学出版, 2016: 194 – 201. |
[25] | 胡玮. 基于改进邻域粗糙集和随机森林算法的糖尿病预测研究[D]. 北京: 首都经济贸易大学, 2018. |
[26] | 罗晓舟, 温小鹏, 何家扬, 等. 基于机器学习的卒中后抑郁影响因素分析[J]. 中医杂志, 2017, 58(17): 1478–1481. |
[27] | 廖红文, 周德龙. AdaBoost及其改进算法综述[J]. 计算机系统应用, 2012, 21(5): 240–244. |
[28] | 张丽娜, 李国春, 周学平, 等. 基于支持向量机的急性出血性脑卒中早期预后模型的建立与评价[J]. 南京医科大学学报: 自然科学版, 2016(1): 80–84. |
[29] | 沈永良, 宋杰, 万志超. 基于改进烟花算法的SVM特征选择和参数优化[J]. 微电子学与计算机, 2018, 38(1): 21–25. |
[30] | Pedregosa F, Gramfort A, Michel V, et al. Scikit-learn: machine learning in python[J]. Journal of Machine Learning Research, 2013, 12(10): 2825–2830. |
[31] | 谢敏. 基于Hadoop的SVM的设计和实现[D]. 上海: 复旦大学, 2011. |