疾病诊断模型_第1页
疾病诊断模型_第2页
疾病诊断模型_第3页
疾病诊断模型_第4页
疾病诊断模型_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。我们知道,抄袭别人的成果是违反竞赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。如有违反竞赛规则的行为,我们将受到严肃处理。我们参赛选择的题号是(从A/B/C/D中选择一项填写):我们的参赛报名号为(如果赛区设置报名号的话):所属学校(请填写完整的全名):广东商学院参赛队员(打印并签名):1.邓思文2. 苏境财3. 吴妙指导教师或指导教师组负责人(打印并签名):戴宏亮日期:2012年8月18日2010高教社杯全国大学生数学建模竞赛编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):赛区评阅记录(可供赛区评阅时使用):全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):疾病诊断问题摘要

随着就医压力增加,在降低误诊率的前提下提高诊断效率是非常重要的,本文利用

确诊样本数据建立判别模型,并利用模型筛选出主要元素,对就诊人员进行诊断。针对问题(1),利用确诊数据建立Fisher判别模型、Logistic回归模型和BP神经网络模型,运用matlab、spss求解,定出判别标准,并进行显著性检验和回代检验,判别模型的准确率。结果显示Fisher判别模型的准确率为%,Logistic回归模型和BP神经网络模型准确率均为100%,Logistic回归模型相对简便。针对问题(2),选择问题一中检验准确率为100%的Logistic回归模型和BP神经网络模型对40名就诊人员进行诊断,结果如下表:Logistic回归模型BP神经网络模型健康者1821患病者2219针对问题(3),建立Logistic逐步回归模型对元素进行筛选,利用spss软件求解,确定Ca和Fe是影响人们患这种病的主要因素,因此在建立诊断模型时,其他元素不作为参考指标。针对问题(4),筛选出主要影响因素后,将Ca和Fe作为指标建立Logistic回归模型和BP神经网络模型,发现两个模型的诊断结果一致,如下:健康者患病者 10192022232526272829303132333436373839401234567891112131415161718212435针对问题(5),对比问题二和问题四结果,发现无关元素会影响模型进行诊断的准关键词Fisher判别模型Logistic回归模型BP神经网络模型逐步回归模型一、 问题重述人们到医院就诊的时候,通常通过化验一些指标来协助医生诊断。医生根据化验所

得的元素含量,利用某种指标,判断病人是否患病。本题给出了附录1(确诊人

数),和附录2(待诊人数),其中附录一中1至30号是确定患病的病人,而31至60号是没有患病的健康人,要求回答以下问题:(1)、根据附件1中的数据,提出一种或多种简便的方法,判断属于患病者或健康人的方法,并检验你提出方法的正确性。(2)、按照(1)提出的方法,对附件2中的40名就诊人员的化验结果进行判定他(她)是患病者还是健康人。(3)、能否根据附件1的数据特征,确定哪些指标是影响人们患这种病的关键或主要因素,一边减少化验的指标。(4)、根据(3)的结果,对附件2中的40名就诊人员的化验结果进行判别,判定他(她)们是患病者还是健康人。(5)、对(2)和(4)的结果作进一步分析。二、问题分析随着就医压力增大,简便的医学化验标准和方法可以大大提高医生诊断的效率。依据已确诊的病例数据特征,对就诊病例进行分类,协助医生做出准确的医疗判断。针对问题(1),要求利用附录1已确诊的病例数据找出一种或多种简便的方法,判断就诊人员患病与否。依据附录1中60位已确诊病例,可从患病者与健康者体内的7种元素含量入手,即分析确诊人员的体内元素含量和患病与否的关系。因此,可构造各种判别分析法,同时对其进行检验,再利用已知数据回代,分别计算不同判别方法的准确率并进行比较。针对问题(2),基于问题(1),可选择准确率最高的判定方法对附录2的就诊人员进行病例判诊,诊断出就诊人员是否健康。针对问题(3),问题二中两个准确的模型出现不同结果,所以可以确定存在干扰因素,利用Logistic逐步回归模型确定主要影响元素,提高诊断的准确率与速度。针对问题(4),排除无关元素,利用问题(1)中确定的模型重新建立诊断函数,对40名就诊人员重新进行诊断。针对问题(5),通过比较问题(2)和问题(4)元素和结果的改变,分析影响诊断结果的因素是什么。三、模型假设1)假设检测数据准确无误。2)假设确诊人员中没有误诊的情况出现四、符号说明符号符号说明Gi确诊病例总体,i1,2i Ui 总体Gi数据矩阵

