一种基于Bagging-Fuzzy-GBDT算法的心脏病预测方法技术

技术编号:22170897 阅读:42 留言:0更新日期:2019-09-21 12:17
本发明专利技术公开了一种基于Bagging‑Fuzzy‑GBDT算法的心脏病预测方法,首先根据病人心脏病数据的特点,将数据中取值范围变化大的属性取出,利用模糊逻辑将这些数据进行模糊化;将模糊化的数据与GBDT算法相结合,组成Fuzzy‑GBDT心脏病预测算法;最后利用Bagging算法通过m次有放回的采样,增加数据的多样性,将Bagging算法与Fuzzy‑GBDT算法相结合,提出本文的Bagging‑Fuzzy‑GBDT心脏病预测算法。本发明专利技术降低了Fuzzy‑GBDT预测算法的方差,以此来增加数据的多样性,避免单个点造成过拟合,在兼顾预测算法高泛化性的同时提高预测算法的准确性。(4)本发明专利技术通过实验进行了性能评价,结果表明,本发明专利技术的Bagging‑Fuzzy‑GBDT心脏病预测算法同时具有较好的准确性和泛化性。

A Heart Disease Prediction Method Based on Bagging-Fuzzy-GBDT

【技术实现步骤摘要】
一种基于Bagging-Fuzzy-GBDT算法的心脏病预测方法
本专利技术属于医疗数据分析
,特别涉及一种基于Bagging-Fuzzy-GBDT算法的心脏病预测方法。
技术介绍
慢性病发病率的上升严重影响着人民的生活,造成了巨大的经济损失,严重阻碍了国家医疗卫生事业的发展。心脏病在慢性病中的的高发病率和高死亡率必须引起高度重视。根据世界卫生组织的统计数据,全世界三分之一的人口死于心脏病,目前,我国人口老龄化严重,患有心脏病的人数也逐渐增多。虽然大多数心脏病不能被完全治愈,但我们可以根据患者的实时健康数据,通过疾病预测算法,在发病前提供健康指导和干预。由于患者的健康数据会根据时间不断的变化,这就对预测算法的准确性和泛化性提出了高的要求。目前有很多用于心脏病预测的分类算法,主要有以下几种:1、使用决策树算法对是否患有心脏病进行预测。如研究人员TayefiM等(TayfiM.,TajfardM.,SaffarS.,etal.Hs-CRPisStronglyAssociatedwithCoronaryHeartDisease(CHD):ADataMiningApproachUsingDecisionTreeAlgorithm.ComputerMethodsandProgramsinBiomedicine,2017,141:105-109.)提出了一种利用决策树算法进行心脏病预测的模型,但是基于决策树的预测算法不易处理连续型的数据,且容易过拟合。2、使用神经网络算法对是否患有心脏病进行预测。如研究人员DangareC.S等(DangareC.S.,ApteS.S.ImprovedStudyofHeartDiseasePredictionSystemUsingDataMiningClassificationTechniques.InternationalJournalofComputerApplications,2012,47(10):44-48.)使用神经网络算法对心脏病进行预测,虽然得到了准确率较高,但是需要调整大量的参数,模型的泛化能不高且模型的训练学习时间长。3、使用朴素贝叶斯算法对是否患有心脏病进行预测。如研究人员ShaikhS等(ShaikhS.,SawantA.,ParadkarS.,PatilK.ElectronicRecordingSystem-heartDiseasePredictionSystem.In2015InternationalConferenceonTechnologiesforSustainableDevelopment(ICTSD),Mumbai,MH,India,Fer.4-6,2015:1-5.)使用贝叶斯算法开发了一个智能的系统对心脏病进行预测,从而帮助医生做出诊断决策。但是朴素贝叶斯算法需要知道先验概率,且先验概率很多时候取决于假设,因此在某些时候会由于先模型的原因导致预测准确率不高。4、使用Bagging算法与简单分类器进行集成对是否有心脏病进行预测。如研究人员BashirS等(BashirS.,QamarU.,KhanF.H.BagMOOV:ANovelEnsembleforHeartDiseasePredictionBootstrapAggregationwithMulti-objectiveOptimizedVoting.AustralasianPhysical&EngineeringSciencesinMedicine,2015,38(2):305-323.)提出了一种使用BootstrapAggregating(Bagging)算法的新型的分类器集成框架,采用加权投票对心脏病进行预测。虽然利用Bagging算法增加了数据的多样性且降低了方差,但是并没有解决高泛化性的问题。单纯的只提高预测算法的准确性或者泛化性不能很好的处理病人不断变化的健康数据,需要综合考虑两者的同时尽可能的使预测算法节省训练时间。GradientBoostingDecisionTree(GBDT)算法不仅可以处理连续型数据,也能处理非连续型数据,不易过拟合且需要调整较少的参数。但是,GBDT及其相关算法用于心脏病预测领域的研究尚属空白。
技术实现思路
为了解决现有技术问题,本专利技术提供一种基于Bagging-Fuzzy-GBDT算法的心脏病预测方法,以提高心脏病预测的准确率,同时避免了过拟合和增加了泛化性,尽可能节省了算法的训练学习时间。为解决上述技术问题,本专利技术所采取的技术方案是:一种基于Bagging-Fuzzy-GBDT算法的心脏病预测方法,包括以下步骤:S1.将开源心脏病数据集进行预处理后作为算法的训练集D,大小为N;S2.根据心脏病数据集中属性的取值范围,将值域变化比较大的属性Ai取出,利用模糊逻辑中的三角隶属度函数,将其模糊化处理;S3.设置有放回的采样次数m,对模糊化后的训练集D进行m次采样,每次采样组成新的子训练集Di(i=1,2,3...m),采样的数据条数为n'(n'<N);S4.将模糊逻辑与GBDT算法相结合,组成Fuzzy-GBDT算法;S5.根据步骤S4中定义的Fuzzy-GBDT算法,利用步骤S3中生成的子训练数据集Di,采用Bagging算法并行的生成m个由Fuzzy-GBDT算法构成的弱分类器,由此构成Bagging-Fuzzy-GBDT算法;S6.将步骤S5中生成的m个弱分类器的m个预测结果,采用投票选举法确定出最终Bagging-Fuzzy-GBDT算法构成的强分类器的预测结果。进一步的,所述步骤S1中,所述的预处理包括对开源心脏病数据集进行进行归一化、删除异常值和空值。进一步的,所述步骤S2中,利用如下模糊逻辑中的三角隶属度函数规则,将值域变化比较大的属性Ai模糊化为(ωi1,ωi2,ωi3):其中,max为属性取值变化最大的范围,min为属性取值变化最小的范围;α代表子区间的重合程度,进一步的,所述的值域变化比较大的属性Ai为Chol、Tresthps、Thalach、Age,这四个属性的α分别取值为0.2,0.3,0.2,0.4。进一步的,所述步骤S4中,所述的Fuzzy-GBDT算法为:S4-1.令αi、βi、γi分别代表第i个属性Ai的三个隶属子区间的代表值,并将它们映射到各自的隶属度函数(ωi1,ωi2,ωi3),Bi=max(ωi1,ωi2,ωi3)->(αi,βi,γi),令Ai=Bi,更新Ai;S4-2.Fuzzy-GBDT算法数据输入的形式为:T={(x1,y1),(x2,y2),...(xn,yn)},初始化弱Fuzzy-GBDT学习器:S4-3.从1到t(t=1,2,…,T,T为最大的迭代次数)做如下操作:1)计算负梯度值其中,L为损失函数;2)利用去拟合一棵新的树,得到第t棵树,其对应的叶节点区域为Rtj,j=1,2,...,J,其中J为叶子节点的个数;3)根据每一个叶节点j里的样本,求出使损失函数最小,即拟合叶子节点最好的输出值ctj:4)更新学习器,得到本轮的学习器表达式:其中,I为指示函数,I∈[0,1]);S4-4.得到强学习器f(x):采用上述技术方案所产生的有益效果在于:(1)本专利技术本文档来自技高网
...

