基于心脏病数据的两种机器学习预测模型比较研究ComparativeStudyofTwoMachineLearningPredictionModelsBasedonHeartDiseaseData

基于心脏病数据的两种机器学习预测模型比较研究

代倩,黄希芬

云南师范大学数学学院,云南昆明

收稿日期:2023年7月26日;录用日期:2023年8月23日;发布日期:2023年8月30日

摘要

现如今中国正面临的两大主要压力是人口老龄化进程加快和代谢危险因素流行,心血管疾病的发病率和患病率一直保持上升状态,并成为了我国居民死亡的首要原因。与此同时,医学与统计相结合,建立出具有一定预测效果的模型,可以帮助更有效地治疗和控制病情,使心脏病风险预测模型成为公共卫生安全的重要工具。本文首先对心脏病数据集进行预处理,再通过混合采样的方法获得平衡数据,依次构建随机森林和全连接神经网络模型,对它们分别进行比较研究,阐述了随机森林算法在预测心脏病患病情况时有显著优势。建立恰当的模型之后可以有效地对患者进行方便快捷的心脏病预测,有效提高临床诊断的准确率,帮助心脏病患者尽早进行医疗干预获得健康。

关键词

心脏病预测模型,不平衡数据,随机森林

ComparativeStudyofTwoMachineLearningPredictionModelsBasedonHeartDiseaseData

QianDai,XifenHuang

SchoolofMathematics,YunnanNormalUniversity,KunmingYunnan

Received:Jul.26th,2023;accepted:Aug.23rd,2023;published:Aug.30th,2023

ABSTRACT

Keywords:HeartDiseasePredictionModel,ImbalancedData,RandomForest

ThisworkislicensedundertheCreativeCommonsAttributionInternationalLicense(CCBY4.0).

1.引言

1.1.研究背景及意义

1.1.1.研究背景

随着工业化、城镇化、人口老龄化进程加快以及生态环境、生活行为方式等发生改变,慢性非传染性疾病已成为居民的主要死亡原因和疾病负担[1]。心脑血管疾病、癌症、慢性呼吸系统疾病、糖尿病等慢性病导致的负担占总疾病负担的70%以上,成为阻碍提高健康预期寿命的重要原因之一[2]。

心脏病是一种常见的循环系统疾病,它涉及心脏、血管和调节血液循环的神经体液组织。会严重影响患者的劳动能力,是内科疾病中的常见病。心脏病和脑血管病的特点是患病率高、致残率高、复发率高和死亡率高,给社会和经济发展带来了沉重的负担[3]。据统计,我国现有的高血压患者达2.7亿、脑卒中患者1300万、冠心病患者1100万。高血压、血脂异常、糖尿病等是心脑血管疾病的主要危险因素,而肥胖、吸烟、缺乏运动、不健康的饮食习惯等也会增加患病的风险[4]。中国18岁以上居民中,约四分之一的人患有高血压,接近一半的人血脂异常,并且这些比例还在上升。对这些危险因素进行干预,不仅可以预防或延缓心脑血管疾病的发生,还可以与药物治疗配合,预防其复发。

1.1.2.心脏病研究意义

心脏病是一种致死率高的危险疾病,需要尽早发现。但很多心脏病患者在早期没有胸闷、气短、乏力、心绞痛等典型症状,这就是“沉默的心脏病”。这导致很多病人无法及时发现自己有心脏病,错过了最佳治疗时机。因此,通过了解身体各项指标和日常生活习惯,来判断是否有心脏病对降低心脏病的死亡率非常重要。

机器学习是一门新兴的学科,它通过周围的环境学习来模拟人类的智能。随机森林是一种基于决策树的集成学习算法,它可以减少过拟合的风险,提高模型的泛化能力。因为每个决策树只使用了部分样本和特征,所以每个决策树都是独立的,并且随机森林可以通过多个决策树的投票或平均值来降低单个决策树的错误率。全连接神经网络有着比浅层体系结构更强的数据处理能力,可以利用出色的服务器性能对海量大数据进行特征挖掘与处理。本文主要利用随机森林和全连接神经网络两种模型对心脏病数据进行训练学习,经过对比得出最优分类算法模型,有利于构建适用于心血管疾病的预测模型,从而辅助医师对心脏病患者提供诊断评估依据。

