数学建模心脏病判别分享_第1页
数学建模心脏病判别分享_第2页
数学建模心脏病判别分享_第3页
数学建模心脏病判别分享_第4页
数学建模心脏病判别分享_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、真诚为您提供优质参考资料,若有不当之处,请指正。30组徐康仪、沈舒林、刘靖宇心脏病的判别摘要本文主要解决的是如何通过对250个就诊者的各项生理指标数据进行分析得出一套能够预测就诊者是否患心脏病程度的函数和准则,并确定哪些生理指标是判断就诊者患心脏病程度的关键因数,从而减少化验指标。首先,我们对题目提供的数据进行了分类和归一化处理,并对异常数据做出了合理的猜测和替换。 对于问题一:我们分别建立了BP人工神经网络模型和多元Fisher模型,然后利用SPSS软件和MATLAB软件对数据进行处理和求解,得出了判断心脏病患病程度的判别函数,并将两种模型得出的结果进行了比较。两种模型判断患病程度正确率如图

2、:Fisher判别模型BP人工神经网络模型正确率67.4%88.2% 对于问题二:在问题一中得到的判别函数的基础上,运用MATLAB软件,我们将44名就诊人员13项数据代入判别函数,得出各自患病情况。对于问题三:题目要求找出判断心脏病患病程度的关键因素。根据主因子分析法,我们将BP神经网络分析中重要性较低的因素逐一剔除,结合SPSS软件,观察剔除单一各因素后函数判断患心脏病程度正确率的变化,得出关键因素为A、C、E、G、H 、I、J 、K。对于问题四:我们结合在问题三中提取的关键因素,运用SPSS软件,修改了在问题一中得到的Fisher判别函数,并重新将44名就诊人员的13项指标数据代入判别式

3、中得出了各自患病程度结果。在将得出结果与问题二中结果进行比较,我们发现只有5个就诊者的判别结果稍有误差,并且他们的患病程度很接近。这说明我们提取的关键因素是准确的。本文最后对所建模型优缺点进行了分析与评价,并提出了改进与推广。关键词 BP人工神经网络 多元Fisher判别模型 主因子分析法26 / 261、问题重述1.1问题背景心脏是维持全身血液循环的最重要器官。由于现代人不正确的饮食和运动习惯等因素,心脏病患者人数逐年上升,心脏病已经成为威胁人类生命的十大疾病之一,除了老年人,中青年也成为心脏病猝死的高危人群。年轻人的心脏病突发往往没有明显先兆,突然发作时很危险,心脏病的病因很多,有时很难判

4、断一个人是否患有心脏病。附录二是到某医院做心脏病检测的一些确诊者的生理指标数据。(指标A,B,M的含义见附录一,指标N表示是否确诊为心脏病以及患病的程度)1.2需解决问题问题一:根据附录二中的数据,提出判别心脏病以及患病程度的方法,并检验你提出方法的正确性。问题二:按照问题一提出的方法,判断附录三中的44名就诊人员的患病情况。问题三:能否根据附录二的数据特征,确定哪些指标是影响人们患心脏病的关键或主因素,以便减少化验的指标。问题四:根据问题三的结果,重复问题二的工作,并与问题二的结果对比作进一步分析。2、模型假设假设一:通过题目已给的十三个指标就可以判断心脏病的患病情况。假设二:不考虑就诊人员

5、其他身体因素对其患心脏病的影响。假设三:附录表二中异常数据-9均为指标正常情况值缺失的代替值。3、符号说明符号符号说明归一化后得到的数据总的样本数目抽取样本的数目指标数目对应神经元的激发函数分别表示指标从神经元到的连接权分区变量学习速率动量系数指标因素的最小值指标因素的最大值Fisher判别函数,Fisher判别式系数I组间离方差和组内离方差的比值4、 问题分析4.1问题一:要求我们根据附录二中的数据,提出判别心脏病以及患病程度的方法。并检查该方法的正确性。针对这样一个判别性问题,我们首先对多种可以使用的判别方法进行了分析,分别是传统的距离判别法,非线性fisher判别法,朴素bayes算法,

