matlab_人工神经网络

上传人:飞*** 文档编号:48595578 上传时间:2018-07-17 格式:PPT 页数:48 大小:1MB
返回 下载 相关 举报
matlab_人工神经网络_第1页
第1页 / 共48页
matlab_人工神经网络_第2页
第2页 / 共48页
matlab_人工神经网络_第3页
第3页 / 共48页
matlab_人工神经网络_第4页
第4页 / 共48页
matlab_人工神经网络_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《matlab_人工神经网络》由会员分享,可在线阅读,更多相关《matlab_人工神经网络(48页珍藏版)》请在金锄头文库上搜索。

1、人工神经网络 (Artificial Neural Networks-ANN)杨珂玲 统计与应用数学系目录 2、人工神经网络 3、BP神经网络 4、BP神经网络在实例中的应用 1、引例 1、引例 1981年生物学家格若根(W Grogan)和维什(W Wirth)发现了两类蚊子(或飞蠓midges)他们测量了这两 类蚊子每个个体的翼长和触角长,数据如下: 翼长 触角长 类别 1.64 1.38 Af 1.82 1.38 Af 1.90 1.38 Af 1.70 1.40 Af 1.82 1.48 Af 1.82 1.54 Af 2.08 1.56 Af 翼长 触角长 类别 1.78 1.14

2、Apf 1.96 1.18 Apf 1.86 1.20 Apf 1.72 1.24 Af 2.00 1.26 Apf 2.00 1.28 Apf 1.96 1.30 Apf 1.74 1.36 Af 问:如果抓到三只新的蚊子,它们的触角长和翼长 分别为(l.24,1.80); (l.28,1.84);(1.40,2.04)问 它们应分别属于哪一个种类? 解法一 : 把翼长作纵坐标,触角长作横坐标;那么 每个蚊子的翼长和触角决定了坐标平面的一个 点.其中 6个蚊子属于 APf类;用黑点“”表 示;9个蚊子属 Af类;用小圆圈“。”表示 得到的结果见图1 图1 飞蠓的触角长和翼长 思路:作一直线将

3、两类飞蠓分开 例如;取A(1.44,2.10)和 B(1.10,1.16) ,过A B两点作一条直线: y 1.47x - 0.017, 其中X表示触角长;y表示翼长 分类规则:设一个蚊子的数据为(x, y), 如果y1.47x - 0.017,则判断蚊子属Apf类; 如果y1.47x - 0.017;则判断蚊子属Af类 分类结果:(1.24,1.80),(1.28,1.84)属 于Af类;(1.40,2.04)属于 Apf类图2 分类直线图 缺陷:根据什么原则确定分类直线? 若取A=(1.46,2.10), B=(1.1,1.6)不变,则分类直线 变为 y=1.39x+0.071分类结果变为

4、: (1.24,1.80), (1.40,2.04) 属于Apf类 ; (1.28,1.84)属于Af类 哪一分类直线才是正确的呢? 因此如何来确定这个判别直线是一个值得研究的 问题一般地讲,应该充分利用已知的数据信息 来确定判别直线 再如,如下的情形已经不能用分类直线的办法 : 新思路:将问题看作一个系统,飞蠓的数据作为输 入,飞蠓的类型作为输出,研究输入与输出的关系 。2、人工神经网络 人工神经网络是由大量的、简单的处理单元(称为神经元)广泛地相互连接而形成的复杂网络系统,它反映了人脑功能的许多基本特征,是一个高度复杂的非线性动力学系统。2.1 人工神经网络概述2.2 神经网络的研究内容(

5、1)生物原型研究:研究神经细胞、神经网络、神经 系统的生物原型结构及其功能机理。(2)建立理论模型:根据生物圆形的研究,建立神经 元、神经网络的理论模型,其中包括概念模型、知识 模型、物理化学模型、数学模型等。(3)网络模型与算法研究:在理论模型研究的基础上 构成具体的神经网络模型,以实现计算机模拟或准备 制作硬件,包括网络学习算法的研究。(4)神经网络应用系统:在网络模型与算法研究的基 础上,利用神经网络组成实际的应用系统。2.3 神经网络的应用 神经网络理论特别是在人工智能、自动控制、计 算机科学、信息处理、机器人、模式识别、等方 面都有重大的应用实例。下面列出一些主要应用 领域: (1)