总而言之,利用随机森林模型对是否患有心脏病提供较为准确的预测,能为医生诊断提供依据,将机器学习与医学相结合,精准诊断并治疗,提高医疗资源的利用效率,从而降低心脏病的死亡率。该方法经推广后可用于其他疾病的预测,对于控制各类疾病发生具有重要积极意义。

1.2.文献综述

2011年,G.Subbalakshmi等[5]将年龄、血压等因素作为预测患心脏病的指标,用贝叶斯分类器作为内核函数,建立支持决策的心脏病预测系统(DSHDPS)。AlickovicE.等[6]采用自回归模型提取特征,并通过k邻近算法、多层感知器和支持向量机等技术来判别心率是否正常。DimopoulosA.C.等[7]将传统心血管疾病评分系统分别与决策树、随机森林和KNN算法结合进行对比分析,发现机器学习适合风险预测研究。Gokulnath等[8]提出了SVM的优化函数,将其应用于遗传算法中,提升心脏病预测的效果。Khourdifi等[9]利用粒子群优化算法和蚁群优化算法对人工神经网络进行优化,结果证明了所提出的混合方法在处理心脏病分类数据中的有效性和鲁棒性。Valarmathi等[10]使用三种不同的超参数优化算法对随机森林和极端梯度提升算法进行参数调整与测试,研究发现随机森林通过随机搜索方式进行参数调优的心脏病预测结果更好。

本文采用来自CDC公开的2021年行为风险因素检测系统(BRFSS)的原始心脏病数据集,其数据总量为438,693条,304个特征变量。分类标签为是否患有心脏病,1代表患有心脏病病,2代表未患心脏病,在所有原始数据中共有22,831条记录为患有心脏病。其中部分特征都存在明显的关联性,且对心脏病的影响较小。

2.2.数据预处理

2)缺失值处理:统计数据包括实验数据和调查数据,在此类调查数据获取的过程中,客观因素的限制或人为原因造成数据缺失的情况是非常常见的。由于缺失情况对变量特征值损失率过高且数量较大,例如,空值,调查对象回答“不知道”或拒绝回答的,因此我们将这部分数据直接剔除。

3)离散化:离散化是指对连续的数值变量进行分段处理,可以分为等频和等长两种离散化方法。等频和等长离散化方法不仅可以提高算法的运行速度,而且更有,利于提升模型的预测精度。在此数据集中,如Sex(受访者年龄)的值为[18,65+)范围内的连续变量,按照等长离散化对年龄数据进行分段处理,得到6类分类数据。

4)哑编码:当变量不是定量特征时,无法对模型进行训练,因此引入哑变量将不能够定量处理的变量量化,然后得到可用于模型训练的特征。对于有n个分类属性的自变量,通常需要选取1个分类作为参照,因此可以产生n1个哑变量。如BMI(体重指数)分为过轻、正常、过重和肥胖四类多分类有序变量,将其赋值为1、2、3、4,通过数字的大小关系来体现程度之间一定的等级关系。

5)规范化处理:将现有数据进行规范化处理,转化为便于数据分析处理的特征形式。本文旨在分析预测是否患有心脏病,因此分类标签数值化处理为1=未患有心脏病,0=为患有心脏病。

Table1.Rawdatavariableinterpretation

2.3.患病人数总体分布情况

Figure1.Distributionofheartdiseaseaftersampling

3.模型构建

Figure2.Datafeatureimportanceranking

3.1.随机森林(RandomForest)

在随机森林模型中,我们将分别将数据的70%、30%作为训练集和测试集,建立模型进行预测分析。此方法使用Python中的开源RandomForest包来建立建模。此模型需录入年龄、食用炸土豆的频率和体重特征等不同属性的解释变量数据进行抽样,建立大量决策树预测模型[11]。为了获得最佳的变量组合形式,用OOB样本在已训练好的决策树上运行,计算袋外预测误差e1,然后固定其他不变,依次计算决策树第500个特征的特征值,得到袋子外误差ei2。其中随机森林OOB得分为0.8854,OOB错误率为0.1146。

Figure3.Randomforestconfusionmatrix