6、Logistic回归判别法以及BP神经网络的分层网络判别法。(1)距离判别法:该方法不能考虑各总体本身在出现的可能性和无法克服错误数据造成的损失。由于本题附录中有大量异常数据的存在,所以距离判别法不适用于本题。(2)Logistic回归判别法:因变量与自变量是通过一种已知或未知非线性函数关系相关联,尽管我们可以通过logit函数在一定范围内将它们转化为线性关系,但这种转换必将导致更大的计算量和结果误差,所以我们也放弃了Logistic回归判别法。(3)BP神经网络:BP神经网络拥有强大的容错能力,较符合本问题提供的数据情况,同时神经网络具有通过学习逼近任意非线性映射的能力,用BP神经网络法来发

7、别心脏病以及患病程度有着明显的优越性。BP神经网络虽有诸多益处,但现阶段我们所掌握的知识还不能使我们从已运行的BP网络结果中提取相关参数并用MATLAB软件建立仿真函数来预测不含心脏病诊断结果N值结果的独立数据,为弥补这一缺陷,我们同时建立了BP神经网络和多总体Fisher判别模型来进行求解。4.2问题二:在问题一的基础上,我们对附录表三的数据进行处理,然后运用第一问得到的Fisher判别函数,将处理后44名待诊断者的数据代入判别式中,即可得到判别结果。4.3问题三:该问题需要找出患心脏病的主要因数,我们先运用BP神经网络中的自变量重要性分析得出各因数的初步重要性结果,然后按照主因子分析法的思

8、想在Fisher判别式中逐一剔除一些重要性偏低的因素并观察剔除后的判断患病程度的正确率,若正确率浮动比较小择可以确定该因素为非主要因素。4.4问题四:只需根据问题三中主要因素建立修改后的Fisher判别式,重复第二问操纵即可。 5、数据的分析与处理 附录表二中给出了250组心脏病检测的样本 , 通过观察易知250组数据中包含大量异常数据。如血清中胆固醇含量不可能出现-9,坡段值-9超界等,基于BP神经网络拥有强大的容错能力,我们仍保留这些异常数据以保证样本的多样性。为了提高神经神经网络的训练效率,我们需要对样本数据输入和目标数据归一化处理,使其均落在0,1之间。处理方法如下:其中,与分别表示每

9、一项指标因素中最小和最大的值。处理后数据如表5.1:表5.1:250组心脏病检测的样本数据归一化处理后的数据表序号ABCDEFGHIJKLM10.3158 1 0.3333 0.4444 0.4869 0.9 0.8182 0.8333 0 0 0 0 0 20.5526 0 0.6667 0.6296 0.3088 0.9 0.8182 0.6852 0 0.2 0.9167 0 0 30.2368 1 0.3333 0.3519 0.4771 0.9 0.9091 0.1481 0 0 0 0 0 40.5263 0 1.0000 0.4259 0.3644 0.9 0.8182 0.24

10、07 1 0.3 0.9167 0 0 2470.6842 1 0.2593 0.2941 0.9 0.8182 0.5093 0 0.4 0.8330 0 0 2480.6842 1 0.6667 0.2593 0.4020 0.9 0.8182 0.6296 1 0.3 0 0 1 2490.5263 1 1.0000 0.2778 0.4641 0.9 0.9091 0.6296 1 0.4 1 0 0 2500.4474 1 1.0000 0.3519 0.3725 0.9 0.9091 0.4444 1 0.2 0.91670 0 用Fisher模型求解则需要人工剔除和改动一些数据。