6、模式识别和图像处理。印刷体和手写字符 识别、语音识别、指纹识别、人体病理分析、目 标检测与识别、图像压缩和图像复制等。 (2)控制和优化。机器人运动控制、半导体生 产过程控制、石油精炼优化控制、超大规模集成 电路布线设计等。 (3)预报和智能信息管理。股票市场预测、 地震预报、借贷风险分析、IC卡管理和交通管 理。 (4)通信。自适应均衡、回波抵消、路由选 择和ATM网络中的呼叫接纳识别和控制。 (5)空间科学。空间交汇对接控制、导航信 息智能管理、飞行器制导和飞行程序优化管理 等。2.4 神经元与神经网络结构 大脑可视作为1000多亿神经元组成的神经网络 图1 神经元的解剖图 神经元的信息传

7、递和处理是一种电化学活动。树 突由于电化学作用接受外界的刺激;通过胞体内的活动体现为轴突电位,当轴突电位达到一定的 值则形成神经脉冲或动作电位;再通过轴突末梢 传递给其它的神经元从控制论的观点来看;这 一过程可以看作一个多输入单输出非线性系统的动态过程2.5 神经网络基本模型 归纳一下生物神经元传递信息的过程:生物神经 元是一个多输入、单输出单元。常用的人工神经 元模型可用图2模拟。图2 人工神经元(感知器)示意图 当神经元j有多个输入 (i=1,2,m)和单个输出 时,输入和输出的关系可表示为: 其中 为阈值, 为从神经元i到神经元j的 连接权重因子,f( )为传递函数,或称激励函 数。例如

8、,若记 取激发函数为符号函数 则 S型激发函数 : 2.6 神经网络分类 神经网络有分层网络、层内连接的分层网络、反馈连接的分层网络、互连网络等四种结构,其神经网络模型有感知器网络,线性神经网络,BP神经网络,径向基函数网络,反馈神经网络等,本文主要学习研究了BP神经网络,以及BP神经网络在函数逼近和样本含量估计等实例中的应用分析。 3、BP神经网络(Back Propagation network ) 3.1 BP神经网络概述 BP神经网络是一种多层前馈神经网络,该网络的主要特点是信号前向传递,误差反向传递。在前向传 递中,输入信号从输入层经隐 含层逐层处理,直至 输出层。每一层的神经元状态

9、只影响下一层神经元 状态。如果输出层得不到期望输出,则转入反向传 播,根据预测误差调整网络权值和阀值,从而使BP神经网络预测输出不断逼近期望输出。3.2 BP神经网络的主要应用目前,在人工神经网络的实际应用中。绝大部分的 神经网络模型都采用BP神经网络及其变化形式。它 也是前向网络的核心部分,体现了人工神经网络的 精华。BP网络主要用于以下四方面:1)函数逼近:用输入向量和相应的输出向量训练一 个网络以逼近一个函数。2)模式识别:用一个待定的输出向量将它与输入向 量联系起来。3)分类:把输入向量所定义的合适方式进行分类。4)数据压缩:减少输出向量维数以便传输或存储。3.3 BP神经网络模型结构

10、 BP神经元模型 上图给出一个基本的BP神经元模型,它具有R个输入,每 个输入都通过一个适当的权值w和上一层相连,网络输出可表示 为:a=f (w*p+b) f就是表示输入/输出关系的传递函数。BP网络中隐层神经元 的传递函数通常用log-sigmoid型函数logsig()、tan-sigmoid型函 数tansig()以及纯线性函数purelin()。如果BP网络的最后一层是sigmoid型神经元,那么整个网 络的输出就限制在一个较小的范围内;如果BP网络的最后一层 是purelin型线性神经元,那么整个网络的输出可以取任意值。 下图(上半部) 是一个典型的BP网络结构。具有S个神经元,