ci疾病判别函数的各系数,i0,1,2,,7yiGi的判别值P判别模型的准确率,即1-误判率(Ai,Bi)网络学习样本,Ai为样本输入,Bi为期望输出2xi隐含层第i个神经元的输出wij各层权系数i阀值BP神经网络的学习率e输出层输出值与期望输出值的误差E(y)在自变量xi的条件下y=1的期望或概率Score单元素的得分符号符号说明Gi确诊病例总体,i1,2i总体Gi数据矩阵ci疾病判别函数的各系数,i0,1,2,,7yiGi的判别值(Ai,Bi)网络学习样本五、模型的建立与求解

问题一的求解依据检查结果,对就诊人员进行健康与否诊断的方法有多种,根据已知限制条件,本文选择其中三种判别分析模型:Fisher判别模型、二类logistic回归判别模型以及BP神经网络模型。同时,为了检验三种判别分析模型的准确率,我们引入一个变量P为准确率。判断准确的人数Fisher判别模型Fisher判别模型的建立与求解将患病和健康为两个总]、2,并且都以体内检测的7个元素作为其集合素。Fisher判别主要借助方差分析的思想,利用投影,将这两个总体投影到一个方向,建立线性判别函数,并利用判别规则,通过计算后得出检查结果属于1或2G G(1)确定原始数据矩阵以各元素为列向量,以就诊人员为行向量,构造关于病患和健康者的两个矩阵。的数据矩阵为:16618515.8・・・16618515.7・..427178 28.8•…1692的数据矩阵为:G17013.9.22W21317013.9.22W17921・・.330122)计算两组各元素数据的平均值。矩阵1,2的列平均数分布为:WWX=(,, ,,,)3)利用微分学的方法,计算系数ci,i=1,2,3,4,5,6,7c要体现出分组的两个特征:①、组间差距越大越好;②、组内差距越小越好。可得出以下公式:L(L(l1,l2,l3,l4,l5,l6,l7)(X1—X1)2(X2—X2)2对其求偏导,得出C=cic(4)确定判别函数yc1xyc1x1c2x2c3x3c4x4c5x5c6x6c7x755)计算G1、g2代表的判别值GGy1ci1xiy1ci1xii172y2 ci2xii1得出判别值为:y030y130y260(6)上述计算过程,可由matlab编程实现,代码见附录得出结果如下:y-0.000069x10.00346x2-0.000337x3-0.0000624x40.000199x民50.00006291-0.01075y1y2 一0・152y0 -0・0811因此,在本题中1>0,当y>0时,y的样本属于1,即样本属于患病者。反之样yy y G本属于G2,即样本属于健康者。G5・1・1・2Fisher判别法的检验利用F检验,设显著性水平spttss1X0统3算0计3spttss1X0统3算0计33量3计1X0如y-12yF(7,52)F(7,50)=因此,F>F(7,50)>F(7,52)说明判别函数是有效的,从而可以用来做判别5.1.1.3Fisher判别回代检验将已确诊样本数据回代判定函数,得出患病者检验值表5.1.1-1(见附录表)和健康者检验值如表:表5.1.1-2:健康者检验值病例号检验值病例号检验值病例号检验值31-0.41-0.513242-0.52-0.334353-0.34-0.4454-0.35-0.455536-0.46-0.56-0.37-0.47-0.573848-0.58-0.3949-0.59-0.405060由表5.1.1-1和表可知;患病者检验准确,而健康者被误诊为患病的个案有4个,分别为就诊人员32、38、39和60;它们都大于。因此,Fisher判别模型的准确率