11、觉察到因素中的异常数据均为-9,我们假设-9为因素缺失值的代替,然后对异常数据进行处理,将指标E中有-9的样本剔除;将指标FGKM中的-9替换为正常值(将F、G中的-9换成0;K中的-9换成2;M中的-9换成3)。并预测出现-9较频繁的因素为非主要因素。如图5.25.2:对250组样本数据进行剔除和改动后得到的数据表序号ABCDEFGHIJKLMN1401214028900172002-9302490316018000156012-931337121302830198002-930230481410626310110002-931231551212025610137002-9702325512

12、16029210143122-933233481412227511150123-932我们将经过数据处理后的250个案例根据值分成两组,然后对其13项指标求平均值结果如表5.3:表5.3::正常人和患者13项生理指标的平均值指标1.A2.B3.C4.D5.E6.F7.G8.H9.I10.J11.K12.L13.M正常人46.28 0.657 2.61 131 237 0.042 0.210 145 0.105 0.196 1.97 -8.8 3.17 患者49.18 0.867 3.59 136 270 0.144 0.233 130 0.656 1.261 2.01 -8.9 3.51 从上

13、表我们很容易发现,心脏病判别的13项指标对样本是患病的影响区别很大。如患者的第7、9、10项指标的值比正常人大很多。我们搜索了相关资料来逐一查询附录表一中列举的各种因素与患心脏病之间的关系。查阅后发现年龄A、性别B、地中海贫血M、静息时心电图结果G、血清中胆固醇含量E、运动时是否诱发心绞痛I与患心脏病有很大关系。据此可初步判断静息时心电图结果G、运动是否诱发心绞痛I和运动心电图ST下降程度J为判断心脏的关键因素。6、模型的建立与求解6.1问题一的模型与求解:6.1.1BP人工神经网络模型 神经网络系统是迄今为止功能最强、效率最高的最完美的信息处理系统,它所具有的非线性映射及并行处理能力在非线性

14、系统的辨识和控制中发挥了独特作用,成为研究非线性预测控制的一种新工具,且BP(Back propagation)神经网络是被研究得最为深入,应用最为广泛的人工神经网络之一。BP人工神经网络通过模仿生理神经网络的结构和功能来进行信息处理。大量的人工神经元以一定的规则连接成神经网络,神经元之间的连接及各链接权值的分布表示特定的信息。神经网络分布式存储信息,具有很高的容错性。BP网络能学习存储大量的输入输出模式映射关系,而无需事先揭示描述这种关系的数学方程。它的学习规则是使用最速下降法,通过反馈不断调整各层神经元之间的权值和阈值(误差反向传播法),使网络的误差平方和最小。模型拓扑结构包括输入层(in

15、put),一层或多层隐层(hide layer)和输出层(output layer),具体神经元模型可用下图表示:a、BP人工神经网络模型的建立 BP神经网络拥有多层网络结构,其中隐层和输出层上的每个神经元都对应一个传递函数或激发函数和一个阈值。BP神经网络隐层与输出层上的神经元j输出由下式决定;其中,表示该神经元对应的传递函数激发函数,表示神经元到神经元的连接权值,表示神经元的输入,表示神经元的阈值,传递函数采用连续可微的非线性的Sigmoid函数。 BP算法所采用的学习过程由正向传播和反向传播组成。在正向传播过程中,如果输出层不能得到期望结果,就是实际输出与期望输出值之间有误差,那么转入反

16、向传播过程,将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,逐次地向输入层传播计算,再经过正向传播,如此反复,以使误差达到最小。神经元的训练中权重和阈值的更新如下:权值更新:阈值更新:其中,为学习速率,为动量系数。 利用神经网络对心脏病检验的一些确诊者的生理指标数据,最终判断其是否患病及患病的程度综上,BP神经网络模型如下:b、问题一利用BP神经网络模型进行求解: 我们用SPSS中的神经网络算法直接求解,具体操作步骤如下:1.打开SPSS软件,新建一个数据。2.导入含有分组变量N的数据库。3.在分析里选择神经网络的多层感知器变量的设置:将患病程度N设为因变量,年龄A、性别B设为协变量