11、R个输入和S个输出,神经元采用S型传递函数logsig() 。可见, 就单层网络而言,除传递函数不同外,与前面所介绍的感知器 和线性神经网络没有什么不同。上图(下半部) 是一个典型两层BP网络 (一个隐层和 一个输出层)。前馈型网络通常有一个或多个隐层,隐 层中的神经元均采用S型传递函数,输出层的神经采用线性传递函数。隐层的非线性传递函数神经元可以学 习输入输出之间的线性和非线性关系,线性输出层是 为了拓宽网络输出。如果需要限定网络输出(例如约束 在0和1之间),则可以采用S型传递函数(例如logsig()。 3.4 BP神经网络的训练过程 BP神经网络拓扑结构图3.5 基于MATLAB的BP

12、神经网络工具箱函数 最新版本的神经网络工具箱几乎涵盖了所有的神 经网络的基本常用模型,如感知器和BP网络等。对于各种不同的网络模型,神经网络工具箱集成了多种学 习算法,为用户提供了极大的方便。Matlab R2007神 经网络工具箱中包含了许多用于BP网络分析与设计的 函数,BP网络的常用函数如表1所示。表1 BP网络的常用函数表函数类类型函数名称函数用途前向网络创络创 建函数newcf创创建级联级联 前向网络络Newff创创建前向BP网络络传递传递 函数logsigS型的对对数函数tansigS型的正切函数purelin纯线纯线 性函数学习习函数learngd基于梯度下降法的学习习函数lea

13、rngdm梯度下降动动量学习习函数性能函数 mse均方误误差函数msereg均方误误差规规范化函数显显示函数plotperf绘绘制网络络的性能plotes绘绘制一个单单独神经经元的误误差曲面plotep绘绘制权值权值 和阈值阈值 在误误差曲面上的位置errsurf计计算单单个神经经元的误误差曲面3.5.1 BP网络创建函数 1) newff该函数用于创建一个BP网络。调用格式为:net=newffnet=newff(PR,S1 S2SN1,TF1 TF2TFN1,BTF,BLF,PF)其中:net=newff;用于在对话框中创建一个BP网络。net为创建的新BP神经网络;PR为网络输入向量取值

14、范围的矩阵;S1 S2SNl表示网络隐含层和输出层神经元的个数;TFl TF2TFN1表示网络隐含层和输出层的传输函数,默认为tansig;BTF表示网络的训练函数,默认为trainlm;BLF表示网络的权值学习函数,默认为learngdm;PF表示性能数,默认为mse。2)newcf函数用于创建级联前向BP网络,newfftd函数用于创建一个存在输入 延迟的前向网络。 3.5.2 神经元上的传递函数传递函数是BP网络的重要组成部分。传递函数又称为激活函数,必须是连 续可微的。BP网络经常采用S型的对数或正切函数和线性函数。1) logsig:该传递函数为S型的对数函数。调用格式为:A=log

15、sig(N)info=logsig(code)其中,N:Q个S维的输入列向量;A:函数返回值,位于区间(0,1);2)tansig:该函数为双曲正切S型传递函数。调用格式为:A=tansig(N)info=tansig(code)其中,N:Q个S维的输入列向量;A:函数返回值,位于区间(-1,1)。3)purelin:该函数为线性传递函数。调用格式为:A=purelin(N)info=purelin(code)其中,N:Q个S维的输入列向量;A:函数返回值,A=N。3.5.3 BP网络学习函数 1)learngd 该函数为梯度下降权值/阈值学习函数,它通过神经元的输入 和误差,以及权值和阈值的学习效率,来计算权值或阈值的变 化率。调用格式为: dW,ls=learngd(W,P,Z,N,A,T,E,gW,gA,D,LP,LS) db,ls=learngd(b,ones(1,Q),Z,N,A,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号