61阅读

神经网络技术及其应用-人工神经网络原理及实际应用

发布时间:2017-09-21 所属栏目:神经网络的应用

一 : 人工神经网络原理及实际应用

人工神经网络原理及实际应用

摘要:本文就主要讲述一下神经网络的基本原理,特别是BP神经网络原理,以及它在实际工程中的应用。(www.61k.com]

关键词:神经网络、BP算法、鲁棒自适应控制、Smith-PID

本世纪初,科学家们就一直探究大脑构筑函数和思维运行机理。特别是近二十年来。对大脑有关的感觉器官的仿生做了不少工作,人脑含有数亿个神经元,并以特殊的复杂形式组成在一起,它能够在“计算"某些问题(如难以用数学描述或非确定性问题等)时,比目前最快的计算机还要快许多倍。大脑的信号传导速度要比电子元件的信号传导要慢百万倍,然而,大脑的信息处理速度比电子元件的处理速度快许多倍,因此科学家推测大脑的信息处理方式和思维方式是非常复杂的,是一个复杂并行信息处理系统。1943年Macullocu和Pitts融合了生物物理学和数学提出了第一个神经元模型。从这以后,人工神经网络经历了发展,停滞,再发展的过程,时至今日发展正走向成熟,在广泛领域得到了令人鼓舞的应用成果。本文就主要讲述一下神经网络的原理,特别是BP神经网络原理,以及它在实际中的应用。

1.神经网络的基本原理

因为人工神经网络是模拟人和动物的神经网络的某种结构和功能的模拟,所以要了解神经网络的工作原理,所以我们首先要了解生物神经元。其结构如下图所示:

神经网络原理 人工神经网络原理及实际应用

从上图可看出生物神经元它包括,细胞体:由细胞核、细胞质与细胞膜组成;

神经网络原理 人工神经网络原理及实际应用

轴突:是从细胞体向外伸出的细长部分,也就是神经纤维。(www.61k.com]轴突是神经细胞的输出端,通过它向外传出神经冲动;树突:是细胞体向外伸出的许多较短的树枝状分支。它们是细胞的输入端,接受来自其它神经元的冲动;突触:神经元之间相互连接的地方,既是神经末梢与树突相接触的交界面。

对于从同一树突先后传入的神经冲动,以及同一时间从不同树突输入的神经冲动,神经细胞均可加以综合处理,处理的结果可使细胞膜电位升高;当膜电位升高到一阀值(约40mV),细胞进入兴奋状态,产生神经冲动,并由轴突输出神经冲动;当输入的冲动减小,综合处理的结果使膜电位下降,当下降到阀值时。细胞进入抑制状态,此时无神经冲动输出。“兴奋”和“抑制”,神经细胞必呈其一。

突触界面具有脉冲/电位信号转换功能,即类似于D/A转换功能。沿轴突和树突传递的是等幅、恒宽、编码的离散电脉冲信号。细胞中膜电位是连续的模拟量。

神经冲动信号的传导速度在1~150m/s之间,随纤维的粗细,髓鞘的有无而不同。

神经细胞的重要特点是具有学习功能并有遗忘和疲劳效应。总之,随着对生物神经元的深入研究,揭示出神经元不是简单的双稳逻辑元件而是微型生物信息处理机制和控制机。

而神经网络的基本原理也就是对生物神经元进行尽可能的模拟,当然,以目前的理论水平,制造水平,和应用水平,还与人脑神经网络的有着很大的差别,它只是对人脑神经网络有选择的,单一的,简化的构造和性能模拟,从而形成了不同功能的,多种类型的,不同层次的神经网络模型。

2.BP神经网络

目前,再这一基本原理上已发展了几十种神经网络,例如Hopficld模型,Feldmann等的连接型网络模型,Hinton等的玻尔茨曼机模型,以及Rumelhart等的多层感知机模型和Kohonen的自组织网络模型等等。在这众多神经网络模型中,应用最广泛的是多层感知机神经网络。

这里我们重点的讲述一下BP神经网络。多层感知机神经网络的研究始于50年代,但一直进展不大。直到1985年,Rumelhart等人提出了误差反向传递学习算法(即BP算),实现了Minsky的多层网络设想,其网络模型如下图所示。它可以分为输入层,影层(也叫中间层),和输出层,其中中间层可以是一层,也可以多层,看实际情况而定。

神经网络原理 人工神经网络原理及实际应用

神经网络原理 人工神经网络原理及实际应用

神经网络原理 人工神经网络原理及实际应用

神经网络原理 人工神经网络原理及实际应用

神经网络原理 人工神经网络原理及实际应用

BP网络的原理是把一个输入矢量经过影层变换成输出矢量,实现从输入空间到输出空间的映射。(www.61k.com)由权重实现正向映射,利用当前权重作用下网络的输出与希望实现的映射要求的期望输出进行比较来学习的。为减少总误差,网络利用实际误差调整权重。BP网络必须要求与输入相对应的希望输出构成训练模式队,因而需要指导学习,BP网络在结构上具有对称性,网络中的每个输出处理元件基本具有相同的传递函数。

大致的工作原理就如上段所述,但要深入了解我们就先要了解一下BP网络学习算法——反传学习算法(即BP算法)。BP算法不仅有输入层节点、输出层节点,还可有1个或多个隐含层节点。对于输入信号,要先向前传播到隐含层节点,经作用函数后,再把隐节点的输出信号传播到输出节点,最后给出输出结果。节点的作用的激励函数通常选取S型函数,如

1f(x)?1?e?x/Q

式中Q为调整激励函数形式的Sigmoid参数。该算法的学习过程由正向传播和反向传播组成。在正向传播过程中,输入信息从输入层经隐含层逐层处理,并传向输出层。每一层神经元的状态只影响下一层神经元的状态。如果输出层得不到期望的输出,则转入反向传播,将误差信号沿原来的连接通道返回,通过修改各层神经元的权值,使得误差信号最小。

社含有n个节点的任意网络,各节点之特性为Sigmoid型。为简便起见,指定网络只有一个输出y,任一节点i的输出为Oi,并设有N个样本

(xk,yk)(k=1,2,3,?,N),对某一输入xk,网络输出为yk节点i的输出为Oik,节点j的输入为

netjk=?WOijiik

并将误差函数定义为

神经网络原理 人工神经网络原理及实际应用

神经网络原理 人工神经网络原理及实际应用

1N?E??(yk?yk)2

2k?1

??Ek2y?E?Ek?netjk?Ekk为网络实际输出,定义其中E,且Ojk=f(netjk),于是 kk=(yk-?k), ?jk???Oik?netjk?Wij?netjk?Wij?netjk=δjkOik ??Ek?yk?当为输出节点时,O )f?(net)jk=?k?jkj???(y?ykkjk?yk?netjk (1)

若j不是输出节点,则有

?Ek?Ek?Ojk?Ek??f?(netjk)?netjk?Ojk?netjk?Ojk

?Ek?Ek?netmk???Ojk?Ojkm?netmk

?Ek???WmiOik?

m?netmk?Ojki

?Ek??Wmj???mkWmj?

m?netmkim ?jk?

因此

??jk?f?(netjk)??mkWmj?m??Ek??W??mkOik?ij (2)

如果有M层,而第M层仅含输出节点,第一层为输入节点,则BP算法为: 第一步,选取初始权值W。[www.61k.com)

第二步,重复下述过程直至收敛:

a. a. 对于k=1到N

a). 计算Oik, netjk和?k的值(正向过程);