17、,其余因素归为自变量,协变量重标度设为第二个标准化(01标准化),导入分区标量。 5,设置分区变量当时,个案将会被作为训练样本,时,将会被列入检验样本,时,个案被分配到坚持样本中。据此当我们将个案151到175之间的25个案例值设为0,其余置1,这样我们就将样本分成了两组,包含225个案的训练组和25个案的检验组。6、设定网络体系结构点开体系结构选择自定义体系结构,将隐藏层中的层数设定为两层,单位数设定为自动,激活函数设为。将输出层的激活函数设定为。在培训组中将培训类型设为批处理,优化算法设为梯度下降。在设置输出时,选中描述,键结值,模型汇总,分类结果,曲线,累计增益图,增益图,观察预测图,个

18、案处理摘要,自变量重要性分析。 经过BP神经网络处理后,我得到如下结果如下表6.1:表6.1:BP神经网络处理结果表分类样本已观测已预测01234正确百分比训练01301000092.9%1181600047.1%21011000.0%3515000.0%428000.0%总计百分比73.3%26.7%.0%.0%.0%64.9%测试0150000100.0%100000.0%201000.0%301000.0%400000.0%总计百分比88.2%11.8%.0%.0%.0%88.2%因变量: N 自变量重要性及其标准化重要性分析结果如图6.1:图6.1自变量重要性及其标准化重要性分析结果图

19、 从上表很容易看出13个因素对判断患心脏病程度影响的大小有很大差异,因素,在BP神经网络中判断患心脏病程度的重要性明显弱于因素,。6.1.2 Fisher判别模型: a、 Fisher模型的建立: 由于心脏疾病的诊断结果N有0、1、2、3、4五种不同的值,对应的我们将总体n分成5组。Fisher模型判别基本思想是从总体中抽取p个具有个指标的样本观测数据,借助方差分析的思想构造一个判别式:其中系数,使5组的区别最大,而使每组内离差最小。对于一个新的样品,我们则只需要将其个指标代入Fisher判别式求出值,然后与各临界值比较,以确定它属于哪一组,即是否患病和患病程度。此时要求5组间的离差平方和越大

20、越好,组内的离差平方和越小越好。5组间离差平方和为: 组内离差平方和:即要求比值 据此,我们直接运用SPSS软件可求出使值最大时的,从而得出Fisher判别式:综上,我们建立的Fisher判别模型为:b、对问题一利用Fisher判别模型进行求解:运用SPSS软件求解结果如表6.2表6.2:Fisher判别模型求解结果表 我们将上述参数代入Fisher判别式得到结果如下:运用SPSS得到Fisher判别函数判断患心脏病程度正确率结果如表6.3:表6.3:Fisher判别函数判断患心脏病程度正确率结果表分类结果aN预测组成员合计01234初始计数01152032314316183433422572

21、5213322872241102913%080.414.02.11.42.1100.0117.652.98.811.88.8100.029.523.833.39.523.8100.0313.69.19.136.431.8100.047.77.7.015.469.2100.0a. 已对初始分组案例中的 67.4% 个进行了正确分类。6.2问题二的求解: 在问题一得到的Fisher判别函数的基础上,我们将44名就诊人员的13项指标代入Fisher判别函数式,得到结果如表6.4:表6.4:附录三中44名就诊人员的患病情况表序号患病情况序号患病情况序号患病情况序号患病情况121202303402213

22、0244350321412503614115026037050161270380641702813907018229140080190304410902023104211002103204301102213324416.3问题三的解答: 基于BP神经网络对13个指标重要性的分析,我们初步判断因素L、M、A、G、B、F、D、J为判断心脏病患病情况的非关键因素。根据主因子分析法用少数几个因子去描述许多指标或因素之间的XXX的思路,我们逐一剔除上述因子并观察其对正确率变化的影响。我们发现当我们试图剔除因子A,G和J,Fisher判别正确率会下降到65.2%,64.8%和64.8%,而单独剔除其它因子

