神经网络工具箱.docx
- 文档编号:9223409
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:13
- 大小:27.90KB
神经网络工具箱.docx
《神经网络工具箱.docx》由会员分享,可在线阅读,更多相关《神经网络工具箱.docx(13页珍藏版)》请在冰豆网上搜索。
神经网络工具箱
神经网络工具箱常用函数列表
1) 重要的感知器神经网络函数:
初始化:
initp
训练:
trainp
仿真:
simup
学习规则:
learnp
2) 线性神经网络函数:
初始化:
initlin
设计:
solvelin
仿真:
simulin
离线训练:
trainwh
在线自适应训练:
adaptwh
学习规则:
learnwh
3) BP网络函数:
Initff:
初始化不超过3层的前向网络;
Simuff:
仿真不超过3层的前向网络;
Trainbp,trainbpx,trainlm:
训练BP(Trainbp:
最慢;trainbpx:
次之;trainlm:
速度最快,但需要更多的存储空间。
)
Learnbp:
学习规则
4) 自组织网络
初始化:
initsm
仿真:
simuc
训练:
trainc:
利用竞争规则训练
trainsm:
利用Kohonen规则训练
5) 反馈网络(Hopfield网络)
仿真:
simuhop
设计:
solvehop
solvehop 设计Hopfield网络
solvelin 设计线性网络
rands 产生对称随机数
learnbp 反向传播学习规则
learnh Hebb学习规则
learnp 感知层学习规则
learnwh Widrow-Hoff学习规则
initlin 线性层初始化
initp 感知层初始化
initsm 自组织映射初始化
plotsm 绘制自组织映射图
trainbp 利用反向传播训练前向网络
trainp 利用感知规则训练感知层
trainwh 利用Widrow-Hoff规则训练线性层
trainsm 利用Kohonen规则训练自组织映射
工神经网络的典型模型
迄今为止,有30多种人工神经网络模型被开发和应用。
下面是它们之中有代表性的一些模型。
(1)自适应谐振理论(ART)由Grossberg提出的,是一个根据可选参数对输入数据进行粗略分类的网络。
ART-1用于二值输入,而ART-2用于连续值输入。
ART的不足之处在于过份敏感,输入有小的变化时,输出变化很大。
(2)双向联想存储器(BAM)由Kosko开发的,是一种单状态互连网络,具有学习能力。
BAM的缺点为存储密度较低,且易于振荡。
(3)Boltzmann机(BM)由Hinton等提出的,是建立在Hopfield网基础上的,具有学习能力,能够通过一个模拟退火过程寻求解答。
不过,其训练时间比BP网络要长。
(4)反向传播(BP)网络最初由Werbos开发的反向传播训练算法是一种迭代梯度算法,用于求解前馈网络的实际输出与期望输出间的最小均方差值。
BP网是一种反向传递并能修正误差的多层映射网络。
当参数适当时,此网络能够收敛到较小的均方差,是目前应用最广的网络之一。
BP网的短处是训练时间较长,且易陷于局部极小。
(5)对流传播网络(CPN)由Hecht-Nielson提出的,是一个通常由五层组成的连接网。
CPN可用于联想存储,其缺点是要求较多的处理单元。
(6)Hopfield网由Hopfield提出的,是一类不具有学习能力的单层自联想网络。
Hopfield网模型由一组可使某个能量函数最小的微分方程组成。
其短处为计算代价较高,而且需要对称连接。
(7)Madaline算法是Adaline算法的一种发展,是一组具有最小均方差线性网络的组合,能够调整权值使得期望信号与输出间的误差最小。
此算法是自适应信号处理和自适应控制的得力工具,具有较强的学习能力,但是输入输出之间必须满足线性关系。
(8)认知机(Neocogntion)由Fukushima提出的,是至今为止结构上最为复杂的多层网络[20]。
通过无师学习,认知机具有选择能力,对样品的平移和旋转不敏感。
不过,认知机所用节点及其互连较多,参数也多且较难选取。
(9)感知器(Perceptron)由Rosenblatt开发的,是一组可训练的分类器[77],为最古老的ANN之一,现已很少使用。
(10)自组织映射网(SOM)由Kohonen提出的,是以神经元自行组织以校正各种具体模式的概念为基础的。
SOM能够形成簇与簇之间的连续映射,起到矢量量化器的作用。
根据W.T.Illingworth提供的综合资料,最典型的ANN模型(算法)及其学习规则和应用领域如表5.1所列。
表5.1人工神经网络的典型模型
模型名称有师或无师学习规则正向或反向传播应用领域
AG无Hebb律反向数据分类
SG无Hebb律反向信息处理
ART-I无竞争律反向模式分类
DH无Hebb律反向语音处理
CH无Hebb/竞争律反向组合优化
BAM无Hebb/竞争律反向图象处理
AM无Hebb律反向模式存储
ABAM无Hebb律反向信号处理
CABAM无Hebb律反向组合优化
FCM无Hebb律反向组合优化
LM有Hebb律正向过程监控
DR有Hebb律正向过程预测,控制
LAM有Hebb律正向系统控制
OLAM有Hebb律正向信号处理
FAM有Hebb律正向知识处理
BSB有误差修正正向实时分类
Perceptron有误差修正正向线性分类,预测
Adaline/Madaline有误差修正反向分类,噪声抑制
BP有误差修正反向分类
AVQ有误差修正反向数据自组织
CPN有Hebb律反向自组织映射
BM有Hebb/模拟退火反向组合优化
CM有Hebb/模拟退火反向组合优化
AHC有误差修正反向控制
ARP有随机增大反向模式匹配,控制
SNMF有Hebb律反向语音/图象处理摘要:
随着计算机技术的飞速发展,智能计算方法的应用领域也越来越广泛,本文介绍了当前存在的一些智能计算方法,阐述了其工作原理和特点,同时对智能计算方法的发展进行了展望。
关键词:
人工神经网络遗传算法模拟退火算法群集智能蚁群算法粒子群算
1什么是智能算法
智能计算也有人称之为“软计算”,是们受自然(生物界)规律的启迪,根据其原理,模仿求解问题的算法。
从自然界得到启迪,模仿其结构进行发明创造,这就是仿生学。
这是我们向自然界学习的一个方面。
另一方面,我们还可以利用仿生原理进行设计(包括设计算法),这就是智能计算的思想。
这方面的内容很多,如人工神经网络技术、遗传算法、模拟退火算法、模拟退火技术和群集智能技术等。
2人工神经网络算法
“人工神经网络”(ARTIFICIALNEURALNETWORK,简称ANN)是在对人脑组织结构和运行机制的认识理解基础之上模拟其结构和智能行为的一种工程系统。
早在本世纪40年代初期,心理学家McCulloch、数学家Pitts就提出了人工神经网络的第一个数学模型,从此开创了神经科学理论的研究时代。
其后,FRosenblatt、Widrow和J.J.Hopfield等学者又先后提出了感知模型,使得人工神经网络技术得以蓬勃发展。
神经系统的基本构造是神经元(神经细胞),它是处理人体内各部分之间相互信息传递的基本单元。
据神经生物学家研究的结果表明,人的一个大脑一般有1010~1011个神经元。
每个神经元都由一个细胞体,一个连接其他神经元的轴突和一些向外伸出的其它较短分支——树突组成。
轴突的功能是将本神经元的输出信号(兴奋)传递给别的神经元。
其末端的许多神经末梢使得兴奋可以同时传送给多个神经元。
树突的功能是接受来自其它神经元的兴奋。
神经元细胞体将接受到的所有信号进行简单处理(如:
加权求和,即对所有的输入信号都加以考虑且对每个信号的重视程度——体现在权值上——有所不同)后由轴突输出。
神经元的树突与另外的神经元的神经末梢相连的部分称为突触。
2.1人工神经网络的特点
人工神经网络是由大量的神经元广泛互连而成的系统,它的这一结构特点决定着人工神经网络具有高速信息处理的能力。
人脑的每个神经元大约有103~104个树突及相应的突触,一个人的大脑总计约形成1014~1015个突触。
用神经网络的术语来说,即是人脑具有1014~1015个互相连接的存储潜力。
虽然每个神经元的运算功能十分简单,且信号传输速率也较低(大约100次/秒),但由于各神经元之间的极度并行互连功能,最终使得一个普通人的大脑在约1秒内就能完成现行计算机至少需要数10亿次处理步骤才能完成的任务。
人工神经网络的知识存储容量很大。
在神经网络中,知识与信息的存储表现为神经元之间分布式的物理联系。
它分散地表示和存储于整个网络内的各神经元及其连线上。
每个神经元及其连线只表示一部分信息,而不是一个完整具体概念。
只有通过各神经元的分布式综合效果才能表达出特定的概念和知识。
由于人工神经网络中神经元个数众多以及整个网络存储信息容量的巨大,使得它具有很强的不确定性信息处理能力。
即使输入信息不完全、不准确或模糊不清,神经网络仍然能够联想思维存在于记忆中的事物的完整图象。
只要输入的模式接近于训练样本,系统就能给出正确的推理结论。
正是因为人工神经网络的结构特点和其信息存储的分布式特点,使得它相对于其它的判断识别系统,如:
专家系统等,具有另一个显著的优点:
健壮性。
生物神经网络不会因为个别神经元的损失而失去对原有模式的记忆。
最有力的证明是,当一个人的大脑因意外事故受轻微损伤之后,并不会失去原有事物的全部记忆。
人工神经网络也有类似的情况。
因某些原因,无论是网络的硬件实现还是软件实现中的某个或某些神经元失效,整个网络仍然能继续工作。
人工神经网络是一种非线性的处理单元。
只有当神经元对所有的输入信号的综合处理结果超过某一门限值后才输出一个信号。
因此神经网络是一种具有高度非线性的超大规模连续时间动力学系统。
它突破了传统的以线性处理为基础的数字电子计算机的局限,标志着人们智能信息处理能力和模拟人脑智能行为能力的一大飞跃。
2.2几种典型神经网络简介
2.2.1多层感知网络(误差逆传播神经网络)
在1986年以Rumelhart和McCelland为首的科学家出版的《ParallelDistributedProcessing》一书中,完整地提出了误差逆传播学习算法,并被广泛接受。
多层感知网络是一种具有三层或三层以上的阶层型神经网络。
典型的多层感知网络是三层、前馈的阶层网络,即:
输入层I、隐含层(也称中间层)J和输出层K。
相邻层之间的各神经元实现全连接,即下一层的每一个神经元与上一层的每个神经元都实现全连接,而且每层各神经元之间无连接。
但BP网并不是十分的完善,它存在以下一些主要缺陷:
学习收敛速度太慢、网络的学习记忆具有不稳定性,即:
当给一个训练好的网提供新的学习记忆模式时,将使已有的连接权值被打乱,导致已记忆的学习模式的信息的消失。
2.2.2竞争型(KOHONEN)神经网络
它是基于人的视网膜及大脑皮层对剌激的反应而引出的。
神经生物学的研究结果表明:
生物视网膜中,有许多特定的细胞,对特定的图形(输入模式)比较敏感,并使得大脑皮层中的特定细胞产生大的兴奋,而其相邻的神经细胞的兴奋程度被抑制。
对于某一个输入模式,通过竞争在输出层中只激活一个相应的输出神经元。
许多输入模式,在输出层中将激活许多个神经元,从而形成一个反映输入数据的“特征图形”。
竞争型神经网络是一种以无教师方式进行网络训练的网络。
它通过自身训练,自动对输入模式进行分类。
竞争型神经网络及其学习规则与其它类型的神经网络和学习规则相比,有其自己的鲜明特点。
在网络结构上,它既不象阶层型神经网络那样各层神经元之间只有单向连接,也不象全连接型网络那样在网络结构上没有明显的层次界限。
它一般是由输入层(模拟视网膜神经元)和竞争层(模拟大脑皮层神经元,也叫输出层)构成的两层网络。
两层之间的各神经元实现双向全连接,而且网络中没有隐含层。
有时竞争层各神经元之间还存在横向连接。
竞争型神经网络的基本思想是网络竞争层各神经元竞争对输入模式的响应机会,最后仅有一个神经元成为竞争的胜者,并且只将与获胜神经元有关的各连接权值进行修正,使之朝着更有利于它竞争的方向调整。
神经网络工作时,对于某一输入模式,网络中与该模式最相近的学习输入模式相对应的竞争层神经元将有最大的输出值,即以竞争层获胜神经元来表示分类结果。
这是通过竞争得以实现的,实际上也就是网络回忆联想的过程。
除了竞争的方法外,还有通过抑制手段获取胜利的方法,即网络竞争层各神经元抑制所有其它神经元对输入模式的响应机会,从而使自己“脱颖而出”,成为获胜神经元。
除此之外还有一种称为侧抑制的方法,即每个神经元只抑制与自己邻近的神经元,而对远离自己的神经元不抑制。
这种方法常常用于图象边缘处理,解决图象边缘的缺陷问题。
竞争型神经网络的缺点和不足:
因为它仅以输出层中的单个神经元代表某一类模式。
所以一旦输出层中的某个输出神经元损坏,则导致该神经元所代表的该模式信息全部丢失。
2.2.3Hopfield神经网络
1986年美国物理学家J.J.Hopfield陆续发表几篇论文,提出了Hopfield神经网络。
他利用非线性动力学系统理论中的能量函数方法研究反馈人工神经网络的稳定性,并利用此方法建立求解优化计算问题的系统方程式。
基本的Hopfield神经网络是一个由非线性元件构成的全连接型单层反馈系统。
网络中的每一个神经元都将自己的输出通过连接权传送给所有其它神经元,同时又都接收所有其它神经元传递过来的信息。
即:
网络中的神经元t时刻的输出状态实际上间接地与自己的t-1时刻的输出状态有关。
所以Hopfield神经网络是一个反馈型的网络。
其状态变化可以用差分方程来表征。
反馈型网络的一个重要特点就是它具有稳定状态。
当网络达到稳定状态的时候,也就是它的能量函数达到最小的时候。
这里的能量函数不是物理意义上的能量函数,而是在表达形式上与物理意义上的能量概念一致,表征网络状态的变化趋势,并可以依据Hopfield工作运行规则不断进行状态变化,最终能够达到的某个极小值的目标函数。
网络收敛就是指能量函数达到极小值。
如果把一个最优化问题的目标函数转换成网络的能量函数,把问题的变量对应于网络的状态,那么Hopfield神经网络就能够用于解决优化组合问题。
对于同样结构的网络,当网络参数(指连接权值和阀值)有所变化时,网络能量函数的极小点(称为网络的稳定平衡点)的个数和极小值的大小也将变化。
因此,可以把所需记忆的模式设计成某个确定网络状态的一个稳定平衡点。
若网络有M个平衡点,则可以记忆M个记忆模式。
当网络从与记忆模式较靠近的某个初始状态(相当于发生了某些变形或含有某些噪声的记忆模式,也即:
只提供了某个模式的部分信息)出发后,网络按Hopfield工作运行规则进行状态更新,最后网络的状态将稳定在能量函数的极小点。
这样就完成了由部分信息的联想过程。
Hopfield神经网络的能量函数是朝着梯度减小的方向变化,但它仍然存在一个问题,那就是一旦能量函数陷入到局部极小值,它将不能自动跳出局部极小点,到达全局最小点,因而无法求得网络最优解。
3遗传算法
遗传算法(GeneticAlgorithms)是基于生物进化理论的原理发展起来的一种广为应用的、高效的随机搜索与优化的方法。
其主要特点是群体搜索策略和群体中个体之间的信息交换,搜索不依赖于梯度信息。
它是在70年代初期由美国密执根(Michigan)大学的霍兰(Holland)教授发展起来的。
1975年霍兰教授发表了第一本比较系统论述遗传算法的专著《自然系统与人工系统中的适应性》(《AdaptationinNaturalandArtificialSystems》)。
遗传算法最初被研究的出发点不是为专门解决最优化问题而设计的,它与进化策略、进化规划共同构成了进化算法的主要框架,都是为当时人工智能的发展服务的。
迄今为止,遗传算法是进化算法中最广为人知的算法。
近几年来,遗传算法主要在复杂优化问题求解和工业工程领域应用方面,取得了一些令人信服的结果,所以引起了很多人的关注。
在发展过程中,进化策略、进化规划和遗传算法之间差异越来越小。
遗传算法成功的应用包括:
作业调度与排序、可靠性设计、车辆路径选择与调度、成组技术、设备布置与分配、交通问题等等。
3.1特点
遗传算法是解决搜索问题的一种通用算法,对于各种通用问题都可以使用。
搜索算法的共同特征为:
①首先组成一组候选解;②依据某些适应性条件测算这些候选解的适应度;③根据适应度保留某些候选解,放弃其他候选解;④对保留的候选解进行某些操作,生成新的候选解。
在遗传算法中,上述几个特征以一种特殊的方式组合在一起:
基于染色体群的并行搜索,带有猜测性质的选择操作、交换操作和突变操作。
这种特殊的组合方式将遗传算法与其它搜索算法区别开来。
遗传算法还具有以下几方面的特点:
(1)遗传算法从问题解的串集开始嫂索,而不是从单个解开始。
这是遗传算法与传统优化算法的极大区别。
传统优化算法是从单个初始值迭代求最优解的;容易误入局部最优解。
遗传算法从串集开始搜索,覆盖面大,利于全局择优。
(2)许多传统搜索算法都是单点搜索算法,容易陷入局部的最优解。
遗传算法同时处理群体中的多个个体,即对搜索空间中的多个解进行评估,减少了陷入局部最优解的风险,同时算法本身易于实现并行化。
(3)遗传算法基本上不用搜索空间的知识或其它辅助信息,而仅用适应度函数值来评估个体,在此基础上进行遗传操作。
适应度函数不仅不受连续可微的约束,而且其定义域可以任意设定。
这一特点使得遗传算法的应用范围大大扩展。
(4)遗传算法不是采用确定性规则,而是采用概率的变迁规则来指导他的搜索方向。
(5)具有自组织、自适应和自学习性。
遗传算法利用进化过程获得的信息自行组织搜索时,硬度大的个体具有较高的生存概率,并获得更适应环境的基因结构。
3.2运用领域
前面描述是简单的遗传算法模型,可以在这一基本型上加以改进,使其在科学和工程领域得到广泛应用。
下面列举了一些遗传算法的应用领域:
①优化:
遗传算法可用于各种优化问题。
既包括数量优化问题,也包括组合优化问题。
②程序设计:
遗传算法可以用于某些特殊任务的计算机程序设计。
③机器学习:
遗传算法可用于许多机器学习的应用,包括分类问题和预测问题等。
④经济学:
应用遗传算法对经济创新的过程建立模型,可以研究投标的策略,还可以建立市场竞争的模型。
⑤免疫系统:
应用遗传算法可以对自然界中免疫系统的多个方面建立模型,研究个体的生命过程中的突变现象以及发掘进化过程中的基因资源。
⑥进化现象和学习现象:
遗传算法可以用来研究个体是如何学习生存技巧的,一个物种的进化对其他物种会产生何种影响等等。
⑦社会经济问题:
遗传算法可以用来研究社会系统中的各种演化现象,例如在一个多主体系统中,协作与交流是如何演化出来的。
4模拟退火算法
模拟退火算法来源于固体退火原理,将固体加温至充分高,再让其徐徐冷却,加温时,固体内部粒子随温升变为无序状,内能增大,而徐徐冷却时粒子渐趋有序,在每个温度都达到平衡态,最后在常温时达到基态,内能减为最小。
根据Metropolis准则,粒子在温度T时趋于平衡的概率为e-ΔE/(kT),其中E为温度T时的内能,ΔE为其改变量,k为Boltzmann常数。
用固体退火模拟组合优化问题,将内能E模拟为目标函数值f,温度T演化成控制参数t,即得到解组合优化问题的模拟退火算法:
由初始解i和控制参数初值t开始,对当前解重复“产生新解→计算目标函数差→接受或舍弃”的迭代,并逐步衰减t值,算法终止时的当前解即为所得近似最优解,这是基于蒙特卡罗迭代求解法的一种启发式随机搜索过程。
退火过程由冷却进度表(CoolingSchedule)控制,包括控制参数的初值t及其衰减因子Δt、每个t值时的迭代次数L和停止条件S。
5群体(群集)智能(SwarmIntelligence)
受社会性昆虫行为的启发,计算机工作者通过对社会性昆虫的模拟产生了一系列对于传统问题的新的解决方法,这些研究就是群集智能的研究。
群集智能(SwarmIntelligence)中的群体(Swarm)指的是“一组相互之间可以进行直接通信或者间接通信(通过改变局部环境)的主体,这组主体能够合作进行分布问题求解”。
而所谓群集智能指的是“无智能的主体通过合作表现出智能行为的特性”。
群集智能在没有集中控制并且不提供全局模型的前提下,为寻找复杂的分布式问题的解决方案提供了基础。
群集智能的特点和优点:
群体中相互合作的个体是分布式的(Distributed),这样更能够适应当前网络环境下的工作状态;没有中心的控制与数据,这样的系统更具有鲁棒性(Robust),不会由于某一个或者某几个个体的故障而影响整个问题的求解。
可以不通过个体之间直接通信而是通过非直接通信(Stimergy)进行合作,这样的系统具有更好的可扩充性(Scalability)。
由于系统中个体的增加而增加的系统的通信开销在这里十分小。
系统中每个个体的能力十分简单,这样每个个体的执行时间比较短,并且实现也比较简单,具有简单性(Simplicity)。
因为具有这些优点,虽说群集智能的研究还处于初级阶段,并且存在许多困难,但是可以预言群集智能的研究代表了以后计算机研究发展的一个重要方向。
在计算智能(ComputationalIntelligence)领域有两种基于群智能的算法,蚁群算法(AntColonyOptimization)和粒子群算法(ParticleSwarmOptimization),前者是对蚂蚁群落食物采集过程的模拟,已经成功运用在很多离散优化问题上。
5.1蚁群优化算法
受蚂蚁觅食时的通信机制的启发,90年代Dorigo提出了蚁群优化算法(AntColonyOptimization,ACO)来解决计算机算法学中经典的“货郎担问题”。
如果有n个城市,需要对所有n个城市进行访问且只访问一次的最短距离。
在解决货郎担问题时,蚁群优化算法设计虚拟的“蚂蚁”将摸索不同路线,并留下会随时间逐渐消失的虚拟“信息素”。
虚拟的“信息素”也会挥发,每只蚂蚁每次随机选择要走的路径,它们倾向于选择路径比较短的、信息素比较浓的路径。
根据“信息素较浓的路线更近"的原则,即可选择出最佳路线。
由于这个算法利用了正反馈机制,使得较短的路径能够有较大的机会得到选择,并且由于采用了概率算法,所以它能够不局限于局部最优解。
蚁群
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 神经网络 工具箱