- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
在本节中,我们将着重讲述一些在网络设计、优化、性能分析、通信路由优化、选择、神经网络控制优化中有重要应用的常用的算法,包括神经网络算法、遗传算法、模拟退火算法等方法。用这些算法可以较容易地解决一些很复杂的,常规算法很难解决的问题。这些算法都有着很深的理论背景,本节不准备详细地讨论这些算法的理论,只对算法的原理和方法作简要的讨论。
1. 神经网络的简单原理
人工神经网络( Artificial Neural Networks, 简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connectionist Model) ,是对人脑或自然神经网络(Natural Neural Network)若干基本特性的抽象和模拟。人工神经网络以对大脑的生理研究成果为基础的,其目的在于模拟大脑的某些机理与机制,实现某个方面的功能。所以说, 人工神经网络是由人工建立的以有向图为拓扑结构的动态系统,它通过对连续或断续的输入作出状态相应而进行信息处理。它是根据人的认识过程而开发出的一种算法。假如我们现在只有一些输入和相应的输出,而对如何由输入得到输出的机理并不清楚,那么我们可以把输入与输出之间的未知过程看成是一个“网络”,通过不断地给这个网络输入和相应的输出来“训练”这个网络,网络根据输入和输出不断地调节自己的各节点之间的权值来满足输入和输出。这样,当训练结束后,我们给定一个输入,网络便会根据自己已调节好的权值计算出一个输出。这就是神经网络的简单原理。
2. 神经元和神经网络的结构
如上所述,神经网络的基本结构如图5.35所示:
图5.35
神经网络一般都有多层,分为输入层,输出层和隐含层,层数越多,计算结果越精确,但所需的时间也就越长,所以实际应用中要根据要求设计网络层数。 神经网络中每一个节点叫做一个人工神经元,他对应于人脑中的神经元。人脑神经元由细胞体、树突和轴突三部分组成,是一种根须状蔓延物。神经元的中心有一闭点,称为细胞体,它能对接受到的信息进行处理,细胞体周围的纤维有两类,轴突是较长的神经纤维,是发出信息的。树突的神经纤维较短,而分支众多,是接收信息的。一个神经元的轴突末端与另一神经元的树突之间密切接触,传递神经元冲动的地方称为突触。经过突触的信息传递是有方向性的,不同的突触进行的冲动传递效果不一样,有的使后一神经元发生兴奋,有的使其发生抑制。
由人脑神经元的工作机理,人们构造了人工神经元的数学模型,它是人脑的模拟和简化,如图5.36所示。
图5.36 McCulloch-Pitts网络
在图中,是表示神经元对信息的感知能力,称为关联权,称为输出函数或激活函数,采用激活函数的人工神经网络也称阈网络。McCulloch-Pitts输出函数定义为
其中,为符号函数,称为阈值。
一般来说,一个人工神经元有多个输入和一个输出,另外有一个激活函数,不同的激发函数对应了不同的网络,也决定了网络的用途。从方程可以看出,当 确定时,任给一组输入,也就很容易得到输出。而现在我们的想法是:对给定的输入,确定权数,使得通过方程计算出来的输出尽可能与实际值吻合,这即是学习的过程。学习也称为训练,指的是通过神经网络所在环境的刺激作用调整神经网络的权数,使得神经网络对外部环境以一种新的方式作出反应。学习分为有指导学习和无监督学习:在有正确输入输出数据条件下调整和确定权数的方法称为有指导学习;而在只知输入数据不知输出结果的前提下确定权数的方法称为无监督学习。人工神经网络的主要工作就是通过学习,建立模型和确定的值。
神经网络按照网络结构和激发函数的不同可分为许多种,我们在此只对感知器、BP网络及Hopfield神经网络进行简介。
3.感知机
首先介绍单层前向神经网络。单层前向神经网络的模型结构如图5.37所示。
其中,为权系数矩阵,分别为输入向量、输出向量及阈值向量。
确定权数的基本思想是修正使得输入输出偏差尽可能小。权的修正公式为:,,其中,分别表示第组用于学习的输入和期望输出数据,称为学习效率,用于控制调整速度。与权值修正原理类似,阈值修正公式可假设为:,通过更新权数和阈值使得输入输出偏差趋于零。若将激活函数取为阶跃函数,上述思想即是感知机原理。
图5.37
由此,我们给出感知机学习规则算法步骤为:
用表示学习步骤的序号,表示学习前的神经网络的初始状态。
第1步:赋初值。
给网络上权数和阈值赋初值,如;
第2步:计算样本实际输出。
选择一个样本作为网络输入,计算样本在目前神经网络中的实际输出。如,对于第个样本,感知机输出为:
,
其中,
第3步:计算误差。
计算感知机输出的实际结果与期望输出之差:
第4步:权数修正。
如果,则转第2步,否则调整权值:
第5步:若训练样本已完全输入或输出误差小于预设值,则学习结束;否则,转第2步继续学习。
如果对
文档评论(0)