基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究

基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究

ID:76138882

大小:2.04 MB

页数:67页

时间:2024-02-04

上传者:笑似︶ㄣ無奈
基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究_第1页
基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究_第2页
基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究_第3页
基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究_第4页
基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究_第5页
基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究_第6页
基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究_第7页
基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究_第8页
基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究_第9页
基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究_第10页
资源描述:

《基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

分类号学校代码10590UDC密级公开深圳大学硕士学位论文基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究学位申请人姓名刘利明专业名称应用数学学院(系、所)数学与统计学院指导教师姓名黄俊联、蔡云鹏 摘要随着医疗行业信息化发展,每年都会产生大量的临床医疗信息,且医疗数据资料呈持续爆炸性增长,海量的疾病诊断数据、临床实验数据、居民行为健康数据等汇聚在一起开启了大数据时代的医疗变革。运用数据挖掘技术,发现医疗数据潜在规律和预测其发展趋势,对疾病诊断治疗以及医疗研究等方面有非常重要的价值。心血管疾病是危害全球公共健康的重大问题,严重影响人类的身心健康发展,在全世界范围内,约占全球死亡人数的30%。高血压作为一种常见的慢性心血管疾病,易于引发脑卒中、心力衰竭、肾功能衰竭等预后严重病症,而这些病症发作与多种风险因子相关。如何早发现和有效防控这些风险因子,以及建立预后严重病症事件的风险预警模型,对控制心血管疾病发作有重要意义。国内外有关心血管疾病研究,大多依据已设定实验方案、选定人群和纳入可能的风险因素进行跟踪发现,并不能全面完整有效把握致病因素,且大多数基于医学统计方法,具有一定的局限性。本文基于面向区域医疗和公共健康大数据分析及示范应用项目课题研究,在深圳市历史医疗数据产业积累基础上,通过数据挖掘技术,利用Spark大数据分析平台,以高血压病人为研究对象,慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件作为主要研究内容,分别建立3年时长相关预后严重病症的风险预警模型。本文的主要研究内容及贡献包括以下几个方面:(1)从海量医疗数据中提取有关慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件的三种不同预后严重病症的相关患者,包含脑卒中、心力衰竭及肾功能衰竭,并融合人口统计信息、临床就诊信息,随访信息和个人体检信息等数据资料。(2)基于Spark大数据处理平台,运用数据挖掘技术对海量医疗数据存在的不一致性、冗余性、不完整性以及噪声和错误等数据问题进行数据预处理。(3)基于医疗数据的不平衡性,即患病人群样本数远少于健康人群样本数,采用分层抽样技术,将不平衡数据集转化为平衡数据,并使用z-score规范化,将数据转换为适合数据挖掘的可用形式。(4)应用数据挖掘算法Logistic回归、朴素贝叶斯以及支持向量机基于三组不同I 预后严重病症数据,包括脑卒中、心力衰竭及肾功能衰竭病症,建立3年时长的风险预警模型,实验结果表明,相比以往传统风险模型,预测效果更好,具有实际应用意义。(5)应用卡方检验,以P-Value<0.05为临床参考标准,筛选出符合临床意义的特征属性。利用SVM-RFE特征选择算法选取最优特征子集,简化和优化模型,实验结果表明,在特征空间显著维数降低情况下,选择的特征子集保证了与全临床特征模型情况相近的分类性能。(6)基于慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件,我们筛选出相关预后严重病症(脑卒中、心力衰竭、肾功能衰竭)主要的风险因子,这对相关预后严重病症针对性预防具有指导性作用及实际意义。关键字:心血管疾病;数据挖掘;风险因子;风险预警;SparkII AbstractWiththedevelopmentofinformationinmedicalindustry,alargeamountofclinicalmedicaldatahasbeengeneratedandcontinuetoexplodeeveryyear.Massivediseasediseasediagnosisdata,clinicaltrialdataandresidentbehavioralhealthdataaretogethertoopenupthemedicalreformfortheeraofbigdata.Usingdataminingtechnologycanpredictthedevelopmenttrendandpotentialrulesofmedicaldata.Thishasaveryimportantvaluefordiseasediagnosisandtreatmentandmedicalresearch.Cardiovasculardiseaseisamajorpublichealthproblemthatthreatensglobalpublichealthandaffectsseriouslythehealthydevelopmentofhumanhealth,accountingforabout30%oftheworld’sdeathsworldwide.Hypertensionisacommonchroniccardiovasculardisease,leadingeasilytostroke,heartfailure,renalfailureandtheprognosisofseveredisease,andthesesymptomsareassociatedwithavarietyoftheriskfactor.Howtoearlydiscoveryandeffectivepreventionandcontroloftheseriskfactors,andtheestablishmentofaseriousprognosisoftheriskearlywarningmodelisanimportantsignificancetocontroltheonsetofcardiovasculardisease.Theresearchofvasculardiseaseathomeandabroad,mostlybasedonthesetofexperimentalprogramsandselectingspecifypopulationsandthepossibleriskfactorswerefoundtofollow,andcannotfullycompleteeffectivelygraspthepathogenicfactors,andmostofthemethodsbasedonmedicalstatistics,ithassomelimitations.ThispaperfortheregionalmedicalandpublichealthdataanalysisanddemonstrationprojectapplicationresearchbasedonShenzhencityinthehistoryofmedicalindustrybasedontheaccumulationofdata,throughthedataminingtechnology,usingSparkdataanalysisplatformforhypertensionpatientsastheresearchobject,chroniccardiovasculardiseaseandacutecardiovasculareventsandcardiovasculardysfunctioncausedbyseverepathologicaleventsthesetwotypesofeventsasthemainresearchcontents,establishriskearly-warningmodelfor3yearlongoutcomesassociatedwithseriousdiseases.Themainresearchcontentsandcontributionsofthispaperincludethefollowingaspects:(1)ThreepatientswithdifferentprognosisrelatedseriousillnessextractedrelevantchronicIII cardiovasculardiseaseandacutecardiovasculareventsandcardiovascularfunctiondamagefromthemassivemedicaldatacausedbytheeventsofthetwokindsofcriticaldiseaseevents,includingstroke,heartfailureandrenalfailure,andtheintegrationofdemographicinformation,clinicalinformationandfollow-upinformation.Personalmedicalinformationdata.(2)BasedontheSparkdataprocessingplatform,dataminingtechnologyisusedtopreprocessthedata,suchasinconsistency,redundancy,incompleteness,noiseanderror(3)Medicaldataunbalancedness,namelythepatientpopulationsamplenumberisfarlessthanthenumberofsamplesofhealthypeople,usingstratifiedsamplingtechnique,theimbalanceddatasetsintobalancedata,andusetheZ-scorestandardtoconvertdataintousableformsuitablefordatamining.(4)TheapplicationofdataminingalgorithmLogisticNaiveBayesianregression,andsupportvectormachinebasedonthreegroupsofdifferentprognosisinseverecases,includingstroke,heartfailureandrenalfailuresymptoms,establishtheriskearlywarningmodelfor3yearstime,theexperimentalresultsshowthatcomparedwiththetraditionalriskmodel,betterpredictioneffect,haspracticalsignificance.(5)Theapplicationofchisquaretest,withp-value<0.05astheclinicalreferencestandard,selectedattributeswithclinicalsignificance.ToselecttheoptimalfeaturesubsetselectionalgorithmbasedonSVM-RFEfeatures,modelsimplificationandoptimization,theexperimentalresultsshowthatthedecreaseinthefeaturespacedimensionsignificantcase,featuresubsetselectiontoensuretheclassificationperformancesimilartothetheclinicalfeaturesofthemodel.(6)Basedonchroniccardiovasculardiseaseandacutecardiovasculareventsandcardiovasculareventscausedbycriticalillnessevents,wescreenouttherelevantprognosisofseriousillness(stroke,heartfailure,renalfailure)themainriskfactor,whichisrelatedtotheprognosisofseriousillness.Targetedpreventionhasaguidingroleandpracticalsignificance.Keywords:Cardiovascular;DataMining;Riskfactor;RiskWarning;SparkIV 目录摘要....................................................................................................................IAbstract................................................................................................................III第1章绪论.......................................................................................................11.1研究背景与意义..............................................................................11.2国内外研究现状..............................................................................31.2.1心血管疾病早期预警模型....................................................31.2.2心血管疾病早期风险因子探索............................................61.3大数据挖掘在医疗的应用研究......................................................71.3.1医疗卫生信息化建设现状....................................................71.3.2医疗海量数据........................................................................71.3.3医疗卫生大数据的医学意义................................................81.4本文贡献和创新..............................................................................91.5本文研究内容及组织结构............................................................10第2章Spark大数据平台及数据挖掘理论....................................................122.1Spark生态系统...............................................................................122.1.1Spark生态系统介绍.............................................................122.1.2Spark基本原理.....................................................................132.1.3SparkSQL.............................................................................152.1.4SparkMLlib...........................................................................162.2数据挖掘理论................................................................................162.2.1Logistic回归.........................................................................162.2.2朴素贝叶斯算法..................................................................192.2.3支持向量机..........................................................................202.2.4特征选择算法......................................................................212.2.5模型评价指标与评估方法..................................................22第3章医疗数据处理.......................................................................................25 3.1数据来源.........................................................................................253.2数据抽取........................................................................................263.3数据预处理....................................................................................283.3.1数据清洗..............................................................................293.3.2数据集成..............................................................................333.3.3数据变换..............................................................................343.3.4数据规约..............................................................................35第4章风险建模与评估...................................................................................364.1数据集描述....................................................................................364.2建立风险预警模型........................................................................364.2.1慢性心血管疾病与急性心血管事件模型..........................374.2.2心血管功能损害引起的危重病症事件..............................414.3主要风险因子发现........................................................................434.3.1脑卒中主要风险因子发现..................................................434.3.2心力衰竭主要风险因子发现..............................................444.3.3肾功能衰竭主要风险因子发现..........................................45第5章总结与展望...........................................................................................495.1主要工作........................................................................................495.2展望................................................................................................50参考文献.............................................................................................................55附录...................................................................................................................55致谢...................................................................................................................58攻读硕士学位期间的研究成果.........................................................................59 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究第1章绪论伴随着我国经济飞速发展,以及国民生活方式的深刻变革,慢性病的发病事件在居民生活中日渐显露,尤其是心血管疾病,逐年呈增加趋势,并占据我国居民疾病死亡人数的首位。根据《中国心血管病报告2015》概要[1],居民因心血管疾病死亡占据疾病死亡的40%以上。因此,心血管疾病负担越来越重,已成为我国重大的公共卫生问题,从而防治心血管疾病,实现心血管疾病的早预警、早诊断、早干预、早预防已经刻不容缓。近几年来,国内外对心血管疾病越来越关注,也相继开展了多个研究项目,对心血管疾病方面的研究做出了重大贡献,但心血管疾病风险发现依旧是一个重大挑战。近年来,随着医疗行业领域信息化发展,每年都会产生大量的临床医疗信息,医疗数据资料呈持续爆炸性增长,这些医疗信息存储了病人就诊的所有医疗数据,包括个人体检信息、住院诊断信息、门诊诊断信息、病案记录信息、随访信息,医疗影像信息等。但面对复杂而多元化的医学数据,基于传统的疾病风险研究不能全面完整有效的把握致病因素的发现,从而在诊疗手段不断提升的同时也带来了新的问题,即知识贫乏、数据丰富,由此引入新的处理技术——数据挖掘,医疗数据挖掘面向整个医疗信息集合或者医疗数据库,为其提供规则,决策和知识,如今大数据挖掘技术对医学数据提炼出蕴含其中的有价值信息成为一种有效途径。本文针对大量历史医疗数据资料,以高血压为研究对象,建立慢性心血管疾病与急性心血管事件以及心血管功能损害引起的危重病症事件这两种事件的预警模型,同时对发现的重要风险因子进行分析研究。1.1研究背景与意义心血管疾病是全球普遍存在的重大公共卫生问题,严重影响人类的身心健康发展,也是严重危害我国居民健康的“头号杀手”。心血管疾病,又称为循环系统疾病,常见的心血管疾病包括心绞痛、脑卒中、高血压、冠心病、脑梗及心力衰竭等。而高血压作为一种最常见的心血管疾病,是导致脑卒中、心力衰竭以及肾功能衰竭等常见的预后严重病症的致病因素。依照世界卫生组织报道,不足60岁死于心血管疾病已经超过300万人,且在全世界范围内,仅2008年就有1700多万人因心血管疾病死亡[2],占据全球死亡人数的30%,且该心血管致死人数还在逐年增长,预计未来十年,将会有2300万因心血管疾病致死[2]。在我国,心血管疾病危险因素具有明显的流行趋势,致使心血管疾病的发病人数呈逐年增加,今后十年心血管患病人数还会持续快速增长。目前,中国心1 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究血管疾病死亡率一直占据疾病死亡的第一位,其中农村占44.60%,城市占42.51%,如图1.1所示。每年平均约450万人死于心血管疾病,其中每5人会有2人因心血管疾病致死[1],如图1.2所示。可见心血管疾病已经成为重大的公共卫生问题,增强政府主导下的心血管疾病预防工作十分紧迫。图1.12014年中国农村、城市居民主要疾病死因构成比图1.21990年-2014年中国农村、城市居民心血管死亡率变化根据国内外多年实践经验证明,采取有效的防控手段,早干预,早预警,早诊断,早治疗能够有效防控慢性心血管疾病,以及因心血管功能损害引起的危重病症。据心血管报告统计,心血管疾病主要风险因素有:高血压、体力活动不够、抽烟、代谢综合征、2 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究超重、血脂异常、糖尿病、不合理膳食、大气污染等[1]。其中高血压对心血管疾病危害最大。2010年我国因高血压死亡人数达204.30万,其中男性人数共115.4万,女性人数共88.9万,共占所有死亡人数的24.6%。根据2013年我国卫生支出费用共计31869亿元,其中高血压直接经济负担都占6.61%[1],这对心血管疾病防控产生了很大的压力,从而实现心血管疾病早期预警具有重大意义。据《国家中长期科学和技术发展规划纲要》提出:前移疾病防治重心建设,坚持以预防为主,并对重大疾病研究实现早期诊断、早期预警以及疾病风险早期干涉的关键技术,从而推进健康医疗与疾病防控相互结合。也随着医疗卫生领域信息化的不断发展,医疗行业每年都产生了大量的医疗诊断数据,包括居民健康信息档案、电子病历等个人医疗就诊信息。这些大量医疗诊断数据对疾病预测和控制有着非常宝贵的价值。如何从医疗大数据中挖掘出有价值信息,成为当今解决心血管疾病早期风险预警的一种新方案,也为许多医学难题提供了新路径。基于医疗大数据,建立心血管疾病早期预警风险模型和发现新风险因子,对心血管疾病研究具有新的重大意义。1.2国内外研究现状从上世纪六七十年代,多半发达国家因心血管疾病造成的死亡人数,已经远远超过由传染病和寄生虫引起的死亡,成为那时疾病死亡的首要病症。如今,多半发展中国家,因心血管疾病的死亡率也不断攀升,一跃成为发展中国家的主要死亡病症,占据所有死因的24%以上,且我国心血管疾病死亡人数远高于欧美和日本等发达国家。为了有效预防全球心血管疾病不断增长趋势,包括中国在内的,美国、欧洲、日本等国家都展开了心血管疾病的研究工作,并定期发布有关心血管疾病的防治报告。随着心血管疾病研究的不断推进,有关心血管疾病的风险因子,预测模型以及针对性治疗和预防受到研究工作者的广泛关注。研究发现,不同人种、不同社会经济状态人群、各风险因子的影响、患病率,甚至死亡率都存在显著不同,导致出现各种预警模型,且每个模型都在特定的范围内。全球已公认的心血管疾病风险因子,包括肥胖指数、高血压、糖尿病、吸烟、年龄、血脂异常等。如今,为推进心血管疾病早期预警不断完善,国内外科研人员也不断尝试新的发现与研究,主要包括风险模型建立和新型风险因子发现等。1.2.1心血管疾病早期预警模型自20世纪50年代,美国弗莱明翰心脏研究中心是国际上开展最早,在心血管流行病学方面进行了长期系统跟踪的研究机构。最早的心血管疾病风险预警模型领域的典型3 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究代表是弗莱明翰心脏研究中心建立的冠心病风险预警模型,其研究初期主要面向冠心病这一在欧美国家最严重的死亡疾病。半个多世纪以来,弗莱明翰致力于心血管流行病方面研究,获得了举世瞩目的成就和难以动摇的里程牌地位。在20世纪60年代,弗莱明翰最早针对冠心病发病事件建立了logistic回归模型,对多个风险因子如血压、性别、年龄等进行了详细地研究[3]。20世纪70年代之后,弗莱明翰中心相继开发出了多个针对心血管事件的评估工具。20世纪末,弗莱明翰中心根据国家胆固醇实验报告指南,利用连续型因变量转化为成分类型变量,更加贴近临床实际应用建立了冠心病10年风险预警模型,并开发新的评估工具[4]。不久,弗莱明翰心脏中心又尝试结合心室肥厚、心率等心电相关特征,建立了基于充血性心衰的4年危险预测模型[5]。到21世纪初期,达戈斯蒂诺等人陆续建立了冠心病2-4年短期风险预警模型和基于心房颤动的10年风险预测模型[6,7],其中风险因素主要包括心脏杂音、心电信号PR间期等。同时,弗莱明翰的各种预警评估工具能够登陆Framingham网站免费下载和使用。之后美国国立血液和心肺研究所在弗莱明翰心脏研究的基础上,建立了基于脑卒中和冠心病发病风险预警模型。虽然弗莱明翰研究中心多年来取得了显著成果,其风险预警模型已被多个国家作为制定心血管疾病防治指南的重要参考以及,但由于所选人群面向美国白人,致使所开发的预测模型并不适合其他人种[8-14]。因此,近年来,各个国家都在致力于研究基于本人种及民族特点的风险预测模型。英国国家健康与临床优化研究所,对美国弗莱明翰危险预测评估上进行了修订的QRISK1风险评估,通过对英国128万人群的心血管事件队列研究[15],从而建立了心血管疾病10年预警模型,但存在一定的局限性。随后为改变QRISK1不足,开展了新的风险研究QRISK2[16],该项风险评估研究涉及风险因子不仅整合传统弗莱明翰研究中心风险评估所包含的年龄、收缩压、血脂值、性别、吸烟情况等,也增加了种族、心血管疾病家族史、体重指数、社会剥夺指数以及和心血管危险相关疾病(高血压、糖尿病、心房纤维颤动、肾脏病、类风湿性关节炎等)。英国的一项大型队列研究表明[17],QRISK2评估结果对英国人群更准确。该队列研究受试者主要来自1993年1月1日至2008年6月20日注册的365个全科医学科室158万患者,他们的年龄在35岁~74岁。结果显示,QRISK2评估确定的高危险人群在10年间发生心血管事件最多。与QRISK1风险评估相比,QRISK2评估更加准确。同时,可登陆网站(www.qrisk.org)进行评估[18],这在日常诊疗中随时可进行。4 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究研究表明弗莱明翰建立的风险评估模型并不适用于欧洲人群,其心血管风险评估结果会普遍偏高。为构建欧洲临床风险评估系统,欧盟制定了系统性冠心病风险评估SCORE项目[10]。以欧洲12个国家不同人群作为研究对象,排除既往心脏病患者,共包括205178人,其中女性117098人,男性88080人。SCORE项目涉及主要危险因素有年龄、收缩压、性别、总胆固醇(TC)、总胆固醇与高密度脂蛋白胆固醇比值(TC/HDL-C比值)和抽烟等,建立了10年冠心病的风险预警模型。临床实践表明,SCORE更适用于欧洲人群冠心病危险评估。2007年,里德等人发布了Reynolds风险评分[19],实验随访了美国45岁以上女性,平均跟踪10.2年,通过观察血压、抽烟状态、饮酒、绝经状态、体重、身高、胆固醇治疗、种族、年龄、家族早发(父母<60岁出现)的心肌梗死病史、运动频度以及近期服用多类维生素等35种可能的风险因子,来预测其10年心血管疾病风险(终点为缺血性脑卒中、心血管死亡、心肌梗死等),建立了Reynolds风险预警模型。相比于弗莱明翰和SCORE传统心血管风险因子,Reynolds危险评估新增加了心肌梗死家族史和hs-CRP。之后研究者调整Reynolds风险模型应用于无糖尿病的美国男性[20],也同样有效。我国心血管疾病发病特点不同于欧美等国,研究表明,弗莱明翰评估结果远远高于我国现实情况,不符合我国人群特点。近几年,我国政府关于心脑血管疾病启动了多个大型研究项目,开展针对我国人群特征的有关心血管疾病发病机制研究和防控策略探索。为建立适合我国人群特点的心血管风险预警模型,我国“十五”计划依托公关课题“冠心病、脑卒中综合危险度评估及干预方案的研究”,建立了我国人群心血管疾病10年危险预警模型及风险评估工具[21]。中美合作研究,主要由中国阜外心血管疾病研究室和中国医学科学院牵头,针对11155工人随访跟踪,针对以年龄、体重指数、吸烟情况、糖尿病情况、收缩压、血清胆固醇等危险因素,建立了缺血性心脏预警模型[22]。现阶段,有关脑卒中建立风险预警模型研究,2015年LeZheng,YueWang等人发表关于脑卒中实验研究文章[23],针对美国缅因州患病人群涉及所有年龄段,使用人口统计数据以及若干项临床电子医疗记录数据,利用Logistic回归建立了1年脑卒中风险预警模型,评估指标AUC达0.887,敏感度和阳性预测值为0.410和0.262;TeerapatKansadub等人发表了基于人口统计数据信息建立脑卒中风险预警模型文章[24],收集2012至2015年泰国国立玛希隆大学物理治疗学院的人口数据,涉及性别、年龄、婚姻状况、教育水平等可能的风险因素,其评估最高准确率达0.75,AUC最高为0.769;AdityaKhosla等人利用集成机器学习方法预测脑卒中[25],建立了脑卒中5年风险预警模型,其最高AUC5 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究值为0.777。关于心衰风险预警模型研究资料显示,KenneyNg等人发表基于电子健康档案结构化和非结构化数据建立的心衰早期预警风险模型[26],基于不同的数据集,准确率最高达0.83;FenMiao等人基于临床传统因素和实验室参数研究[27],发现除传统风险因素外,包括肺循环疾病、周围血管病、慢性肺部疾病、甲状腺功能减退、体液和电解质紊乱、血液尿素氮等被确定为心力衰竭的独立预测因素,并建立1年短期心衰风险预警模型,模型评估AUC值达0.712。有关肾功能衰竭预测研究,主要以肾小球滤过率(GFR)作为肾脏功能综合评价的最好指标,而计算GFR作为预测肾功能的主要模型,目前大部分文献集中以慢性肾病患者为研究对象,利用传统的临床实验方法,测量血清肌酐、血尿素氮等血液指标,并引入性别、年龄、种族等变量,利用肾衰风险方程对GFR进行评估预测[28-31],其中公式的选择影响预测能力。MegJ.Jardine等人以2型糖尿病患者为研究对象[32],对肾脏功能进行预测,跟踪了2型糖尿病患者共10506人,达5年时长,对设定的风险变量包括肾小球滤过率估算、尿白蛋白肌酐比值、糖尿病视网膜病、教育程度、糖化血红蛋白水平和性别等7个指标建立风险预测模型,AUC值达0.847。Desai等人研究以带有慢性肾病的2型糖尿病和贫血患者作为研究对象[33],选取在3和4阶段的慢性肾病患者995人,跟踪3年半的时间,模型评估AUC值达0.84。1.2.2心血管疾病早期风险因子探索早期传统的心血管疾病风险因子有高血压、肥胖、血脂异常、糖尿病、吸烟、不合理膳食等,其中高血压患病率最高,能够致使心血管疾病上升3到4倍,并且血压升高对心血管疾病的危险是连续的。早期研究也表明抽烟能够显著增加缺血性心血管疾病的发病危险,比如抽烟导致冠心病发病相对危险2.19倍及缺血性脑卒中的危险2.01倍等。但近年来,又有许多研究致力于心血管疾病风险因素发现,如无创连续测量生理参数、生物标记物等。目前基于生物标记物预测动脉硬化风险最典型研究来自美国ARIC(AtherosclerosisRiskinCommunitiesStudy),最初目的主要识别影响动脉硬化等疾病的生理、生化参数等[34]。另一个来自瑞士的重要研究,发现了脂蛋白磷酸酶A2(Lipoprotein-associatedphospholipaseA2,Lp-PLA2)是心血管病发作的重要风险预测因素[35,36]。针对生理参数在预测心血管疾病中的作用,如已被验证的传统血压值,但相对于临床血压,动态血压监测更具有预见性等,如血压变异性等,发表在Hypertension研究表明夜间血压变异测量能够提高高血压人群心血管事件风险预警[37]。6 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究1.3大数据挖掘在医疗的应用研究1.3.1医疗卫生信息化建设现状随着医疗卫生信息化的持续发展,医疗健康管理也越来越完备,人们对医疗病案管理的观念也发生了改变,更加完善病案质量监控系统,更加重视病案资料开发利用,提高病案利用价值。目前从全球来看,区域医疗电子化发展趋势越来越快。2000年9月,由加拿大政府联邦注资成立了HealthInfoway项目公司,以非营利的独立机构,负责和管理全国的兼容的标准、电子健康信息、通信技术的实施与开发。从2002年,HealthInfoway机构在区域卫生健康信息共享基础架构方面斥资12亿加元,于2009年建立了加拿大人口50%的电子健康档案,预计2020年全面覆盖[38]。于2009年,美国现任总统奥巴马,在经济复苏刺激方案中,决定提供500亿美元专门用于推荐区域医疗信息化发展。自2003年到2004年年末,英国政府同若干家跨国医疗卫生健康信息化公司相继签订期限10年,且总额度超60亿英磅的建设合约,计划布署和筹建全国性的健康卫生电子网,患者可以利用这一信息网预约医院,获取自己的电子病历档案等,2013年底英国取得全国性区域医疗电子网的阶段性成就,成为欧洲国家健康信息化建设的出色代表[38]。在中国,许多省市区域医疗信息系统仍处于摸索和试验性阶段,但华东地区已基本建成了信息共享平台,能够实现所有数据的整合。由上海申康医院中心组织,实施称为“市级医院临床信息交换与共享平台”的工程项目,现已有38家上海市医院实现了信息互联互通,拥有3900万患者医疗信息档案,是全国最庞大的患者医疗信息库。并在此基础上,上海市利用健康公共卫生平台建设成了上海市居民电子档案,涉及六大类业务应用,即院际协同医疗、网上预约、检查检验报告查询、慢性病全程管理、用药智能提醒、重复检验检查等。但总体来说,目前我国的医疗健康信息化仍处于较低水平,标准电子化建设相对滞后,并且发展不均衡。1.3.2医疗海量数据随着医疗卫生信息化建设不断推进,医疗数据的规模和类型正以前所未有的速度急剧增加,这些医疗数据资源对于医疗研究和疾病控制管理有着非常重要的价值。对于有一定规模的医院,每天都会有数万个患者来治疗诊断,从而患者的影像信息、诊疗信息以及患者的基本信息都会汇集在一起构造成海量的数据资源。据相关部门统计,只上海市区域医疗信息平台,就已经覆盖了上海市38家三级医院以及3900万就诊居民,包含住院相关病历、医学影像图像文件、健康档案、患者基本信息、就诊信息、医保结算等7 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究医疗卫生数据[39],并且这些数据量还会持续增加,为医院的数据集成、存储、使用等应用带来了紧张。在规模巨大的疾病医疗诊断资料、临床实验资料以及居民健康档案等形成了医疗大数据的局面。首先医疗数据规模巨大,比如一个基因组序列文件都能达到750MB,一个CT图像都包括150MB数据,还有标准的病理图几乎接近5GB左右;再者数据结构复杂多样,医疗数据一般包含半结构化、结构化以及医疗影像等多种数据存储格式;另外医疗数据价值巨大,如今数据就是资源,医疗数据不仅关系到全球疾病防控,也关系到新药品研发和恶性疾病的攻克能力。当然,除了医疗数据所具有的大数据的特征,还具有不完整、不一致性、不平衡性、缺乏数字特征以及冗余性和时间性等医疗领域特有的数据特征,这将在本文数据预处理章节详细介绍。根据医疗资料的这些特性,决定医学数据的多元性和复杂性。而面对这种庞大复杂多样化的医疗数据,传统的数据存储处理方式很难满足现今大数据背景下的信息发现,可以说我们已经进入了“医疗大数据时代”。由于数据量的急剧增加,越来越多的数据需要处理,如果单纯依赖单机很难从庞大的数据中挖掘出有效信息,由于内存的消耗,存储空间有限,以及算法性能等原因,常规的数据处理和数据分析工具已很难进行海量数据挖掘分析。因此,针对海量的医疗大数据场景,一种有效的解决方案就是采取分布式存储与计算,以及高性能算法优化的数据挖掘处理能力。目前,常见的基于分布式数据计算框架主要有Hadoop平台和Spark平台。Hadoop是基于Java语言开发的分布式计算平台,其分布计算框架MapReduce和分布式文件系统HDFS已被证明可以成功在计算机集群上实现并行分析计算,从而处理海量数据。而spark作为后起之秀,随着Spark不断成熟和完善,以其RDD模型的强大表现能力,逐渐形成了一套自己的生物圈。Spark是基于mapreduce算法实现的分布式计算,拥有HadoopMapReduce所具有的优点,但和MapReduce最大不同在于Spark是基于内存的迭代计算,即Spark的Job处理的中间输出和结果可以保存在内存中,从而不再需要读写HDFS,除此之外,一个MapReduce在计算过程中只有map和reduce两个阶段,而在spark的计算模型中,可以分为n个阶段,在处理完一个阶段后,可连续处理下面多个阶段,而不是只有两个阶段。因此Spark能够更好地适用于机器学习和数据挖掘。1.3.3医疗卫生大数据的医学意义随着医疗电子化建设不断加快,医疗健康进入了“大数据时代”。大数据被称为“未来的新石油”,对经济发展和科技创新带来了深远的影响,正在不断改变人类的工作、生8 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究活和思维方式等,同时也在医疗卫生领域也迎来了其潜在的发展价值,对医疗卫生领域的科研、教学、管理、诊疗等方面都有其重要的作用。在疾病预防方面,医疗大数据能够让研究者比以往任何时间段都更加了解其健康和影响因素。据估计[40],医疗服务提供者只能测定约10%—15%的健康影响因素,而剩下85%—90%的影响因素,包括遗传因素、健康行为、社会和自然经济环境等都没有被测定。而大数据能够把传统的健康信息化数据(如医疗诊断记录,家族史等)与其他方面的个人数据(如文化教育、娱乐情况、工资情况、生活习惯等)联系起来,通过大数据分析技术对健康风险因素进行比对关联分析。同时,利用医疗大数据能够将临床信息和医疗系统之外的数据资源联合起来,能够显著提高健康和医疗服务。而且,通过基于这种医疗数据能够直接对最适宜患者人群进行早干预措施。现阶段,有些设施能够通过大数据缝隙技术将病情预测提升到新的水准。比如Asthmapolis公司研发了一种追踪器,通过记录哮喘患者对吸入器的使用情况,将信息传输到数据库,从而了解团体及个人。人群的流行趋势。同时,这些数据还能够结合疾病预防控制中心的哮喘危险因素数据,可以帮助患者采取个性化治疗和预防手段。在疾病治疗方面,大数据可以协助医生为病人提供有效高效低成本的诊疗方式。比如,IBM公司曾与安大略理工大学的麦格雷戈博士的研究团队合作,就软件对患者信息进行即时监测处理,实现对早产儿的病情诊断,在早产儿身体发出感染信号之前,系统就能在距其24小时之前监测出显著异常。同时在医药研发方面,医疗大数据不仅可以提高制药公司研发效率,促进更好疗效药物的研发,而且能够改善治疗措施,缩短药物上市时间,增加临床试验的成功率。无疑医疗大数据对未来医疗健康卫生领域有着巨大的推动力和影响力,它可以发现影响健康的危险因素,能够促进医疗新发现,削减财政开支,并且能够优化治疗结果,从而实现个性化医疗和智慧医疗。1.4本文贡献和创新本文贡献有以下几点:(1)从海量医疗数据中提取有关慢性心血管疾病事件和心血管功能损害引起的危重病症事件这两类事件的三种不同预后严重病症的相关患者,包括脑卒中、心力衰竭和肾功能衰竭,并融合了人口统计信息、临床就诊信息,随访信息和个人体检信息等数据资料。(2)基于Spark大数据处理平台,运用数据挖掘技术对海量医疗数据存在的不一致性、冗余性、不完整性以及噪声和错误等数据问题进行数据预处理。9 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究(3)基于医疗数据的不平衡性,即患病人群样本数远少于健康人群样本数,采用分层抽样技术,将不平衡数据集转化为平衡数据,并使用z-score规范化,将数据转换为适合数据挖掘的可用形式。(4)应用数据挖掘算法Logistic回归、朴素贝叶斯以及支持向量机基于三组不同预后严重病症数据,分别建立3年时长的风险预警模型,实验结果表明,脑卒中、心力衰竭及肾功能衰竭风险预警模型相比以往传统模型预测效果都要好。(5)应用卡方检验,以P-Value<0.05为临床参考标准,筛选出符合临床意义的特征属性。利用SVM-RFE特征选择算法选取最优特征子集,降低存储空间并简化和优化模型,实验结果表明,在特征空间显著维数降低情况下,选择的特征子集保证了与全临床特征模型情况相近的分类性能。(6)基于慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件,我们筛选出相关预后严重病症(脑卒中、心力衰竭、肾功能衰竭)主要的风险因子,这对相关预后严重病症针对性预防具有指导性作用及实际意义。本文创新点主要体现在二个方面,首先,传统心血管疾病的研究大多基于实验设计,选定人群和探索性发现已设定可能风险因子建立风险预警模型,这对风险因子的发现有一定的局限性。而本文研究不同于传统医学方法,而是建立在深圳市历史医疗大数据基础上,以高血压人群为研究对象,汇聚医疗诊断病历、人口信息、体检信息等数据资料,全面分析了临床收集的诊断症状,建立了慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件的三组不同预后严重病症(脑卒中、心力衰竭和肾功能衰竭)的风险预警模型,这是目前运用医疗大数据,通过数据挖掘技术,开启心血管疾病研究的新视角,具有重大意义。另一方面,我们结合Spark分布式计算框架,利用MLlib库建立相关病症风险预警模型,实现风险预警模型并行化训练,并且比以往风险模型都有更好的预测效果,其中AUC值、准确率和灵敏度都有一定的提升,具有实际应用价值。1.5本文研究内容及组织结构本文基于深圳市历史医疗数据,面向区域医疗和公共健康大数据处理分析及示范应用项目研究课题,研究内容主要包括,以高血压病人为研究对象,结合Spark大数据处理平台,从海量医疗数据中抽取相关预后严重病症(脑卒中、心力衰竭和肾功能衰竭)人群和健康高血压人群分别作为实验组和对照组数据,融合人口统计学信息、个人体检10 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究信息、医疗就诊记录以及随访信息等医疗数据资料,利用数据挖掘技术对这些海量医疗数据进行预处理,然后通过卡方检验选取符合临床医学意义的特征,从而建立有关慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件三种预后严重病症的3年时长风险预警模型。采用SVM-RFE特征选择算法实现模型优化和简化,最后对具体模型做进一步的模型分析和单变量分析,发现有关病症的主要风险因子。本文分为六个章节,第一章介绍心血管疾病研究背景与意义、国内外研究现状以及大数据挖掘在医疗的应用研究情况;第二章主要介绍Spark生态系统组件及运行原理和数据挖掘理论知识,包括三种分类算法、特征选择方法、模型评估指标及模型评估方法等。第三章主要阐述数据来源、数据抽取、以及数据预处理过程,包括数据清洗、数据变换、数据集成和数据规约等。第四章主要介绍基于临床特征和特征子集分别建立慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件三组预后严重病症的风险预警模型,具体分析了模型的评估结果和不同特征子集情况下,通过模型比较来选择最优子集,从而实现分类模型的优化和特征空间的降维,同时对最优子集的具体模型做了进一步的分析研究,探索相关预后严重病症的主要风险因子。第五章总结了本文研究的主要工作,并展望该项目研究的进一步工作方向。11 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究第2章Spark大数据平台及数据挖掘理论2.1Spark生态系统2.1.1Spark生态系统介绍Spark在2009年由加州大学伯克利分校AMPLab开发,是Apache软件基金会旗下的一个顶级开源研究项目[41],是发展最为迅速地分布式并行数据处理框架。相比与Hadoop,Spark提供了更上层的API,从Spark官网可知,Spark在内存运算上,同样的算法速度是Hadoop的100倍,即使在磁盘上运行也是Hadoop的10倍。Spark内核采用Scala语言实现,能够与Scala紧密结合,而Scala采用面向对象和函数式编程的编程特点,所以Scala可以轻松地操作分布式数据集。Spark的完整生态圈称为伯克利数据分析栈(BDAS),而BDAS涵盖支持流计算框架SparkStreaming、分布式机器学习库MLlib以及结构化SparkSQL查询、并行图计算框架GraphX等组件,如图2.1所示。SparkSQLStreamingMLlibGraphxDataFrameSparkCoreAPISparkCoreAPIRSQLPythonScalajava2.1Spark生态系统组件图与其他大数据处理平台不同之处在于,Spark是基于统一的RDD实现,能够以相同的方式来处理不同的大数据场景情况,包括SparkSQL、MachineLearning以及GraphX等。这种通用的编程抽象,也正是Spark迅速发展的原因所在。下面对Spark不同组件,做一个简单的介绍:(1)SparkSQL是支持大数据上的SQL或者Hive查询语言,并提供了DataFrame的编程抽象来充当分布式SQL查询引擎,从而用于结构化数据计算。(2)MLlib是分布式机器学习库,它提供了丰富的算法,包含回归、分类、协同过12 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究滤、聚类等算法的集群运算。(3)SparkStreaming支持对流数据的实时处理,并提供了丰富的API用于流计算,进而实现大规模的流数据处理。(4)GrapX是图计算库,用于执行并处理图的并行操作。2.1.2Spark基本原理从根本上讲,Spark所有的应用程序都是由SparkContext和Executor两部分组成。其中SparkContext作为应用程序运行的唯一通道,而Excutor负责任务的执行。具体来说,当SparkContext进行初始化时,Spark就会创建两个模块,分别是任务调度模块TaskScheduler和作业调度模块DAGScheduler。作业调度模块是建立在任务阶段之上的一种高层调度模块,它能够为每个Spark作业划分出具有依赖关系的多个调度阶段,然后对每个阶段建立一组特定的任务,之后以任务组的方式提交,这时任务调度模块接受并执行该任务组,同时任务调度模块负责任务的启动、汇报和监控等任务运行情况[42],如图2.2所示。图2.2Spark工作运行框架上述框架图部分术语解释如下:Application:Spark用户编写的Driver应用程序。ClusterManager:集群资源管理的外部服务。其中Spark上主要有三种集群资源管理器,分别是Standalone、Mesos、Yarn等,而Spark自带的Standalone对集群资源管理绝大部分需求都能满足。Worker:集群中运行Application代码的结点。Executor:Application应用程序在Worker结点上的一个进程,主要执行具体的Task,13 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究且负责数据在磁盘或内存的存储。Task:Excutor执行的工作单元,也是运行Application应用程序的基本单位。若干个Task构成一个Stage,并且TaskScheduler负责Task的管理和调度。Job:由若干个Task构成的,SparkAction触发生成,且一个Application能够产生多个Job。Stage:由若干个Task构成,即一个Task组称为Stage。而DAGScheduler负责Stage的调度和划分。而Spark在所有运行工作中,Spark的核心编程都是基于统一抽象概念RDD之上。RDD正是Spark提出的分布式内存抽象数据结构,称为弹性分布式数据集(ResilientDistributedDatasets),是Spark的核心逻辑数据结构,也是整个Spark架构的基础。它提供了一种共享且高度受限的内存模型,Spark通过RDD数据结构实现了数据的输入与处理操作,具有以下几个特点:(1)RDD实质是一个只读的分布式数据集合。即RDD能够包含若干个分区,而单个分区看做一个DataSet片段。(2)RDD能够相互依赖。如果RDD的分区至多被一个ChildRDD使用,则称窄依赖。而若多个ChildRDD分区都能够依赖,叫做宽依赖,如图2.3所示。(3)具有低延迟性,因为RDD将数据存储在内存中,所以具有低延迟性的特性。(4)具有容错机制,若某一数据子集在计算中失败,能够针对该数据子集进行重新调度,达到失败后自动重建目的。(5)RDD可序列化,即当内存不足时可自动降级为磁盘存储模式,把RDD存储在磁盘上。14 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究图2.3窄依赖和宽依赖RDD的操作分为两类:Transformation和action。针对Transformation操作,如map、filter、flatmap等操作,无论执行多少次Transformation操作,RDD都不会真正的执行运算。并且每执行一次Transformation就会产生一个新的RDD,这些RDD之间通过Lineage产生依赖,而只有当Action被触发时才会执行。也正如上述工作流程所介绍的,由Action返回的结果把RDD持久缓存起来,并且会以Job的形式提交给计算引擎执行操作运算,通过计算引擎将Job分解为若干个Stage,Stage则被细化为Task,并分发到相应的计算节点上,开始真正的处理。2.1.3SparkSQLSparkSQL是Spark的一个组件,主要用于结构化数据的计算。自Spark1.3.0版发布,SparkSQL引入了DataFrame,替换掉了SchemaRDD的功能。而DataFrame是基于RDD为基础的分布式数据集合,一般对DataFrame理解为一张关系型数据表,类似于R/Python中的dataframe,因此SparkDataFrame中每一列都有类型和名称。这使得SparkSQL能够理解更多的结构信息,从而对DataFrame背后的数据源和操作于DataFrame之上的转换都进行了特定的优化,从而达到运行效率的大幅上升。其中DataFrame可以由hive数据库中表、结构化数据格式文件以及现有RDD和外部数据库等创建而成,并且在Spark中DataFrame的API支持Java、Scala、Python、R语言等。DataFrameAPI是基于Python/R的dataframe设计而来,在Spark参与大数据分析处理中具有显著的优势:(1)支持的数据量有KB级上升为PB级。(2)支持多种存储系统和多种数据格式。15 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究(3)能够利用SparkSQL的Catalyst优化器优化并生成执行代码,方便开发者写更少代码,并且加快运行速度。(4)支持SparkDataFrame与PandasDataFrame转换。(5)拥有丰富的操作函数,类似RDD中的操作算子。(6)能够被注册为数据表,从而支持SQL语言的操作。2.1.4SparkMLlibMLlib是Spark中可扩展的分布式机器学习库,能够支持多种分布式数据挖掘算法,包括分类、聚类、回归、降维、协同过滤等。如下图所示:(1)分类:MLlib库目前支持Logistics回归、支持向量机SVM、决策树分类等,还包括一些L1和L2正则化变体。(2)聚类:MLlib库目前支持LDA主题模型算法以及Kmeans聚类算法等。(3)回归:MLlib库目前支持岭回归、线性回归等。(4)关联规则:MLlib库目前支持FPGrowth关联规则挖掘算法。2.2数据挖掘理论2.2.1Logistic回归Logistic是机器学习中最经典的分类方法,本质上是利用sigmoid函数归一化的线性回归,从而减小预测范围,将预测值限定为[0,1]区间的分类模型。函数F(x)为Logistic函数,f(x)为其密度函数,其中F(x)是以点(μ,0.5)为中心对称的S形曲线,如图2.4。公式如下:1FPxXx(2-1)x1exp()xexp()fx()Fx()(2-2)x(1exp())二项式Logistic回归模型条件概率分布:exp(wxb)PY(1|)x(2-3)1exp(wxb)1PY(0|)x(2-4)1exp(wxb)16 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究nn其中,xR为输入向量,Y0,1为输出目标值,wR和bR为参数,w成为权值向量,b成为偏置,wx是w和x的内积。为了更好说明情况,将输入向量和权值向量扩充,如下所示:(1)(2)()nTwww(,w,,)b(2-5)(1)(2)()nTxxxx(,,,1)从而Logistic回归模型如下:exp()wxPY(1|)x(2-6)1exp()wx1PY(0|)x(2-7)1exp()wx图2.4Logistic分布的密度函数fx()与分布函数Fx()不妨记Logistic函数,即sigmoid函数为gz(),则1gx(),zR(2-8)1exp()z可以看出,令zwx,可得P(Y1|x)g(z),从而我们可知,Logistic回归本质上是线性回归,并且线性函数wx的值越接近+,概率值就会越靠近1;而当wx的值接近-,概率值就会靠近0。n给定训练数据集T(x,y),(x,y),,(x,y),其中xR,y0,1,根据1122NNiiLogistic回归模型得到对数似然函数,即NL(w)yilogP(Y1|xi)(1yi)log(1P(Y1|xi))i1(2-9)Nyi(wxi)log(1exp(wxi))i1对Lw()求极大值,即得w的估算值。从而问题变成求解对数似然函数为目标函数的最优17 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究化问题。本文采用拟牛顿法L—BFGS算法,下面介绍一下L—BFGS算法。我们知道,牛顿法需要计算Hesse矩阵的逆矩阵。而这一计算比较复杂,我们需要构造近似矩阵(1)k(1)kBBx()取代与一阶导数的关系。设第k次迭代后,目标函数fx()在点x进行k1二阶Taylor展开,得到:(k1)(k1)T(k1)fx()fx()fx()(xx)1(2-10)(k1)T2(k1)(k1)(xx)fx()(xx)2由此可得:(1)kk2k(1)(1)fx()fx()(fx)()xx(2-11)从而:()kk(k1)kk2(1)()(1)fx()(fx)()(fx)xx(2-12)记kkk(1)()xx(2-13)()kkk(1)()yfxfx()()有()kk2k(1)()yfx()(2-14)令2(1)kBfx()(2-15)k1从而()kk()yB(2-16)k1称公式2-16为拟牛顿条件。通过拟牛顿条件,在每次迭代中选择更新矩阵B:k1BBB(2-17)k1kk令BBPQk1kkk(2-18)()k()k()k()kBBPQk1kkk所以我们得到BFGS算法矩阵B的迭代公式:k118 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究()kk()T()kTyyBBkkBB(2-19)kk1()kkTTk()k()()yBk2.2.2朴素贝叶斯算法朴素贝叶斯算法是一种基于贝叶斯原理与特征条件相对独立假设的简单分类方法。对于给定训练集Txy(,),(,xyxy),(,),利用特征相对独立假设学习输出和输入1122NN的联合概率分布,之后根据输入的新样本x,通过贝叶斯定理求出后验最大概率y。n设输入样本集R,输出类标记集合=cc12,,ck,给定X是输入样本集上随机变量,Y是输出类标记集合的随机变量,且定义Pxy(,)为x,y的联合分布。我们知道朴素贝叶斯算法利用训练样本集来学习联合概率分布P(x,y),那么具体地,我们会学习先验概率分布:P(Yc),k1,2,Kk同时条件概率分布:(1)(1)(2)(2)()()nnPX(|)(xY,,cPXxXxXxYc|)(2-20)kkkK1,2,由特征条件独立性假设,有(1)(1)(2)(2)()nnPX(|)(xY,,|)cPXxXxXxYckkn(2-21)()jj()PX(|)xYckj1尽管朴素贝叶斯带着这些简单化和朴素的思想假设,但是朴素贝叶斯仍能够在复杂的现实情形中取得不错的效果。在朴素贝叶斯分类时,对于给定输入样本x,学习到模型后验概率分布,由贝叶斯公式可得:PX(|)(xY)cPYckkPY(|)cXx(2-22)kkPX(|)(xY)cPYkkc由公式2-21和公式2-22结合,得:()jj()PY()(|)ckkPXxjYcPY(|)cXx(2-23)k()jj()kPY()(|)ckkPXxjYckK1,2,从而朴素贝叶斯分类器可表示为:19 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究()jj()PY(ckk)jPX(x|Yc)yfx()argmax(2-24)()jj()ckPY(c)PX(x|Yc)kkkj注意到,在上式中分母对所有类标都是相同的,所以:()jjyPYargmax(cPXxY)c(|)kkj(2-25)ck2.2.3支持向量机支持向量机(supportvectormachines,SVM)算法的基本模型是定义在特征空间上最大间隔的线性分类器,引入核技巧解决非线性问题,从而使它成为实质上的非线性分类器。支持向量机的学习策略是寻找使不同类样本间隔最大化的分离超平面,进而抽象为解凸优化问题,等同于正则化的合页损失函数最小化问题[43]。支持向量机从解决线性问题到非线性问题,由简至繁层层构建不同目标函数,对线性可分数据集,利用硬间隔最大化学习线性可分支持向量机;对于近似线性可分数据集,利用软间隔最大化学习线性支持向量机,即通过引入惩罚参数C和松弛变量,加大对错误分类的惩罚力度;对于非线性可分数据,主要使用核技巧通过非线性映射将输入映射为特征向量,从而学习得非线性支持向量机。由于大多数情况下,我们解决的问题都是非线性可分,因此本节将针对非线性支持向量机详细阐述。n给定训练样本Txy(,),(,xyxy),(,),其中xR,对应类标签1122NNiyi1,1,1,2,iN。由核技巧定义了核函数,设非线性支持向量机中,核技巧是解决非线性问题的主要途径。设H为希尔伯特空间,如果存在从到H的映射():xH从而使所有xz,,有函数Kxz(,)满足条件Kxz(,)x()z()(2-26)Kxz(,)称为核函数,()xz()是()x与()z的内积,()x叫映射函数,。常用的核函数有高斯核函数(Guassiankernelfunction)、多项式核函数(polynomialkernelfunction)以及字符串核函数(stringkernelfunction)。其中高斯核函数又称径向基核函数(Radialbasisfunctionkernel),简称RBF核,公式如下所示:2xz22K(x,z)e(2-27)非线性支持向量机算法就可以表述如下:n输入:训练数据集T(,),(,xyxy),(xy,),其中xR,对应类标签1122NNiyi1,1,i1,2,N;20 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究输出:分类决策函数首先,选取恰当的惩罚参数C和核函数Kxz(,),构造目标函数求解最优化问题NNN1min(,)ijijijiyyKxx2iji111(2-28)Nst..y0,0Ci,N1,2,iiii1求得最优解****T(,,,)12N**然后选择的一个正分量0C,计算出jN**byyKxxiiiij()(2-29)i1最后,构造出分类决策函数:N**fx()sign(())yKxxbiii(2-30)i12.2.4特征选择算法本文主要介绍两种重要的特征选择算法卡方检验和SVM-RFE算法。2卡方检验是统计学中的假设检验,运用卡方统计量衡量属性特征和类之间的相关性,通常运用在医疗实验数据统计分析求P—Value值。卡方检验假设事件A和B相对独立,在我们二分类情况,A和B可认为是特征和类。首先假设字段特征A和类B没有相关性,之后计算每个字段特征与类之间的卡方统计量,卡方公式如下:k2()ffoc=(2-31)i1fc其中f表示实际出现的次数,f表示由假设理论期望次数。卡方统计量是表示观察值Noc与期望值E的偏离程度,如果值越大,意味着特征和类之间的独立假设不成立,即特征与类有较强的相关性,从而计算类与每个特征的卡方统计量,然后由自由度计算P-Value值,最后依据P-Value值从小到大排序,筛选低于给定阈值的特征,一般阈值选取0.05。SVM-RFE算法依据支持向量机(SVM)在训练模型时生成的权值向量w来构造排序系数,每迭代一次就会删除排序系数最小的属性特征,一直到最后一个属性特征,从而达到所有属性特征递减排列,其中先筛选出的特征排序越往后,特征具有越小的重要性,而后筛选出的特征代表的重要性越大。SVM-RFE作为有监督序列的后续选择算法,在线性分类器中,各特征以目标函数具有的判别信息量作为排序系数,也就是以权值向21 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究量w对分类超平面ywxb的贡献来构造特征排序表。其算法流程如图2.5所示。初始特征集合分类器特征权重移除最小权重特征否剩余特征数为1是特征排序号图2.5SVM-RFE算法流程图本文SVM-RFE算法采用经典的线性核函数,其排序系数如下:2Ranki()w()il(2-32)wyxiiii1根据特征排序情况能够定义一组特征子集FFF,利用支持向量机(SVM)预测12n精度评估这组子集的效果,从而获得最优特征子集,其中Fi(1,2,n)表示从已排序的i全特征中选出最靠前的i个特征作为子集,使得每个子集都含有相对重要信息的特征,从而选择最优子集来设计分类器。2.2.5模型评价指标与评估方法选择分类算法进行模型训练,模型训练根据需要将数据划分为训练数据和测试数据,其中训练数据用来学习模型,测试数据用来预测模型的有效性以及衡量模型的优劣性。针对分类模型的评价指标,本文主要采用准确率(accuracy)、精度(Precision)、特异性(Specificity)、灵敏度(Sensitivity)、AUC(AreaUnderRoc)、F1度量(F-Measure,本小节将详细介绍以上评价指标。首先,给出模型评价中常见的符号定义:FP(falsepositive)表示实际是负类而被错误预测为正类的样本数;22 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究TP(truepositive)表示实际是正类且正确预测为正类的样本数;FN(falsenegative)表示实际为正类而被错误预测为负类的样本数;TN(truenegative)表示实际为负类且正确预测为负类的样本数;准确率(Accuracy)Accuracy指对于给定的测试数据集,通过分类算法能够正确分类的样本数与总样本数之比,公式如下所示:accuracy(TPTN)/(TPTNFPFN)(2-33)精度(Precision)Precision指分类器预测为正类样本数与实际为正类样本数的比值。精度越高,分类器的假正类错误率就越低,公式如下所示:precisionTPTPFP/()(2-34)特异性(Specificity)和灵敏度(Sensitivity)特异性(Specificity)与灵敏度(Sensitivity)是二分类问题中常用的模型评价指标。其中,Specificity也称真阴性率(truenegativerate),指在所有实际为负样本中,被正确预测为负样本的比例。Sensitivity也称真阳性率(truepositiverate)或者召回率(recall),指在所有实际为正样本中,被正确预测为正样本的比例,二者的公式如下所示:SpecificityTNTN/()FP(2-35)SensitivityTPTPFN/()(2-36)F1度量(F-Measure)F-Measure是一种精度和召回率相结合的度量指标,即precision和recall加权调和平均,公式如下所示:FMeasurerecallprecision(2**)/()recallprecision(2-37)AUC(AreaUndertheCurveofROC)AUC指ROC曲线下的面积。ROC曲线,又称接受者操作特征曲线(receiveroperatingcharacteristiccurve),最早在信号检测中出现,用于选取最优的信号侦测模型。由于ROC分析不受成本/收益的影响,所以能够给出客观中立的评价,之后在数据挖掘领域和机器学习中都得到了不错的应用。其中,ROC曲线的纵坐标是分类算法的真阳性率(Truepositiverate,TPR),横坐标是假阳性率(Falsepositiverate,FPR),公式如下所示:TPRTPTPFN/()(2-38)FPRFP/(FPTN)(2-39)23 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究如果分类模型得到的目标决策值是判断样本的正类或负类概率,那么我们就可以选定一个概率阈值,通过连线不同阈值下得到一系列的点而成。计算ROC曲线下的面积,得AUC值,如图2.6所示。ROC曲线有两种极端现象,一是所有样本都分类正确,AUC=1,另一种分类完全没有发挥作用,等价于随机分类,AUC=0.5,但正常情况是ROC曲线介于两者之间,当AUC值越接近1,分类正确率就越高,模型也越好。当样本非常不平衡情况下,分类模型准确率将会受到样本分布的严重影响,比如负类样本是正类样本数量的9倍,当模型都预测为负类,准确率也可以达到90%以上,但这显然不是我们期望的。而AUC值不会受到数据不平衡的影响,反映客观,也是本文研究最主要的评估指标。图2.6ROC曲线下的面积AUC本文使用留出法(hold-out)作为模型评估方法,把数据集D按比例划分为两个互斥的数据集合,一般较多一方作为训练集S,较少一方作为测试集T,并满足D=S∪T且S∩T=∅。在S上进行训练模型,T作为评估测试其误差。然单次使用留出法评估的结果存在不稳定性,一般若干次随机划分,且重复k次试验评估后取其平均值作为留出法的评估结果。24 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究第3章医疗数据处理数据处理是数据挖掘最重要的环节,本文依据大数据特点,以Spark平台为主进行交互查询和数据分析,Oracle数据库作为辅助探查与数据验证。本文数据处理主要以心血管疾病和心血管功能损害引起的危重病症方面作为研究目标,以医学知识为指导,丢弃一些与挖掘目标毫不相关的字段属性,从而为数据挖掘提供准确、干净、更有效的数据,减少挖掘的数据处理量,提高知识发现的准确度和数据挖掘的效率。3.1数据来源本文课题研究数据来源于深圳市68家公立医院(含所有三甲医院)和600多家社康医院,总共覆盖全市1450万居民信息健康档案,历史数据一共涉及1600万份,总计超过30亿条医疗数据记录。作为面向区域医疗和公共健康大数据处理分析及示范应用项目下一阶段的课题研究,我们主要面向心血管疾病和心血管功能损害引起的危重病症,以高血压患者为研究对象,具体以慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件为主要研究内容,建立3年时长的相关预后严重疾病事件的风险预警模型。在研究项目上一阶段中,依据患者诊断临床表现、病理、病因和部位等特性,将疾病分门别类,完成了用3位和6位ICD编码方法表示的系统,其编码形式采用字母数字圆点相互组合的编码形式,编码部分结果如表3.1所示。本文基于研究项目上一阶段任务的基础上,实现数据整合,生成关于高血压患者的门诊ICD编码表,简称高血压门诊ICD编码表,本文主要的ICD编码情况见附录。表3.1ICD编码部分结果ICD编码同一ICD编码的若干疾病名称bit01霍乱、伤寒和副伤寒、白喉、百日咳、脑膜炎球菌感染、链球菌性败血症等bit02早期梅毒、晚期梅毒、淋球菌感染、其他性传播的衣原体疾病、软下疳等i12.00高血压性肾衰竭i12.904肾小动脉硬化症e10.1011型糖尿病性酮症酸中毒r09累及循环和呼吸系统的其他症状和体征25 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究根据具体研究内容,涉及医疗卫生数据主要包括居民档案信息、健康体检信息、高血压门诊信息、高血压登记信息以及高血压随访信息等,本文研究选取所需的目标数据表,以Oracle数据库为数据探查工具,明确数据表中具体人数、记录数以及字段情况,如表3.2所示。标准Oracle探查语句为:1)探查总记录数:selectcount(*)from[表];2)探查总人数:selectcount(distinct[个人唯一标识字段名称])from[表];表3.2目标数据表情况目标数据表人数记录数初始字段情况居民档案表461503467422个人唯一标识、性别、年龄、文化、婚姻、血型等29个字段健康体检表1095610755个人唯一标识、年龄、脉搏、体温、身高、体重等21个字段高血压个人唯一标识、组织机构、档案流水号、收缩压、舒张压、登记187114257137登记表日期、确诊日期等18个字段高血压个人唯一标识、组织机构、收缩压、舒张压、空腹血糖、随访日144597461607随访表期、症状名称、体质指数等23个字段高血压161964383054个人唯一标识、确诊日期、ICD编码名称共有3个字段人群表高血压门诊个人唯一标识、各类疾病发病日期及对应疾病ICD编码共有733162622162622ICD编码表个字段3.2数据抽取由高血压引起的预后严重病症,主要有冠心病、心率衰竭、肾功能衰竭、脑卒中、急性心梗等急性心血管疾病及心血管功能损失导致的危重疾病,本文主要以高血压患者发生预后严重病症事件进行研究,抽取三种预后严重病症,即脑卒中、心力衰竭和肾功能衰竭,其中脑卒中、心力衰竭病症属于急性心血管事件,肾功能衰竭病症属于心血管功能损失导致的危重病症事件。对以上事件,对涉及医学记录资料,运用相关医学背景知识,将不同病症归类划分,其中蛛网膜下出血(I60)、基底节出血(I61.004)、外囊出血(I61.006)、小脑出血(I61.400)、脑室出血(I61.500)、特指脑内出血(I61.800)、丘脑出血(I61.802)、脑出血(I61.900)、脑血管破裂(I61.902)、硬膜下出血(I62.000)、硬膜下血肿(I62.001)、慢性硬膜下血肿(I62.003)、硬膜外血肿(I62.101)、颅内出血26 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究(I62.900)、脑梗死(I63)、脑卒中未特指为出血或梗死(I64)以及急性脑血管病(I67.802)这17种病症的1种或者多种患病情况都划分为脑卒中病症;高血压心脏病伴心力衰竭(I11.000)、高血压性心脏病肾脏病伴心力衰竭(I13.000)、充血性心力衰竭(I50.000)、左心衰竭(I50.100)、心力衰竭(I50.900)、心功能不全(I50.901)、心功能I级(i50.902)、心功能II级(i50.903)、心功能III级(i50.904)、心功能IV级(i50.905)这10种病症的1种或者多种患病情况都划分为心力衰竭人群;高血压性肾衰竭(I12.000)、高血压性肾病(I12.900)、肾动脉硬化(I12.902)、肾小动脉硬化症(I12.904)、高血压性心脏病肾脏病伴心力衰竭(I13.000)、高血压性心脏病肾脏病伴肾功能衰竭(I13.100)、高血压性心脏病及肾脏病(I13.900)、急性肾衰竭(N17)、未特指的肾衰竭(N19)、2型糖尿病性肾病(E11.200)这10种病症中的1种或者多种患病情况都划分为肾功能衰竭病症,如果高血压患者预后没有诊断出包括心血管、代谢、神经、眼部疾病、肾、肺等方面的任何严重病症,则划分该人群为健康高血压人群。在数据抽取过程中,采用Spark的核心抽象数据集合Rdd的函数式操作编程和SparkSQL组件中DateFrame对象的结构化编程,并以SparkSQL语言实现数据的抽取任务。本文以高血压为研究对象,预后严重病症患者选取标准:选取高血压人群中高血压确诊日期唯一,且高血压确诊日期小于预后严重病症发病日期;健康高血压患者选取标准:选取高血压人群中高血压确诊日期唯一,且除去只3年内为健康高血压患者,即除去高血压患者最大随访日期减去确诊日期所得时间差小于等于3年的所有健康高血压人群。依据研究的预后严重病症(脑卒中、心力衰竭、肾功能衰竭)和健康高血压患者的选取标准,从高血压门诊表、高血压登记表以及高血压随访表给出的字段信息抽取出所研究的人群,并将预后严重病症患者作为实验组和健康高血压患者作为对照组,不同病症数据抽取情况如表3.3所示。表3.3不同病症样本初步情况人数实验组对照组病症脑卒中525751858心力衰竭71451858肾功能衰竭7965185827 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究3.3数据预处理现实世界数据一般存在许多问题,特别是医疗诊断数据,由于医疗数据其独有的特点,决定了在医疗数据处理过程中面临着诸多问题,如冗余性、不完整性、不一致性、不平衡性、缺乏数字特征以及时间性等。(1)冗余性:医疗数据量巨大,每天都会产生大量医疗诊断信息,其中可能包含无关紧要、相互矛盾、重复的信息记录。(2)不完整性:医疗数据大部分来源于医生记录系统,导致数据记录残缺和偏差,并且许多数据记录表达不确定性,特别是病案和病历,都会造成医疗数据不完整情况。(3)不一致性:不同医生习惯用词不一样,以及同一病症,有不同的名称命名。(4)时间性:患者在疾病发病、确诊、随访过程中都有一个时间进程。(5)不平衡性:通常情况下,对医疗数据采集的对象人群中,患严重病症患者只占整个人群很小一部分比例,如上文我们数据抽取过程中对照组和实验组不同人数之间的差距。(6)缺乏数字特征:医疗数据一大部分由语言和图像等描述,如病人所患病症我们用ICD编码表示后,建立ICD编码词袋库,用0、1稀疏矩阵来表示病人患病情况,其中0表示未患该疾病,1表示患有该疾病,从而将病人有关患病情况转换为向量。本文高血压门诊ICD编码表就是由此得出,只增加了所患病症相应日期,没有患病日期的我们用3000-01-01表示。因此,数据预处理对我们在知识探索过程中决定成功与否起关键作用,常常用掉数据挖掘工作的三分之二时间,但这对我们提高数据质量、发现知识以及做出决策至关重要,如图3.1表示数据处理过程。数据源1数据预处理数据源2数数数数数据挖掘据据据据清集变规洗成换约数据源m图3.1数据处理过程28 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究3.3.1数据清洗数据清洗目的主要解决原医疗数据集中存在的一人多条记录现象、清除重复数据、填充缺失值、识别异常值和错误值等。数据清洗原理,主要使用数理统计、预定义的清洗规则或数据挖掘等技术,将脏数据转化为符合数据质量需求的数据。数据清洗原理如图3.2所示:同一值不同的表示拼写错误不合法值脏数据命名习惯空值数理统计技术异常检测数据清理策略、规则数据挖掘技术重复处理满足数据质量要求的数据图3.2医疗数据清洗原理1)处理缺失值方法:①删除元组:删除元组法就是将存在遗漏信息属性的对象(元组、记录)删除,从而得到一个完备的信息表。这种方法在对象有多个属性缺失值、被删除的含缺失值的对象与信息表中的数据量相比非常小的情况下是非常有效的,但若信息表本来包含对象很少的情况时,删除少量对象就足以严重影响到信息表信息的客观性和结果的正确性。②人工填写缺失值:这个方法比较费时,特别是当数据集很大、缺失很多值时,该方法不具有实际的可操作性。③特殊值填充:将缺失的特征属性值用同一个常数替换。由于这种方法大量采用同一属性值可能会误导挖掘程序得到偏差甚至错误的结论。④平均值填充:将信息表中的属性分为数值属性和非数值属性来分别进行处理。如果空值是数值型的,就根据该属性在其他所有对象的平均值来填充该缺失属性值;如果缺失值是非数值型的,根据统计学中的众数原理,用该属性在其他所有对象的取值出29 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究现频率最高的值来补齐该缺失。⑤最近邻法填充:根据欧式距离或相关分析来确定距离具有缺失数据样本最近的k个样本,取这k个值加权平均来估计该样本的缺失数据。⑥使用所有可能的值填充:使用空缺属性值所有可能的属性取值填充,能够得到较好的补齐效果。但是,当数据量很大或者遗漏的属性值较多时,其计算代价很大。⑦回归:基于完整的数据集,建立回归模型,对于包含空值的对象,将已知属性值带入方程来估计未知属性值,一次估计值来进行填充。当变量不是线性相关或预测变量高度相关时会导致有偏差的估计。2)识别异常值①基于统计学方法检测:主要有散点图、四分位数展示法、基于分布的异常值检测、散点图等。②基于分类模型的检测:根据已有数据,建立模型,得到正常的模型特征库,然后对新来的数据点进行判断,从而认定其是否与整体偏离,如果偏离,那么这个就是异常值。③基于聚类方法:根据聚类结果找出异常类。本文有关医疗数据清洗过程,主要运用Spark大数据处理平台,以SparkSQL组件为主要处理工具,创建DataFrame对象,同时构造虚拟表结合HiveSQL进行数据查询和处理操作,对每个目标数据表进行数据清洗,其中居民信息表以yjy_person_info2016、健康体检表以yjy_pub_checkup_info2016、高血压登记表以yjy_dima_htn_reg2016、高血压随访表以yjy_dima_htn_followup2016、高血压门诊ICD编码表以htn_icd分别命名存储在分布式文件系统HDFS上。针对本课题医疗数据研究所存在的问题,我们采取相应的技术方法和处理原则如下:一、删除无关和空缺值严重字段针对实验组和对照组研究人群,与医学老师综合商议后,初步确定医学数据属性字段,并删除无关字段。对所选特征进行非空缺值数目统计(依据患者人数而非记录数),删除缺失率在30%以上的字段。因此,在居民信息表中保留字段有性别、年龄、血型;在健康体检表中保留字段有年龄、脉搏、呼吸频率、身高、体重、体质指数、腰围,在高血压随访表中保留字段有随访日期、随访方式、收缩压、舒张压、心率、空腹血糖、身高、体重、体质指数,在高血压登记表中保留字段有高血压管理级别、危险分层、收缩压、舒张压、确诊日期;高血压门诊ICD表保留所有字段。30 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究二、识别异常值和错误值由于医疗数据的特点,相关医疗数据目标表存在数据异常和错误现象,通过多种实验方法对比验证,采用基于统计方法的四分位数展示法检测异常数据相比其他方法更稳定和易于大规模数据操作。结合医学知识和本课题数据特点,与有关医学老师综合探讨后,我们给定患者属性取值范围,如表3.4所示。表3.4属性取值范围属性名称实验组对照组属性类型性别1/21/2标称年龄20—120取值正常15-120取值正常数值脉搏/心率40—130取值正常30-138取值正常数值收缩压100—225取值正常110-170取值正常数值舒张压50—125取值正常60-110取值正常数值高血压管理级别1/2/31/2/3序数危险级别1/2/31/2/3序数空腹血糖1—10取值正常3—15取值正常数值体质指数15—52取值正常15—40取值正常数值身高140—185取值正常140—185取值正常数值体重40—133取值正常35—112取值正常数值随访方式1/2/31/2/3序数其中性别1、2分别表示男、女;高血压管理级别1、2、3表示高血压1级(轻度)、高血压2级(中度)、高血压3级(重度);危险分层1、2、3表示低危、中危、高危;随访方式1、2、3表示门诊、家庭、电话。依据属性正常取值范围表,对不在取值范围内的错误值和异常值,均设置为空,作为缺失值填充。三、解决一人多条记录问题在现实医疗诊断过程中,经常存在一人多次就诊,从而导致一人多条记录情况。如血型、脉搏、身高、体重、收缩压、舒张压等属性都存在一人多个不同取值,其中血型31 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究属性大量存在一人多个取值,由于记录混乱而没有权威确定原则,与医学老师探讨后,可以不作为关键属性进行分析,进行删除以避免数据的模糊性与不确定性。对身高、体重、收缩压、舒张压等连续属性字段存在一人多值,我们利用统计学方法求平均值做为唯一取值。对高血压管理级别、危险级别等离散属性字段,排除不详取值,采用统计学众数做为唯一取值。另外,针对高血压随访表情况,对实验组数据优先提取随访日期距离发病日期最近且在发病日期之前的记录,这样每个患者对应唯一一条记录;对照组数据提取在确诊日期小于随访日期,且随访日期小于发病日期最大时间段和确诊日期之和,因此在筛选过程中,有些不满足的健康高血压患者会被剔除,导致对照组样本数减少,如表3.5所示。表3.5不同病症样本初筛选后情况人数实验组对照组病症脑卒中525735055心力衰竭71435055肾功能衰竭79618066四、填充缺失值相关目标数据表中存在大量数据类型值缺失,依据不同字段属性缺失我们选择不同的数值填充方法。对于离散属性字段,如性别,我们采用平均值填充法,非常符合医学数据的统计学意义。对于连续型属性字段,如心率、舒张压等,通过多种填充方法对比验证最近邻填充法处理效果最佳,且适合大规模数据集。而特别针对身高属性字段,根据相关文献资料,我们根据性别和体重在一定范围内取其平均数填充,符合男女标准身高情况,如表所示。表3.6不同性别及体重范围身高缺失值填充表体重范围40-55kg56-65kg66-75kg76-85kg96-115kg106-115kg性别填充男性身高填充值164.25167.45169.85175.50175174.8女性身高填充值156.18158.58160.02162.5161——32 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究3.3.2数据集成数据集成主要是融合多个数据源中的数据,物理地或逻辑地集成到一个统一的数据集合中,数据集成原理如图3.3所示。在数据集成时,有多个问题需要考虑。首先是模式集成和对象匹配问题。也就是多个数据源的等价实体的匹配识别问题。这需要根据每个属性的元信息判断不同数据源的属性是否是相同属性。另一个重要问题是冗余问题,检测冗余主要根据可用的数据度量一个属性能多大程度蕴含另一个属性。对于数值属性,通过计算属性A和属性B之间的相关系数来估计这两个属性的相关度r,即AB,NN()(aiAbi)i()BabNABii11r(3.1)AB,NNABAB其中N是样本个数,a和b分别是样本i中A和B的值,A和B分别是A和B的均值。ii和分别为A和B的标准差。如果r大于0,则A和B是相关的,值越大,相关ABAB,性越强。因此较高的r值表明A或B可以作为冗余而被删除掉。而对于离散数据,连AB,个属性A和B之间的连续通过卡方检验发现,由上章节详细介绍其原理,这里不再赘述。第三个重要问题是数据值冲突的检测与处理。比如现实世界中同一实体,不同的数据源属性值表示可能不相同,这需要人工识别判断处理。数据仓库数据集成处理数据源1数据源2数据源m图3.3数据集成原理针对医疗数据集成处理,主要将目标表中的数据以“个人唯一标识”字段为主键进行关联。利用相似度量方法和卡方检验删除冗余特征,删除全为0的ICD编码字段、ICD编码对应的所有日期字段以及完全严重病症的ICD编码字段,最终不同预后严重病症获得特征如表3.7所示33 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究表3.7不同预后严重病症筛选特征预后病症筛选特征情况性别、年龄、身高、体重、心率、体质指数、舒张压、收缩压以及若干诊断疾病ICD脑卒中编码共计186个特征属性性别、年龄、身高、体重、心率、体质指数、舒张压、收缩压以及若干诊断疾病ICD心力衰竭编码共计166个特征属性性别、年龄、收缩压、舒张压、空腹血糖、体质指数、心率、身高、体重、高血压管肾功能衰竭理级别、危险分层、呼吸困难、眼花耳鸣、肢体麻木、鼻出血、恶心呕吐、下肢水肿、头痛头晕、心悸以及若干诊断疾病ICD编码共计159个特征属性3.3.3数据变换数据转换将数据转换为适合数据挖掘模型可用形式。数据变换主要包括以下内容:(1)光滑:去掉数据的噪声,包括分箱,回归和聚类等。(2)聚集:对数据进行汇总或聚集。(3)数据泛化:使用概念分层,用高层概念替换底层或“原始”数据。(4)规范化:也叫归一化,将属性数据按比例缩放,使之落入一个特定的区间。(5)属性构造:构造新的属性添加到属性集中,以帮助挖掘过程。本文医疗数据有关数据变换主要涉及数据规范化、属性构造这两种情况。其中数据规范化,通过属性值按比例缩放,使之落入一个小的特定区间,如0.0-1.0。本文主要使用z-score规范化,通过求属性A的均值和标准差方法规范化属性A的取值,由如下公式:vvA()/(3-2)A其中,A和分别表示属性A的均值和标准差,v表示属性A取值,v表示规范化后AA的取值。另一个属性构造,是由给定的属性构造和添加新的属性,本文中存在文本数据字段,需要将文本数据转换为数值数据,从而满足模型要求。如高血压随访表中字段症状名存在文本数据格式,如图3.4所示。34 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究图3.4症状名称特征部分内容通过观察该特征内容发现,同一症状由不同名称命名,例如肢体发麻、四肢发麻等,因此通过分词归类,涉及8个症状名称,即呼吸困难、眼花耳鸣、肢体麻木、鼻出血、恶心呕吐、下肢水肿、头痛头晕、心悸,则新增这8个特征,对患者是否存在该病症,对应特征赋值1或0表示。3.3.4数据规约数据集一般都包含大量的特征,且样本数也非常巨大。数据规约是尽可能保持原始数据的前提下,最大限度地精简数据量。常见的数据规约方法:(1)数据立方体聚集:把聚集的方法用于数据立方体,是数据的多维建模和表示。(2)维规约:检测并删除不相关、弱相关或冗余属性,常见方法有主成分分析等。(3)数值规约:用较小的数据表示数据,常见方法有直方图、聚类、抽样等。(4)离散化和概念分层生成:通过将属性值域划分为区间,减少给定连续属性值的个数,让区间的标记替代实际的数据值。本文数据规约主要涉及两方面:维归约和数值规约,分别针对原始数据集的记录和特征。维归约主要利用卡方检验和SVM-RFE进行特征选择,详细操作过程见第四章。数值规约主要运用抽样技术,因为它能够使得小得多的样本子集表示大型数据集。最常用的抽样方法有4种,包括无放回简单随机抽样、有放回简单随机抽样、聚类抽样、分层抽样。本文实验组和对照组数据样本量相差甚远,为避免数据不平衡性,对对照组数据进行分层抽样。分层抽样原则,依据实验组年龄性别分布比例,从对照组中抽取出与实验组相当的样本数量。35 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究第4章风险建模与评估基于慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件,建立3年时长相关预后严重疾病事件的风险预警模型。为了更好的进行风险预测,本文主要利用SparkMllib库,采用Logistic回归、朴素贝叶斯以及支持向量机这三类分类模型算法,分别对以上两类事件建立风险预警模型。通过参数选择,模型比较选择最优的分类预警模型,最后基于Logistic回归模型,根据特征权重选择主要的影响风险因子。4.1数据集描述本文针对慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件,以高血压患者为研究人群,通过数据挖掘预处理部分,从海量医疗诊断记录中提取出三组数据集,包括脑卒中、心力衰竭、肾功能衰竭,其中脑卒中、心力衰竭属于急性心血管事件,肾功能衰竭属于心血管功能损失导致的危重病症事件。在生物医学研究中,以P-Value<0.05作为临床意义的标准,本文使用卡方检验筛选出符合临床意义的特征属性,具体数据集情况如表4.1所示。表4.1数据集情况预后严重病症实验组样本数对照组样本数全特征数临床特征数脑卒中52575296186130心力衰竭71471816694肾功能衰竭796808159784.2建立风险预警模型本文主要运用Logistic回归、朴素贝叶斯以及支持向量机这三类分类模型算法,分别对慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件共三组数据集分别建立风险建模。采用SparkMLlib库进行以上算法实验,对每组数据集,分为训练集和独立测试集,训练数据的比例占70%,测试数据的比例占30%。利用十倍交叉验证的方法对训练集进行参数调整,选择最优的参数,然后利用独立测试集进行模型评估。在SparkMLlib库中,本文主要利用LogisticReressionWithLBFS类建立Logistic回归模型,NaiveBays类建立贝叶斯模型以及SVMWithSGD类建立支持向量机模型,并统一使用train函数训练模型,predict函数测试模型。36 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究4.2.1慢性心血管疾病与急性心血管事件模型研究慢性心血管疾病与急性心血管事件,我们筛选出与该事件相关的二种预后严重病症脑卒中和心力衰竭,以最终临床特征数据为标准分别命名stroke和heartfailure数据集。采用留出法,对数据集按7:3划分为训练集和独立测试集,利用训练集寻找最优参数并确定最终模型。如此随机重复30次实验进行模型评估求其平均值作为模型评估结果。本文采用Logistic回归、朴素贝叶斯以及支持向量机分别建立风险预警模型,表4.2列出了stroke数据集的分类模型结果,结果显示SVM和Logistic回归的AUC值达到0.86,Accuracy达0.78以上,都高于朴素贝叶斯分类模型,其中Logistic回归在Sensitivity值上优于其他二种分类模型。表4.3列出了heartfailure数据集的分类模型结果,结果显示,朴素贝叶斯、Logistic回归、SVM的AUC值都在0.92以上,Accuracy值在0.85以上,且三种模型相对稳定,变化不大。其中SVM在Sensitivity值明显优于其他二种分类模型。在其他指标相对稳定情况下,Sensitivity评估指标医学意义表现重要,表明实际患病被正确诊断出来的百分比。图4.1和图4.2直观展示了stroke和heartfailure数据集在不同模型上ROC曲线图。表4.2stroke数据集上分类结果算法AUCAccuracyPrecisionSensitivitySpecificityF-MeasureNaiveBayes0.84070.76620.81990.68110.85000.7440SVM(linear)0.86340.78270.82650.71040.85380.7641Logistic0.86050.78200.81650.72250.84060.7665Regression图4.1stroke的ROC曲线37 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究表4.3heartfailure数据集上分类结果算法AUCAccuracyPrecisionSensitivitySpecificityF-MeasureNaiveBayes0.92200.85710.88840.81950.89510.8522SVM(linear)0.92460.85950.86790.85010.86950.8584Logistic0.92690.85290.89160.80480.90140.8456Regression图4.2heartfailure的ROC曲线本文采用SVM-RFE特征选择算法分别对stroke、heartfailure数据集选择最优子集,从数据集的全特征中依次选取10、20、30……,验证三种模型下不同特征子集的表现情况,对比每个模型的AUC及Sensitivity指标。表4.4和图4.3显示stroke数据集基于SVM-RFE特征选择算法在不同模型的结果,可以看出Logistic回归在选取含有70个特征子集时,AUC值能达0.85,与stroke全临床特征模型下表现效果靠近,说明SVM-RFE算法选择出的特征子集可以充分代表原全临床特征数据。表4.5和图4.4显示heartfailure数据集基于SVM-RFE特征选择算法针对不同模型的结果,可以看出,Logistic回归和SVM选出只含有50个特征子集的情况下,AUC值就能达到0.91以上,与heartfailure全临床特征模型下表现效果非常靠近,且Sensitivity值在SVM模型表现最好,达到0.8625,高于全特征情况下1个百分点,说明SVM-RFE算法选择出的特征子集可以充分地代表原全临床特征数据。38 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究表4.4stroke数据集基于SVM-RFE特征选择的AUC和Sensitivity结果NaïveBayesSVM(linear)LogisticRegressionSVM-RFEAUCSensitivityAUCSensitivityAUCSensitivity100.54180.20240.63440.30910.63580.3153200.57390.40650.79370.70580.75050.5450300.57520.57370.83410.71990.80610.5928400.57550.56180.81190.79630.82460.6421500.71560.57480.82900.71550.83300.6665600.72590.58550.84060.72260.85090.7129700.79860.66570.85110.69760.85790.7156800.78430.65570.86330.72010.85520.7170900.80750.66620.85030.71340.85680.72001000.80250.65600.85520.72110.85960.7056图4.3stroke基于SVM-RFE特征选择的AUC和Sensitivity结果曲线39 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究表4.5heartfailure基于SVM-RFE特征选择的AUC和Sensitivity结果NaïveBayesSVM(linear)LogisticRegressionSVM-RFEAUCSensitivityAUCSensitivityAUCSensitivity100.57890.55120.88770.85710.88660.8479200.64990.62870.88880.85460.89450.8520300.65460.61440.89930.86610.90140.8479400.71290.68560.89860.85570.90620.8450500.78810.73160.91280.86250.91400.8412600.82600.73920.91670.85580.92110.8288700.85010.74900.91640.85060.92250.8252800.85580.77710.92480.85190.92550.8372900.88070.78960.92280.86220.92630.8326图4.4heartfailure基于SVM-RFE特征选择的AUC和Sensitivity结果曲线显然,我们通过大数据挖掘方法,全面分析临床收集数据资料,相比传统医学实验研究,我们建立的脑卒中和心力衰竭严重预后病症的风险预警模型效果更好,高于现阶段相关研究的评估指标。如脑卒中,建立的Logistic回归和SVM模型的AUC值达到0.86以上,高于TeerapatKansadub等人建立脑卒中模型的最高AUC值0.769,高于Aditya40 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究Khosla等人建立5年风险预警模型最高AUC值0.777,且Sensitivity达0.71以上,远远高出LeZheng,YueWang等人1年脑卒中风险模型的0.41。同样对于心力衰竭严重预后病症,我们建立模型的AUC值都在0.92以上,Accuracy值在0.85以上,而KenneyNg等人建立的心衰早期预警风险模型,准确率最高只达0.83;FenMiao等人建立的1年短期心衰风险预警模型,模型评估AUC值只达0.712。4.2.2心血管功能损害引起的危重病症事件研究心血管功能损害引起的危重病症事件,我们筛选出与该事件相关预后严重病症肾功能衰竭,以最终临床特征数据为标准命名renal数据集。采用留出法,对数据集按7:3划分为训练集和独立测试集,利用训练集寻找最优参数并确定最终模型。如此随机重复30次实验进行模型评估求其平均值作为模型评估结果。采用Logistic回归、朴素贝叶斯以及支持向量机对renal数据集分别建立风险预警模型。表4.6是肾功能衰竭病症在不同模型的结果,可以看到,三组模型AUC值都在0.90以上,准确率在0.83以上,其中Logistic回归相比优于其他两个模型,且Sensitivity达0.8019。renal数据集在不同模型上绘制ROC曲线,更直观的表示如图4.5所示。表4.6renal数据集上分类结果算法AUCAccuracyPrecisionSensitivitySpecificityF-MeasureNaiveBayes0.90450.83020.85200.79620.86380.8228SVM(linear)0.91530.84510.90310.77400.91590.8329Logistic0.92050.84970.88640.80190.89720.8417Regression图4.5renal的ROC曲线41 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究同慢性心血管疾病与急性心血管事件一样,采用SVM-RFE特征选择算法对renal数据集选择最优子集,表4.7和图4.6显示数据集基于SVM-RFE特征选择算法在不同模型的结果,可以看出Logistic回归在选取含有50个特征子集时,AUC值能达到0.91,同renal全临床特征模型下表现效果靠近,说明SVM-RFE算法选择出的特征子集可以充分地代表全临床特征数据。表4.7renal数据集基于svm-rfe特征选择的AUC和Sensitivity结果NaïveBayesSVM(linear)LogisticRegressionSVM-RFEAUCSensitivityAUCSensitivityAUCSensitivity100.71720.62280.80170.57020.89120.7632200.73670.68050.86560.72240.90490.7819300.74650.68830.90630.71010.91120.7889400.87590.77150.90900.73270.91620.7926500.91150.78500.91180.77950.91690.7914600.91400.78960.91610.77900.91390.7859700.90960.79620.91540.77320.91780.7833图4.6renal基于SVM-RFE特征选择的AUC和Sensitivity结果曲线42 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究综上分析,通过大数据挖掘技术,全面分析临床收集的数据资料,并以高血压患者为研究对象,建立的肾功能衰竭风险预警模型能够很好预测肾衰病人,其中Logistic回归建模效果最优,且远远高于已有肾功能衰竭模型。而不同于传统肾功能衰竭模型研究,传统肾功能衰竭模型常基于实验设计,指定人群和可能风险因素,且大部分以慢性肾病患者为研究对象,研究发病时间较短,并且需要临床实验测量血清肌酐和血尿素氮等指标估算肾小球滤过率(eGFR)来预测肾功能衰竭患者。4.3主要风险因子发现本节基于Logistic回归建立风险预警模型,对特征权重大小依次排序,选取特征权重平方和贡献大于80%的特征作为主要风险因子。依据上文SVM-RFE特征选择算选取不同特征子集的模型比较分析,我们对筛选出stroke数据集的70个特征、heartfailure数据集的50个特征以及renal数据集的50个特征建立风险预警模型分别做进一步的分析,研究相关预后严重病症的风险因子及单变量分布情况,本节将重点讲述肾功能衰竭单变量分布情况。4.3.1脑卒中主要风险因子发现基于SVM-RFE特征选择算法,对stroke数据集筛选出70个特征建立Logistic回归模型做具体分析,将模型特征权重从大到小排序,然后依次累加特征权重平方和作为不同特征子集贡献值。图4.7展示特征数与特征贡献情况,可以看出,前28个特征权重平方和贡献大于80%,从而得到影响脑卒中发病的主要风险因子。由于篇幅所限,我们列出了前10种主要风险因子,如表4.8所示。图4.7特征数与特征贡献(脑卒中)43 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究表4.8脑卒中主要风险因子及对应权重情况风险因子ICD编码对应疾病类型权重相关性i66大脑动脉闭塞和狭窄,未脑梗死1.714508正相关g45短暂性大脑缺血性发作1.55257正相关bit21神经系统其他变性性疾患1.55129正相关r53不适和劳累1.504623正相关i67.2大脑动脉粥样硬化1.326258正相关r11恶心和呕吐1.188051正相关i67.900脑血管病1.167885正相关bit25重症肌无力和其他肌神经疾患1.162901正相关bit23神经疾患1.087859正相关g81偏瘫1.07039正相关正相关表示随着风险因子对应病症发作,脑卒中发病风险概率会逐渐增加,已有相关文献显示脑部血管狭窄和闭塞、脑局部缺血、体力活动过量以及神经功能障碍等病症都会诱发脑卒中病症,恶心呕吐等情况是脑卒中的常见预兆,同我们研究结果几乎一致,说明我们建立的脑卒中风险预警模型的适用性和有效性。4.3.2心力衰竭主要风险因子发现心力衰竭指心功能不全,在适量静脉回流时,由于心脏舒张或收缩功能障碍,心脏排血量不能满足正常的组织代谢需要。引起心力衰竭的病因有很多,常见的病因有心肌舒张功能障碍、心肌炎、心脏病、代谢障碍、肺动脉口狭窄以及心脏病等。图4.8可以看出,前9个特征的权重平方和贡献在80%左右,可作为心力衰竭风险预警模型的主要风险因子。表4.9显示9个风险因子特征权重及疾病类型具体情况。44 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究图4.8心力衰竭—不同特征数权重贡献情况表4.9心力衰竭主要风险因子及对应权重情况风险因子ICD编码对应疾病类型权重相关性i25.103冠状动脉粥样硬化性心脏病1.408845正相关bit38肺水肿0.893464正相关bit16氨基酸代谢紊乱0.801886正相关bit33病毒性肺炎0.686813正相关i48.x01心房颤动0.621668正相关n18慢性肾病0.620546正相关r51头痛0.607342正相关i11.900高血压性心脏病0.507832正相关i42心肌病0.485327正相关正相关表示随着风险因子相应疾病的发作,心力衰竭发病风险概率也会增加,本文研究的ICD编码只对应0和1取值,如果高血压病人患有上述所有风险因子相应的疾病类型,说明该患者很有可能处于心力衰竭阶段或者以后很可能发展为心力衰竭病症。4.3.3肾功能衰竭主要风险因子发现肾功能衰竭的定义通常由肾小球过滤(GFR)决定,因肾功能受损,体内的废液难以排除导致,一般通过测量血清肌酐、血尿素氮及白蛋白等变量来估算GFR,而根据45 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究GFR指标值把肾功能分为五个阶段,其中GFR水平小于15被划分为第五阶段,也是公认的定义为肾功能衰竭阶段。目前有关肾功能衰竭的文献研究较少,且主要风险因子介绍不多,因此本节将重点分析肾功能衰竭有关的主要风险因子。特征数与特征贡献情况如图4.9所示,可以看出,前9个特征的权重平方和贡献大于80%,可作为肾功能衰竭的主要风险因子。这9个特征属性名称及权重说明情况如表4.10所示。图4.9肾功能衰竭—不同特征数权重贡献情况表4.10肾功能衰竭主要风险因子及对应权重情况风险因子ICD编码对应疾病类型权重相关性n18慢性肾病1.80215正相关bit08贫血0.989493正相关bit42肾炎综合征0.940363正相关bit16氨基酸代谢紊乱0.766988正相关bit29中耳疾患0.450939正相关bit46咽痛和胸痛0.441817正相关bit45心脏杂音0.440756正相关bit47血尿0.414584正相关i67.2大脑动脉粥样硬化0.398067正相关46 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究正相关表示随着风险因子取值的增加,发病风险概率也会增加,而本文研究的ICD编码只对应0和1取值,如果高血压病人患有上述所有风险因子对应的疾病类型,说明该患者很有可能处于肾功能衰竭阶段或者以后发展为肾功能衰竭病症。下面我们主要对前三个风险因子的分布情况做单变量具体分析:1、n18(疾病类型:慢性肾病,权重:1.80215)图4.10慢性肾病分布情况从图4.10可以看出,实验组患慢性肾病人数远远高于对照组患病人数,且实验组无慢性肾病人数也远远低于对照组无慢性肾病人数,与建模结果相符。同时说明慢性衰病能加剧肾功能衰竭的发生。临床上研究表明,在临床中,诊断为肾小球肾炎、肾盂肾炎、肾病综合征、过敏性紫癜肾炎、高血压肾病、多囊肾、肾病综合征、膜性肾病、糖尿病肾病等等,当这些肾病的发病迁延难愈,时间超过三个月,病人尿液和相关的血液指标出现异常,肾脏病理学、影像学发现异常,或肾脏的肾小球有效滤过率低于60%,都可统称为“慢性肾病”。慢性肾病如未能及时有效救治,导致病情恶化进展,则随病程迁延,慢性肾病患者将发展成为慢性肾功能不全和肾功能衰竭。2、bit08(疾病类型:贫血,权重:0.989493)47 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究图4.11贫血病症分布情况从图4.11可以看出实验组患贫血人数远高于对照组贫血人数,说明贫血病症愈发肾功能衰竭的可能性很大。临床实验表明,贫血是一种常见的疾病,它与肾脏也有着千丝万缕的关系,一般来说,贫血可发生在慢性肾功能衰竭的各个阶段。3、bit42(疾病类型:肾炎综合征,权重:0.940363)图4.12肾炎分布情况图4.12显示,实验组患肾炎人数一定程度上高于对照组,且对照组无肾炎病症人数一定程度上也高于实验组,符合建模结果。说明肾炎病症在一定程度上增加肾功能衰竭的可能性。临床实验表明,肾炎是慢性肾功能不全的致病因素,慢性肾功能不全很有可能恶化为肾功能衰竭。因此及早诊断和预防对肾功能衰竭防控有重要意义。48 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究第5章总结与展望5.1主要工作本文基于深圳市历史医疗数据产业基础上,面向区域医疗和公共健康大数据处理分析及示范应用项目研究课题,分别对慢性心血管疾病与急性心血管事件风险和心血管功能损害引起的危重病症事件风险进行了有效模型评估和预测,这对心血管疾病引发预后严重病症防控进行早期干预和诊断治疗具有非常重要的意义。首先,本文以高血压患者为研究对象,探查与高血压患者相关的数据资料,包括人口统计学信息、个人体检信息、高血压登记信息、高血压随访信息以及医疗门诊信息等,明确了不同数据来源之间的对应关系,掌握了数据基本信息情况。以慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件为主要研究内容,从高血压门诊表、高血压随访表和高血压登记表提取出相关事件的预后严重病症人群包括脑卒中、心力衰竭和肾功能衰竭,分别作为实验组人群,同时从高血压人群表中抽取出没有患心血管、代谢、神经、眼部疾病、肾、肺等方面的严重病症作为对照组,具体抽取原则见第三章详细叙述。其次,针对海量医疗数据,我们使用Spark大数据处理平台,运用数据挖掘技术,对医疗数据存在的问题,包括不完整性、冗余性、不一致性、不平衡性以及时间性等数据问题做预处理操作,这对我们提高数据质量,发现知识和做出决策至关重要,占据工作的三分之二的时间。再次,我们利用卡方检验筛选出P-Value值小于0.05的特征,从而找出了符合临床意义的特征子集。根据符合临床意义的特征子集,我们分别建立了慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件的三种预后严重病症(脑卒中、心力衰竭和肾功能衰竭)的风险预警模型,相比以往传统医学统计方法,我们的模型预测效果普遍较好,具有很好地实际应用意义和价值。最后,我们使用SVM-RFE特征选择算法,选取最优特征子集,实现分类模型的优化和特征空间降维,同时对最优子集的具体模型做了进一步的分析研究,探索发现了相关预后严重病症的主要风险因子。49 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究5.2展望本文基于深圳市历史医疗数据,运用数据挖掘技术,开启心血管疾病研究的新视角,具有重大意义。本文以高血压患者为研究对象,建立了相关心血管疾病引发预后严重病症的风险预警模型,取得了研究的初步成果,但仍然有许多工作可以进行。首先本文主要基于慢性心血管疾病与急性心血管事件和心血管功能损害引起的危重病症事件这两类事件的三组不同预后严重病症(脑卒中、心力衰竭和肾功能衰竭)分别建立了风险预警模型,在我们心血管疾病研究中,还有许多预后严重病症,比如急性心梗、肺栓塞、严重脑神经疾病等,后期都可以针对某个具体并发症进行风险预警建模,探索其风险因子。其次,本文研究只用了二个特征选择算法,其中卡方检验用于选择符合临床意义特征,另一个用于降低维数寻找最优特征子集,虽然SVM-RFE具有很好地特征选择效果,但没有比较多个特征选择算法来选择最适合数据的特征子集,所以后期研究可以根据不同的特征选择算法进行比较分析从而选择最合适的特征子集。再者,由于本文选择以高血压患者为研究对象,患者中的化验数据人数较少,其中化验数据包括许多生化指标,如人体亚硝酸盐含量、葡萄糖含量、尿蛋白含量等,后续工作对其他病症研究,如糖尿病患者,可在保证样本一定量情况下,加入生化指标进行模型分析。50 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究参考文献[1]陈伟伟.中国心血管病报告2015[J].中华医学信息导报,2016(12):11-11.[2]OtsuN.DiscriminantandLeastSquareThresholdSelection[J].Proc4IJCPR,1978,596.MendisS,PuskaP,NorrvingB.Globalatlasoncardiovasculardiseasepreventionandcontrol[M].WorldHealthOrganization,2011.[3]EpsteinFH,OstranderLD,JohnsonBC,etal.Epidemiologicalstudiesofcardiovasculardiseaseinatotalcommunity—Tecumseh,Michigan[J].AnnalsofInternalMedicine,1965,62(6):1170-1187.[4]WilsonPWF,D’AgostinoRB,LevyD,etal.Predictionofcoronaryheartdiseaseusingriskfactorcategories[J].Circulation,1998,97(18):1837-1847.[5]KannelWB,D'agostinoRB,SilbershatzH,etal.Profileforestimatingriskofheartfailure[J].Archivesofinternalmedicine,1999,159(11):1197-1204.[6]D'AgostinoRB,RussellMW,HuseDM,etal.Primaryandsubsequentcoronaryriskappraisal:newresultsfromtheFraminghamstudy[J].Americanheartjournal,2000,139(2):272-281.[7]SchnabelRB,SullivanLM,LevyD,etal.Developmentofariskscoreforatrialfibrillation(FraminghamHeartStudy):acommunity-basedcohortstudy[J].TheLancet,2009,373(9665):739-745.[8]BerryJD,Lloyd-JonesDM,GarsideDB,etal.Framinghamriskscoreandpredictionofcoronaryheartdiseasedeathinyoungmen[J].Americanheartjournal,2007,154(1):80-86.[9]GordonT,Garcia-PalmieriMR,KaganA,etal.DifferencesincoronaryheartdiseaseinFramingham,HonoluluandPuertoRico[J].Journalofchronicdiseases,1974,27(7-8):329-344.[10]LiaoY,McGeeDL,CooperRS,etal.Howgeneralizablearecoronaryriskpredictionmodels?ComparisonofFraminghamandtwonationalcohorts[J].Americanheartjournal,1999,137(5):837-845.[11]MenottiA,PudduPE,LantiM.ComparisonoftheFraminghamriskfunction-basedcoronarychartwithriskfunctionfromanItalianpopulationstudy[J].EuropeanHeartJournal,2000,21(5):365-370.51 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究[12]OrfordJL,SessoHD,StedmanM,etal.AcomparisonoftheFraminghamandEuropeanSocietyofCardiologycoronaryheartdiseaseriskpredictionmodelsinthenormativeagingstudy[J].Americanheartjournal,2002,144(1):95-100.[13]D’AgostinoRB,VasanRS,PencinaMJ,etal.Generalcardiovascularriskprofileforuseinprimarycare[J].Circulation,2008,117(6):743-753.[14]ThomsenTF,McGeeD,DavidsenM,etal.Across-validationofrisk-scoresforcoronaryheartdiseasemortalitybasedondatafromtheGlostrupPopulationStudiesandFraminghamHeartStudy[J].InternationalJournalofEpidemiology,2002,31(4):817-822.[15]Hippisley-CoxJ,CouplandC,VinogradovaY,etal.DerivationandvalidationofQRISK,anewcardiovasculardiseaseriskscorefortheUnitedKingdom:prospectiveopencohortstudy[J].Bmj,2007,335(7611):136.[16]Hippisley-CoxJ,CouplandC,VinogradovaY,etal.PredictingcardiovascularriskinEnglandandWales:prospectivederivationandvalidationofQRISK2[J].Bmj,2008,336(7659):1475-1482.[17]CollinsGS,AltmanDG.AnindependentandexternalvalidationofQRISK2cardiovasculardiseaseriskscore:aprospectiveopencohortstudy[J].Bmj,2010,340:c2442.[18]CollinsGS,AltmanDG.AnindependentexternalvalidationandevaluationofQRISKcardiovascularriskprediction:aprospectiveopencohortstudy[J].Bmj,2009,339:b2584.[19]RidkerPM,BuringJE,RifaiN,etal.Developmentandvalidationofimprovedalgorithmsfortheassessmentofglobalcardiovascularriskinwomen:theReynoldsRiskScore[J].Jama,2007,297(6):611-619.[20]RidkerPM,PaynterNP,RifaiN,etal.C-reactiveproteinandparentalhistoryimproveglobalcardiovascularriskprediction[J].Circulation,2008,118(22):2243-2251.[21]WuY,LiuX,LiX,etal.Estimationof10-yearriskoffatalandnonfatalischemiccardiovasculardiseasesinChineseadults[J].Circulation,2006,114(21):2217-2225.[22]武阳丰,周北凡,高润霖,等.国人缺血性心血管病发病危险的评估方法及简易评估工具的开发研究[J].中华心血管病杂志,2003,31(12):893-901.[23]ZhengL,WangY,HaoS,etal.Riskpredictionofstroke:Aprospectivestatewidestudyon52 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究patientsinMaine[C]//BioinformaticsandBiomedicine(BIBM),2015IEEEInternationalConferenceon.IEEE,2015:853-855.[24]KansadubT,ThammaboosadeeS,KiattisinS,etal.Strokeriskpredictionmodelbasedondemographicdata[C]//BiomedicalEngineeringInternationalConference(BMEiCON),20158th.IEEE,2015:1-3.[25]KhoslaA,CaoY,LinCCY,etal.Anintegratedmachinelearningapproachtostrokeprediction[C]//Proceedingsofthe16thACMSIGKDDinternationalconferenceonKnowledgediscoveryanddatamining.ACM,2010:183-192.[26]DuSS,ZhaoMM,ZhangY,etal.Screeningfordifferentiallyexpressedproteinsrelevanttothedifferentialdiagnosisofsarcoidosisandtuberculosis[J].PloSone,2015,10(9):e0132466.[27]MiaoF,CaiYP,ZhangYT.Riskpredictionforheartfailureincidencewithin1-yearusingclinicalandlaboratoryfactors[C]EngineeringinMedicineandBiologySociety(EMBC),201436thAnnualInternationalConferenceoftheIEEE.IEEE,2014:1790-1793.[28]StevensLA,CoreshJ,GreeneT,etal.Assessingkidneyfunction—measuredandestimatedglomerularfiltrationrate[J].NewEnglandJournalofMedicine,2006,354(23):2473-2483.[29]StevensPE,LevinA.Evaluationandmanagementofchronickidneydisease:synopsisofthekidneydisease:improvingglobaloutcomes2012clinicalpracticeguideline[J].Annalsofinternalmedicine,2013,158(11):825-830.[30]TangriN,GramsME,LeveyAS,etal.Multinationalassessmentofaccuracyofequationsforpredictingriskofkidneyfailure:ameta-analysis[J].Jama,2016,315(2):164-174.[31]TangriN,KitsiosGD,InkerLA,etal.RiskPredictionModelsforPatientsWithChronicKidneyDiseaseASystematicReview[J].Annalsofinternalmedicine,2013,158(8):596-603.[32]JardineMJ,HataJ,WoodwardM,etal.Predictionofkidney-relatedoutcomesinpatientswithtype2diabetes[J].Americanjournalofkidneydiseases,2012,60(5):770-778.[33]DesaiAS,TotoR,JarolimP,etal.AssociationbetweencardiacbiomarkersandthedevelopmentofESRDinpatientswithtype2diabetesmellitus,anemia,andCKD[J].AmericanJournalofKidneyDiseases,2011,58(5):717-728.[34]FolsomAR,AleksicN,ParkE,etal.Prospectivestudyoffibrinolyticfactorsandincident53 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究coronaryheartdisease[J].Arteriosclerosis,Thrombosis,andVascularBiology,2001,21(4):611-617.[35]EggersKM,Al-ShakarchiJ,BerglundL,etal.High-sensitivecardiactroponinTanditsrelationstocardiovascularriskfactors,morbidity,andmortalityinelderlymen[J].Americanheartjournal,2013,166(3):541-548.e1.[36]UsedR.Lipid-relatedmarkersandcardiovasculardiseaseprediction[J].Jama,2012,307:2499-506.[37]DolanE,StantonA,ThijsL,etal.Superiorityofambulatoryoverclinicbloodpressuremeasurementinpredictingmortality[J].Hypertension,2005,46(1):156-161.[38]陈运奇,张震江,赵军平,等.基于健康档案的社区卫生信息系统研究与应用[J].中国数字医学,2009(9):7-10.[39]陈一君,韩雄,马锡坤,等.南京军区“医云工程”技术架构体系[J].中国数字医学,2013(5):12-15.[40]简云江,刘雅奇.大数据在医学中的应用[J].云南医药,2015,36(6):656-659.[41]吴甘沙.Spark:大数据的“电光石火”[J].程序员,2013(7):100-104.[42]金翰伟.基于Spark的大数据清洗框架设计与实现[D].浙江大学,2016.[43]李航.统计学习方法[M].清华大学出版社,2012.54 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究附录bit01:霍乱、伤寒和副伤寒、其他沙门菌感染、细菌性痢疾、其他细菌性肠道感染、其他细菌性食物中毒,不可归类在他处者、阿米巴病、其他原虫性肠道疾病、病毒性和其他特指的肠道感染、其他传染性和未特指病因的胃肠炎和结肠炎、呼吸道结核,经细菌学和组织学证实、呼吸道结核,未经细菌学或组织学所证实、神经系统的结核、其他器官的结核、粟粒性结核、鼠疫、土拉菌病[兔热病]、炭疽、布氏菌病、鼻疽和类鼻疽、鼠咬热类丹毒、钩端螺旋体病、其他动物源性细菌性疾病,不可归类在他处者、麻风[汉森病]、其他分枝杆菌感染、利斯特菌病、新生儿破伤风、产科破伤风、其他破伤风、白喉百日咳、猩红热、脑膜炎球菌感染、链球菌性败血症、其他脓毒病、放线菌病、诺卡菌病、巴尔通体病、丹毒、其他细菌性疾病,不可归类在他处者、未特指部位的细菌性感染;bit02:先天性梅毒、早期梅毒、晚期梅毒、其他和未特指的梅毒、淋球菌感染、衣原体(性病性)淋巴肉芽肿、其他性传播的衣原体疾病、软下疳、腹股沟肉芽肿、滴虫病[毛滴虫病]、肛门生殖器的疱疹病毒[单纯疱疹]感染、其他主要为性传播的疾病,不可归类在他处者、未特指的性传播疾病、非性病性梅毒;bit08:缺铁性贫血、维生素B12缺乏性贫血、叶酸盐缺乏性贫血、其他营养性贫血、酶代谢紊乱性贫血、地中海贫血、镰状细胞疾患、其他遗传性溶血性贫血、后天性溶血性贫血、后天性纯红细胞再生障碍[幼红细胞减少症]、其他再生障碍性贫血、急性出血后贫血、分类于他处的慢性疾病引起的贫血、其他贫血;bit16:芳香氨基酸代谢紊乱、支链氨基酸代谢和脂肪酸代谢紊乱、其他氨基酸代谢紊乱、乳糖不耐受、其他碳水化合物代谢紊乱、(神经)鞘脂类代谢紊乱和其他脂贮积疾患、糖胺聚糖代谢紊乱、糖蛋白代谢紊乱、脂蛋白代谢紊乱和其他脂血症、嘌呤和嘧啶代谢紊乱、卟啉和胆红素代谢紊乱、矿物质代谢紊乱、囊性纤维化病、淀粉样变、血容量缺失、液体-电解质及酸碱平衡的其他紊乱、其他代谢紊乱、操作后内分泌和代谢紊乱,不可归类在他处者;bit21:神经系统的其他变性性疾病,不可归类在他处者、分类于他处的疾病引起的神经系统其他变性性疾患、多发性硬化、其他急性播散性脱髓鞘、中枢神经系统的其他脱髓鞘疾病;bit23:三叉神经疾患、神经疾患、其他脑神经疾患、分类于他处的疾病引起的脑神经疾患;bit25:重症肌无力和其他肌神经疾患、肌肉的原发性疾患、其他肌病、分类于他处的疾病引起的肌神经接点和肌肉的疾患;55 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究bit29:外耳炎、外耳的其他疾患、分类于他处的疾病引起的外耳疾患、中耳和乳突疾病、化脓性和未特指的中耳炎、分类于他处的疾病引起的中耳炎、咽鼓管炎和阻塞、咽鼓管的其他疾患、乳突炎和有关情况、中耳胆脂瘤、鼓膜穿孔、鼓膜的其他疾患、中耳和乳突的其他疾患、耳硬化、前庭功能疾患、内耳的其他疾病、传导性和感音神经性听觉丧失、其他听觉丧失、耳痛和耳渗出液、耳的其他疾患,不可归类在他处者、分类于他处的疾病引起的耳的其他疾患、耳和乳突的操作后疾患,不可归类在他处者;bit33:病毒性肺炎,不可归类在他处者、链球菌性肺炎、流感嗜血杆菌性肺炎、细菌性肺炎,不可归类在他处者、其他传染性病原体引起的肺炎,不可归类在他处者、分类于他处的疾病引起的肺炎、肺炎,病原体未特指;bit38:肺水肿、肺嗜酸性粒细胞增多,不可归类在他处者、其他间质性肺疾病、肺和纵隔脓肿、脓胸、胸腔积液,不可归类在他处者、胸膜斑、气胸、其他胸膜情况、操作后的呼吸性疾患,不可归类在他处者、呼吸衰竭,不可归类在他处者、其他呼吸性疾患、分类于他处的疾病引起的呼吸性疾患;bit45:心脏搏动异常、心脏杂音和其他心音;bit46:咳嗽、呼吸异常、咽痛和胸痛;bit47:胃肠气胀及有关情况、大便失禁、肝大和脾大,不可归类在他处者、未特指的黄疸、腹水、累及消化系统和腹部的其他症状和体征、皮肤感觉障碍、皮疹和其他非特异性斑疹、皮肤和皮下组织的局部肿胀、肿物和肿块、其他皮肤改变、异常的不随意运动、异常的步态和移动、其他协调缺乏、累及神经和肌肉骨骼系统的其他症状和体征、与排尿有关的疼痛、未特指的血尿、未特指的尿失禁、尿潴留、无尿和少尿、多尿、尿道排出物、累及泌尿系统的其他症状和体征;i11.900:高血压性心脏病;i25.103:冠状动脉粥样硬化性心脏病;i42:心肌病;i48.x01:心房颤动;i66:大脑动脉的闭塞和狭窄,未造成脑梗死;i67.2:大脑动脉粥样硬化;i67.900:脑血管病;r11:恶心和呕吐;r51:头痛;r53:不适和疲劳;g45:短暂性大脑缺血性发作和相关的综合征;56 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究g81:偏瘫;n18:慢性肾病;57 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究致谢“路漫漫其修远兮,吾将上下而求索”,这是我学习生涯中永记于心的箴言。时光荏苒,三年的研究生学习生涯即将结束,在这里感谢曾经帮助我的老师、师兄和可爱的同学们。首先,感谢我的导师黄俊联老师和蔡云鹏老师,研一的生活在学校度过,感谢黄俊联老师在研一时,带领我进入计算机应用领域的学习,这对我以后从事数据挖掘实习工作打下了坚实的编程理论基础。从研二开始,黄俊联老师推荐我来到中国科学院深圳先进技术研究院实习,让我得以认识蔡云鹏老师,且在这里有幸参与国家863项目,负责搭建Spark大数据平台、商业分析、数据挖掘算法研究和慢性病数据挖掘工作,这对我后面的求职打下了坚实的基础,同时这也是我毕业论文课题研究的来源。在这里,感谢黄俊联老师和蔡云鹏老师对我的细心教导和耐心解答,真心感谢这两位为学生默默付出老师们。同时,我还要感谢实验室的师兄师姐和同学们,感谢葛瑞泉师兄、王普师兄和刘记奎师兄,感谢他们总是给予我学习和生活上的帮助。每当我有不懂的地方,师兄们总会孜孜不倦的帮我讲解,在计算机知识方面有葛瑞泉师兄的帮助,数据挖掘算法方面有王普师兄的帮助以及在医学常识理论方面有刘记奎师兄帮助,让我在学习上真的受益匪浅,真心地感谢。另外还有我的实验室同学洪溪、林剑华等人,虽然我们的研究方向不一样,但我们经常有共鸣的地方,对自己不懂的领域也会相互交流和了解来扩展自己的知识面,并且在生活中,我们都是非常好的朋友,一起出去爬山徒步,建立了深厚的友谊。再者,我还有感谢我的老同学老朋友史冬生、莫广焰等人,他们是我的良友,无论在生活中还是学习上,都给予我精神上的支持和帮助,特别在我找工作那段时间,谢谢他们的鼓励和安慰,让我能够心平气和的面对当前紧张的求职季,感谢一路走来,遇到的这么多良师益友,遇见你们是我人生中的宝贵财富。最后,特别感谢我的父母,谢谢爸爸妈妈对我多年的辛勤付出,谢谢您们对我无私的爱!如今我要告别我的学生时代,即将进入社会,我将会踏实认真努力的对待我的工作,实现我的人生价值,来报答我的父母,同时回报给予我帮助的所有人。58 基于数据挖掘心血管疾病风险因子发现与早期预警的风险建模研究攻读硕士学位期间的研究成果[1]PuWang*,RuiquanGe*,LimingLiu,XuanXiao,YeLi#,YunpengCai#,“Multi-labelLearningforPredictingtheActivitiesofAntimicrobialPeptides”.ScientificReports(已接收)59

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
大家都在看
近期热门
关闭