您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > 基于神经网络工具箱的BP网络高血压研究
基于神经网络工具箱的BP网络高血压研究摘要关键字0前言人的大脑是由复杂的神经元网络组成的。由于它的存在,人脑可以从诸如人脸识别、骑自行车、打篮球等涉及联想或经验的问题中体会那些只可意会、不可言传的直觉与经验,可以根据情况灵活掌握处理问题的规则从而可以轻而易举地完成此类任务。任何一种人造的机器在这方面望尘莫及。人脑之所以有这些能力主要是由于人脑本身的构造加之多年以来的学习过程。人类具有高度发达的大脑,大脑是思维活动的物质基础,而思维是人类智能的集中体现。长期以来,人们想方设法了解人脑的工作机理和思维的本质,向往能够构造出具有类人智能的人工智能系统,以模仿人脑功能,完成类似于人脑的工作。人们对人脑的工作机理进行了长期不懈的探索和模拟,一门新的学科—人工神经网络发展起来了。布满在人类大脑皮层上的神经细胞亦称为神经元。每个神经元与其他神经元通过数以千计的通道广泛相互连接,形成复杂的生物神经网络。生物神经网络以神经元为基本信息处理单元,对信息进行分布式存储与加工。这种信息加工与存储相结合的群体协同工作方式使得人脑呈现出目前计算机无法模拟的神奇智能。人脑的信息处理机制是在漫长的进化过程中形成和完善的。通过分子和细胞技术所达到的微观层次与行为研究所达到的系统层次结合形成了对人脑神经网络的基本认识。在此基本认识的基础上,通过数学和物理方法以及信息处理的角度对人脑神经网络进行抽象并且建立某种简化模型,就称为人工神经网络(ArtificialNeuralNetwork,缩写ANN)。人工神经网络远不是人脑生物神经网络的真实写照,而只是对它的简化、抽象与模拟。现实生活中,高血压是个相当常见且必须引起人们注视的一种疾病。高血压是以体循环动脉压增高为主要表现的临床综合征,是最常见的心血管疾病。原发性高血压的发病因素主要有两大类,一类是内因,如遗传(大约占40%);另一类是外因,如精神紧张、食盐过多、吸烟、肥胖、酗酒、缺乏运动等。长期高血压可影响到心、脑、肾等器官的功能,最终导致这些器官功能的衰竭。正常人的血压随内外环境变化在一定范围内波动。在整体人群,血压水平随年龄逐渐升高,以收缩压更为明显,但50岁后舒张压呈现下降趋势,脉压也随之加大。近年来,人们对心血管病多重危险因素作用以及心、脑、肾靶器官保护的认识不断深入,高血压的诊断标准也在不断调整,目前认为同一血压水平的患者发生心血管病的危险不同,因此有了血压分层的概念,即发生心血管病危险度不同的患者,适宜血压水平应有不同。医生面对患者时在参考标准的基础上,根据其具体情况判断该患者最合适的血压范围,采用针对性的治疗措施。现阶段,我们通过基于神经网络的方法,在已知的的医院就诊资料的基础上,对高血压进行了一次科学且合理的判断。以建立BP神经网络的方式解决问题。其中涉及数据对模型的训练以及相应数据的监测,最终得到一个合适的神经网络。1神经网络构成的基本原理人工神经网络(ArtificialNeuralNetworks,简称为NN)是近年来发展起来的模拟人脑生物过程的人工智能技术.它由大量简单的神经元广泛互连形成的复杂的非线性系统,它不需要任何先验公式,就能从已有数据中自动地归纳规则,获得这些数据的内在规律,具有很强的非线性映射能力,特别适合于因果关系复杂的非确性推理、判断识别和分类等问题.基于误差反向传播(Backpropagation)算法的多层前馈网络(Multiple-layerfeedforwardnet-work,简记为BP网络),是目前应用最多也是最成功的网络之一,构造一个BP网络需要确定其处理单元—一神经元的特性和网络的拓扑结构。1.1神经元神经元是神经网络最基本的组成部分。一般地,神经元模型如图1所示该神经元有n个输入,所有输入通过一个权重w进行加权求和后加上偏置量再经传递函数的作用后即为该神经元的输出。传递函数可以是任何可微的函数,常用的有Si}noid型和线性型图1·1神经元的一般描述图中,xi为输入信号,wij表示从第i个神经元到第j个神经元的连接权值,θj为第j个神经元的阈值。设sj为外部输入信号,yj为输出信号,在上述模型中第j个神经元的变换可描述为)(ijjiijjsxwfy(2·1)这里采用的非线性函数f(x)可以是阶跃函数、分段函数及Sigmoid型函数。1.2网络的拓扑结构图1·2基于BP算法的多层前馈型网络的结构神经网络的拓扑结构是指神经元之间的互连结构。图2是一个三层的BP网络结构。BP网络通常有一个或多个Sigxnoid隐含层和一个线性输出层这种结构使多层前馈网络可在输入和输出间建立合适的线性或非线性关系,又不致使网络输出限制在-1和1之间。1.3神经网络的特点神经网络的主要特点是:(1)分布式储存信息。其信息的储存分布在不同的位置,神经网络是用大量神经元之间的连接及对各连接权值的分布来表示特定的信息,从而使网络在局部网络受损或输入信号因各种原因发生部分畸变时,仍然能够保证网络的正确输出,提高网络的容错性和鲁棒性。(2)并行协同处理信息。神经网络中的每个神经元都可根据接收到的信息进行独立的运算和处理,并输出结果,同一层中的各个神经元的输出结果可被同时计算出来,然后传输给下一层做进一步处理,这体现了神经网络并行运算的特点,这一特点使网络具有非常强的实时性。虽然单个神经元的结构极其简单,功能有限,但大量神经元构成的网络系统所能实现的行为是极其丰富多彩的。(3)信息处理与储存合二为一。神经网络的每个神经元都兼有信息处理和储存功能,神经元之间连接强度的变化,既反应了对信息的记忆,同时又与神经元对激励的响应以其反映了对信息的处理。(4)对信息的处理具有自组织、自学习的特点,便于联想、综合和推广。神经网络的神经元之间的连接强度用权值大小来表示,这些神经元之间的连接强度会不断增加,从而提高神经元对这些样本特征的反应灵敏度。1.4神经网络的学习方式一个神经网络仅仅具有拓扑结构还不能具有任何智能特性。必须有一套完整的学习、工作规则与之配合。人工神经网络的工作过程可分为以下两个阶段:第一个阶段是学习期,此时各计算单元状态不变,各连线上的权值通过学习来修改;第二阶段是工作期,此时各连接权固定,计算单元状态变化,以达到某种稳定状态。神经网络中信息处理、传递是由网络结构的连接权实现的,而连接权值的大小则是通过在一定拓扑结构固定的条件下,遵循一定的原则,按照一定的方式,应用一定的学习算法训练得到的。通过向环境学习获取知识并改进自身性能是神经网络的一个重要特点。在一般情况下,性能的改善是按某种预定的度量通过调节自身参数(如权值)随时间逐步达到的。对神经网络学习算法的研究是神经网络研究中最核心的部分。对于不同结构的神经网络,人们都研究出许多的学习算法和它们相对应。神经网络的学习过程一般来说就是对神经网络权值调整的过程,数据网络能够根据样本模式逐渐调整权值,使得神经网络具有卓越的学习、记忆和处理信息的能力。神经网络的学习方法有两大类[5][6][7]:有导师学习和无导师学习。对于有导师学习,神经网络的输出和希望的输出进行比较,然后根据两者之间的差的函数(如差的平方和)来调整网络的权值,最终使其函数达到最小。对于无导师学习,当输入的样本模式进入神经网络后,网络按照预先设定的规则(如竞争规则)自动调整权值,使网络最终具有模式分类等功能。神经网络学习算法中最著名的是针对BP网络的误差反向传播学习算法,也就是梯度算法。它属于有导师学习,其原理就是从误差平方和对网络权值的梯度方向来修改网络的权值,从而使BP网络较快达到所希望的学习效果。当然,BP网络的梯度算法还存在一些问题,如易陷入局部极小点和收敛速度慢等。因此,人们对梯度算法的改进方案研究也成为热点问题。2BP神经网络算法2.1BP算法的数学描述BP算法是在导师指导下,适合于多层神经元网络的一种学习,它是建立在梯度下降法的基础上的。理论证明,含有一个隐含层的BP网络可以实现以任意精度近似任何连续非线性函数。设含有共L层和n个节点的一个任意网络,每层单元只接受前一层的输出信息并输出给下一层各单元,各节点(有时称为单元)的特性为Sigmoid型(它是连续可微的,不同于感知器中的线性阈值函数,因为它是不连续的)。为简单起见,认为网络只有一个输出y。设给定N个样本(xk,yk)(k=1,2,...,N),任一节点i的输出为i,对某一个输入为xk,网络的输出为yk,节点i的输出为ik,现在研究第l层的第j个单元,当输入第k个样本时,节点j的输入为jljklijlijwnet1(3·1))(ljkljknetf(3·2)其中1ljk表示l-1层,输入第k个样本时,第j个单元节点的输出。采用的误差函数为llklkkyyE2)(21(3·3)其中lky为单元j的实际输出。总误差为NkkENE121(3·4)定义ljkkljknetE于是11ljkljkljkljkklijljkljkklijknetEwnetnetEwE(3·5)下面分两种情况来讨论:(1)若节点j为输出单元,则jkljky)()(ljkkkljkjkjkkljkkljknetfyynetyyEnetE(3·6)(2)若节点j不是输出单元,则)(ljkljkkljkljkjkkljkkljknetfEnetyEnetE(3·7)式中ljk是送到下一层(l+1)层的输入,计算ljkkE要从(l+1)层算回来。在(l+1)层第m个单元时111111lmjmlmklmjmmlmkkljklmklmkkljkkwwnetEnetnetEE(3·8)将式(3·8)代入式(3·7)中,则得)(11ljklmjmlmkljknetfw(3·9)总结上述结果,有111)(ljkljklijkmljklmjlmkljkwEnetfw(3·10)因此,反向传播算法的步骤可概括如下:(1)选定权系数初值;(2)重复下述过程,直到误差指标满足精度要求,即:,211NkkENE:精度对k=1到N正向过程计算:计算每层单元的1ljk,ljknet和ky,k=2,...,N。反向过程:对各层(l=L-1到2),对每层各单元,计算ljk。修正权值0ijijijwEww(3·11)(3)结束。这里,训练样本的呈现顺序从一个回合到另一个回合必须是随机的。动量和学习率参数随着训练迭代次数的增加而调整(通常是减少的)。2.2BP网络学习算法在标准BP算法中,设k为迭代次数,则每一层权值和阈值的修正按下式进行)()()1(kgkxkx(3·12)式中:x(k)为第k次迭代各层次之间的连接权向量或阈值向量。)()()(kxkEkg为第k次迭代的神经网络输出误差对各权值或阈值的梯度向量。负号表示梯度的反方向,即梯度的速度下降方向。为学习速率,在训练时是一个常数。在MATLAB神经网络工具箱中,其默认值是0.01,可以通过改变训练参数进行设置。Ek为第k次迭代的网络输出的总误差性能函数,在MATLAB神经网络工具箱中,BP网络误差性能函数的默认值为均方误差MSE(meansquareerror),以二层BP网络为例,只有一个输入样本时,有2122222)]([1)]([)(siiikatskeEkE(3·13)})]()))()((()([{})]()()([{)(2121211112,21212,22sjisjiiijisjiijiikbkibpkifkfkbkakfka(3·14)2.3BP网络的局限性BP网络还不是一个完善的神经网络,目前还存在着以下问题:(1)学习算法收敛的速度慢。BP神经网络中存在固定的学习率,惯性因子。这是导致BP神经网络学习过程收敛速度缓慢的直接原因。BP算法本质上是基于梯度的最
本文标题:基于神经网络工具箱的BP网络高血压研究
链接地址:https://www.777doc.com/doc-2537069 .html