b). 对各层从M到2反向计算(反向过程);

b. 对同一节点j∈M,由式(1)和(2)计算δjk;

N?E?E?E 第三步,修正权值,W11?W11??, μ>0, 其中??k。 ?Wij?Wijk?Wij

从上述BP算法可以看出,BP模型把一组样本的I/O问题变为一个非线性优化问题,它使用的是优化中最普通的梯度下降法。如果把神经网络的看成输入到输出的映射,则这个映射是一个高度非线性映射。

设计一个神经网络专家系统重点在于模型的构成和学习算法的选择。一般来说,结构是根据所研究领域及要解决的问题确定的。通过对所研究问题的大量历史资料数据的分析及目前的神经网络理论发展水平,建立合适的模型,并针对

神经网络原理 人工神经网络原理及实际应用

所选的模型采用相应的学习算法,在网络学习过程中,不断地调整网络参数,直到输出结果满足要求。(www.61k.com)

3.实际工程中的应用

以上就是BP神经网络的的基本工作原理,下面我们就来看一下它在实际工程中的应用,在水电厂水质调节系统自适应控制中的应用。

随着我国火电厂高参数大容量机主的投产,对水汽品质和水质工况控制的要求越来越严格。控制策略是决定水质调节效果的关键。整个火电厂水质调节系统采用Smith-PID自适应控制方案,具体控制模型我们就不予考虑,这里就具体BP神经网络在这一方案中的应用。

由于系统采用PID算法中由三种控制作用,即互相联系又互相制约,且并不是简单的线性组合,必须用非线性方法在线自适应调整PID参数,才能保证时变对象的控制效果。所以在此系统采用BP神经网络在线整定PID参数。所以整个系统结构如下图所示:

神经网络原理 人工神经网络原理及实际应用

基于BP神经网络的Smith-PID控制系统

PID参数BP网络整定方法

选择如下图所示4—5 —3 结构的BP网络,在线自学习整定系统Smith控制系统中控制器Gc(s)的PID 参数,以给定值r(t) 、系统响应值y (t) 、偏差e ( t) 和常数1作为BP 网络的输入,网络的输出为需要整定的PID 参数kp 、ki 和kd 。

神经网络原理 人工神经网络原理及实际应用

PID参数整定BP网络结构

对于BP网络输入层,第j个神经元的输入为

O(1)

j?xj (3)

对于BP网络的隐层,第i个神经元的状态为

(2)Net(k)??wij(k)O(1)

j(k) (4) (2)

i

j?0M

对于第i个神经元的输出为

神经网络原理 人工神经网络原理及实际应用

Oi(2)(k)?f(Neti2(k)) (5)

式(1) ~式(3) 中, j = 1,2,?M; i = 1,2,? N 。[www.61k.com)M、N 分别为输入层和隐层

(2)神经元数; 上角标(1), (2) ,(3) 分别代表输入层、隐层和输出层。wij为隐

ex?e?x

层权值, f()为隐层神经元的激发函数, 文中取f(x)?tanh(x)?x?x,可以e?e实现从输入到输出的任意非线性映射,且输出为连续量。

对于BP 网络输出层第p 个神经元的状态为

(2)Net(k)??w(3)

pi(k)Oi(k) (6) 3

p

i?0N

第p 个神经元的输出为

(3)Op?g(Net(3)

p(k)) (7)

其中g() 为输出层神经元激发函数, p = 1,2 ,?, L 。L为输出层神经元数, 文

(3)(3)中L= 3 , O1(3)、O2、O3分别对应PID参数的kp、ki、kd,即

(3)(3)O1(3)(k)?kp、O2(k)?ki、O3(k)?kd (8)

ex

由于PID参数kp、ki、kd取非负数,所以取g(x)?x?xumax,其中umax为e?e

S函数的饱和值,根据实际情况选定。 1性能指标取二次型函数E(k)?[r(k)?y(k)]2,按E(k)对权值的负梯度方向2

搜索调整,并附加使学习速度足够快且不易产生震荡的动量项,即得到按梯度法修改网络的权值

(3)?wij(k)????E(k)???w(3)

pi(k?1) (9) (3)?wpi(k)

上式中?为按梯度搜索的步长,亦即学习速率。?为动量因子,它取决于过去权值的变化对目前权值变化的影响程度。而

(3)(3)?E(k)?E(k)?y(k)?u(k)?Op(k)?Netp(k) (10) ?(3)(3)(3)?w(3)(k)?y(k)?u(k)?O(k)?Net(k)?w(k)pipppi

在式(8)中

?E(k)?1?[(r(k)?y(k))2]?r(k)?y(k)?e(k) (11) ?y(k)?y(k)2

?y(k)?y(k)y(k)?y(k?1)?由商差近似,即 (12) ?u(k)?u(k)u(k)?u(k?1)

神经网络原理 人工神经网络原理及实际应用

?Net3

p(k)

?w(3)

pi(k)

(3)?Op(k)???w(3)pi(k)(2)(2)(13) [?w(3)(k)O(k)]?Opiii(k) i

?Net(3)

p(k)??(3)(3)?(14) [g(Net(k))]?g[Netpp(k)] (3)?Netp(k)

同时,由系统结构原理和式(8),得

?u(k)(15) ?e?(k)?e?(k?1) (3)?O1(k)

?u(k)(16) ?e?(k) (3)?O2(k)

?u(k)(17) ?e?(k)?2e?(k?1)?e?(k?2) (3)?O3(k)

从而得到BP网络输出层权值得学习算法为