【技术保护点】
1.一种基于Bagging‑Fuzzy‑GBDT算法的心脏病预测方法,其特征在于:包括以下步骤:S1.将开源心脏病数据集进行预处理后作为算法的训练集D,大小为N;S2.根据心脏病数据集中属性的取值范围,将值域变化比较大的属性Ai取出,利用模糊逻辑中的三角隶属度函数,将其模糊化处理;S3.设置有放回的采样次数m,对训练集D进行m次采样,每次采样组成新的子训练集Di(i=1,2,3...m),采样的数据条数为n'(n'<N);S4.将模糊逻辑与GBDT算法相结合,组成Fuzzy‑GBDT算法;S5.根据步骤S4中定义的Fuzzy‑GBDT算法,利用步骤S3中生成的子训练数据集Di,采用Bagging算法并行的生成m个由Fuzzy‑GBDT算法构成的弱分类器,由此构成Bagging‑Fuzzy‑GBDT算法;S6.将步骤S5中生成的m个弱分类器的m个预测结果,采用投票选举法确定出最终Bagging‑Fuzzy‑GBDT算法构成的强分类器的预测结果。

【技术特征摘要】
1.一种基于Bagging-Fuzzy-GBDT算法的心脏病预测方法,其特征在于:包括以下步骤:S1.将开源心脏病数据集进行预处理后作为算法的训练集D,大小为N;S2.根据心脏病数据集中属性的取值范围,将值域变化比较大的属性Ai取出,利用模糊逻辑中的三角隶属度函数,将其模糊化处理;S3.设置有放回的采样次数m,对训练集D进行m次采样,每次采样组成新的子训练集Di(i=1,2,3...m),采样的数据条数为n'(n'<N);S4.将模糊逻辑与GBDT算法相结合,组成Fuzzy-GBDT算法;S5.根据步骤S4中定义的Fuzzy-GBDT算法,利用步骤S3中生成的子训练数据集Di,采用Bagging算法并行的生成m个由Fuzzy-GBDT算法构成的弱分类器,由此构成Bagging-Fuzzy-GBDT算法;S6.将步骤S5中生成的m个弱分类器的m个预测结果,采用投票选举法确定出最终Bagging-Fuzzy-GBDT算法构成的强分类器的预测结果。2.根据权利要求1所述的基于Bagging-Fuzzy-GBDT算法的心脏病预测方法,其特征在于:所述步骤S1中,所述的预处理包括对开源心脏病数据集进行进行归一化、删除异常值和空值。3.根据权利要求1所述的基于Bagging-Fuzzy-GBDT算法的心脏病预测方法,其特征在于:所述步骤S2中,利用如下模糊逻辑中的三角隶属度函数规则,将值域变化比较大的属性Ai模糊化为(ωi1,ωi2,ωi3):其中,ma...

【专利技术属性】
技术研发人员:袁晓铭王雪韩建超刘杰民陈海宴刘志刚
申请(专利权)人:东北大学秦皇岛分校
类型:发明
国别省市:河北,13

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1