[摘要]本文是关于通过化验人体内各种元素含量来判别肾炎病人与健康人的方法研究的问题。BP神经网络在预测中应用广泛,它是利用非线性可微分函数进行权值训练的多层网络,它包含了神经网络中最为精华的部分,结构简单,可塑性强,逼近性好,鉴于神经网络在预测方面的强大功能和高精度,以及对非线性问题的很好逼近,故采用BP神经网络进行预测进而对肾炎患者进行判定,并得到了很好的结果。
[关键词]神经网络准确性检验肾炎
一、引言
人们到医院就诊时,通常要化验一些指标来协助医生的诊断。诊断就诊人员是否患肾炎时通常要化验人体内各种元素含量。表1.1是确诊病例的化验结果,其中1-30号病例是已经确诊为肾炎病人的化验结果;31-60号病例是已经确定为健康人的结果。表1.2是就诊人员的化验结果。根据表1.1中的数据,提出一种或多种简便的判别方法,判别属于患者或健康人的方法,并检验你提出方法的正确性。
表1.1确诊病例的化验结果
表1.2就诊人员的化验结果
二、模型的基本假设
假设1)正常人之间各种的元素含量服从正态分布[1];
假设2)各个元素含量对肾炎的影响是独立的,几乎没有功能交互作用;
假设3)所有数据都准确,没有误差;
假设4)医院确诊的病例都正确,没有失误;
假设5)人体中7种元素的含量可以作为判定此人是否得病的标准。
三、模型原理
鉴于神经网络[1]在预测方面的强大功能和高精度,以及对非线性问题的很好逼近,故采用这种方法来进行判别补充。BP网络在预测中应用广泛,它是利用非线性可微分函数进行权值训练的多层网络,它包含了神经网络中最为精华的部分,结构简单,可塑性强,逼近性好,故我们采用BP网络来对肾炎患者进行判定。
下图为BP神经网络的原理示意图。
图3.1BP神经网络的原理示意图
网络的输入有1个元素,即体内元素含量,网络的输出有2个元素,即接近健康人的元素含量指标和接近肾炎患者的元素含量指标。这样输入层有1个神经元,输出层也有2个神经元,中间层的神经元个数可取不同值进行尝试,取误差最小的为最终结果[2]。
网络中间层神经元函数采用S型正切函数tanig,输出层神经元函数采用线性传递函数purelin,用变量threhold用于规定输入向量的最大值和最小值,最大值为1,最小值为0,设定网络的训练函数为traingd梯度下降的BP算法训练函数。
四、模型求解
在训练之前应将所有数据归一化处理,使其落在[0,1]区间,我们采用的归一化函数是:用Matlab进行求解[3]:
图4.1BP神经网络训练过程示意图
五、模型准确性检验
我们对病例号1-60进行判定,以检验神经网络判定模型的准确性。
图5.1判定数据分布图
从运行所得的数据分布见图5.1,通过数据分析,保证判定的准确性,我们选择以值0.5为界,对病例号1-60进行判定,以检验准确性。准确性检验结果见图5.2:
图5.2神经网络模型准确性检验结果示意图
从图中可以看出,在病例号1-30患者中,患病而被误诊为健康的个数为1个;在病例号30-60健康人中,健康而被误诊为患病的个数为0个。总的确诊率为98.33%。
六、模型的应用
下面我们应用神经网络模型对题中待诊的病例号61-90进行判定。判定结果见下图
图6.1神经网络模型判定结果示意图
其中,数值1表示该例被判定为健康;数值0表示该例被判定为患病。患病的病例号有:61、62、64、65、66、68、69、71、72、73、76、83、85共13例,其余的为健康。
七、结论
BP神经网络在预测中应用广泛,它是利用非线性可微分函数进行权值训练的多层网络,它包含了神经网络中最为精华的部分,结构简单,可塑性强,逼近性好,鉴于神经网络在预测方面的强大功能和高精度,以及对非线性问题的很好逼近。采用BP神经网络进行预测进而对肾炎患者进行判定,得到了很好的结果。
因篇幅问题不能全部显示,请点此查看更多更全内容