23、则几乎不会影响判断正确率。因此,我们认为因子A,G,J为判断患心脏病程度的关键因素。 综上,我们得出判断心脏病患病程度的关键因素为: A:年龄 C:胸痛类型 E:血清中胆固醇含量 G:静息时心电图结果 H:最大心跳速率 I:运动是否诱发心绞痛 J:运动心电图ST下降程度 K:ST段斜坡 6.4问题四的解答:根据在问题三种得出的关键因子,我们重新修改了Fisher判别函数,结果如表6.5: 表6.5:Fisher判别式系数表根据分类函数系数表格我们可以得到新的Fisher判别函数为: 然后再将44名待诊断者8项关键生理指标代入上述各类型的Fisher判别函数,判断出44名诊断者患病情况如表6.6

24、: 表6.6:将8项关键生理指标代入后附录三中44名就诊人员的患病情况表序号患病情况序号患病情况序号患病情况序号患病情况121202303412213024435032141250361421502603705016127038064170281390701822914008319030341090202310420100211320430110221332441从上表可知,44名待诊断者中,未患病的有24名,患心脏病程度为1的有9名,患心脏病程度为2的有7名,患心脏病程度为3的有2名,患心脏病程度为4的有2名。结果分析: 将上表结果与问题二中得到的结果进行比较,两次结果只有5组判别不一致,并

25、且数据判别误差较小,患心脏病情况和样本总体患心脏病情况很接近。这说明我们在问题三中选择的关键因素较为准确。7、结果分析7.1问题一结果分析:相较于BP神经网络对分组案例88.2%的正确率,Fisher模型的正确率只有67.4%。这一方面和Fisher判别模型需要在总体之间差异较大的基础上进行判别有关,另一方面也可能由于我们对数据进行了不正确的处理,如假设9为正常值缺失的代替并将其还原成正常情况对应的值。7.2问题三结果分析:判断L,M,G,B,F,D为非关键因素,这和我们在数据分析中对-9的出现频率和是否是非关键因素的猜测相吻合;得出G,I,J为关键因子也与我们在数据分析中得出的第7,9,10

26、项指标是关键因素一致。7.3问题四结果分析: 将表6.6结果与问题二表6.4得到的结果进行比较,两次结果只有5组判别不一致,并且数据判别误差较小,患心脏病情况和样本总体患心脏病情况很接近。这说明我们在问题三中选择的关键因素较为准确。8、模型的评价8.1优缺点:优点:(1)本文分别建立了BP人工网络和多元Fisher两种判别模型,两种模型 同时使用能够在一定程度上相互弥补各自的缺陷,使得出结果更准确。 (2)本文建立的统计识别模型能有效的解决实际生活中相类似的样本分类的问题,具有较强的实用性和通用性,而且误差也比较小;(3)本文建立的模型用科学的方法为诊断心脏病提供了合理、有效的诊断方法,具有现

27、实意义;(4)此模型可以寻找出影响患心脏病的关键或主要元素,并能通过各项生理指标测出患病程度;缺点:(1)Fisher判别模型需要在总体之间差异较大的基础上进行判别,本题的数据总体之间差异并不是很明显,导致结果误差较大(2)本文所讨论的问题实际对象为前来就诊的患者以及疑似患者,我们所建立的BP神经网络模型和Fisher判别模型在第二问中并不能100%的检测出就诊人是否患病,离实际的临床阶段还有一些差距。8.2改进方法: 在判别正确率上BP人工神经网络模型要远高于多元Fisher模型,若能利用MATLAB建立BP人工神经网络的simulink仿真函数得出BP神经网络的判别函数运用到后几问中,相信