(3)(3)(18) ?w(3))???p(k)Oi(2)(k) pi(k)???wpi(k?1

(3)其中?p(k)?e(k)?y(k)?u(k)(3)?(p=1,2?,L) (19) g[Netp(k)](3)?u(k)?Op(k)

同理有隐层权值得学习算法

(2)(2) ?wij(k)???wij(k?1)???i(2)(k)O1

j(k) (20)

其中

(3)(i=1,2?,N) (21) ?(k)?f?(Net(k))??p(k)w(3)

pi(k) (2)

i(2)i

p?13

在这一系统中,BP神经网络进行适当得改善。(www.61k.com)常规BP 网络的缺陷是收敛速度慢和陷入局部极小,这将影响被整定的PID 参数对被控对象的跟踪性能。式(9) 中增加附加动量项,使网络在修正其权值时,不仅考虑误差在梯度上的作用,而且考虑在误差曲面上变化趋势的影响,允许网络忽略网络上的微小变化特性,起到了防止网络陷入浅的局部极小的作用。然而,附加动量不应该是固定不变的,而应该考虑到当修正的权值在误差中导致太大的增长结果时,新的权值应被取消,同时动量作用停止下来,使网络不进入较大误差曲面;当新的误差变化率对其旧值超过一个事先设定的最大误差变化率时,也得取消所计算的权值变化。

学习速率η决定了网络每一次循环训练中所产生的权值变化量, 大的学习速率可能导致系统的不稳定,而小的学习速率又使收敛太慢、训练时间太长。文中为了加速PID 参数的寻优,提高PID 参数整定对被控对象的跟踪性能,同时又

神经网络原理 人工神经网络原理及实际应用

不至于导致振荡和发散,通过仿真研究,提出下列动量因子α和学习速率η在线自适应调整规则

?0当E(k)>1.05E(k-1)??(k)??0.95当E(k)<E(k-1)

??其它?0

?(k)???(1??)?(k?1)当E(k)<E(k-1) (22) (1??)?(k?1)当E(k)>E(k-1)?

将上述系统进行工程应用仿真,可以得到该系统具有很好得快速稳定性和准确性、很强得抗干扰性和鲁棒性。(www.61k.com]所以在该系统中,将BP神经网络和Smith 预估器组合成复合控制器的鲁棒控制策略,利用BP 网络的任意非线性逼近特性及很强的自学习能力,弥补了常规Smith 控制在解决模型不确定系统中的不足。该方法具有稳态精度高、过渡过程短、抗干扰性好、鲁棒性强,以及结构简单、适应性强、易于实时控制的特点,具有很高的应用价值。

从上述神经网络的基本原理,以及它在实际应用可知。神经网络从最初的概念和基础理论的提出到今天的全球性研究热热潮,已历经了近百年的历史,无论是历史研究,还是实践应用,都取得了令人瞩目得成果。由于科学技术迅猛发展,面对越来越多的各种复杂的多输入多输出的本质非线性的智能控制系统,科研人员对神经网络研究、应用情有独钟,必将投入大量的人力。物力、财力,在现代化生物学、微电子学、计算机科学的强有力的支撑下。神经网络理论的发展前景一定是十分辉煌。

当然、人工神经网络目前只是对生物神经系统的某种特定性能的简单模拟,设计规则也没有通用性,固有很大的发展前景。这就需要我们不断的去研究它.

神经网络原理 人工神经网络原理及实际应用

参考资料:

1. 刘军,常小军等 神经网络原理及在控制中的应用 青岛化工学院学报 1994年02期

2. 张昆实,万家云等 BP神经网络在湖泊水质评价中的应用研究 长江大学学报 2004年Z1期

3. 曹顺安,侯力等 基于BP神经网络的火电厂水质调节系统的Smith_PID自适应控制 工业仪表与自动化装置 2004年06期

4. 康天增 神经网络的原理及应用 机电设备 1996年05期

5. 胡金滨,唐旭清 人工神经网络的BP算法及其应用 信息技术 2004年4期

6. 张立明 人工神经网络的模型及应用 复旦大学出版社 1993.7

7. 阎平凡,黄端旭 人工神经网络;模型·分析与应用 安徽出版社 1993.5

二 : 广域网优化技术及其应用探讨

摘 要:通过对现存广域网技术的应用分析及主要的广域网链路优化技术的分析,本文提出了传统的广域网建设中存在的不足,而广域网优化技术是当前信息化社会发展的根本要求,这就对广域网的优化提出了要求,结合广域网优化技术的实施案例,对广域网优化技术进行探讨,对广域网优化技术应用于企业建设中进行憧憬。

关键词:广域网;优化技术;应用探讨
中图分类号:TP393.2
信息化社会的不断发展对广域网提出了更高的要求,就网络方面而言,企业应用需要通过网络连接响应应用的请求,而随着企业应用的不断多样化,企业也呈现出全球化的趋势,这就要求企业的核心应用系统需要共享和利用,广域网的局限性愈加明显。
局域网中的带宽从来不是限制因素,而在广域网中,限制最大的便是带宽了,这主要是由广域网增加带宽的代价太大造成,这就导致了一些在局域网中运行很好的操作系统一旦放入广域网,就会出现性能下降、质量下降、安全性降低等问题。同时在广域网中还存在时延等问题,这也就是说,单纯的解决广域网中的带宽问题并不能解决所有问题。因此,广域网优化技术便变得尤为重要,它致力于解决系统性能受广域网限制等问题,并逐渐形成一个细分的市场。
1 广域网优化
1.1 广域网建设原则
广域网的建设原则体现在三个方面:(1)技术先进性。为了跟上信息化发展的脚步,为了适应数据、语音、视频的更高的传输需要,为了满足企业业务需求的同时又兼顾相关管理要求,系统需要采用更先进的网络技术;(2)安全可靠性。网络需要有较高的可靠性来保证各项业务的应用,这就要求在网络的结构、网络所需设备、服务器使用设备等进行可靠性高的设计。不仅从硬件上采取数据备份、冗余等技术,在软件方面也要采用相关的技术来提供管理机制、控制手段、事故监控、网络安全保密等方面的措施来提高网络系统安全可靠性;(3)高效性和可扩展性。计算机网络系统的发展迅速的特点决定了它的人员与资金的投入较少,以提供高效能的应用系统;随着企业不断发展壮大的需要,计算机网络系统又要求具有良好的可扩展性,使它能够扩展网络覆盖的范围、网络覆盖的容量以及提高各层次网络节点的功能。
1.2 广域网优化技术
广域网优化技术的途径主要有:数据压缩、动态缓存、应用加速、带宽管理、QoS路径优化等。(1)数据压缩。利用高性能的数据压缩的算法对广域网的链路中存在的带宽中应用的流量比重进行降低的方法称为数据压缩,这种方法使系统流量在广域网链路带宽中的比重增加,从而降低了[www.61k.com)广域网链路带宽的需求在应用系统流量方面的要求,这就使广域网技术即使在带宽一定的前提下也能保证平稳高效的运行应用系统;(2)动态缓存。动态缓存技术可以有效降低广域网链路上冗余数据的传输,在特定条件下,可以减少带宽需求65%~95%。广域网链路优化设备在当数据流量在广域网链路上传输时截取分析应用流量,然后将应用数据进行分段分配指针,然后存储为一个数据段,最后将指针分别存储于本地磁盘和接受目的地的设备磁盘中,当下次再需要传输相同的指针内容时,只传输指针即可,不再需要传输相应的内容,接收设备在接收到指针后在本地提取内容。动态缓存仅在IP层上对广域网链路传输字节进行处理,与其他因素无关,这样,既可以保证所有传输的数据内容的一致性,又不会对传输的数据内容产生影响。综上所述,即为只有对变化的数据传输,直接由本地的设备提供没有变化的数据;(3)应加速技术。应用加速技术可以增强三种协议的应用性能,这三种协议包括:MAPI协议、CIFS协议、HTTP协议。Exchange与文件服务要求对较小数据模块的底层协议逐一确认并发送,这就造成了每次会话的完成都需要几百到几千个RTTs,所以,应用于广域网的会话会产生20~30ms的延迟,这不仅对应用系统的性能产生严重影响,也影响了用户的工作效率。Web应用中的HTTP每次请求一个数据对象,但是却需要几十个RTTs来装入一个页面,这就造成了页面的响应缓慢,用户效率大打折扣。应用加速技术可操作数据块和Web对象,发送最大程度上的数据包,填满广域网链路可用带宽,进行提速。应用加速包括Exchange加速、Microsoft文件服务加速、Web加速三种;(4)带宽管理。服务质量功能与带宽分配功能是带宽管理的两种功能,为了方便IT管理人员分配优先级给关键业务和时延敏感性应用与确定带宽。QoS的工作是将现有的带宽分为多个虚拟通道,从而实现智能丢弃数据包,丢弃的数据对加速系统性能未能起到有效的作用,QoS不能加快数据传输速度和优化工作方式,所以不能优化系统应用性能。然而应用QoS技术可以避免不重要应用对关键应用的影响,提高关键应用以及时延敏感型应用的性能。QoS技术还可以提高广域网的链路效率。
1.3 广域网优化技术的应用
图1 广域网优化设备典型连接拓扑图
广域网优化设备典型的结构是和路由器相连(广域网优化设备典型连接拓扑图见图1),对原有的网络和应用无需改变,只需将每个远程节点连接路由器,这个过程对服务器和终端都是透明的,掉电或失效时自动旁路技术是广域网优化设备常常配置的另外功能,它还支持冗余配置、消除单点故障、最终实现透明接入与无缝集成。
应用实例:Liz Claibome公司为全球知名服饰生产厂商,许多国家都有其区域中心负责其区域的销售,LC公司将全球信息中心建立在North Bergen,其中心部署了包括Microsoft office、ERP、Exchange等在内的多个应用,支持全球生产销售业务的管理,并在各区域设有邮件备份中心。随着公司发展壮大,压力加大,网络拥挤、广域网链路带宽不足等问题逐渐浮现,现有的网络系统不能满足正在发展的业务需求,严重影响企业效益,员工通常要花上数分钟来访问外地数据与文件。鉴于如此,LC公司选择经过测评后的Riverbed公司WDS解决方案来进行优化。LC公司在北美、亚洲和欧洲在内的37个机构作为首期优化计划,部署了Steelhead广域网优化设备,预计在接下来的一年半的时间内部署其他的60个分支机构的广域网优化设备。在部署完毕广域网优化设备的地区,网络性能与应用系统的性能得到了很大程度的提升,用户下载平均能够达到30秒左右,减少了80%左右的广域网链路带宽占用,CommVault备份窗口从16小时减小到6小时。增加广域网优化设备后经过调试运行,有四个特点:(1)拓扑图的绘制和修改变得快捷,拓扑图与设备直接关联,操作变得简单。(2)图形化界面。(3)功能变得实用,维护变得简单。(4)系统的稳定性增强。系统经过长时间的运行结果证实该系统满足了一定程度上的需要。
2 结束语
随着公司的发展,分支机构的增加,数据集中成为大趋势,应用也越来越复杂,单纯增加带宽会在很大程度上增加用户的运营负担但有时无法解决延迟问题,会有越来越多的用户选择这一技术,应用前景看好。
参考文献:
[1]孙晖.试论广域网在企业中的优化及应用[J].东方企业文化,2012(06):22-23.
[2]马剑.广域网网络性能优化技术在企业中的应用研究[J].软件导刊,2013(05):42-43.
作者简介:张海波(1977.10-),男,吉林辽源人,毕业于长春税务学院计算机专业,本科,助理通信工程师,研究方向:数据通信专业。
作者单位:中国联合网络通信有限公司辽源市分公司,吉林辽源 136200

三 : 一种自适应停止的SOM神经网络及其应用

摘 要: RFID采集的车辆信息可以识别营运车辆的运行规律,采用这种方法能找出运行规律类似营运车辆的私家车,并判定为疑似非法营运车辆。应用SOM神经网络聚类时,初始化网络需要设置各种参数。为此,提出一种自适应确定网络训练次数的方法,利用权值导数来判断是否停止训练。利用UCI数据集对传统的和改进后的网络进行测试并对比,发现改进后的网络优于传统网络。最后,将改进后的网络用在车辆运行规律识别中,得到预期的效果。

关键词: SOM神经网络; 网络训练; 自适应; 聚类
中图分类号:TP391.4 文献标志码:A 文章编号:1006-8228(2014)04-09-03
Abstract: The vehicle information collected by RFID could identify laws of the commercial vehicles' operation. Using this approach can find out private cars which have similar operation laws, and judge them as suspected illegal vehicles. When using SOM neural network to cluster, various parameters need to be set when initializing the network. A self-adaptive method is introduced for determining the network training times, which uses weights derivative to determine whether to stop training. After the test and comparison of the traditional and the improved network by taking advantage of UCI datasets, it turns out that the improved network is better than the traditional network. Finally, when the improved network is used in identification of the vehicle, an expected recognition results can be reached.
Key words: SOM neural network; network training; a self-adaptive method; cluster
0 引言
RFID技术作为一种新兴的车辆监控技术,正在被广泛地应用于交通领域,重庆市目前正在建设全球最大规模的以UHF RFID技(www.61k.com]术为基础的车联网,已建设RFID数据采集点300余处,给利用RFID数据来进行非法营运车辆的识别提供了可能。项目前期已经得到了模拟城市某点的RFID对各种机动车辆仿真的数据,其中包括营运车辆和非营运车辆。营运车辆包括:公交车、长短途客运车辆和出租车;非营运车辆是私家车。识别的任务就是找到非法的营运车辆。在识别过程中采用了SOM神经网络对各种车辆进行聚类,从而识别运行规律与营运车辆类似的私家车,并将其标记为疑似非法营运车辆,提高交通行政执法人员的目的性和执法效率。
所谓自组织映射网络(SOM)是由芬兰学者Kohonen教授在1981年提出的,也称作Kohonen网络[1]。网络通过把复杂、多维的输入数据投射到一维或者二维的输出空间来进行对复杂数据的研究。SOM网络的应用和研究都非常广泛,例如利用模糊概率SOM神经网络来进行人脸识别[2],利用改进的自组织网络进行概率密度估计与分类[3],设计自生长的批处理SOM网络以及确定它的停止条件[4],这里的停止条件是指获胜者的近邻加权平均失真误差发生收敛时停止训练网络等。
项目前期得到RFID点采集到的信息包含:车辆车牌号、车辆经过时间和经过地点,再将数据导入SQL Sever数据库进行数据的预处理,处理后得到的数据包括:车辆车牌号,统计周期内的车辆平均通过时间、通过时间的方差、通过时间间隔、通过时间间隔的方差、通过频次、高峰通过占比等相关信息,而后经过PCA降维处理去掉不同维数据之间的相关性并剩下最终的六维数据,将这六维数据作为网络的输入数据。
使用MATLAB神经网络工具箱[5]对SOM网络进行聚类时发现,对SOM网络的初始参数的确定有很多局限性,这些初始参数包括:网络权值和阈值、训练次数、训练样本的顺序、学习率等[6-7],但目前暂时还没有找到一种有效的方法来解决这些初始参数的设定问题。本论文对网络的训练次数的设定方式进行一些改进。
1 论述
1.1 SOM网络的基本模型及原理
SOM网络由输入层和输出层构成,输入层是一维的神经元,神经元个数由输入向量的维数i确定,表示网络的输入信号;输出层也是竞争层,一般是一维或二维的神经元组成的网络,其中每个神经元表示不同的输出模式。其连接方式如图1所示。对于每一个输出神经元j,它和每一个输入神经元通过一个权值连接,这个权值组成的向量如式⑴:
其中i表示输入向量的维数,即输入层的神经元个数,j表示第j个输出神经元,输出层共包含M*N个输出神经元,如图1所示为4输入神经元,4*4输出神经元构成的SOM神经网络[5]。
SOM网络的运行分为训练和工作两个阶段[1]。训练阶段,对网络输入数据,输出层将有某个神经元产生最大的响应而获胜。获胜神经元周围的神经元也因此产生较大的响应,于是将获胜神经元及其领域(以某种方式定义的一个获胜神经元周围的区域)内的所有神经元以某种方式将其权值向量进行修改。网络通过自组织方式,用输入数据调整网络权值,最后使输出层各神经元的权值向量成为某类的聚类中心,确定好后训练结束。网络训练结束后,输出层各神经元与输入模式的特定关系就完全确定了,因此可以工作了,当输入一个模式时,网络输出层代表该模式的特定神经元会产生最大的响应,在所有神经元中竞争成功,从而自动将该输入归类。在训练阶段,训练次数需要根据经验并反复对比确定一个合理的值,但对于一个陌生的问题,并不能够在短时间内很好地确定训练次数的最佳值,若训练次数设定过小,可能造成训练不充分而使得到的结果正确率不高;若训练次数过多,又会造成训练过度而使结果不准确,且会浪费大量的时间。故训练次数确定过程很繁琐,不够简便,而且确定最佳训练次数时 花费的时间较多,针对这个问题本文提出了一种解决方法。
1.2 SOM神经网络的训练过程
传统SOM神经网络的训练过程主要包括以下几步骤[6]:
⑴ 初始化网络:首先确定输出神经元的数目,二维的输出矩阵可以表示为M*N,往往要比预测的聚类数目多,初始化权值向量如式⑵:
⑵ 确定获胜神经元:对于每一个训练样本x,使用最小欧式距离准则来寻找离样本向量最近的神经元c,作为获胜神经元,并把它添加到该获胜神经元的类型VC中。决策条件如式⑶:
⑶ 更新权值:对优胜邻域内所有节点按照式⑷
来调整权值。其中学习率η(t,N)是训练时间t和邻域内第j个神经元与获胜神经元之间的拓扑距离N的函数,且η随着t和N的增加减小。
⑷ 检查结束:SOM网络的训练是以学习率η(t)是否减小到0或某个特定的值,或者训练次数t是否达到某一设定的值为条件,满足这个条件就退出训练,否则继续对网络进行训练,返回步骤⑵。
1.3 SOM网络的改进
在SOM的训练过程中,权值一开始是一系列的随机的小数,随着训练过程的进行,权值不停地改变,更加靠近每一个输出神经元的聚类中心,直到达到一个设定的训练次数或学习率衰减到一定的值。但设定的训练次数往往需要多次实验才能确定;而学习率最后衰减的阈值需要靠经验来确定,如果设定为0,会使网络陷入亚稳定状态[1],设置合适的阈值需要适应不同的实际情况。故提出一种利用权值导数来判断何时该停止训练的方法。
每个神经元都代表一个聚类中心,而在传统的聚类过程中,类中心是随着聚类的过程不断地靠近每一类数据中心,而在SOM神经网络中,聚类中心的表征形式又是各个输出神经元的权值向量[Wj1,Wj2,…,Wji](j=1,2,…,M*N),所以定义每一次训练后权值的变化,如式⑸:
来表示类中心的变化情况。其中其中Wn表示当前训练后的权值,Wn-1表示前一次训练后的权值,ΔW是一个i*j维的向量。其中i是输入神经元的个数,j是输出神经元的个数M*N。
权值变化量ΔW的一范数如式⑹:
一范数即为列模,这里符合权值的定义,每一列代表一个聚类中心,ΔW的一范数就是变化最大的类中心的变化量。最终的目的即判断在训练次数为何值时权值W收敛。采用函数值的下降量充分小[8]为收敛准则,即最大的类中心变化值‖ΔW‖1小于某一给定值ε时,即:
来判断收敛。ε为事先给定的收敛条件。
在网络的训练过程中,学习率仍采用SOM网络经典的函数,即指数函数,这里所用的是:
2 实验
为了评估训练次数自适应的SOM改进算法对网络性能的影响[10],本文对改进算法与传统算法进行了对比分析。采用UCI数据集对数据进行测试,分别采用了八个数据集,包括Wine、Breast_Cancer、Iris、Zoo、Car_Evaluation、Abalone、bupa、segment数据集的基本信息和对应的输出网络模型设置见表1,并对照MATLAB中传统的SOM网络[5]进行仿真结果如表2所示,其中在MATLAB中默认的训练次数为200次。
经过测试可以看到,改进后的SOM网络能够比matlab中传统SOM网络(默认训练200次)识别的正确率高。
把改进后的SOM神经网络用在车辆类型识别中的效果如图2所示,其中绿色的为私家车数据,黑色为非法营运车辆数据,红色为公交车数据,蓝色为长途车数据。
该网络输出矩阵设置为7*7的矩阵,经过若干次自适应的迭代,得到的聚类结果如图3所示。
可以看到营运车辆被聚到一类,绿色的合法私家车均匀的散布在输出矩阵中,非法营运的私家车被聚到营运车一类。将这些疑似营运车辆的私家车提供给执法部门,能够给执法人员提供一些线索和依据。
3 结束语
本文提出了一种运用在SOM网络中利用导数判断收敛的算法,该算法能够自适应确定SOM网络无监督训练时的迭代次数,缩短确定训练次数所花费的时间,减小算法复杂度。经过实验验证,在不降低正确率的情况下通过该算法可以减少手动确定训练次数的过程;并与MATLAB中传统的SOM神经网络工具箱相对比,其中默认的训练次数是200次,从表2中可以看到改进后的网络比默认参数的神经网络识别正确率高。利用改进后的网络对经过特征数据提取之后的RFID数据进行聚类,能够达到预期结果。
参考文献:
[1] Samarasinghe.s. Neural Networks for Appeied Sciences and Engineering:From Fundamentals to Complex Pattern Recognition[M].Beijing:Mechanical industry press,2009.7.
[2] Laura Lanzarini, Franco Ronchetti, Cesar Estrebou, Luciana Lens Aurelio Fern' andez Bariviera,Face recognition based on fuzzy probabilistic SOM[J]. IFSA World Congress and NAFIPS Annual Meeting (IFSA/NAFIPS),2013.[3] Lin Chang, Yu Chong-xiu, Modified Self-Organizing Mixture Network for Probability Density Estimation and Classification[J].Neural Networks (IJCNN), The 2013 International Joint Conference on,2013.
[4] Se Won Kim, Tang Van To. A Self-Growing and Self-Organizing Batch Map with Automatic Stopping Condition[J].2013 5th International Conference on Knowledge and Smart Technology (KST),2013.
[5] 张德丰等.MATLAB神经网络应用设计[M].机械工业出版社,2011.
[6] 周开利,康耀红.神经网络模型及其MATLAB仿真程序设计[M].清华大学出版社,2005.
[7] 任军号,吉沛琦,耿跃.SOM神经网络改进及在遥感图像分类中的应用[J].计算机应用研究,2011.3.
[8] 陈宝林.最优化理论与算法[M].清华大学出版社,2005.
[9] Apirak Jirayusakul. Improve the SOM Classifier with the Fuzzy Integral Technique[J].Ninth International Conference on ICT and Knowledge Engineering,2011.
[10] Juha Vesanto, Johan Himberg, Esa Alhoniemi and Juha Parhankangas, Self-organizing map in Matlab: the SOM Toolbox[J].Proceedings of the Matlab DSP Conference,1999.
[11] Chen Weijun,Li Xiao. An Improved Solution of SOM Network Anomaly Detection Based on T-Distribution[J].International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery,2011.

四 : 神经网络原理及应用

BP神经网络原理及应用
数学建模工作室

房恩岳
2012.11.07

Contents
?神经网络概述
?BP神经网络

?应用实例
?在matlab中的实现 ?BP

网络模型改进

神经网络简介
什么是神经网络?
神经网络(NNs)它是一种模 拟动物神经网络行为特征,进 行分布式并行信息处理的算法。 这种网络依靠系统的复杂程度, 通过调整内部大量节点之间相 互连接的关系,从而达到处理 信息的目的。

人类的神经网络

神经网络基础知识
构成:大量简单的基本元件——神经元相互连接
工作原理:模拟生物的神经处理信息的方式 功能:进行信息的并行处理和非线性转化
特点:比较轻松地实现非线性映射过程

具有大规模的计算能力

神经网络的本质
距离

味道

做决定

价格

? 神经网络的本质就是利用计算机语言模

拟人类大脑做决定的过程

生物神经元结构:
突触

细胞体

细胞核 轴突

神经末梢

树突

那怎样用机器语言来模拟呢?

神经元结构模型
x1

x2 x3
xj

? ij
xn

?

?i

yi

xj为输入信号, ? i为阈值,?ij表示与神经元 xj 连接的权值
yi表示输出值
判断 x j ? ij 是否大于阀值

?i

什么是阀值?
?

临界值。比如有一头驴,往它身上压稻草, 一根一根地压,当压到N根时,还没有被压 倒,又压了一根,倒了,这时所有压在驴 身上的稻草的多少,就是压倒这头驴的阈 值。

?神经网络是模仿大脑的神经元,当外界刺 激达到一定的阀值时,神经元才会受刺激, 影响下一个神经元。

判断 ? x j?ij 是否大于阀值 ? i i ?1
?若

n

接受此信息,输出 yi ?
? 若 ? x j?ij i ?1
n

? x ? 大于阀值? i ,则此神经元 p
i ?1 j ij

n

f (? x j wij )
i ?1

小于阀值 ? i ,则此神经元 不接受此信息的传递

输入:x
系统本身/黑盒子

输出:y

知道

不知道

y=x^2

机场

几种代表性的网络模型
单层前向神经网络——线性网络 ? 阶跃网络 ? 多层前向神经网络(反推学习规则即BP神经 网络) ? Elman网络、Hopfield网络、双向联想记忆 网络、自组织竞争网络等等
?

神经网络能干什么?
运用这些网络模型可实现函数逼近、数据 聚类、模式分类、优化计算等功能 。因此, 神经网络广泛应用于人工智能、自动控制、 机器人、统计学等领域的信息处理中。虽 然神经网络的应用很广,但是在具体的使用 过程中到底应当选择哪种网络结构比较合 适是值得考虑的。这就需要我们对各种神 经网络结构有一个较全面的认识

神经网络
医学:疾病识别

应用范围

图像:识别、去噪、增强、配准、 融合 金融:股票和有价证券的预测分 析、资本收益的预测和分析、风 险管理、信用评估等



BP(Back-Propagation)神经网络
BP 神经网络是一种按误差逆传播算法训练的多层 前馈网络,是目前应用最广泛的神经网络模型之 一。BP网络能学习和存贮大量的输入-输出模式映 射关系,而无需事前揭示描述这种映射关系的数 学方程。它的学习规则是使用最速下降法,通过 反向传播来不断调整网络的权值和阈值,使网络 的误差平方和最小。BP神经网络模型拓扑结构包 括输入层(input)隐层(hide layer)和输出层(output layer)

BP神经网络
特点:多层前馈神经网络,信号向前传播,误差向后 传播。 结构:
输入层 中间层

j

输出层

i

k

输入层

i

中间层 j

输出层

k

xi
? ji
中间层:
输入
输出
p

? kj

u j ? ? xi ? ? ji
i ?1

v j ? f (u j )

输入层

i

中间层 j

输出层

k

xi
? ji
输出层:

? kj
? ? kj

输入
输出

Uk ?

?v
j ?1

n

j

Vk ? f (U k )

传递函数

阈值型
线性型

?1 f (x ) ? ? ?0

xi ? 0
xi ? 0

?1 ? f ( xi ) ? ?axi ? b ?0 ?

x1 ? xi ? x2
xi ? x1

xi ? x2

S型

f ( xi ) ?

1 1? e
xi 2 (? ) c

传递函数(激活函数)

logsig(S型函数):
MATLAB按此函数计算:

1 f ( x) ? 1 ? e ?n

调用格式:A=logsig(N)

如:
n=-10:0.1:10 ;a=logsig(n)

plot(n,a)

grid on

图形如下:
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 -10

-8

-6

-4

-2

0

2

4

6

8

10

tansig(双曲正切S型传递函数):

f ( x) ?

2 ?1 ?2n 1? e

调用格式:A=tansig(n)

如:
n=-10:0.1:10 a=tansig(n) plot(n,a)

1 0.8 0.6 0.4 0.2 0 -0.2

grid on
如右图所示

-0.4 -0.6 -0.8 -1 -10

-8

-6

-4

-2

0

2

4

6

8

10

BP神经网络原理
?

基本BP算法包括两个方面:信号的前向传 播和误差的反向传播。即计算实际输出时 按从输入到输出的方向进行,而权值和阈 值的修正从输出到输入的方向进行。利用 输出后的误差来估计输出层的直接前一层 的误差,再用这个误差估计更前一层的误 差,如此一层一层的反传下去,就获得了 所有其他各层的误差估计。

BP神经网络工作原理
误差向后传播
输入层 隐含层 输出层

初始化

给定输入向量和期望输出

求隐层输出层各单元输出

求期望输出与实际输出的偏 差e

e满足需 求? Y 全部e满足需 求 Y 结束

N

计算隐层误 差

求误差梯度

更新权值

BP神经网络工作流程
?

?

1.网络初始化: ? 根据训练数据确定网络的输入神经元数n,隐 含神经元数l,输出神经元数m,初始化各层神 经元之间的连接权值 w 和 w ,初始化隐含层 和输出层的阈值 a和b,给定学习速率和神经 元传递函数。 2.隐含层输出计算 :根据输入向量X,输入层和 隐含层连接权值 wij 以及隐含层阈值a,计算隐含 层输出H
ij

jk

? ?

?
? ?

3.输出层输出计算

。根据隐含层输出的H,连接 权值 wij 和阈值b,计算BP神经网络的预测输出O. 4.误差计算根据预测输出O和期望输出Y计算网 络预测误差e 5.权值更新根据网络误差更新网络权值 wij , jk w 6.阈值更新,根据网络误差网络e,神经元阈值 a,b 7.判断算法迭代是否结束,若没有结束返回步 骤2

BP网络的标准学习算法-学习过程
? ?

? ?

正向传播: ? 输入样本---输入层---各隐层---输出层 判断是否转入反向传播阶段: ? 若输出层的实际输出与期望的输出(教师信号)不符 误差反传 误差以某种形式在各层表示----修正各层单元的权 值

?

?

网络输出的误差减少到可接受的程度 进行到预先设定的学习次数为止

BP标准算法步骤
?网络结构 ?输入层有n个神经元,隐含层有p个神经元,输出层 有q个神经元 ?变量定义

?输入向量:

x ? ? x1 , x2 ,?, xn ?

hi ?隐含层输入向量: ? ? hi1 , hi2 ,? , hi p ?

? ? yi ?输出层输入向量: ? ? yi , yi ,? , yi ? yo ?输出层输出向量: ? ? yo , yo ,? , yo ?
ho ?隐含层输出向量: ? ho1 , ho2 ,? , ho p
1 2 q
1 2 q

?期望输出向量:

d o ? ? d1 , d 2 ,? , d q ?

BP标准算法步骤
?变量定义 ?输入层与中间层的连接权值: ih w ?隐含层与输出层的连接权值: ho w

?隐含层各神经元的阈值: h b
?输出层各神经元的阈值:o b
k ?样本数据个数: ? 1,2,?m

?激活函数: f(?)
1 q ?误差函数: e ? ? (d o (k ) ? yoo (k )) 2 2 o ?1

BP标准算法步骤
1. 网络初始化
?给各连接权值分别赋一个区间(-1,1)内的随机数,设定误 差函数e,给定计算精度值 和最大学习次数M。

2. 随机选取一个输入样本及对应期望输出

x(k ) ? ( x1 (k ), x2 (k ),?, xn (k ))
d o (k ) ? (d1 (k ), d 2 (k ),? , d q (k ))

BP标准算法步骤
3.计算隐含层和输出层各神经元的输入和输出

BP标准算法步骤
4.利用网络期望输出和实际输出,计算误差函数对 输出层的各神经元的偏导数。

BP标准算法步骤
5. 利用隐含层到输出层的连接权值、输出层的输出和隐含层的输出,计 算误差函数对隐含层各神经元的偏导数。

BP标准算法步骤

BP标准算法步骤
6. 利用输出层各神经元的和隐含层各神经元的输出来修正连 接权值。

BP标准算法步骤
7. 利用隐含层各神经元的和输入层各神经元的输入修正连 接权。

BP标准算法步骤
8. 计算全局误差

1 2 E? ?? (d o (k ) ? yo (k )) 2m k ?1 o?1
9. 判断网络误差是否满足要求。当误差达到预设精 度或学习次数大于设定的最大次数,则结束算法。 否则,选取下一个学习样本及对应的期望输出,返 回到第三步,进入下一轮

学习。

m

q

梯度下降法
E (? )

0

?

BP标准算法直观解释
e

?情况一、直观表达
? 当误差对权值的偏 导数大于零时,权值 调整量为负,实际输 出大于期望输出, 权值向减少方向调整, 使得实际输出与期望 输出的差减少。

who
?e >0,此时Δwho<0 ?who

BP标准算法直观解释
e

?情况二、直观表达
?当误差对权值的偏导数 小于零时,权值调整量 为正,实际输出少于期 望输出,权值向增大方向 调整,使得实际输出与期 望输出的差减少。

who
?e <0, ?who

此时Δwho>0

应用实例
?分类识别 ?数据预测 ?医学诊断

蠓虫的分类识别
?

思路
目标输出:(1,0) 、(0,1)。 Af类记为 (1,0),Apf类记为(0,1)。

1、触角长和翼长作为输入信息,分别记x1,x2

?输出层有两个神经元

yo1 ? 0或1

yo2 ? 0或1

输入层

中间层 h

输出层

i

o

xi

yo

?hi

?oh
?hi、?oh

2、通过已知样本训练出合适的权值 使输出为(0,1)或(1,0)。

3、将待区分的蠓虫数据输入网络,求值。

权值求法:向后传播法
理想输出 Af类(1,0),Apf类(0,1)记为 d o (k )

则有误差:

1 2 E(? ) ? ? (d o ( k ) ? yo (k )) 2 o ?1
使得E(w)最小的 whi woh 作为所需的权值

q

运用神经网络进行预测
例:现给出一药品商店一年当中12个月的药品 销售量(单位:箱)如下:
月份 销量 月份 销量 1 2056 7 1873 2 2395 8 1478 3 2600 9 1900 4 2298 10 1500 5 1634 11 2046 6 1600 12 1556

训练一个BP网络,用当前的所有数据预测下一个月 的药品销售量。

抛开神经网络,对于预测问题我们会 首先想到线性拟合的方法
首先我们看一下这些数据的离散分布图
2600 2400

2200

2000

1800

1600

1400

0

2

4

6

8

10

12

但线性拟合有它的局限性,从图中可以明显看出 月份与药品销量不存在线性关系, 对于离散程度特别高的数据,它们不存在线性关 系,所以用线性拟合做出来的误差会很大

对于预测问题我们还可以用 灰色系统、时间序列来预测

思路二
?

我们用前三个月的销售量预测下一个月的 销售量,也就是用1-3月的销售量预测第4 个月的销售量,用2-4个月的销售量预测第 5个月的销售量,如此循环下去,直到用911月预测12月份的销售量。这样训练BP神 经网络后,就可以用10-12月的数据预测来 年一月的销售量。

谵妄的诊断
?

谵妄是由于各种原因引起的急性脑器质性 综合症,其特点是急性发病,意识水平变 化,病程波动,定向力、注意力、思维、 精神运动、行为和情感改变。根据国外 1980年以后的有关谵妄研究文献的报道, 谵妄的发病率为4%~25%。目前对谵妄的 发病机制还了解不多,诊断的方式常采用 多个指标综合评价。

谵妄的诊断
如对老年人

谵妄,通常采用检查表的方式确诊,检查表 中的11个项目包含:
? ? ?

?
? ? ?

?
? ? ?

急性起病:病人的精神状况有急性变化的证据吗? 注意障碍:患者的注意力难以集中吗? 思维混乱:患者的思维是凌乱或是不连贯吗? 意识水平的改变:总体上看,您如何评价该患者的意识水平? 定向障碍:在会面的任何时间患者存在定向障碍吗? 记忆力减退:在面谈时患者表现出记忆方面的问题吗? 知觉障碍:患者有知觉障碍的证据吗? 精神运动性兴奋:面谈时患者的行为活动有不正常的增加吗? 精神运动性迟缓:面谈时患者有运动行为水平的异常减少吗? 波动性:患者的精神状况(注意力、思维、定向、记忆力)在面 谈前或者在面谈中有波动吗? 睡眠-觉醒周期的改变:患者有睡眠-觉醒周期紊乱的证据吗?

谵妄的诊断
针对以上11个问题,医生对病人进行观察和 提问,每项分4个等级打分:不存在—1分; 轻度存在—2分;中度存在—3分;严重存 在—4分。 数据为一个医生对96名测试人员的观察和提 问,并通过计分方式记录下来的直观诊断。 诊断标准为:22分以上可诊断为谵妄,在量 表诊断一列中记为Y(否则记为N)。这样的 标准是否合理?

谵妄的诊断
序 起 注 思 意 定 记 错 兴 迟 波 睡 22 号 病 意 维 识 向 忆 觉 奋 滞 动 眠 分 标 准 1 2 3 … 96 1 2 3 4 3 3 4 3 2 4 2 … 2 2 1 2 3 2 2 3 3 1 3 3 … 1 1 3 1 2 3 2 3 4 2 1 1 1 3 4 3 … 1 2 17 N 3 4 4 量 表 诊 断

25 Y 36 Y 28 Y

谵妄的诊断
实际上已经知道,前48个数据来自临床诊 断的病人,后48个数据来自正常人。可以 看出,量表诊断一共出了10例误诊病例, 占测试人员的10.4%,这是一个比较高的错 误率。 现在有神经网络解决这个问题。

该如果解决?

思路
1. 将表中1~40号数据和59~96号数据作为学 习数据,41~58号数据作为检验数据。 2. 选用较为简单的2层且隐含层有4个神经元 的BP算法神经网络。

在Matlab中的实现
? newff
net=newff net=newff(PR,[S1 S2 …SN1],{TF1 TF2…TFN1},BTF,BLF,PF)
net=newff :用于在对话框中创建一个BP网络
PR :由每组输入(共有R组输入)元素的最大值和最小值组成的R×2维的矩 阵; Si :第i层神经元的个数,共计N1层

创建一个BP网络,其调用格式为:

其中,

TFi:第i层的传递函数,默认为“tansig”
BTF:BP网络的训练函数,默认为“trainlm”; BLF:权值和阈值的BP学习算法,默认为“learngdm”

PF:网络的性能函数,默认为“mse”

train
其中,

用于对神经网络进行训练。调用格式为:

[net,tr,Y,E,Pf,Af]=train(NET,P,T,Pi,Ai)

NET:待训练的神经网络; P:网络的输入信号; T:网络的目标,默认值为0; Pi:初始

的输入延迟,默认为0; Ai:初始的层次延迟,默认为0; net:函数返回值,训练后的神经网络; tr:函数返回值,训练记录(包括步数和性能); Y:函数返回值,神经网络的输出信号; E:函数返回值,神经网络的误差; Pf:函数返回值,最终输入延迟; Af:函数返回值,最终层延迟。

?

常见参数:
? net.trainParam.show

显示中间结果的周期

(25) ? net.trainParam.lr 整批学习中的学习效率 (0.01) ? net.trainParam.mc 势能学习规则(traingdm)势 能率(0.9) ? net.trainParam.epochs 整批学习迭代次数上限 (100) ? net.trainParam.goal 最小二乘目标误差设定值 (0)

神经网络仿真函数sim 调用格式为:
[Y,Pf,Af,E,perf]=sim(net,P,Pi,Ai,T)
其中,

Y:函数返回值,网络输出;
Pf:函数返回值,最终输出延迟; Af:函数返回值,最终的层延迟; E:函数返回值,网络误差; perf:函数返回值,网络性能; net:待仿真的神经网络; P:网络输入; Pi:初始输入延迟,默认为0; Ai:初始的层延迟,默认为0; T:网络目标,默认为0.

BP神经网络的改进
?

一、基本BP算法的缺陷

?

二、隐含层的层数与节点数的改进
三、用遗传算法优化BP神经网络

?

基本BP算法的缺陷
?

BP算法因其简单、易行、计算量小、并行性强等 优点,目前是神经网络训练采用最多也是最成熟 的训练算法之一。其算法的实质是求解误差函数 的最小值问题,由于它采用非线性规划中的最速 下降方法,按误差函数的负梯度方向修改权值, 因而通常存在以下问题: ? 学习效率低,收敛速度慢 ? 易陷入局部极小状态

隐含层的层数与节点数的改进
BP神经网络的构建必须注意隐含层神经元 数的选择。 ? 如果隐含层神经元数过少,BP神经网络难 以建立复杂的映射关系,网络预测误差较 大,如果隐含层神经元数过多,网络学习 的时间增加,并且可能出现过拟合的现象, 就是把样本中非规律性的内容(如噪声等) 也学会记牢,从而出现训练样本准确,但 是其他样本预测误差较大。
?

隐含层的层数与节点数的改进
? 那怎么确定隐含层的神经元个数呢?
? 现在还没有什么成熟的定理能确定各层

神经元的神经元个数和含有几层网络, 大多数还是靠经验

隐含层的层数与节点数的改进
? ? ? ?

最佳隐含层神经元数选择可参考如下经验公式: m为隐含层神经元数, n为输入层神经元数, 为输出层神经元数 l a为1—10之间的常数

m ? n?l ?a

m ? log 2 n
m ? nl
……

隐含层的层数与节点数的改进
实际问题中,隐含层神经元数的选择首先 是参考公式来确定神经元的大致范围,然 后试凑法确定最佳点数 ?

注意对于一般问题BP神经网络的分类误差 随着隐含层神经元的增加呈现先减少后增 加的趋势
?

用GA优化BP神经网络
?

用GA直接训练BP网络的权重算法

?

用GA先求BP网络的权重,再用纯BP直接 训练BP的混合GA-BP算法

Thanks!

待续。。。


五 : 《神经网络及其应用》:《神经网络及其应用》-目录

《神经网络及其应用》是周志华主编,清华大学出版社于2004年9月出版的一本涉及神经网络的学习方法、优化计算、知识理论、流形学习等内容的医学书籍。

《神经网络及其应用》:《神经网络及其应用》-目录_神经网络的应用
《神经网络及其应用》【作  者】周志华[同作者作品]
【出版社】清华大学出版社
【书号】7302086508
【出版日期】2004年9月
【版次】1-1
【所属分类】计算机>人工智能>神经计算

本书特别邀请国内神经网络及相关领域的知名专家,分别对神经网络的理论基础及典型应用进行了讨论。内容涉及神经网络的学习方法、优化计算、知识理论、流形学习、过程神经元网络、随机二元网络、离散联想记忆神经网络以及神经网络在医学数据处理、汉语认知等方面的应用。文中通过丰富的文献(www.61k.com)资料和研究工作,对当前的最新进展做出回顾和分析,对学术研究有重要的参考价值。
本书适合计算机和自动化专业的研究生、教师、工程技术人员和研究人员参考。

神经网络的应用_《神经网络及其应用》 -目录


前言
专题1神经网络的学习方法
1引言
2基于搜索机制的神经网络学习算法
3神经网络的规划学习方法
4神经网络的构造性学习方法
5覆盖算法与SVM中核函数法的关系
6结束语
参考文献
专题2过程神经元网络的理论和应用
1引言
2过程神经元模型
3过程神经元网络模型
4反馈过程神经元网络模型
5输入输出均为时变函数的过程神经网络模型
6结束语
参考文献
专题3神经计算和优化计算
1引言
2凸优化理论
3Hopfield网络稳定性分析
4非线性梯度下降算法
5支持向量机对偶规划的优化理论和算法设计及分析
6结束语
参考文献
专题4知识理论与神经网络
1引言
2知识概念
3知识度量
4知识生成
5知识激活
6神经网络与知识理论
7结束语
参考文献
专题5人工免疫系统中的克隆选择算法
1引言
2人工免疫系统进展
3克隆选择学说与克隆选择算子
4简单的克隆选择算法及其性能分析
5改进的克隆选择算法
6结论
7展望
参考文献
专题6流形学习
1引言
2流形学习综述
3流形学习的应用
4流形学习若干问题的研究
5结束语
参考文献
专题7模糊蕴涵算子及其构造
1引言
2模糊蕴涵算子及其性质
3模糊蕴涵算子的伴随对
4模糊蕴涵算子的圈乘算子
5三角模、余三角模的定义和性质
6由三角模构造的模糊蕴涵算子
71类由余三角模生成的蕴涵算子和合成算子
8模糊蕴涵算子θ122~θ147的圈乘算子
9模糊蕴涵算子的对偶算子
10结束语
参考文献
专题8随机二元网络的理论与应用
1引言
2时间域数据表示和随机神经元
3前馈型随机二元网络
4反馈型随机二元网络
5量子二元网络
6随机二元网络硬件设计
7随机二元网络应用
8讨论
参考文献
专题9离散联想记忆神经网络研究进展
1引言
2联想记忆研究进展
3应用
4结束语
参考文献
专题10神经网络规则抽取
1引言
2起源和发展
3规则和评价
4算法分类
5讨论
6结束语
参考文献
专题11神经网络在医学数据处理中的应用
1引言
2医学数据处理中的神经网络
3医学数据处理的分类
4专题综述
5讨论
参考文献
专题12汉语认知的脑功能成像与神经网络
1引言
2脑的结构与功能分区
3脑功能成像技术
4汉语认知研究
5汉语认知脑区间的相互作用及脑内信息加工模式分析示例
6本领域研究存在的问题及未来趋势
6.7结语
参考文献
专题13认知心理学与神经网络
1引言
2联结主义认知心理学的基本思想
3联结主义对于知觉效应的研究
4Stroop任务
5记忆
6语言
7问题解决的研究
8知识的组织
9决策
10认知发展问题
11联结主义和认知测量
12展望
参考文献

本文标题:神经网络技术及其应用-人工神经网络原理及实际应用
本文地址: http://www.61k.com/1071745.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1