P为:P=56=%.605.1.2BP神经网络由定理得出,以双曲线正切函数为激活函数的三层BP神经网络,可以以任意精度逼近任意连续函数。并且,有导师学习的BP神经网络实质是在对学习样本进行学习的过程中,利用梯度下降法,不断反馈修改权值,直到网络输出与期望值的误差小于给定标准,结束学习训练,并固定联结权值,输入待测样本就可给出BP适当的输出。因此,网络对于解决判别就诊人员健康与否的问题非常实用、有效。

5・1・2・1有导师学习的BP神经网络模型的建立(1)确定学习样本以样本(Ai,Bi)作为学习样本,其中,输入数据为Ai(x1,x2,,x7,1),Bi(儿心,,yn)为相应的期望输出值。当i1,2,,30,入表示已确诊为患病的1-30号病例;当i31,32,,60时,Ai表示已确诊为健康的31-60号病例。入表示已确诊为患病的(2)构造前向三层网络前向三层网络含有输入层、输出层和隐含层,并依据Lippmann研究⑵:对于任给k个实数值样本,有2k+1个隐节点的三层网络可以记忆它们,这个隐单元的激发函数可以是任何渐近函数,可设隐含层节点N=5,即能使网络记忆全部样本信息。其结构如图5.1.2-1:X2输出层隐含层(节点数为5)层图5.1.2-1神经网络丨期值y丨期值y-c输出2对于隐含层的第i个神经元的输出xi,有xn11,wi(n1)n1ixn11,wi(n1)n1i,di2ijxj1wj1f(ui)i2其中,Sigmoid函数f(u2)i,各层权系数wij随机初始化而输出层输出值X3(0,1)・(4)求各层的学习误差输出层误差为d3x3(1x3)(x3y)2223隐含层误差为diXi(1Xi)wid21输入层与隐含层的连接权t)d3X2・i隐含层与输出层的链接权重:Wi(t2)Wij修正权系数wij和阀值i21输入层与隐含层的连接权t)d3X2・i隐含层与输出层的链接权重:Wi(t2)Wij其中,t为学习次数,为学习效率,即步长,一般比较小。判断学习结束,检验网络误差给出误差函数e1(X3y)的标准,若满足误差要求,学习结束,固定权系数,2i并重新对样本进行检验,计算出网络命中率;否则,一直循环至最大迭代次数n。(7)输入待测病例样本,对病例样本进行健康与否分类。5・1・2・2BP神经网络模型的求解利用Matlab编程,设置学习率=,最大迭代次数为50000次,误差为e1E10,网络学习训练固定权重后,再以学习样本作为待测样本进入网络进行健康与否检验,分类检验结果如表5・1・2-1:表5・1・2-1:患病病例检验值病例号检验值病例号病例号检验值病例号111212313414515检验值病例号检验值212223242561661671781891910202627282930由检验结果表明,BP神经网络的检验准确率P=100%,无误判情况出现。5.1.3Logistic回归分析模型Logistic回归分析是对定向变量的回归分析,而由于因变量分为两类,取值只有1(患病者)和0(健康者),因此不能用一般的回归分析。此处可将只取0和1的因变量离散值,改为连续的函数,从而得到它与7种元素的关系,然后通过这种关系即可判断就诊人员是否患病。Logistic回归分析模型的建立与求解(1)设因变量为y,且有以下简单线性回归方程:g(p) ln(1ff(p)(p)))y 01x1由于yg(p) ln(1ff(p)(p)))y 01x1由于y取值是离散型的,记 /p(yp2x23x34x4x),1p5x5p(y6x67x70|x),即得到期望:E(y)0(1p)1pp则有:E(y)E(y)表示在自变量xi2xE(y)E(y)表示在自变量xi2x2的条件下y=1的期望或概率。0 1x13x34x45x5 6x67x7=P即苴logistic回归方

