1、神经网络原理神经网络原理主讲老师:田传俊主讲老师:田传俊1.概述1.1 什么是人工神经网络什么是人工神经网络 人脑是世界上已知的最复杂、最完善和最有效的信息人脑是世界上已知的最复杂、最完善和最有效的信息处理系统。处理系统。 计算机的不足:计算机的不足: 因当代的计算机的因当代的计算机的形象形象智能较差,致使模拟人脑智能较差,致使模拟人脑的神经网络技术得以发展,试图建立模仿人类大脑的的神经网络技术得以发展,试图建立模仿人类大脑的计算机。计算机。 形象智能:记忆联想、语言理解、直觉推理、图象识别等。形象智能:记忆联想、语言理解、直觉推理、图象识别等。 人工神经网络:人工神经网络:基于模仿生物大脑的
2、结构和功能而构基于模仿生物大脑的结构和功能而构成的一种信息处理系统(计算机)或一种数学物理模成的一种信息处理系统(计算机)或一种数学物理模型型 。1.1 什么是人工神经网络 大脑是由大量神经细胞或神经元组成的。每个神经元按某种方式连接起来,形成大脑内部的生理神经元网络。 神经元之间联结的强弱联结的强弱,按外部的激励信号做自适应变化,而每个神经元又随着这些接收信号的综合大小而呈现兴奋或抑制状态。 需要指出,尽管人工神经网络是对大脑结构需要指出,尽管人工神经网络是对大脑结构的模仿,但这种模仿目前还处于的模仿,但这种模仿目前还处于极低的水平极低的水平。人脑特点:1.2 人工神经网络的发展 初始期 M
3、P模型的提出和ANN的兴起 1943年,美国神经生理学家Warren Mcculloch和数学家Walter Pitts提出了一个简单的神经元模型,即MP模型,并预言大脑的所有活动最终将被解释清楚。虽然问题并非如此简单,但它给人们一个信念,即大脑的活动是靠脑细胞的组合连接实现的。 1949年,心理学家Donala Hebb提出脑细胞间的思路每当通过参与某种活动时将被加强,这就是后来的Hebb学习规则学习规则。目前有些神经网络模型仍然采用这种学习规则。1.2 人工神经网络的发展 到了二十世纪50年代,随着计算机的发展,神经系统功能的理论开始在计算机上进行模拟,IBM的研究室在Hebb工作的基础上
4、,对神经网络的模型进行了软件模拟软件模拟,使得模型像人那样适应环境的实验上取得了一定程度的成功。 1956年,一个人工智能研究项目(Dartmouth Summer)给给神经计算领域以巨大推动。1.2 人工神经网络的发展 第一次高潮期 感知器模型和ANN 1957年,计算机专家Frank Rosenblatt开始从事感感知器知器的研究,并制成硬件,通常被认为是最早的神经网络模型。 1959年,两位电机工程师Bernard Widrow和Marcian Haff开发出一种叫作自适应线性单元自适应线性单元的网络模型,并描述了它的学习算法( Widrow- Haff算法)。该网络可以成功用于抵消通信
5、中的回波和噪声,以及天气预报,成为第一个用于实际问题的神经网络。 这一时期,由于感知器的某些进展和对神经网络的宣传,许多部门开始大批地投入此项研究,形成了研究人工神经网络的第一次高潮。1.2 人工神经网络的发展 反思期 神经网络的低潮 1969年,Marvin Minsky和Seymour Papert分析了当时的简单感知器,指出它有非常严重的局限性,甚至不能解决简单的“异或”问题。此时,批评的声音高涨,不少研究人员把注意力转向了以编写程序或专家系统为特点的人工智能,导致对人工神经网络的研究陷入低潮。 虽然如此,二十世纪70年代到80年代早期,仍有一些坚信神经网络的人坚持他们的工作,为人工神经
6、网络的复苏做准备。1.2 人工神经网络的发展 第二次高潮 Hopfield模型的出现和ANN的复苏 1982年,美国物理学家John Hopfield提出Hopfield模型模型。这是一个互联的非线性动力学网络他解决问题的方法是一种反复运算的动态过程,这是符号逻辑处理方法所不具备的性质. 1986年, Rumelhart等研究者重新独立地提出多层网络的学习算法BP算法算法,较好地解决了多层网络的学习问题 1987年首届国际ANN大会在圣地亚哥召开,国际ANN联合会成立,创办了多种ANN国际刊物。 1990年12月,北京召开首届神经网络大会。1.2 人工神经网络的发展 再认识与应用研究期 二十世
7、纪90年代后,神经网络研究趋于平缓,主要问题:应用面还不够宽;结果不够精确;存在可信度问题 主要研究内容 开发现有模型的应用,并对模型、算法加以改模型、算法加以改造造,以提高网络的训练速度和运行的准确度。 希望在理论上寻找新的突破新的突破,建立新的专用或新的专用或通用模型和算法通用模型和算法。 进一步对生物神经系统进行研究对生物神经系统进行研究,不断丰富对人脑的认识。1.3 人工神经网络的特点 固有的并行结构和并行处理 知识的分布存储 联想记忆功能 容错性 高度的非线性全局作用神经网络的特点:神经网络的特点:1.3 人工神经网络的特点 人工神经网络的局限性 ANN不适于高精度的计算 ANN不适
8、于做类似顺序计数的工作。 人工神经网络是以并行方式工作的。 ANN的学习和训练往往是一个艰难的过程。 网络的设计没有严格确定的方法,所以选择训练方法和所需网络结构没有统一标准。 脱机训练往往需要很长时间,为了获得最佳效果,常常要重复试验多次。 网络收敛性的问题。1.3 人工神经网络的特点 总之,总之,ANN是基于人类大脑的结构和功能建立起是基于人类大脑的结构和功能建立起来的学科,尽管它只是大脑的来的学科,尽管它只是大脑的低级近似低级近似,但它的,但它的许多特点和人类的智能特点类似,有着较强的识许多特点和人类的智能特点类似,有着较强的识别能力和广泛的应用前景别能力和广泛的应用前景。1.4 人工神
9、经网络的应用领域 模式信息处理和模式识别模式信息处理和模式识别 模式模式是事物的某种特性类属是事物的某种特性类属. 模式识别模式识别就是将所研究客体的特性类属映射成就是将所研究客体的特性类属映射成“类别号类别号”.最优化问题计算最优化问题计算信息的智能化处理信息的智能化处理复杂控制复杂控制信号处理信号处理2. 人工神经网络基础2.1 人工神经网络的生物原型大脑 简单的神经元2.1 ANN的生物原型大脑 神经元就是神经细胞,在人体内从大脑到全身存在大约1010个神经元。 神经元的组成 细胞体:神经元的本体,内有细胞核和细胞质,完成普通细胞的生存功能。 树突:它有大量的分枝,多达103数量级,长度
10、较短(通常不超过1毫米),用以接受接受来自其它神经元的信号。 轴突:它用以输出输出信号,有些较长(可达1米以上),轴突的远端也有分枝,可与多个神经元相连。 突触:它是一个神经元与另一个神经元相联系联系的特殊部位,通常是一个神经元轴突的端部靠化学接触或电接触将信号传递给下一个神经元的树突或细胞体。 神经元间的信号通过突触传递2.1 ANN的生物原型大脑 神经元的基本工作机制 神经元有两种状态两种状态兴奋和抑制(也不能认为神经元只能表达或传递二值逻辑信号) 当神经元接收到其它神经元经由突触传来的激励信号时,多个输入在神经元中以代数和的方式叠加。如果叠加总量超过某个阈值叠加总量超过某个阈值,神经元就
11、会被激发进入兴奋状态,发出输出脉冲,并由轴突的突触传递给其它神经元。 进入突触的信号会被加权,起兴奋作用的信号为正,起抑制作用的信号为负。2.2 人工神经元模型输入输出 WX函数处理人工神经元 神经元是人工神经网络的 基本处理单元。人工神经 元的结构和功能与生物神 经元类似,但只模拟了生 物神经元的部分功能部分功能。2.2 人工神经元模型人工神经元模型的基本结构和功能.f1p2prpnba求和门限比较1w2wrw,21rwwwWTrpppP,21)()*(1bpwfbPWfArjjj,输入与输出关系:注意:注意:偏差也可看成权值,其输入值为偏差也可看成权值,其输入值为1 输入信号向量权值向量2
12、.2 人工神经元模型激活函数转移函数F()也称激励函数、传输函数或限幅函数,人工神经元和网络的核心 。激活函数的基本作用控制输入对输出的激活作用;对输入、输出进行函数转换;决定输出范围。2.2 人工神经元模型l常用激活函数 阀值型(硬限制型、开关型): (阶跃,符号) 0*00*1)*(bPWbPWbPWfAfn1-1fn1-1-b无偏差阈值型激活函数有偏差阈值型激活函数2.2 人工神经元模型线性函数bPWbPWfA*)*(fn1-1fn1-1-b无偏差线性激活函数有偏差线性激活函数2.2 人工神经元模型S型激活函数(非线性) Sigmoid函数y = F(s) = 1/(1+e-s)2.2
13、人工神经元模型 双曲正切函数y = tand(s)=(es- e-s)/(es+e-s)相对于Sigmoid函数,它是原点对称的。 当要求输出(-1 1)范围的信号时,它常被采用。2.3 ANN的拓扑结构 大量人工神经元相互连接组成的神经网络 l单层网络fff1p2prp11wsrw1b2bsb1a2asa1n2nsn.111输入和输出的关系输入和输出的关系)(111srrssBPWFA2.3 ANN的拓扑结构srssrrrswwwwwwwwwW212222111211ssbbbB211其中权矩阵其中权矩阵:rqrrqqqrpppppppppP212222111211sqssqqqsaaaaa
14、aaaaA212222111211,111sssqsBBBB多组输入与输出:多组输入与输出:2.3 ANN的拓扑结构 多层网络 目前很多网络模型,它们的结点都是按层排列的,这一点正是模仿了大脑皮层中的网络模块。 多层网络是由单层网络进行级联构成的,即上一层的输出作为下一层的输入。 多层网络中,接收输入信号的层称为输入层,它不计入网络层数。 产生输出信号的层称为输出层。 除此之外的中间层称为隐藏层,它不直接与外部环境打交道。 隐藏层的层数可从零到若干层。2.3 ANN的拓扑结构 两层网络(前馈全连接网络) 三层网络(前馈全连接网络)2.3 ANN的拓扑结构.ffffff1111b1p2prp1,
15、1srw11sb11n21n11sn12b2, 12ssw1 , 12sw22sb12n22n22sn12a22a22sa11a11sa)11( 11111111srrssBPWFA)2)11( 12(2)212(221211111212111212ssrrssssssssBBPWFWFBAWFA输入和输出的关系:输入和输出的关系:2.3 ANN的拓扑结构 注意:在构成多层网络时,层间的激活函数应为非线性,否则多层网络的计算能力并不比单层网络强。 当 为线性函数时,有这表明两层线性网络等效于单层网络,只是后者的加权矩阵为两个加权矩阵的乘积。FFF21BPWBBWPWWBAWAsssss212122122121112122.3 ANN的拓扑结构 回归型网络(反馈网络) 一般来说,凡包含反馈连接的网络均称为回归型网络,或称反馈网络。 反馈网络输入随时间变化,t时刻输出对应于t-1时刻输入。 fff11wsrw1a2asa1n2nsn.1b12b1sb12.3 ANN的拓扑结构 前向网络与反馈网络的比较 前向网络不需存储记忆,它的输出只是由当前的输入和加权值确定。 反馈网络要将以前的输出循环返回到输入,所以其输出不但取决于当前的输入,还要取决于以前的输出。 反馈网络类似于人类的短期记忆,即网络的输出状态部分取决于以前的输入,是一类广泛应用的网络。