logo资料库

关于肾炎诊断方法的研究.doc

第1页 / 共27页
第2页 / 共27页
第3页 / 共27页
第4页 / 共27页
第5页 / 共27页
第6页 / 共27页
第7页 / 共27页
第8页 / 共27页
资料共27页,剩余部分请下载后查看
关于肾炎诊断方法的研究
1 问题的提出
2 问题的分析
3 模型假设
4 符号说明
5 模型的建立与求解
5.1 问题一和问题二的求解
5.1.1 BP神经网络模型
5.1.2 Logistic模型
5.1.3 支持向量机模型
5.2 问题三和问题四的求解
5.2.1 熵值法模型
5.2.2 主成分分析
5.3 问题一和问题二的再判别
由问题三和问题四中对主成分分析的结果,筛选出关键性指标Cu、Zn、Mg、K四项。然后基于这四项指标,
5.4 对诊断结果的进一步分析
将表8所得预测结果与之前的预测结果相比较,如图11所示
图11 诊断结果比较
图11中圆圈表示由全指标预测的结果,型号表示由关键性指标预测的结果,从图中看出大部分圆圈和星号重合,
6 模型的改进
7 整体模型的评价
我们所建立的判定模型不论是在全指标还是在只有关键性指标的条件下都有很高的正确率,均能够比较准确迅速的
但是所建立的模型也有一定的局限性,如BP算法所求得的解,只能保证是依赖于初值选取的局部极小点;Log
参考文献
附录
关于肾炎诊断方法的研究 摘要:是否患有肾炎与就诊者体内微量元素的含量有关,科学的判定方法可以对就诊者 的身体情况给予正确的判定,这对为患者能在最短的时间内得到及时有效的治疗具有重 要的意义。 针对问题一和问题二,本文根据 60 名已确诊者体内 Zn,Cu,Fe,Ca,Mg,K, Na 七种微量元素含量的数据,抽取其中 40 个样本进行模型的建立,剩下 20 个样本用 于模型的正确率的检验。本文分别用 BP 神经网络、Logistic 回归分析和支持向量机三种 方法建立判定模型,并对三种判定方法的正确率进行了检验和评价比较,结果表明三种 方法均能正确判定就诊者是否患病,且以支持向量机判定模型的正确率为最高,效果最 好,再分别用三种判定模型对待诊断的 30 名就诊者进行诊断。 针对问题三和问题四,考虑到化验的快速性和成本,分别采用墒值法模型和主成份 分析模型确定出判定人们患肾炎病的关键性指标,以减少化验指标的数目,从而达到提 高化验速度和降低化验成本的目的。 (1)熵值法模型:通过引入熵值和差异性系数的概念来比较确定每个指标所包含的 信息量,选取其中信息量大的指标为关键性因素。 (2)主成分分析模型:主成分分析是把各变量之间互相关联的复杂关系进行简化分 析的方法。试图在力保数据信息丢失最少的原则下,对多变量的截面数据表进行最佳综 合简化,也就是说,对高维变量空间进行降维处理。经计算得到各主成分的贡献率和综 合得分,以此为依据选取关键性指标。 然后针对取出的关键性指标,用判定性最好的支持向量机模型对上面两种模型进行 正确率检验。可以看出两种模型选取的关键性指标都能基本反应就诊者的病情,熵值法 模型的正确率为 85%,主成分分析模型的正确率达到 90%,在保证了诊断正确率的同时, 实现了精简化验指标和降低成本的目的,所以这两个模型都是合理的。 最后将全指标条件下模型诊断的结果与关键性指标条件下的模型诊断的结果相比 较,可以看出,两种模型的诊断结果相似度较高,所以可以应用关键性指标模型进行诊 断。 关键字:肾炎;诊断方法;支持向量机;墒值法模型;主成分分析 1
1 问题的提出 肾炎是一种困扰人们生活和健康的疾病,及时发现和治疗能够有效地避免和遏制肾 炎恶化。人们到医院就诊时,通常要化验一些指标来协助医生的诊断。诊断就诊人员是 否患肾炎时通常要化验人体内的各种元素含量。 现有 1-30 号例是已经确定为肾炎病人的化验结果;31-60 号病例是已经确定为健康 人的化验结果;61-90 号病例为待诊人员的化验结果 (1)请根据已给数据,提出一种或多种简便的判别方法,判别属于患者或健康人的 方法,并检验所提出方法的正确性,然后判别 61-90 号待诊人员是属于患者还是健康人; (2)请根据已给数据,确定哪些指标是影响人们患肾炎的关键或主要因素,以便减 少化验的指标,再对 61-90 号待诊人员进行判别; (3)对上诉两种情况下的结果作进一步的分析。 2 问题的分析 本文首先对某医院化验的30名健康人和30名肾炎患者体内的Zn,Cu,Fe,Ca,Mg, K,Na七种微量元素含量进行整体数据分析,希望通过各种元素在健康人和患者体内含 量的差异来判定就诊者的健康状况。从给定的60名确诊人员中选取20名健康人和20名肾 炎患者的数据作为样本,进行采样分析。首先建立BP神经网络模型,检验得到其正确率 为90%。因为BP算法所求得的解,只能保证是依赖于初值选取的局部极小点,所以为了 实现判定精确性的提高我们建立了Logistic回归分析模型,进行编程仿真后检验其所得模 型的正确率为95%,与BP网络相比有一定的提高。但考虑到Logistic回归分析忽略了各 协变量之间可能存在着的相关关系,因此也可能导致结果出现较大的误差。于是我们另 外建立了支持向量机模型,通过建立一个虚拟的超平面来将健康人与肾炎患者区分开。 运用MATLAB软件建模分析,我们得到该模型的正确率理论上可以达到100%。 三种不同模型建立后,让它们对30名待就诊者进行检验,因为三种模型的判定方法 和正确率都不尽相同,它们判定的结果也不完全相同,但大部分的结果是一致的,这说 明三种模型都具有一定的判定能力。 为了加快化验的速度和降低成本,考虑对化验的元素指标进行筛选,即去除对判定 结果影响小的指标,只对关键性指标进行化验。仍然以选出的20名健康人和20名肾炎患 者的数据作为样本分别建立熵值法模型和主成分分析模型,对患者体内的Zn,Cu,Fe, Ca,Mg,K,Na七种微量元素含量在判定病情时的贡献率的大小进行分析,筛选出影 响医生判定的主要影响因素,并利用这些主要因素,用判定正确率最高的支持向量机模 型建模,对剩余的10名健康人和10名患者检验,得出其判定正确率,并对其判定正确率 进行科学比较,最后对模型的合理性进行分析。 最后将全指标条件下模型判定的正确率与关键性指标条件下的模型判定正确率相 比较,虽然关键性指标的模型正确率要稍低于全指标模型,但还是具有较高的正确率, 故关键性指标模型是合理可行的。 具体思路及求解过程如图1。 2
图1 流程图 3 模型假设 (1)正常人之间各种元素含量服从正态分布; (2)各个元素含量对肾炎的影响是独立的,几乎没有功能交互作用; (3)人体中 7 种元素的含量可以作为判定此人是否患病的标准; (4)所有数据都是可靠准确的,没有误差; (5)医生确诊的肾炎患者及健康人的病例都正确,没有失误。 jH :神经网络的输入分量; jW :神经网络的权值分量; 4 符号说明 3
p :就诊者健康的概率; ijX :第i 个病人第 j 种元素含量; je :第 j 项指标的熵值; jg :第 j 项指标的差异性系数; R :原始数据标准化后的相关系数矩阵; jy :第 j 个主成分; jb :单个主成分的贡献率; ma :前 m 个主成分的累积贡献率。 5 模型的建立与求解 5.1 问题一和问题二的求解 5.1.1 BP 神经网络模型 BP (Back Propagation)神经网络是一种多层前馈型网络,用于综合评价的基本原理是: 把用来描述评价对象特征的信息作为神经网络的输入向量,将代表相应综合评价的量值 作为神经网络的输出;然后用足够的样本训练这个网络,使不同的输入向量得到不同的输 出量值;这样,神经网络所持有的那组权系数值和阀值,便是网络经过自适应学习所得到的 正确内部表示;训练好的神经网络便可以对一些复杂问题做出合理的判断决策,做出有效 的预测和估计[1] 图2 BP神经网络示意图 4
图2中为一个具有n个输入分量的神经的神经元。一般情况下,具有n个输入分量的 神经元,其中输入分量为 H j  ( j  ,1 ), r ,通过它和权值分量 W j  ( j  ,1 ), r 相连, r 以 i 1  jhw j 的形式求和后, 形成激活函数的输入,激活函数的另一个输入是神经网络的 偏差b 。神经元模型的输出矢量可以表示为 r   a ( f j 1  hw j j  b ) BP网络常用的节点函数分别为tan sig(x)和 log sig )( x ) 其中: tan sig )( x  log sig )( x  x x 2 2  1 -e 1 e  1 xe  1 训练一个BP网络,需计算网络加权输入矢量以及网络输出和误差矢量,然后求得误 差平方和,当所训练的误差平方和小于目标误差,训练则停止,否则在输出层计算误差 变化,且采用反向传播学习规则来调整权值,重复此过程。当网络完成训练后,对网络 输入的不是学习样本的样本,网络将输出结果。 运用BP神经网络进行预测主要考虑一下几个方面的设置: (1) 网络结构层次数设置 现有研究成果证明,3层前馈神经网络能够以任意精度逼近任意非线性关系。为了 减少内存资源的耗用和提高网络的学习速度,仍选用3层网络结构来构建评价模型。 (2) 权值和阀值初始设置 设置BP神经网络连接权值和阀值的初始取值范围为  ,1  1 或    n 2 ,  n 2   ( n为网 络输入层节点数)。 (3) 隐含层节点数设置 BP神经网络隐含层应该设置多少个节点比较合理,没有统一的观点。按照经验公式 S 0.43mn 0.12m  2  2.54n 0.77m   0.35  51.0 来计算隐含层节点数, 其中 nm, 分别为输出层、输入层节点数。有人提出根据Hwcht − Nielsen理论,将隐含层节点数设置为 2 N 1 ,其中 N 为输入层节点数。通过试验比较,仍 选用后一种方法,将网络隐含层节点数设为11。 (4)网络学习算法选择 BP神经网络常采用梯度下降法来修正网络节点的连接权值和阀值,方法是网络在 训练时从某一起点沿误差函数的斜面逐渐达到最小点使误差为零,但这种学习方法存在 5
训练过程中易陷入局部最小等问题。共轭梯度学习算法、拟牛顿法、L2M优化算法等式 对传统学习算法的改进。其中,L2M优化算法的收敛速度和精确度都比较好,仍用于BP 网络学习。 (6)网络转换函数选择 BP网络神经元的转换函数有 2sigmoid log 、 2sigmoid tan 、purelin 等;其中Sigmoid 型函数由于对线性和非线性问题都能很好地适应, 应用最广。通过试验比较文中将网络 隐含层和输出层节点的转换函数分别设置为 sig tan 和 sig log 。 求解时将已知的20名肾炎患者和20名健康人的化验结果作为样本,对样本进行0-1 规划,以0表示健康人,以1表示肾炎患者。将其输入网络作为学习样本,进行网络训练, 如图3所示 由图3可知网络收敛,故该神经网络是良好的。 图3 网络训练收敛效果图 6
图4 训练过程动态展示 点击停止按钮,网络学习完成,训练停止。 再对剩下的10名肾炎患者和10名健康人进行判定检验(MATLAB程序见附表1), 检验结果如图5所示 图5 BP神经网络衰减系数检验图 7
分享到:
收藏