程为:3X343X34x4 5x56x67x7)(01x12x2pf(p)eI2)由于(对X的变化缓慢,因此引入(的logistic变换,即:f(p) f(p)显然,g(p)以ln(f(p))=0为中心对称,且在f(p)=O和f(p)=l间变化幅度大,如

图:lf(p)图5.l.3-l:logistics回归曲线显示(3)根据所给的样本值,进行参数估计,可利用spss求得logistic回归方程系数估计,得到g(p)方程:f(p)g(p)ln()39.3520.584xl0.4x2l.77lx3l.05x40.028x50.289x60.l6x7lf(p)(4)将g(p)回代,求出回归方程f(p)exp(39.3520.584xl0.4xl.77lxl.05x 0.028x50.289x60.l6x7)f(p)= l 2 3 4 5 6 7lexp(39.3520.584 0.4x2l.77lx3l.05x40.028x50.289x60.l6x7)若f(X))(0,),则属于健康人,记为0;反之属于患病者,记为15)模型检验由上表得,-2对数似然值为0,说明模型对数据达到完美拟合,且Cox&SnellR方和NagelkerkeR方统计量分别为和1,说明由方程解释的回归变异比较大,拟合效果很好。将60名已确诊患病与否的就诊人员检测结果代入f(p),得到准确率为:P==100%6060问题二的求解基于问题一,Fisher判别、BP神经网络以及logistic回归模型的准确率分别为%、100%、100%,在此处选择BP神经网络和logistic回归模型对40名就诊人员进行健康与否判别,得出诊断结果如表和表:表:BP神经网络对就诊人员的分类诊断病例号测定值病例号测定值111212313414515616717病例号测定值病例号测定值21312232233324342535263627378189191020283829393040由上表可看出,健康者为病例号6,7,10,19,20,22,23,24,25,26,27,28,29,30,31,32,34,36,38,39,40,共21人;患病者为病例号1,2,3,4,5,8,9,11,12,13,14,15,16,17,18,21,33,35,37,共19人。表:logistic回归分析对就诊人员的分类诊断待检验检验值待检验检验值待检验检验值待检验检验值111112113102112122032031131230331411412413405115125035061161260360711712703718118128038091190290390100200300400由上表可看出,健康者为病例号10,19,20,22,23,25,26,27,28,29,30,31,32,34,36,38,39,40,共18人;患病者为病例号1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17,18,21,24,33,35,37,共22人。BP神经网络和logistic回归在6,7,24号病例就诊时出现偏差,6,7,24号病例在BP神经网络测试中分为健康者,而在logistic回归中则为患病者。问题三的求解二项logistic逐步回归模型的建立与求解基于问题一中二项logistic回归模型,在SPSS数据分析选择二元logistic回归的向前条件方法,经多次试验,取进入步进概率p二,删除步进概率p二,进行12二项logistic逐步回归过程拟合起步前不包含检验元素(常量)的logistic模型对单元素变量进行卡方检验,0.05,对单元素变量进行卡方检验,0.05,进入logistic模型0.05,不能进入假设已逐步到第i步,引入剔除变量0gis七“模型对j个单元素的得分Score,自由度df以及Sig值,最为显著的元素即Sig最小最先引入到logistic模型,若min(Sig)不止一个,其中Score最大优先选择得分公式为:60[xi(yiy)]2Scorej=i1y(1y)(xi x)i1利用以上公式,将数据输入SPSS中。得到以下结果:从上表可以看出,所有的Sig都是0,而卡方越来越大,说明越来越显著判别拟合效果由Hosmer和Lemeshow检验的随机性表可观察到观测值与期望值接近,说明模型拟合得比较理想。由上图“如果移去项则建模”的步骤1可以看出,移去Ca项时,会引起的数值更改。只剩下常数项。在步骤2中,移去Fe项时,会引起的数值改变。只剩下Ca和常数项。步骤1和步骤2中,不管移除哪一项,更改的显著性都非常小,因此两项都不能移除。由此,可得出一个新的logistic回归模型:

f(p)g(p)ln(f 977.9540.556x111.509x21f(p)即:exp(977.9540.556x11.509x)f(p)= 1 21exp(g(p)) 1exp(977.9540.556x111・509x2)丄 L-i同第一问中的logistic用法相同,当f0p))时,就诊者属于健康人,记为0;反之,属于患病者,记为1.利用第一问的数据,验证上述公式f(p)。得出结果与问题一的结果相同,准确率f(p)为P=100%。问题四的求解利用问题二的方法,根据问题三得出的结论,利用Ca和Fe作为检测指标,求解未确诊的40名就诊人员。得到如下结果:表利用Ca和Fe作为指标的BP神经网络病例测定待检验检验值待检验检验值待检验检验值待检验检验值111213121222323132333414243451525356162636717273781828389192939102030\ 40由上表可看出,健康者为病例号10,19,20,22,23,25,26,27,28,29,30,31,32,3433,36,37,38,39,40,共20人;患病者为病例号1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17,18,21,24,35,共20人表利用Ca和Fe作为指标的logistic模型病例测定待检验检验值待检验检验值待检验检验值待检验检验值111112113102112122032031131230330411412413405115125035161161260360711712703708118128038091190290390100200300400由上表可看出,健康者为病例号10,19,20,22,23,25,26,27,28,29,30,31,32,34,33,36,37,38,39,40,共20人;患病者为病例号1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17,18,21,24,35,共20人。问题五的求解Logistic模型和BP神经网络模型是以已确诊样本为基础建立的,经过检验后两个模型的准确率都是100%,而在问题二中对40名待诊者进行诊断出现不同结果,说明两个模型在建立过程中,有干扰因素影响了模型的准确性,在问题三中筛选出主要影响元素后,再对同样的就诊者进行检验,出现的结果是完全一致的,说明选取与疾病无关的元素作为检验指标会影响模型的准确性。在问题四中进一步说明两个模型都能够比较准确的对患者进行诊断。分析问题二和问题四中出现的结果,说明在医学检验中,筛选主要因素不单单可以提高检验效率,更可以提高检验模型的准确率,避免误诊六、模型评价模型的优点:1、Fisher判别模型的运用简单,在模型建立以后,直接利用指标值和线性判别函数就可以进行诊断。2、Logistic回归模型可以直接利用建立的回归方程进行诊断,且具有相当的准确性。3、BP神经网络模型具有较高的准确性,进行诊断时,具有相当的可靠性。模型的缺点1、 Fisher判别模型缺乏准确率,比较容易出现误判的现象。2、BP神经网络模型在实际操作比较复杂,推广性相对弱。3、在建立模型过程中,利用所有样本数据进行建模,进行回代检验,缺乏一定的客观性。六、模型改进建立模型过程中,因为数据样本量的限制,没有将数据分为训练组和检验组,这导致模型的建立缺乏一定的客观性。为了提高模型的客观性和准确性,对数据进行收集,在样本量达到一定量的情况下将数据分为训练组和检验组,使模型更具客观性和准确性。一、参考文献张德丰.《MATLAB模糊系统设计》,北京国防工业出版社,2009,4袁曾任.《人工神经网络及其应用》,清华大学出版社,1999倪雪梅.《SPSS统计分析》,清华大学出版社,2010,3任康.Logistic回归模型在判别分析中的应用[J],南京信息工程大学,2007,11(6):71-73.附录】Fisher判别代码clear;clc;clos

温馨提示

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

评论

0/150

提交评论