1、第六章 人工神经网络6.1 概述6.1.1 什么是人工神经网络 所谓人工神经网络就是基于模仿生物大脑的结构和功能而构成的一种信息处理系统(计算机)。 人是地球上具有最高智慧的动物,而人的指挥均来自大脑,人类靠大脑进行思考、联想、记忆和推理判断等,这些功能是任何被称为“电脑”的一般计算机所无法取代的。 长期以来,许多科学家一直致力于人脑内部结构和功能的探讨和研究,并试图建立模仿人类大脑的计算机,虽然到目前对大脑的内部工作机理还不甚完全清楚,但对其结构已有所了解。6.1 概述6.1.1 什么是人工神经网络 粗略地讲,大脑是由大量神经细胞或神经元组成的。 每个神经元可看作是一个小的处理单元,这些神经
2、元按某种方式连接起来,形成大脑内部的生理神经元网络。 这种神经元网络中各神经元之间联结的强弱,按外部的激励信号做自适应变化,而每个神经元又随着所接收到的多个接收信号的综合大小而呈现兴奋或抑制状态。 现已明确大脑的学习过程就是神经元之间连接强度随外部激励信息做自适应变化的过程,而大脑处理信息的结果则由神经元的状态表现出来。6.1 概述6.1.1 什么是人工神经网络 由于我们建立的信息处理系统实际上是模仿生理神经网络,因此称它为人工神经网络。 需要指出,尽管人工神经网络是对大脑结构的模仿,但这种模仿目前还处于极低的水平。 按美国神经网络学者Nielsen的定义 人工神经网络是一个并行、分布处理结构
3、,它由处理单元及其称为联接的无向讯号通道互连而成。 这些处理单元具有局部内存,可以完成局部操作,即它必须仅仅依赖于经过输入联接到达处理单元的所有输入信号的当前值和存储在处理单元局部内存中的值。 每个处理单元有一个单一的输出联接,输出信号可以是任何需要的数学模型。6.1 概述6.1.1 什么是人工神经网络 人工神经网络与一般计算机的区别 在一般的计算机中,通常有一个中央处理器,它可访问其存储器。 该处理器可取一条指令和该指令所需的数据,并执行该指令,最后将计算结果存入指定的存储单元中。 任何动作都按照确定的操作程序,以串行方式执行。6.1 概述6.1.1 什么是人工神经网络 人工神经网络与一般计
4、算机的区别 在人工神经网络中,操作既不是串行的,也不是预先确定的,它根本没有确定的存储器,而是由许多互连的简单处理单元组成。 每个处理单元的处理功能只是求其所有输入信号的加权和,当该和值超过某一阈值时,输出呈现兴奋状态(高电平),否则低于阈值时呈现抑制状态(低电平)。 人工神经网络并不执行指令序列,它对并行加载的输入信号也按并行方式来处理和响应,结果也不存储在特定的存储单元中。当它达到某种平衡状态后,网络的整个状态就是所求的结果。 目前还没有用硬件真正实现的并行处理的人工神经网络,对它的实现还是基于一般计算机的软件模拟,这显然并没有真正发挥出人工神经网络并行快速的特点。6.1 概述6.1.1
5、什么是人工神经网络 人工神经网络的两种操作过程 训练学习 训练时,把要教给神经网络的信息(外部输入)作为网络的输入和要求的输出,使网络按某种规则(称为训练算法)调节各处理单元间的连接权值,直至加上给定输入,网络就能产生给定输出为止。 这时,各连接权已调接好,网络的训练就完成了。 正常操作(回忆操作) 对训练好的网络输入一个信号,它就可以正确回忆出相应输出,得到识别结果。6.1 概述6.1.1 什么是人工神经网络 文本(英文)朗读机实例 输入装置是一个阅读窗口,当它沿文本的一行移动时,每次前移一个字母,但每个瞬间输入七个相邻的字母(包括空格和句号)信息。 由于英文字母的发音与其前后字母有关,所以
6、训练人工神经网络时,只要求每次七个字母的中间字母发音(靠人工神经网络的输出相应状态驱动一个语音综合发生器)。 训练时,将一篇有1024个字的文本一行一行通过阅读窗口,并要求对应每个字母时人工神经网络的输出结点能输出相应音素的状态值。6.1 概述6.1.1 什么是人工神经网络 文本(英文)朗读机实例 这样通过十遍阅读(训练),可以达到输出可理解的语音。 通过50遍阅读(训练),可以达到95%的精确度。 训练过程中听上去像小孩学说话一样,由不清楚到清楚。 训练完成后,再阅读从未见过的课文,朗读精度仍可达78%,完全可以听懂。6.1 概述6.1.1 什么是人工神经网络 人脸识别实例 用10个人的照片
7、,每个人都在不同的角度照5张照片,共有50张照片的输入信息。 对人工神经网络进行训练,每个照片信息作为输入时,代表10个人的10个结点中相应的一个结点输出最大,每个人的5张照片都对应着同一个结点的最大输出。 经过训练后,再对原来的10个人中的一个从不同角度拍照(尺寸不变),进行识别,结果是他本人对应的结点的输出比其它9个结点的输出都高得多。6.1 概述6.1.1 什么是人工神经网络 总结和讨论 传统计算机采用的是串行处理方式,限制了大量信息的快速传输和处理,即使用了多个处理器并行工作,还是会把许多时间浪费在完成串行操作上,而且问题的并行化分解和并行程序的编写也是一个难题。 虽然至今开发出的超型
8、计算机,其速度和容量都大得惊人,但仍不能很好地完成诸如小孩可以做到的事情,如认识面孔、学习说话、识别图像等。 尽管人工神经网络还是生物大脑的极低水平的模仿,但在图像识别、语音识别、记忆、预测以及优化等方面表现出了良好的智能特性和应用前景,可以完成传统计算机不易实现的智能性工作。6.1 概述6.1.2 人工神经网络的发展 初始(萌发)期 MP模型的提出和人工神经网络的兴起 1943年,美国神经生理学家Warren Mcculloch和数学家Walter Pitts合写了一篇关于神经元如何工作的开拓性文章:“A Logical Calculus of Ideas Immanent in Nervo
9、us Activity”。 该文指出,脑细胞的活动像断/通开关,这些细胞可以按各种方式相互结合,进行各种逻辑运算。 按此想法,他们用电路构成了简单的神经网络模型,并预言大脑的所有活动最终将被解释清楚。 虽然问题并非如此简单,但它给人们一个信念,即大脑的活动是靠脑细胞的组合连接实现的。 当时,不少研究人员转向解剖学和生理学去寻找建立智能机的思路。6.1 概述6.1.2 人工神经网络的发展 初始期 MP模型的提出和人工神经网络的兴起 1949年,心理学家Donala Hebb写了一本书:“The Organization of Behavior”。 在该书中,他强调了心理学和生理学间的联系和沟通,
10、指出脑细胞间的思路每当通过参与某种活动时将被加强,这就是后来的Hebb学习规则。 目前有些神经网络模型仍然采用这种学习规则。6.1 概述6.1.2 人工神经网络的发展 初始期 MP模型的提出和人工神经网络的兴起 到了二十世纪50年代,随着计算机的发展和软硬件的进步,有些神经系统功能的理论开始在计算机上进行模拟,拓宽了研究的路子。 IBM的研究室在Hebb工作的基础上,对神经网络的模型进行了软件模拟,虽然开始时失败了,但在使得模型像人那样适应环境的实验上取得了一定程度的成功。 在此情况下,人们开始酝酿人工智能的项目。6.1 概述6.1.2 人工神经网络的发展 初始期 MP模型的提出和人工神经网络
11、的兴起 1956年,一个人工智能研究项目(Dartmouth Summer)给人工智能领域,同时也给神经计算领域以巨大推动。 人们提出两条研究思路 采用高级人工智能方法,试图建立描述智能机功能的计算机程序; 根据低水平的大脑处理方式构成结构模型,以实现智能化。 这宣告了人工神经网络的诞生。6.1 概述6.1.2 人工神经网络的发展 第一次高潮期 感知器模型和人工神经网络 1957年,计算机专家Frank Rosenblatt开始从事感知器的研究,并制成硬件,通常被认为是最早的神经网络模型。 1959年,两位电机工程师Bernard Widrow和Marcian Haff开发出一种叫作自适应线性
12、单元(ADALINE)的网络模型,并在他们的论文“Adaptive Switching Circuits”中描述了该模型和它的学习算法( Widrow- Haff算法)。 该网络通过训练,可以成功用于抵消通信中的回波和噪声,也可用于天气预报,成为第一个用于实际问题的神经网络。6.1 概述6.1.2 人工神经网络的发展 第一次高潮期 感知器模型和人工神经网络 1962年,Rosenblatt出版了一本书“The Principles of Neurodynamics”,详述了他的感知器模型。 该感知器具有输入层、输出层和中间层,通过实验可以模仿人的某些特性,并断言它可以学会任何它可以表示的功能。
13、 1967年,Stephen Grossberg通过对生理学的研究,开发了一种称作Avalanche(雪崩网)的神经网络模型,可以执行连续语音识别和控制机器人手臂的运动。 在这一时期,由于感知器的某些进展和对神经网络的宣传,人们乐观地认为几乎已经找到了实现智能的关键,许多部门开始大批地投入此项研究,希望尽快占领制高点,形成了研究人工神经网络的第一次高潮。 由于当时对神经网络的乐观情绪的影响,人们夸大了神经网络的潜力(有人甚至担心制造机器人的人类会很快受到机器人的攻击)。6.1 概述6.1.2 人工神经网络的发展 反思期 神经网络的低潮 1969年,Marvin Minsky和Seymour P
14、apert合著了一本书“Perception”,分析了当时的简单感知器,指出它有非常严重的局限性,甚至不能解决简单的“异或”问题,为Rosenblatt的感知器判了“死刑”。 此时,批评的声音高涨,导致了停止对人工神经网络研究所需的大量投资。 不少研究人员把注意力转向了人工智能,导致对人工神经网络的研究陷入低潮。6.1 概述6.1.2 人工神经网络的发展 反思期 神经网络的低潮 虽然如此,二十世纪70年代到80年代早期,仍有一些坚信神经网络的人坚持他们的工作,为人工神经网络的复苏做准备。 神经生理学家James Anderson开发的盒中脑模型(Brain-State-in-a-Box,BSB
15、)。 日本学者Kunihik Fukushima开发的用于视觉图形识别的认知器模型(Neocognitron)。 电气工程师Teuvo Kohonen开发的与BSB类似的网络模型。 Grossberg, Rumelhart, McClelland, Marr, Amari和Cooper等人的工作。6.1 概述6.1.2 人工神经网络的发展 第二次高潮期 Hopfield网络模型的出现和人工神经网络的复苏 1982年,John Hopfield向美国科学院递交了有关神经网络的报告,主要内容就是建议收集和重视以前对神经网络的工作,其中特别强调了每种模型的实用性。 根据对神经网络的数学分析和深入理解
16、, Hopfield揭示了以往的网络是如何工作的,可以做些什么,并提出了他自己的模型,能从失真的或不完善的数据图像中获得完整的数据图像,引起了美国军方的兴趣。 当时,人工智能对自动制导车的研究失败,而利用神经网络有可能解决这个问题,从而使人们的注意力重新投向人工神经网络,导致了人工神经网络的第二次高潮。6.1 概述6.1.2 人工神经网络的发展 第二次高潮期 Hopfield网络模型的出现和人工神经网络的复苏 1984年,Hopfield设计研制了后来被人们称为Hopfield网的电路,较好地解决了TCP问题,找到了最佳解的近似解,引起了较大轰动。 1985年,Hinton、Sejnowsky
17、、Rumelhart等研究者在Hopfield网络中引入随机机制,提出了所谓的Bolziman机。 1986年, Rumelhart等研究者重新独立地提出多层网络的学习算法BP算法,较好地解决了多层网络的学习问题。 1990年12月,国内首届神经网络大会在北京举行。6.1 概述6.1.2 人工神经网络的发展 再认识与应用研究期 二十世纪90年代后,神经网络的研究趋于平缓,主要问题: 应用面还不够宽 结果不够精确 存在可信度的问题6.1 概述6.1.2 人工神经网络的发展 再认识与应用研究期 主要研究内容 开发现有模型的应用,并在应用中根据实际运行情况对模型、算法加以改造,以提高网络的训练速度和
18、运行的准确度。 充分发挥每种技术各自的优势,寻找更有效的解决方法。 希望在理论上寻找新的突破,建立新的专用或通用模型和算法。 进一步对生物神经系统进行研究,不断丰富对人脑的认识。6.1 概述6.1.3 人工神经网络的特点 固有的并行结构和并行处理 人工神经网络与人类的大脑类似,不但结构上是并行的,其处理顺序也是并行的和同时的。 在同一层内的处理单元都是同时工作的,即神经网络的计算功能分布在多个处理单元上,而传统的计算机通常只有一个处理单元,其处理顺序是串行的。 目前的神经网络功能常常用一般计算机的串行工作方式来模拟,所以显得很慢,真正意义上的神经网络将会大大提高处理速度,实现快速处理。6.1
19、概述6.1.3 人工神经网络的特点 知识的分布存储 在神经网络中,知识不是存储在特定的存储单元,而是分布在整个系统中,要存储多个知识就需要很多连接。 在计算机中,只要给定一个地址就可以得到一个或一组数据,在神经网络中,要获得存储的知识则采用“联想”的办法,这类似于人类和动物的记忆。6.1 概述6.1.3 人工神经网络的特点 知识的分布存储 当一个神经网络输入一个激励时,它要在已存储的知识中寻找与该输入匹配最好的知识存储为其解。 这犹如人们辨认潦草的笔记,这些笔记可以是变形的、失真的和缺损的。 人类根据联想善于正确识别图形,人工神经网络也具有这种能力。6.1 概述6.1.3 人工神经网络的特点
20、知识的分布存储 联想记忆的两个主要特点 存储大量复杂数据的能力 语音的样本、可视图象、机器人的活动、时空图形的状态、社会的情况等; 可以很快地将新的输入图像归并分类为已存储图像的某一类 一般计算机善于高速串行运算,但不善于实时的图形识别。6.1 概述6.1.3 人工神经网络的特点 容错性 人类大脑具有很强的容错能力,这正是由于大脑中知识是存储在很多处理单元和它们的连接上的。 每天大脑的一些细胞都可能会自动死亡,但这并没有影响人们的记忆和思考能力。 人工神经网络可以从不完善的数据和图形进行学习和做出决定 由于知识存在整个系统中,而不是在一个存储单元内,因此一定比例的结点不参与运算,对整个系统的性
21、能不会产生重大影响。 神经网络中承受硬件损坏的能力比一般计算机要强得多。6.1 概述6.1.3 人工神经网络的特点 自适应性 人类有很强的适应外部的学习能力 小孩在周围环境的熏陶下可以学会很多事情,如通过学习可以认字、说话、走路、思考、判断等。6.1 概述6.1.3 人工神经网络的特点 自适应性 人工神经网络也具有学习能力 有指导的训练:将输入样本加到网络输入并给出相应的输出,通过多次训练迭代获得连接权值。 好像告诉网络:“当你看到这个图形(比如5)时,请给我指示5”。 无指导的训练:网络通过训练自行调节连接加权,从而对输入样本分类。 在网络训练时,有时只能给出大量的输入图形,没有指定它们的输
22、出,网络就自行按输入图形的特征对它们进行分类。 如小孩通过大量观察可以分辨出哪是狗、哪是猫一样。6.1 概述6.1.3 人工神经网络的特点 自适应性 人工神经网络也具有学习能力 综合推理的能力:网络具有正确响应和分辨从未见过的输入样本的能力。 进行数字图形的识别时,对于不完善的数字图形或失真的数字图形仍能正确辨认。6.1 概述6.1.3 人工神经网络的特点 人工神经网络的局限性 人工神经网络不适于高精度的计算 正像很多人不善于直接计算类似资金的问题一样,人工神经网络不用于计算资金方面的问题。 人工神经网络不适于做类似顺序计数的工作。 人工神经网络是以并行方式工作的。 人工神经网络的学习和训练往
23、往是一个艰难的过程。 网络的设计没有严格确定的方法(一般凭经验),所以选择训练方法和所需网络结构没有统一标准。 脱机训练往往需要很长时间,为了获得最佳效果,常常要重复试验多次。 网络收敛性的问题。6.1 概述6.1.3 人工神经网络的特点 人工神经网络的局限性 人工神经网络必须克服时间域顺序处理方面的困难。 为了解决语音处理、自然语言理解和图像随时间的变换情况,需要设计适于连续时间环境的网络。 硬件限制 目前仍是在一般计算机上用模拟的方法研究人工神经网络的并行处理过程,然而模拟不是最终目标。 只有真正的并行硬件处理,才能体现出人工神经网络的高速高效特点。 目前这种硬件的实现还未很好解决。6.1
24、 概述6.1.3 人工神经网络的特点 人工神经网络的局限性 正确的训练数据的收集 大量有代表性样本的采集 正确的预处理 总之,人工神经网络是基于人类大脑的结构和功能建立起来的学科,尽管它只是大脑的低级近似,但它的许多特点和人类的智能特点类似,有着较强的识别能力和广泛的应用前景。6.2 人工神经网络基础 目前出现的各种各样的人工神经网络模型,尽管在性能和结构上各有特点,但它们存在很多共同之处。 本节介绍 人工神经网络的基本术语 常用表示符号 描述人工神经网络的基本数学概念6.2 人工神经网络基础6.2.1 人工神经网络的生物原型大脑 简单的神经元6.2 人工神经网络基础6.2.1 人工神经网络的
25、生物原型大脑 简单的神经元 神经元就是神经细胞,它是动物的重要特征之一,在人体内从大脑到全身存在大约1010个神经元。 神经元的组成 细胞体:它是神经元的本体,内有细胞核和细胞质,完成普通细胞的生存功能。 树突:它有大量的分枝,多达103数量级,长度较短(通常不超过1毫米),用以接收来自其它神经元的信号。 轴突:它用以输出信号,有些较长(可达1米以上),轴突的远端也有分枝,可与多个神经元相连。 突触:它是一个神经元与另一个神经元相联系的特殊部位,通常是一个神经元轴突的端部靠化学接触或电接触将信号传递给下一个神经元的树突或细胞体。6.2 人工神经网络基础6.2.1 人工神经网络的生物原型大脑 神
26、经元间信号的传递 神经元间的信号通过突触传递。通过它,一个神经元内传送的冲击信号将在下一个神经元内引起响应,使下一个神经元兴奋,或阻止下一个神经元兴奋。6.2 人工神经网络基础6.2.1 人工神经网络的生物原型大脑 神经元的基本工作机制 一个神经元有两种状态兴奋和抑制 平时处于抑制状态的神经元,当接收到其它神经元经由突触传来的冲击信号时,多个输入在神经元中以代数和的方式叠加。 进入突触的信号会被加权,起兴奋作用的信号为正,起抑制作用的信号为负。 如果叠加总量超过某个阈值,神经元就会被激发进入兴奋状态,发出输出脉冲,并由轴突的突触传递给其它神经元。 神经元被触发后有一个不应期,在此期间内不能被触
27、发,然后阈值逐渐下降,恢复原来状态。6.2 人工神经网络基础6.2.1 人工神经网络的生物原型大脑 神经元的基本工作机制 神经元是按照“全或无”的原则工作的,只有兴奋和抑制两种状态,但也不能认为神经元只能表达或传递二值逻辑信号。 神经元兴奋时往往不是只发一个脉冲,而是发出一串脉冲,如果把一串脉冲看成是一个调频信号,脉冲的密度是可以表达连续量的。6.2 人工神经网络基础6.2.1 人工神经网络的生物原型大脑 大脑及大脑皮层的结构 研究证明,大脑中大约有1000个不同的模块,每个模块包含有50*106个神经元。 我们可以假设每个模块就是众多神经网络中的一类。 大脑的主要计算机构是大脑皮层,在其断面
28、上一般有36层神经细胞排列,大约10万个神经元组成一组。 在一个典型的脑模型中,大约有500个神经网络进行计算工作,平均一个神经元向其它神经元发出2000个突触。 不同层间神经元的连接方式有平行型、发散型、收敛型和反馈型,这些连接的强度是随机的,随着对外部世界的响应而逐渐形成。6.2 人工神经网络基础6.2.1 人工神经网络的生物原型大脑 总之,大脑中神经网络的结构是极其复杂的,其工作机理仍未完全搞清。 认知器模型的发明者Kunihiko Fukushima描述了建立人工神经网络模型的原则: “我们试图忠实地遵循生理的证据。我们分析或模拟所建模型的性能,并将它与大脑的某种性能进行比较。如果我们
29、发现模型与大脑在性能方面的差异,我们就变化我们的初始假设和修改模型,并重复这一过程直到模型的性能与大脑的性能具有相同的方式。”6.2 人工神经网络基础6.2.2 人工神经网络处理单元 处理单元(PE)就是人工神经元,也称为结点,通常用圆圈表示。6.2 人工神经网络基础6.2.2 人工神经网络处理单元 处理单元的结构和功能与生物神经元有类似之处,可以说是生物神经元的一阶近似。 处理单元只模拟了生物神经元所能执行的150多个处理功能中的若干个。 处理单元的功能 对每个输入信号进行处理以确定其强度(加权); 确定所有输入信号的组合效果(求和); 确定其输出(转移特性)。6.2 人工神经网络基础6.2
30、.2 人工神经网络处理单元 对生物神经元的模拟 就像生物神经元中有很多输入(激励)一样,处理单元也有很多输入信号,并且同时加到处理单元上,处理单元以输出作为响应。 处理单元的输出像实际神经元一样,输出响应不但受输入信号的影响,同时也受内部其它因素的影响。 内部因素:内部阈值或一个额外输入(称为偏置项)6.2 人工神经网络基础6.2.2 人工神经网络处理单元 对生物神经元的模拟 处理单元的每一个输入都经过相关的加权,以影响输入的激励作用,这有些像生物神经元中突触的可变强度,它确定了输入信号的强度,一般把它看作连接强度的测度。 处理单元的初始加权可以根据确定的规则进行调解修正,这也像生物神经元中的
31、突触强度可受外界因素影响一样。6.2 人工神经网络基础6.2.2 人工神经网络处理单元 处理单元的基本结构和功能6.2 人工神经网络基础6.2.2 人工神经网络处理单元 处理单元的基本结构和功能 输入信号来自外部(用黑色圆点表示输入端点)或别的处理单元的输出,在数学上表示为行向量xx = (x1, x2, xN)其中xi为第i个输入的激励电平,N表示输入数目。6.2 人工神经网络基础6.2.2 人工神经网络处理单元 处理单元的基本结构和功能 连接到结点j的加权表示为加权向量Wj=(W1j, W2j, WNj)其中Wij表示从结点i(或第i个输入点)到结点j的加权,或称i与j结点之间的连接强度。
32、6.2 人工神经网络基础6.2.2 人工神经网络处理单元 处理单元的基本结构和功能 考虑到内部阈值j,用x0=-1的固定偏置输入点表示,其连接强度取W0j= j。于是,可得输入的加权和为6.2 人工神经网络基础6.2.2 人工神经网络处理单元 处理单元的基本结构和功能 如果向量x和Wj分别包含了x0和W0j,则有x = (x0, x1, xN)Wj=(W0j, W1j, WNj)6.2 人工神经网络基础6.2.2 人工神经网络处理单元 处理单元的基本结构和功能 于是sj可表示为x和Wj的点积或内积 sj= xWj 这一结果是标量,它由两个向量的内积得到,可以作为两个向量相似程度的测量。 如果向
33、量处于相同的方向,则其内积最大; 如果向量处于相反的方向,则其内积最小。6.2 人工神经网络基础6.2.2 人工神经网络处理单元 处理单元的基本结构和功能 处理单元的激励电平sj通过一个转移函数F(),得到处理单元的最后输出值yj6.2 人工神经网络基础6.2.2 人工神经网络处理单元 转移函数 转移函数F()也称激励函数、传输函数或限幅函数,其作用就是将可能的无限域变换到一指定的有限范围内输出,这类似于生物神经元具有的非线性转移特性。 常用的转移函数 线性函数 斜坡函数 阶跃函数 符号函数 Sigmoid函数 双曲正切函数6.2 人工神经网络基础6.2.2 人工神经网络处理单元 线性函数6.
34、2 人工神经网络基础6.2.2 人工神经网络处理单元 线性函数 最简单的转移函数y = F(s) = ks其中y为输出值,s为输入信号的加权和,k是一个常数,表示直线的斜率。6.2 人工神经网络基础6.2.2 人工神经网络处理单元 斜坡函数6.2 人工神经网络基础6.2.2 人工神经网络处理单元 斜坡函数 当线性函数值限定在(-r r)的范围内时,线性函数就变为非线性斜坡函数。 r和-r分别是处理单元的最大值和最小值,称为饱和值,一般|r|=1。6.2 人工神经网络基础6.2.2 人工神经网络处理单元 阶跃函数6.2 人工神经网络基础6.2.2 人工神经网络处理单元 阶跃函数 硬限幅函数的一种
35、6.2 人工神经网络基础6.2.2 人工神经网络处理单元 符号函数(sgn())6.2 人工神经网络基础6.2.2 人工神经网络处理单元 符号函数(sgn()) 硬限幅函数的一种6.2 人工神经网络基础6.2.2 人工神经网络处理单元 Sigmoid函数6.2 人工神经网络基础6.2.2 人工神经网络处理单元 Sigmoid函数 S型函数的一种y = F(s) = 1/(1+e-s)6.2 人工神经网络基础6.2.2 人工神经网络处理单元 可以把该型函数看作为处理单元定义了一个非线性增益,增益的大小决定于曲线在给定s点的斜率。 当s由负无穷增到0时,增益由0增至最大; 当s由0增到正无穷时,增
36、益又由最大返回到0。 Grossberg在1973年发现,用该函数可使同一网络既能处理小信号,也能处理大信号。 该函数的中间高增益区解决了处理小信号的问题; 伸向两边的低增益区正好适合于处理大的激励信号; 这种现象正像生物神经元在输入电平范围很大的情况下能正常工作一样。6.2 人工神经网络基础6.2.2 人工神经网络处理单元 双曲正切函数6.2 人工神经网络基础6.2.2 人工神经网络处理单元 双曲正切函数 S型函数的一种y = tand(s)=(es- e-s)/(es+e-s) 相对于Sigmoid函数,它是原点对称的。 当s=0时有y=0,即同时具有双级输出。 当要求输出(-1 1)范围
37、的信号时,它常被采用。6.2 人工神经网络基础6.2.2 人工神经网络处理单元 讨论 人工神经网络处理单元是生物神经元的简单近似,在模仿生物神经网络时,具备了生物神经元的某些特性。 至于模仿效果,还需进一步研究,修改模型。 人工神经网络处理单元忽略了生物神经元的很多特征。 它没有考虑影响系统动态特性的时间延迟,而认为一个输入立即产生一个输出。 它没有包括同步机能和神经元的频率调制功能的影响。 其它未知的生物神经元的功能和特性。6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 虽然单个处理单元可以处理简单的图形检测功能,但更强的识别处理能力是来自多个结点“连成”的网络,即人工神经网络。
38、 这里的“连成”,是靠输入至结点或者结点至结点间的信号传输通路实现的,这一通路相当于生物神经系统中的轴突和突触,它们影响着输入信号。 以后我们把这种信号传输通路称为“连接”,每一个连接都具有一个加权值,称为“连接权”,反映连接的强度。6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 单层网络 最简单的网络是把一组结点形成一层。 左边的黑色圆点只起着分配输入信号的作用,没有计算作用,不看作是网络的一层。 右边用圆圈表示的一组结点被看作一层。6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 单层网络 输入信号表示为行向量:x = (x1, x2, xN),其中每一分量通过加权连
39、接到各结点。 每一个结点均可产生一个加权和。 输入和结点间采用全连接,并且都是前馈连接。 实际的人工神经网络和生物神经网络中有些连接可能不存在。6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 单层网络 在这种单层网络中,可把各加权表示为加权矩阵W。 矩阵的维数是N x n,N是输入信号向量(也称输入图形)的分量数,n是该层内的结点数。 由第三个输入连接到第二个结点的连接权表示为W32。6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 单层网络 输入信号的加权和表示为: s是各结点加权和的行向量,s=(s1, s2, sn)。 输出向量 y=(y1, y2, yn),其中y
40、j=F(sj)。6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 多层网络 一般来说,大而复杂的网络能提供更强的计算能力。 虽然目前已构成了很多网络模型,但它们的结点都是按层排列的,这一点正是模仿了大脑皮层中的网络模块。 多层网络是由单层网络进行级联构成的,即上一层的输出作为下一层的输入。6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 多层网络 两层网络(前馈全连接网络)6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 多层网络 三层网络(前馈全连接网络)6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 多层网络 注意:在构成多层网络时,层间的转移函数
41、应是非线性的,否则多层网络的计算能力并不比单层网络强。 在线性转移函数的情况下,两层网络输出的计算是第一层的输出xW1作为第二层的输入,通过第二个加权矩阵得到网络的输出y=(xW1) W2=x(W1W2) 这表明两层线性网络等效于单层网络,只是后者的加权矩阵为两个加权矩阵的乘积。6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 多层网络 多层网络中,接收输入信号的层称为输入层。 它不计入网络层数,因为它只起着输入信号缓冲器的作用,没有处理功能。 产生输出信号的层称为输出层。 除此之外的中间层称为隐藏层(或隐蔽层),它不直接与外部环境打交道。 隐藏层的层数可从零到若干层。 实际情况中,
42、层与层之间可能有部分连接的情况。6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 回归型网络(反馈网络) 一般来说,凡包含反馈连接的网络均称为回归型网络,或称反馈网络。 一层反馈网络6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 回归型网络(反馈网络) 一层反馈网络中,连接均限于一层之内,这种连接称为层内连接或层内横向反馈连接。 相对于一层反馈网络的为多层反馈网络,其连接不限于一层之内。6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 回归型网络(反馈网络) 二层反馈网络6.2 人工神经网络基础6.2.3 人工神经网络的拓扑结构 非回归型网络与回归型网络(反馈网
43、络)的比较 非回归型网络不需存储记忆,它的输出只是由当前的输入和加权值确定。 而在反馈网络中,要将以前的输出循环返回到输入,所以其输出不但取决于当前的输入,还要取决于以前的输出。 反馈网络类似于人类的短期记忆,即网络的输出状态部分取决于以前的输入,是一类广泛应用的网络。6.2 人工神经网络基础6.2.4 存储和回忆 存储就是将信息或图形存在某种存储器中,而回忆则是将已存储的信息按某种方式恢复出来。 为了与人类大脑的功能类比,我们把这种信息的恢复称为回忆。6.2 人工神经网络基础6.2.4 存储和回忆 人工神经网络中存储图形的类型 在计算机中,数据和信息是存放在存贮器中(RAM或ROM),以8比
44、特字节作为存储单位。 在人工神经网络中,信息或图形不再限定为8比特,它是多维的二进制数据或连续信息。6.2 人工神经网络基础6.2.4 存储和回忆 人工神经网络中存储的两类图形 空间图形的存储 存储单个空间静态图像,如一幅画面。 时空图形的存储 存储一系列随时间变化的图像,比如电影。 我们讨论的人工神经网络存储的图形大多是空间图形,因它是构成时空图形的基础。6.2 人工神经网络基础6.2.4 存储和回忆 人工神经网络中图形的存储 人工神经网络中的图形存储器与计算机中存储器的差别 在计算机中,一般采用RAM,将数据信息存在确定地址的存储单元内,有了地址就可检索数据。 在人工神经网络中,则是用内容
45、寻址存储器和联想存储器来存储图形信息。6.2 人工神经网络基础6.2.4 存储和回忆 人工神经网络中图形的存储 内容寻址存储器 它是在人工神经网络的训练过程中形成的,相当于通过训练将信息存储在加权矩阵W中。训练一旦完成,数据就相当于变换到加权矩阵的稳定状态中,因此这种存储是长期存储。 联想存储器 它是在人工神经网络的回忆操作中出现的。当对网络输入激励信号时,作为回忆结果,网络的输出给出一个响应状态。这一响应状态实际上也相当于一个所需的存储数据(响应),因此这种存储为短期存储。6.2 人工神经网络基础6.2.4 存储和回忆 回忆的概念 回忆是人类智能的一个主要特征,要想回忆某个人或某件事,通常可
46、通过联想进行。 当看到一本书的封面颜色和作者时,会联想到这是一本什么书(书的内容)。 当丢失东西时,可以通过联想到过什么地方,做过什么事情,最后回忆起把东西放在什么地方。 这两种情况都有一个特点,就是不管是哪本书,还是与东西有关的地点和事情,都是经历过的,相应的记忆才有可能联想出所需的结果。6.2 人工神经网络基础6.2.4 存储和回忆 回忆的概念 联想的两种方式 自联想:由本身的部分特征联想起整个事物的全部特征。 他联想:由一件事情联想到另一件事情。 在人工神经网络中,回忆操作也有两种联想变换 自联想变换 他联想变换6.2 人工神经网络基础6.2.4 存储和回忆 回忆的概念 自联想变换 要求
47、通过训练已在W中的存储向量图形A1, A2, Ap来实现。 该变换可由失真或缺损的向量图形Ai (i=1,2,p),联想回忆Ai,即当Ai 为输入激励时,能得到输出响应Ai。6.2 人工神经网络基础6.2.4 存储和回忆 回忆的概念 他联想变换 要求通过训练已在W中的存储向量图形对(A1, B1), (A2, B2), (Ap, Bp)来实现。 对这种网络,联想回忆是从激励A1, A2, Ap(可能是失真的或不完善的)获得B1, B2, Bp的响应(或相反),即6.2 人工神经网络基础6.2.4 存储和回忆 回忆的概念 在他联想变换中,可以定义两种基本的回忆机制 最近邻回忆 内插回忆6.2 人
48、工神经网络基础6.2.4 存储和回忆 回忆的概念 最近邻回忆 寻找与外部激励Ai最佳匹配的(距离最近的)已存储的输入,并按这一输入求得相应的输出,即 ,其中Ai与Ai有如下关系: 这里d()可指Ai与Ai间的欧式距离。6.2 人工神经网络基础6.2.4 存储和回忆 回忆的概念 内插回忆 是在接受一个输入激励时,从已存储的输入图形集中找到一个内插值,并从该输入的内插值得到一个相应的内插输出。 假如内插是线性的,则可表示为其中A和B可由图形对(Ai, Bi)和(Ai+1, Bi+1)内插得到,即 且 。6.2 人工神经网络基础6.2.4 存储和回忆 回忆的概念 在人工神经网络中,不管是自联想回忆还
49、是他联想回忆,信息的回忆方式有两种。 前馈回忆 反馈回忆6.2 人工神经网络基础6.2.4 存储和回忆 回忆的概念 前馈回忆 输入激励只需通过一次存储矩阵就可产生所需的响应。6.2 人工神经网络基础6.2.4 存储和回忆 回忆的概念 反馈回忆 输入激励通过存储矩阵W产生响应,该响应作为激励再反馈通过W,这样依次循环,直到激励和响应停止变化为止,即得到所要求的响应。6.2 人工神经网络基础6.2.5 人工神经网络的训练(学习) 人工神经网络的最主要特征之一是它可以学习。任何一个人工神经网络模型要实现某种功能的操作,就必须对它进行训练,让它学会要做的事情,并把这些知识记忆(存储)在网络的加权中。
50、学习或训练的实质就是加权矩阵随外部激励(环境)做自适应的变化。6.2 人工神经网络基础6.2.5 人工神经网络的训练(学习) 因为学习和训练的实质是变动加权值,因此很多文献中学习和训练的概念是混用的。严格来说,两者是有区别的,训练通常是指调整网络加权的操作动作和过程,这个过程对网络来讲就是学习。 比如举办一个训练班对学生进行某种技能的训练,对学生来讲,它是在该班内学习。6.2 人工神经网络基础6.2.5 人工神经网络的训练(学习) 人工神经网络被训练后,它每加入一组输入就会产生一组要求的输出。 一组输入(或输出)就是所谓的向量或图形。 训练就是相继加入输入向量,并按预定规则调整网络加权。 在进