在随机森林模型测试集的3000个样本中,预测正确的共有2666个,预测错误的共有334个。其中有140个样本是将未患有心脏病的样本预测为患有心脏病的样本,而有194个样本是将实际患有心脏病的样本预测为未患有心脏病的类别。

3.2.全连接神经网络

Figure4.Fullyconnectedneuralnetworkstructurediagram

Figure5.Fullyconnectedneuralnetworkconfusionmatrix

在全连接神经网络模型测试集的3000个样本中,预测正确的共有个2375,预测错误的共有个625。其中有338个样本是将未患有心脏病的样本预测为患有心脏病的样本,而有287个样本是将实际患有心脏病的样本预测为未患有心脏病的类别。

4.模型评价

4.1.模型结果

Figure6.ROCcurvesofrandomforestandfullyconnectedneuralnetworkmodels

Table2.Randomforestconfusionmatrix

Table3.Fullyconnectedneuralnetworkconfusionmatrix

Table4.Comparisonofmodelclassificationperformanceindex

ROC曲线的横轴FPR表示假阳率,纵轴TPR表示真阳率,ROC曲线越靠近左上角,模型的性能越好[12],因为此时TPR高、FPR低,随机森林模型能够很好地区分正例和负例。

THE END
1.人工智能三大算法在医疗领域的应用现状与展望机器学习在医疗中的应用 机器学习是一种使计算机系统能够从数据中学到的能力。这项技术被广泛用于疾病预测、药物发现和个性化治疗等方面。通过分析大量健康数据,包括遗传信息、生活习惯和医学影像,医生可以更好地理解疾病的发生规律,从而提前干预并改善治疗方案。此外,基于机器学习的人工智能系统也能帮助减少错误诊断,这对于https://www.jvahvb5c.cn/xing-ye-zi-xun/521904.html
2.质量数据集之多模态医疗数据集自主可控算法模型,引领智能医学精准及时的医学诊断对改善治疗效果和确保患者安全至关重要,对提高医疗服务质量和优化医疗资源分配具有深远意义。高质量医学数据训练的人工智能模型在增强诊断效率和准确性方面展现出巨大潜力,但医学数据仍存在医生标注不一致、数据分布不均匀等https://mp.weixin.qq.com/s?__biz=MzI1ODU0Nzk3Mg==&mid=2247494597&idx=3&sn=6d5fa2c6b9f1ceb4adeb0d28f9239fdd&chksm=eb3ca7e9fcc9cadcf695ba8b9e2a721a1cbd2c069666046a048ba3e8b87000a9228d59df1473&scene=27
3.机器学习在医学中的应用医学机器学习跨学科合作与创新:强调跨学科合作在推动机器学习医学应用中的重要性,以及如何通过创新来克服当前的挑战。 13. 结论 总结:回顾机器学习在医学领域的重要应用与贡献,重申其在未来医学发展中的潜力。 展望未来:呼吁更多的研究与合作,以推动机器学习在医学中的广泛应用,造福患者与社会。 https://blog.csdn.net/weixin_64296810/article/details/141724629
4.机器学习机器学习赋能医疗降:从诊断到治疗的智能化革命在医学康复治疗中,机器学习可以发挥重要作用,通过分析和学习患者的历史数据、治疗反应和康复进展,为康复师和患者提供智能化的指导。以下是一个简化的框架,说明如何使用机器学习来构建一个康复治疗的智能化指导系统 数据收集与预处理 首先,需要收集康复患者的数据,这些数据可能包括但不限于患者的个人信息、诊断信息、https://cloud.tencent.com/developer/article/2427921
5.集成多组学数据的机器学习在生物医学中的应用案例教学三:基于转录组学数据进行端到端的机器学习项目泛癌预测(数据预处理,数据建模,模型评估) 案例教学四:基于蛋白组学-代谢组学在COVID-19中生物标志物发现研究 深度学习在组学数据中的应用 学习目标:随着高通量组学平台的发展,生物医学研究大多采取了多组学技术结合的方法,不同组学来源(如转录组学、蛋白质组学https://www.jianshu.com/p/bb69eeab3f83
6.opencoursesourcesandbookmaterials.我总结的AI学习同样,机器学习在医学医药领域也有了越来越多的应用。只不过通常计算机专业的同学不很了解这方面。而是相反的,很多医学医药领域的人,会来学习人工智能的知识,进而应用在自己的领域,这种情况更多一些。 关于生物医学医药领域,整体我还是很看好的。虽然不知道爆炸的时间是什么时候,但我相信有着光明的未来。 https://github.com/shanhaiying/ai-learning-roadmap
7.AI+Science第二季:大模型与生物医学集智斑图这些大分子的结构与功能,通常取决于其各个部分的精细相互作用,因此结构生物学问题具备明显的复杂系统特征。人工智能技术已经广泛应用于基因组学和结构生物学研究中,新兴的大语言模型凭借其强大的计算和学习能力,正在这两个复杂系统领域崭露头角。https://pattern.swarma.org/study_group/29
8.西北工业大学AI+医学影像前沿学科论坛会议通知主要研究方向为人工智能,机器学习,医学图像分析,脑机接口等,发表学术论文200余篇,被引12000余次。获国家自然科学二等奖1项、教育部自然科学一等奖和二等奖各1项。2014-2019连续6年入选Elsevier中国高被引学者榜。 报告题目:脑影像智能计算及其若干应用研究进展https://zdhxy.nwpu.edu.cn/info/1083/4789.htm
9.机器学习在检验医学应用的现状与思考文章来源:中华检验医学杂志, 2022,45(12) : 1197-1200 作者:沈立松 曾俊祥 摘要 近年来机器学习成为各研究领域的热点,利用机器学习可以实现由数据驱动向知识发现的转化,是今后实验室智能化的重要发展方向。机器学习在检验医学领域的应用目前已显示出了巨大潜力,但存在许多问题及挑战。推进机器学习技术的临床转化,实现http://www.caivd-org.cn/article.asp?id=14684
10.基于机器学习的医疗诊断与疾病预测模型.pptx机器学习在医疗诊断中的应用1.机器学习算法可以自动分析医疗文本,提取有价值的信息。2.机器学习算法可以帮助临床医生快速准确地诊断疾病,提高诊断效率。3.机器学习算法还可以用于跟踪和评估疾病的进展和治疗效果。机器学习在医学信息检索中的应用1.机器学习算法可以帮助临床医生快速准确地检索医学信息,提高信息检索效率。2.https://max.book118.com/html/2024/0223/5103213241011111.shtm
11.壹生资讯医学研究已进入大数据和精准化并行融合时代,对数学模型,信息材料等理论和技术的依赖大幅提升,单细胞图谱,基因组医学的交叉融合,催生了生命科学研究的新纪元。人工智能作为典型的交叉学科,正在以其强大的算力使得我们在更全面、更深入及更清晰的层次上理解和处理生命的复杂信息。在肾脏病领域,机器学习已经在疾病预测、患者https://www.cmtopdr.com/post/detail/1223ab47-23a3-44c3-8a96-b027d154b701
12.FPGA技术在生物医学成像中的研究进展梁长虹.加强机器学习在医学影像中的研究和应用.国际医学放射学杂志,2019,42(01):4-5 [百度学术] Liang C H. International Journal of Medical Radiology, 2019, 42(01):4-5 [百度学术] 83 吴艳霞,梁楷,刘颖,等.深度学习FPGA加速器的进展与趋势.计算机学报,2019,42(11): 2461-2480 [百度学术] Wuhttps://www.pibb.ac.cn/pibbcn/article/html/20190342
13.医咖会医咖会是面向临床医生、科研工作者、医学生的临床研究学习和交流平台,系统讲解研究设计、统计分析、Meta分析、SCI论文撰写等科研课程,提供SPSS、Stata、R语言等详细操作教程。https://www.mediecogroup.com/
14.VALSEWebinar21戈宗元博士是澳大利亚莫纳什大学工程院和VC office的副教授,Monash Medical AI研究中心 (https://www.monash.edu/mmai-group)的主任,主要研究领域为统计分析,机器学习,医学人工智能以及流行病学。截止目前,他作为一作和重要作者在The Lancet Digital Health, The British Medical Journal, Bioinformatics, Hypertension,https://www.zhuanzhi.ai/document/3fd9a49c00b7474eeac328afad89d063