28、得到的结果会更理想8.3推广:本模型不仅可以运用到心脏病的诊断上面,而且可以应用与其他各种疾病的诊断。而且还可以应用到医学以外的各个领域,比如通过职员的某些指标(如:业绩,各种技术水平,人际关系等指标)来判断一个人工作的能力好坏,或是通过企业的某些指标(如:未分配资产与总资产之比,销售额与总资产之比,支付利息税前的利润与总资产之比等指标)来判断企业是有偿还能力或是破产。通过某种或是某几种指标来判断只有两种结果值的实际问题大部分可以用这种模型来解决。8、参考文献1 榆林学院学报,2006年7月2 邢进良,BP神经网络模型及其应用,2007年3 曾庆茂,人工神经网络在数学建模中的应用,专题讲座 4

29、 何晓群,多元统计分析北京:中国人民大学出版社,2011年7月17号 9、附录附录一:A年龄B性别 (1 表示男性; 0 表示女性)C胸痛类型 1: 典型的心绞痛 2: 非典型心绞痛 3: 非心绞痛 4: 无症状D静息血压E血清中胆固醇含量 mg/dlF空腹时血糖 > 120 mg/dl, (1 = 是; 0 = 否)G静息时心电图结果 0: 正常 1: 有ST-T波异常 2: 可能左心室肥大H最大心跳速率I运动是否诱发心绞痛(1 = 是; 0 = 否)J运动心电图ST下降程度KST段斜坡 1: 上升 2: 平 3: 下降L大血管属性M地中海贫血 3表示正常;6表示固定的缺陷;7表示可逆

30、缺损N心脏疾病的诊断结果 0: 正常 其他:患病程度附录二:表示将该指标异常数据改成正常值表示将该指标的异常数据剔除未被标颜色的指标的数据没有处理ABCDEFGHIJKLMN401214028900172002-930490316018000156012-93137121302830198002-93048041382140010811.52-933391312033900170002-930450213023700170002-930541211020800142002-93037141402070013011.52-931480212028400120002-930370313021100

31、142002-93058121361640199122-933391212020400145002-930491414023400140112-933420311521101137002-93054021202730015001.52-930381411019600166002-931430212020100165002-930601410024800125012-931361212026700160032-931430110022300142002-930441212018400142012-930490212420100164002-930441215028800150132-933401

32、313021500138002-930361313020900178002-930531412426001112132-930521212028400118002-930530211346800127002-930511212518800145002-930531314551800130002-933541412522400122022-931411413017201130022-933430215018600154002-930321212525400155002-930410211025001142002-930480415022700130112930540215023000130002

33、-930540313029401100102-934351215026400168002-930521314025901170002-930431412017500120112-973591313031800120112-930371412022300168002-930501214021600170002-930361311234000184012-930411411028900170002-961501413023300121122-97247041202050098122-964410213024500150002-93052041301800014011.52-930510216019

34、400170002-93031141202700015311.52-931581313021301140002-961541415036501134011-93052141123420196112-933491210025300174002-930451414022400144002-930461412027700125112-931500211020200145002-930370212026000130002-930450413229700144002-930321211022500184002-93052141602460182142-933441415041200170002-9305

35、71214026501145112-931441213021500135002-930521412018200150002-932440412021801115002-93055141402680012811.52-932461315016300116002-930321411852900130002-932350414016700150002-930521214010000138102-930491413020600170002-931551311027700160002-930541212023800154002-930631415022300115002-9315212160196001

36、65002-930530214021600142122-930431112029101155002-93255141402290011010.52-930391413030700140002-930520212021000148002-9304814160329009211.52-932390311018201180002-930581413026300140122-932431214220700138002-93056141208500140002-930411212526900144002-930651413027501115112-934511413017900100002-970400

37、415039200130022-962401412046600152112-961461411818600124002-971480412025401110002-930341215021401168002-930501414012900135002-930391219024100106002-930590213018800124012-93057141502550092132-932381214029700150002-930490313020701135002-930330410024600150112-931381412028200170002-931350112016001185002-930341114015600180002-931520312527200139002-930461411024001140002-930580218039300110112-974581213023000150002-930541212024600110002-930340213016100190002-930480410816300175021-93042131202280015211.52-930381314529200130002-930461411020200150102-93156141703880112212

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论